Алгоритмическая торговля: сигнал, состояние и заявка
Алгоритмическая торговля использует программу, которая определяет параметры заявок или отправляет их по заданным правилам. Автоматизировать можно всю стратегию либо только разделение и исполнение заявки. Ошибки кода, торговые издержки и решения человека, заложенные в правила, при этом сохраняются.
Условный пример
В условной стратегии программа покупает 100 единиц после пересечения скользящих средних на закрытии свечи. Пока эта позиция открыта, ограничение одной позицией запрещает повторный вход на каждом новом тике. Это описание правила, а не подтверждение его прибыльности.
Один сигнал и много тиков
Условие покупки остается истинным 40 тиков подряд, а план допускает одну позицию. Без проверки существующих позиций программа может многократно отправить заявку. Нужно проверять и отсутствие позиции, и то, не обработан ли уже этот сигнал. В тесте учитывайте число отправок и отклонений, а не только найденные сигналы. Фактическое поведение зависит от кода, разрешений и ответов брокера.
От сигнала к заявке
Прокрутите схему по горизонтали, чтобы прочитать все шаги.
Метод автоматизации и формат программы
Алгоритмическая торговля — способ автоматизации. Советник Expert Advisor (EA) — конкретный вид программы для MetaTrader. В cTrader торговые программы называются cBot. Название формата само по себе не определяет торговую стратегию или результат.
Чего не гарантирует автоматизация
Автоматическое исполнение не устанавливает прибыльность. Владелец может импульсивно менять параметры, а ошибки кода и связи — нарушать задуманный порядок действий. Быстрая связь не устраняет повторную обработку одного сигнала.
Открытая позиция и незавершенный запрос
Дополнительный условный тест: каждый запрос содержит 100 единиц, один сигнал сохраняется 40 тиков, а до конца этого интервала еще не пришли ответы и обновления об открытых позициях. Если проверять только отсутствие уже открытой позиции, можно отправить 40 запросов на суммарные 4 000 единиц. Если до первой отправки сохранить идентификатор обрабатываемого сигнала и состояние незавершенного запроса, в этой модели уйдет один запрос на 100 единиц, а остальные 39 тиков не вызовут повторную отправку. Разница — 3 900 запрошенных единиц, а не доказанный объем исполнений, открытой позиции или убытка. При неоднозначном ответе сначала сверяют фактические заявки, сделки и позиции, затем решают, допустим ли повтор. Эта простая модель не проверяет все сбои, перезапуски и параллельные события реальной системы.
Проверьте понимание
Что лучше всего предотвращает 40 заявок от одного сохраняющегося сигнала?
Ответ и объяснения без JavaScript
Правильный ответ: Проверка позиций и уже обработанных сигналов.
Проверка позиций и уже обработанных сигналов.
Правило должно учитывать состояние стратегии, а не только условие по цене. Незавершенные запросы также требуют отдельного учета.
Более длинное название стратегии.
Название не меняет логику отправки заявок.
Более быстрое соединение.
Скорость не устраняет повторное срабатывание правила и может ускорить повторные отправки.
Источники и пределы применения
- MetaTrader 5: алгоритмическая торговля
Раздел платформы о торговых программах и советниках EA. Описание возможностей программы не доказывает прибыльность конкретной стратегии.
- cTrader Algo: программы и среда разработки
Документация среды cTrader Algo различает торговые программы cBot и пользовательские индикаторы; это платформенные виды программ.
- MQL5: ответ OrderSend и проверка исполнения
Успешный возврат функции сам по себе не означает исполнения сделки. Нужно проверять код ответа и последующие торговые события.
Документация описывает отдельные программные платформы и не устанавливает доступность финансового продукта или правила счета по языку читателя.
Учебные последовательности
Отметки общих терминов учитываются в нескольких последовательностях; сброс одной последовательности удаляет эти общие отметки и из других.
От плана к тестированию автоматизации
Сопоставьте платформу и правила исполнения, разделите тестовые выборки и оцените допущения о риске.
Шаг 2 / 12 · Отметки доступны при включенном JavaScript.
Для сохранения отметок включите JavaScript.