
RB定量取引三合一戦略は,大盤熱指数OBV,中短期運動量指数CMO,長線運動量指数Coppock曲線を組み合わせた複合戦略である.この戦略は,市場多空熱,中短期傾向,長線傾向の3つの次元を総合的に考慮し,取引信号を形成し,より信頼性の高い入場を達成する.
この戦略の取引シグナルは以下の3つの指標の組み合わせから得られます.
OBV:大盤の熱度,多空力の強弱を反映する.OBVの上昇は多方勢力の強化を意味し,OBVの低下は空軍勢力の強化を意味する.
CMO:中短期の価格変化率のトレンド性.CMOは正の代表として中短期の上昇傾向にあり,CMOは負の代表として下降傾向にある.
コッポック曲線:長期の価格変動率の傾向性を反映する. コッポック曲線上は長線が上昇段階にあることを示し,下は下降段階を示している.
OBVが上昇し,CMOとCoppockの曲線が同時に上昇すると買入シグナルが生じます.これは,大株の多方勢力が強まり,中長期的には上昇通路にあり,良い買入点です.
逆に,OBVが下がると,CMOとCoppockの曲線が同時に下がるとセールシグナルが生じます。これは,空軍の勢力が強まり,中長期の下行通路が開かれ,比較的に良い出場時間である。
この戦略の最大の利点は,市場の空気熱,中短期トレンド,および長期トレンドの3つの次元を総合的に考慮することであり,大盤面,中短期面,および長期面からトレンド異動が一致した後に取引シグナルが生じるため,偽突破を効果的に避けることができる.CMOの感度を利用しながら,短期機会を把握しながら,Coppock曲線は長線波を供給し,大方向が正しいことを保証する.
また,この戦略は,両方向の取引信号の構築を同時に利用することで,よりよい資金活用率を実現できます.
この戦略の主なリスクは,コッポック曲線とCMOが採用するROC計算周期が長いため,一定の遅れがあることである.市場突発事件が激変するときに,コッポック曲線とCMO指標は判断を遅らせる可能性がある.この場合,OBVの迅速な判断に頼る必要がある.しかし,OBVは累積エネルギー線として,突発事件にもいくつかのK線の遅れがある.
また,3つの指標を単純に組み合わせて判断し,指標間の重み設定を考慮しないことも判断の正確さに影響する.
この戦略は,次の点から改善できます.
コッポック曲線とCMO指数には自主ROC周期設定を採用し,指数のパラメータが市場の変化の頻度に自動的に適応できるようにする.
指標の重み設定を高め,判断のより正確な指標が主導権を握り,信号の安定性を向上させる.
ストップ・ロスの策略を増やし,ATRのような指数を使用して取引のストップ・ロスの範囲を設定し,単一取引の最大損失を効果的に制御する.
OBVの迅速な応答の優位性を発揮し,OBVの逆転をストップ・スポンとして設定し,大きな損失を回避する.
RB定量取引の三合一戦略は,大盤熱,中短期運動量,および長期運動量という3つの次元を総合的に考慮して,買入シグナルを形成する.それは,複数の指標の優位性を融合し,市場の空白状態と中長期の傾向が一致した後に取引シグナルを生成することを保証する.主な優位性は,シグナルが安定して信頼性があり,偽突破を効果的に回避する.その後の最適化設計により,戦略の実戦効果をさらに向上させる.
/*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)