Стратегия RB Quant Trading Combo представляет собой композитную стратегию, которая сочетает в себе индикатор OBV на основе объема, динамический осциллятор CMO и долгосрочный индикатор импульса кривую Коппока. Эта стратегия учитывает настроение рынка, среднесрочную тенденцию и долгосрочную тенденцию из трех измерений и генерирует торговые сигналы для более надежного выхода на рынок.
Торговые сигналы этой стратегии исходят из комбинации следующих трех показателей:
OBV: отражает настроение рынка и силу быков против медведей.
CMO: показывает среднесрочную тенденцию изменения цены.
Кривая Коппока: отслеживает долгосрочную тенденцию изменения цены.
Сигнал покупки генерируется, когда OBV повышается, а кривая CMO и Коппока появляются вместе. Это указывает на то, что настроение рынка поддерживает быков с сохранением среднесрочного и долгосрочного восходящего тренда, что делает его хорошей возможностью для покупки.
Сигнал продажи запускается, когда OBV снижается, а кривая CMO и кривая Коппока снижается в унисон. Это показывает, что медведи контролируют среднесрочный длительный канал нисходящего тренда, что служит хорошим моментом для выхода из позиции.
Наибольшее преимущество этой стратегии заключается в синтезе рыночных настроений, среднесрочных и долгосрочных тенденций с трех точек зрения. Торговые сигналы формируются только после подтверждения изменения тренда в широте рынка, среднесрочном и долгосрочном горизонте, тем самым эффективно избегая ложного прорыва. Между тем кривая Коппока обеспечивает долгосрочную направленную предвзятость, в то время как CMO быстро захватывает краткосрочные возможности.
Еще одно преимущество заключается в двухнаправленных сигналах покупки и продажи, позволяющих эффективно использовать капитал.
Основные риски этой стратегии возникают из-за отставания кривой Коппока и CMO из-за их длинных периодов расчета ROC. Внезапные волатильные рыночные события могут не вызывать своевременные сигналы от этих двух долгосрочных показателей. Быстрое определение должно рассчитывать на OBV в таких сценариях. Однако OBV как индикатор накопленного объема также страдает от нескольких бар задержки перед внезапными поворотными точками.
Кроме того, простое сочетание трех показателей без взвешивания может поставить под угрозу точность оценки.
В дальнейшем стратегия может быть улучшена в следующих аспектах:
Принять адаптивные периоды ROC для кривой Коппока и ООП для автоматической калибровки параметров, реагирующих на изменения режима рынка.
Внедрить систему взвешивания, подчеркивающую сигналы от более точных показателей, улучшая общее качество и стабильность сигнала.
Включить стоп-лосс, основанный на измерениях волатильности, таких как ATR, эффективно ограничивая максимальную потерю на сделку.
Используйте быстрое изменение OBV для измерения сигналов остановки потерь, избегая больших потерь.
Стратегия RB Quant Combo синтезирует широту рынка, среднесрочный и долгосрочный импульс для генерации сигналов покупки / продажи, объединяя сильные стороны нескольких индикаторов. Торговые возможности возникают только после выравнивания рыночных настроений и среднесрочных тенденций.
/*backtest start: 2023-02-13 00:00:00 end: 2024-02-19 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("RB - OBV Coppock CMO Strategy", overlay=true) // Input for CMO period cmo_period = input(14, title="Chande Momentum Oscillator Period") // Input for Coppock Curve periods coppock_long = input(14, title="Coppock Curve Long ROC Period") coppock_short = input(11, title="Coppock Curve Short ROC Period") coppock_wma = input(10, title="Coppock Curve WMA Period") // Thresholds for CMO cmo_buy_threshold = input(50, title="CMO Buy Threshold") cmo_sell_threshold = input(-50, title="CMO Sell Threshold") // Calculating OBV obv = cum(close > close[1] ? volume : close < close[1] ? -volume : 0) // Calculating Coppock Curve roc_long = roc(close, coppock_long) roc_short = roc(close, coppock_short) coppock_curve = wma(roc_long + roc_short, coppock_wma) // Calculating Chande Momentum Oscillator cmo = cmo(close, cmo_period) // Generate buy and sell signals buy_signal = obv > obv[1] and coppock_curve > 0 and coppock_curve > coppock_curve[1] and cmo > cmo_buy_threshold sell_signal = obv < obv[1] and coppock_curve < 0 and coppock_curve < coppock_curve[1] and cmo < cmo_sell_threshold // Plotting signals on the chart plotshape(series=buy_signal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY") plotshape(series=sell_signal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL") // Setting up the strategy entry and exit points if (buy_signal) strategy.entry("Buy", strategy.long) if (sell_signal) strategy.close("Buy") // Plot OBV and Coppock Curve for reference plot(obv, title="On Balance Volume", color=color.blue) hline(0, "Zero Line", color=color.gray) plot(coppock_curve, title="Coppock Curve", color=color.purple) plot(series=cmo, title="Chande Momentum Oscillator", color=color.orange)