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

MaStrategy

MaStrategy входит по пересечению быстрой и медленной скользящих средних.

Визуальная схема

Логика MaStrategy

Пример сигнала MaStrategy

Иллюстрации показывают общую логику и не являются рыночными данными. Точные пороги, подтверждения и параметры риска задаются конфигурацией стратегии.

Логика входа

  1. Берет snapshot индикаторов (maFast[], maSlow[]).
  2. На двух последних точках проверяет crossover:
  • bullish: fast пересекает slow снизу вверх
  • bearish: fast пересекает slow сверху вниз
  1. Выбирает side-конфиг (LONG или SHORT).
  2. Считает TP/SL/qty.
  3. Проверяет minRiskRatio, cooldown и MAX_CORRELATION.
  4. Возвращает entry.

Выходы

Если позиция открыта, противоположный MA-cross закрывает ее с кодом CLOSE_BY_OPPOSITE_MA_CROSS. Иначе стратегия возвращает POSITION_HELD.

Ключи конфигурации

Ключи сгруппированы по части стратегии, которой они управляют. Значение 0 или false отключает соответствующий необязательный фильтр, если не указано иное.

ГруппаКлючиНазначение
СредаENV, INTERVAL, MAKE_ORDERS, CLOSE_OPPOSITE_POSITIONS, BACKTEST_PRICE_MODEЗадают режим работы, интервал свечей, поведение ордеров и цену исполнения в бэктесте.
AI и MLAI_ENABLED, AI_MODE, MIN_AI_QUALITY, ML_ENABLED, ML_THRESHOLDУправляют необязательными решениями AI и ML и их порогами допуска.
РискRISK_FEE_RATE, RISK_SLIPPAGE_BPS, RISK_MARKET_IMPACT_BPS, MAX_LOSS_VALUE, TRADE_COOLDOWN_MSЗадают оценки комиссии, проскальзывания и влияния на рынок, размер позиции по лимиту убытка и паузу между входами.
Скользящие средниеMA_FAST, MA_SLOWЗадают периоды быстрой и медленной средних для поиска пересечения.
Разрыв среднихMA_MIN_CROSS_GAP_ATR, MA_MIN_CROSS_GAP_ATR_LONG, MA_MIN_CROSS_GAP_ATR_SHORT, MA_MAX_CROSS_GAP_ATR, MA_MAX_CROSS_GAP_ATR_LONG, MA_MAX_CROSS_GAP_ATR_SHORTОграничивают расстояние между средними после пересечения в единицах ATR, общее или по направлениям.
Качество сигналаMA_MIN_FAST_SLOPE_ATR, MA_REQUIRE_SLOW_SLOPE_ALIGNMENT, MA_REQUIRE_DIRECTIONAL_BODY, MA_MIN_BODY_ATR, MA_MIN_VOLUME_REL20, MA_MIN_VOLUME_REL20_LONG, MA_MIN_VOLUME_REL20_SHORT, MA_MAX_PRICE_DISTANCE_FAST_ATRТребуют достаточный наклон, направление и размер свечи, относительный объём и близость к быстрой средней.
Фильтр ориентираMA_MAX_CORRELATION, MA_MAX_CORRELATION_LONG, MA_MAX_CORRELATION_SHORTОтсекают сигналы с корреляцией к BTC выше общего или направленного предела.
Политика выходаMA_EXIT_ON_OPPOSITE_CROSS_LONG, MA_EXIT_ON_OPPOSITE_CROSS_SHORTОпределяют, закрывает ли противоположное пересечение каждое направление.
НаправленияLONG.*, SHORT.*Включают направления и задают тип ордера, цель, стоп и минимальное отношение доходности к риску.

Общие параметры запуска

  • ENV — режим запуска.
  • INTERVAL — таймфрейм.
  • MAKE_ORDERS — выполнять ордера или только считать сигналы.
  • BACKTEST_PRICE_MODE — режим цены исполнения в бэктесте.

AI/ML-параметры

  • AI_ENABLED — включает AI enrichment/gating.
  • MIN_AI_QUALITY — минимальное качество AI для исполнения.
  • ML_ENABLED — включает ML enrichment.
  • ML_THRESHOLD — порог ML-оценки.

Параметры торговли и риска

  • CLOSE_OPPOSITE_POSITIONS — закрывать противоположные позиции перед новым входом (через hook).
  • RISK_FEE_RATE, RISK_SLIPPAGE_BPS, RISK_MARKET_IMPACT_BPS — оценки комиссии, проскальзывания и влияния на рынок для допуска входа и расчёта позиции.
  • MAX_LOSS_VALUE — максимальный риск для вычисления qty.
  • MAX_CORRELATION — ограничение по корреляции с BTC.
  • TRADE_COOLDOWN_MS — пауза между сделками в миллисекундах.

Параметры индикаторов

  • MA_FAST — период быстрой скользящей средней.
  • MA_SLOW — период медленной скользящей средней.

Параметры сценария LONG

  • LONG.enable — включить/выключить long-сценарий.
  • LONG.direction — направление ордера (LONG).
  • LONG.TP — take-profit в процентах.
  • LONG.SL — stop-loss в процентах.
  • LONG.minRiskRatio — минимально допустимое риск/прибыль.

Параметры сценария SHORT

  • SHORT.enable — включить/выключить short-сценарий.
  • SHORT.direction — направление ордера (SHORT).
  • SHORT.TP — take-profit в процентах.
  • SHORT.SL — stop-loss в процентах.
  • SHORT.minRiskRatio — минимально допустимое риск/прибыль.

Используемые индикаторы (что означает каждый)

  • maFast — быстрая MA, используется для детекции пересечения.
  • maSlow — медленная MA, используется для детекции пересечения.
  • correlation — корреляция с BTC, используется как риск-guard.

Содержимое сигнала

figures:

  • линия ma-fast
  • линия ma-slow
  • точка ma-cross

additionalIndicators:

  • crossKind
  • maFastPrev, maFastCurrent
  • maSlowPrev, maSlowCurrent
  • maGap
  • correlation

Пример рабочей конфигурации

{
"ENV": "CRON",
"INTERVAL": "15",
"MA_FAST": 21,
"MA_SLOW": 55,
"TRADE_COOLDOWN_MS": 0,
"LONG": {
"enable": true,
"direction": "LONG",
"TP": 2,
"SL": 1,
"minRiskRatio": 1.5
},
"SHORT": {
"enable": true,
"direction": "SHORT",
"TP": 2,
"SL": 1,
"minRiskRatio": 1.5
}
}

Запуск

npx @tradejs/cli backtest --user root --config MaStrategy:base --connector bybit --timeframe 15
npx @tradejs/cli signals --user root --timeframe 15