AdaptiveTrendChannel
AdaptiveTrendChannel - встроенная TypeScript-стратегия из @tradejs/strategies.
Она прогоняет свечи через adaptive channel engine, ищет bullish/bearish channel flips и рассчитывает вход от расстояния до границы канала, которая используется как stop.
Логика входа
- Создает runtime state через
createAdaptiveTrendChannelEngine({ initialCandles, config }). - На каждой свече читает
runtimeState.signalиruntimeState.snapshot. - Ждет channel flip signal.
- Выбирает side config
LONGилиSHORTпо направлению сигнала. - Применяет context filters через
getAdaptiveTrendChannelFilterSkipCode(...). - Использует границу канала как stop-loss:
- long stop:
signal.floor - short stop:
signal.roof
- long stop:
- Считает target от
ADAPTIVE_TREND_CHANNEL_TARGET_R_MULT. - Считает qty от
MAX_LOSS_VALUE / riskDistanceс учетомFEE_PERCENT. - Возвращает
entryс channel figures иadaptiveTrendChannelContext.
Entry codes:
ADAPTIVE_TREND_CHANNEL_BULLISH_FLIPADAPTIVE_TREND_CHANNEL_BEARISH_FLIP
Выходы
Если позиция уже открыта:
ADAPTIVE_TREND_CHANNEL_BREAK_EXIT, когдаADAPTIVE_TREND_CHANNEL_EXIT_ON_CHANNEL_BREAK=trueи цена пробивает активную границу канала.ADAPTIVE_TREND_CHANNEL_OPPOSITE_FLIP_EXIT, когдаADAPTIVE_TREND_CHANNEL_EXIT_ON_OPPOSITE_FLIP=trueи engine дает opposite flip.- иначе
POSITION_EXISTS.
Параметры
Runtime:
ENV,INTERVAL,MAKE_ORDERS,CLOSE_OPPOSITE_POSITIONSBACKTEST_PRICE_MODEAI_ENABLED,AI_MODE,MIN_AI_QUALITYML_ENABLED,ML_THRESHOLD
Risk и индикаторы:
FEE_PERCENT,MAX_LOSS_VALUEMA_FAST,MA_MEDIUM,MA_SLOWOBV_SMA,ATR,ATR_PCT_SHORT,ATR_PCT_LONGBB,BB_STD,MACD_FAST,MACD_SLOW,MACD_SIGNAL
Channel model:
ADAPTIVE_TREND_CHANNEL_REGRESSION_BARSADAPTIVE_TREND_CHANNEL_ENVELOPE_BARSADAPTIVE_TREND_CHANNEL_ATR_STRETCHADAPTIVE_TREND_CHANNEL_VOLATILITY_LOOKBACKADAPTIVE_TREND_CHANNEL_TARGET_R_MULTADAPTIVE_TREND_CHANNEL_MIN_BREAKOUT_DISTANCE_PCTADAPTIVE_TREND_CHANNEL_MAX_BREAKOUT_DISTANCE_PCTADAPTIVE_TREND_CHANNEL_MIN_CHANNEL_WIDTH_PCTADAPTIVE_TREND_CHANNEL_MAX_CHANNEL_WIDTH_PCTADAPTIVE_TREND_CHANNEL_MIN_VOLUME_REL20ADAPTIVE_TREND_CHANNEL_REQUIRE_CONTEXT_ALIGNMENTADAPTIVE_TREND_CHANNEL_EXIT_ON_OPPOSITE_FLIPADAPTIVE_TREND_CHANNEL_EXIT_ON_CHANNEL_BREAKADAPTIVE_TREND_CHANNEL_MAX_FIGURE_POINTS
Side configs:
LONG.enable,LONG.direction,LONG.minRiskRatioSHORT.enable,SHORT.direction,SHORT.minRiskRatio
Payload сигнала
Стратегия сохраняет:
additionalIndicators.adaptiveTrendChannelContext- channel figures из
buildAdaptiveTrendChannelFigures(...) orderPlan.qtyorderPlan.stopLossPrice- один take-profit по рассчитанному target
Частые skip reasons
NO_ADAPTIVE_TREND_CHANNEL_FLIPDEV_TRADE_COOLDOWNSTRATEGY_DISABLED- filter-specific code из
getAdaptiveTrendChannelFilterSkipCode(...) INVALID_STOPINVALID_QTYRISK_RATIO:<value>
Что проверять
Сначала смотрите generated channel figures, затем сравнивайте метрики. Стратегия зависит от structural channel state, поэтому gaps в данных и длина warmup могут менять ранние сигналы.