Перейти к основному содержимому

Процесс работы и термины

В документации TradeJS используются общепринятые термины систематической торговли. Приведённые ниже определения разделяют исследование, проверку и реальное исполнение.

Торговые сущности

  • Стратегия — детерминированные правила, которые преобразуют рыночные данные и текущее состояние в решение.
  • Конфигурация — параметры стратегии, включая правила риска и выхода. Конфигурацию следует рассматривать вместе с версией стратегии, таймфреймом и набором рынков.
  • Набор инструментов — символы, доступные для расчёта. Его можно ограничить для всего запуска или отдельной стратегии.
  • Сигнал — решение стратегии: возможный вход в длинную или короткую позицию, выход либо отсутствие действия. Сигнал не означает, что ордер был принят или исполнен.
  • Ордер — инструкция, отправленная на биржу или брокеру. Она может быть принята, отклонена, частично или полностью исполнена либо отменена.
  • Позиция — фактическая рыночная экспозиция. Управление открытой позицией продолжается, даже когда новые входы поставлены на паузу.

Исследование и проверка

  • Бэктест — моделирование на исторических данных. Результат зависит от качества данных, комиссий, проскальзывания, задержек, правил исполнения и других допущений.
  • Сетка параметров — набор комбинаций параметров для бэктеста. Чем шире поиск, тем выше риск переобучения и тем важнее независимая проверка.
  • Проверка вне выборки — оценка на данных, которые не использовались для выбора или настройки конфигурации.
  • Воспроизведение — расчёт конкретной развёрнутой конфигурации на исторических закрытых свечах. Он помогает повторить решения и найти расхождения, но не заменяет качественный план исследования.
  • Соответствие реальной работе — сравнение решений, записанных при работе с текущим рынком, с решениями, восстановленными для тех же инструментов и периода.

Реальная торговля

  • Развёртывание — именованная настройка в tradejs.config.ts, которая связывает коннектор, счёт, стратегии, их конфигурации и набор инструментов.
  • Расчёт на текущем рынке — обработка новых закрытых свечей и запись решений без обязательного размещения ордеров.
  • Реальное исполнение — расчёт на текущем рынке с явно разрешённым размещением ордеров.
  • Журнал работы — записи о решениях, ордерах и исполнениях с временем, версиями стратегии, пакетов и конфигурации, необходимыми для диагностики.

В документации слово реальный относится к текущим рыночным данным, а production — к развёрнутому окружению. Ни одно из них не означает, что размещение ордеров включено.

Рекомендуемая последовательность

  1. Сформулируйте гипотезу и допущения об исполнении.
  2. Проверьте ограниченный и обоснованный набор параметров.
  3. Проведите проверку вне выборки и на разных рыночных режимах.
  4. Зафиксируйте версию стратегии и полную конфигурацию.
  5. Воспроизведите развёрнутую конфигурацию и сравните решения.
  6. Запустите расчёт на текущем рынке без размещения ордеров.
  7. При приемлемых рисках и результатах начните ограниченный реальный запуск.

Команды TradeJS описаны в разделах Как работают бэктесты и От бэктеста к реальной торговле.