Торговые стратегии на собственном облачном сервере
Зачем трейдеры запускают автоматические стратегии на своём VPS: аптайм, задержки, контроль и приватность, выбор региона и размера, основы безопасности, мониторинг и расходы.
Автоматическая стратегия хороша ровно настолько, насколько хорош компьютер, на котором она работает. Домашний ПК, который выключается, обновляется посреди торгового дня или теряет интернет, может оставить позицию открытой без присмотра. Поэтому многие трейдеры переносят торговый движок на облачный сервер - VPS - в своём собственном аккаунте. В статье разберём, зачем это нужно, как выбирать и как держать сервер защищённым и под наблюдением.
Что такое VPS и почему это важно трейдерам
VPS, или виртуальный выделенный сервер, - это виртуальный компьютер в дата-центре облачного провайдера. Вы получаете процессор, память, диск и сетевое подключение и платите провайдеру за использование, обычно помесячно или почасово. Сервер работает постоянно, сидит на быстрой и стабильной сети и не зависит от электричества и интернета дома.
Основные причины его использовать:
- Аптайм: сервер не выключается, когда вы закрываете ноутбук, и не устраивает внезапных обновлений посреди сессии, если вы правильно ими управляете.
- Задержки: сервер в регионе, близком к бирже или серверам брокера, сокращает время доставки ордера.
- Контроль: сервер в вашем аккаунте. Вы выбираете регион, размер и момент, когда его выключить.
- Приватность и изоляция: стратегия и данные работают в отдельной среде, а не на машине, которая служит и для сёрфинга, игр и работы.
Задержки: насколько это важно на самом деле
Большинству частных трейдеров не нужна миллисекундная скорость. Но разница между домашним ПК на нестабильном Wi-Fi и сервером в профессиональном дата-центре может быть существенной, особенно при высокой волатильности. Каждая задержка в цепочке - от получения сигнала до отправки ордера - это время, за которое цена может сдвинуться. Связь между временем и ценой исполнения объясняется в статье проскальзывание и издержки исполнения.
Рынки CME Group расположены в основном в районе Чикаго, а серверы брокеров и платформ обычно находятся в США. Поэтому регион в центральной или восточной части США часто оказывается разумным выбором. И всё же проверьте, где находятся серверы вашего брокера или платформы - решает именно это.
Выбор региона и размера
При создании сервера у облачного провайдера есть два главных решения:
- Регион: выберите дата-центр, ближайший к серверам исполнения. Если не уверены, спросите поддержку используемой платформы, что они рекомендуют.
- Размер: объём процессора и памяти. Движку, который ведёт одну стратегию на нескольких инструментах, не нужен огромный сервер. Начните со скромного, следите за загрузкой и увеличивайте только при необходимости. Слишком маленький сервер, упирающийся в 100% CPU, будет вызывать задержки; слишком большой просто стоит дороже.
Также разумно выбрать версию операционной системы с долгосрочной поддержкой и оставить свободное место на диске под логи.
Основы безопасности
Сервер, подключённый к торговому счёту, - мишень. Базовые правила:
- Обновления: регулярно ставьте обновления безопасности, но планируйте их вне торговых часов.
- SSH-ключи вместо паролей: вход по криптографическому ключу гораздо безопаснее пароля. По возможности отключите вход по паролю.
- Минимальные привилегии: каждый сервис работает с теми правами, которые ему нужны, и не более. Не запускайте всё от имени администратора.
- Файрвол: открывайте только нужные порты. Всё остальное закрыто.
- Секреты: учётные данные брокера и ключи не хранятся в открытых файлах или на скриншотах и не пересылаются в чатах.
- Резервные копии: храните бэкап конфигурации, чтобы можно было быстро пересобрать сервер.
Некоторые платформы подключают ваш облачный аккаунт через авторизацию на сайте самого провайдера, без передачи пароля или токена. Это лучший подход, потому что авторизацию можно отозвать в любой момент из аккаунта провайдера.
Мониторинг: узнать раньше, чем станет больно
Сервер работает сам по себе - именно поэтому нужно знать, что на нём происходит. Что стоит отслеживать:
- Работает ли движок: периодическая проверка, что процесс жив и подключён к брокеру.
- Ресурсы: загрузка процессора, памяти и диска. Заполненный диск - частая причина падений.
- Подключение к брокеру: повторяющиеся разрывы - признак проблем.
- Позиции: сверка того, что движок считает открытым, с тем, что реально открыто на счёте.
- Оповещения: получайте уведомления, когда происходит что-то необычное, а не только когда случайно заглянули.
Самое важное: имейте план на случай, если что-то пойдёт не так. Как закрыть позиции вручную, как остановить движок и к кому обращаться. Эти принципы - часть любой схемы алгоритмической торговли.
Расходы
Сервер находится в вашем аккаунте у облачного провайдера, поэтому счёт приходит напрямую от провайдера. Стоимость зависит от размера сервера, региона и трафика. Несколько моментов:
- Проверьте актуальные цены провайдера, прежде чем выбирать размер.
- Работающий сервер продолжает тарифицироваться, даже когда вы не торгуете; если перестали им пользоваться, удалите его из аккаунта провайдера.
- Бэкапы и снапшоты могут оплачиваться отдельно.
- Настройте оповещение о бюджете в аккаунте провайдера, чтобы избежать сюрпризов.
Чек-лист настройки
- Выбран ли регион рядом с серверами исполнения?
- Подходит ли размер под нагрузку, с запасом?
- Вход только по SSH-ключу и активный файрвол?
- Обновления запланированы вне торговых часов?
- Мониторинг и оповещения включены?
- Есть ли аварийный план для ручного закрытия позиций?
- Настроено ли оповещение о бюджете у провайдера?
Главное
- Облачный сервер даёт аптайм, меньшие задержки, контроль и изоляцию по сравнению с домашним ПК.
- Выбирайте регион рядом с серверами исполнения и умеренный размер, наращивая по необходимости.
- Базовая безопасность: обновления, SSH-ключи, минимальные привилегии, файрвол.
- Мониторинг и аварийный план - часть системы, а не дополнение.
- Расходы оплачиваются облачному провайдеру; работающий сервер продолжает тарифицироваться.
WeCore может запускать ваш торговый движок на облачном сервере в вашем собственном аккаунте DigitalOcean или Linode - подключение через авторизацию на сайте провайдера, а сервер оплачивается у провайдера. Подробности - в руководстве как запустить WeCore на собственном сервере.