CCIゼロに基づくトレンドフォロー戦略


作成日: 2023-09-28 16:00:36 最終変更日: 2023-09-28 16:00:36
コピー: 0 クリック数: 770
1
フォロー
1617
フォロワー

概要

この戦略は,CCI指標のゼロの交差を,入場と出場の信号として利用し,トレンドの方向を捉える.CCI指標がマイナス値域からゼロを穿越するときに多めに,正値域からゼロを穿越するときに空いて,トレンドを追跡する動作の効果を実現する.

戦略原則

  • CCI指標の長さは20サイクルである.
  • CCI指数で0を着るとき,多入場し,ストップダメージラインは-100。
  • CCI指数の下0を打ったとき,空席で入場し,ストップダストラインは100。
  • CCI指数が再びゼロを交差する平仓条件.

この戦略の核心的な論理は,価格トレンドを判断する信号としてCCI指標のゼロの交差点を捕捉することです.CCI指標が負の領域から正の領域に入ると,価格が過剰な超売り領域から脱却し,上向きのトレンドが形成される可能性を示します.CCI指標が正の領域から負の領域に入ると,価格が過剰な超買い領域から脱却し,下向きのトレンドが形成される可能性を示します.

優位分析

  • CCI指数のゼロを交差してトレンドの方向を判断するCCI指数のより古典的な応用方法である.
  • 適切なパラメータの長さのCCI指標を使用すると,過剰なノイズ取引信号をフィルターし,主要なトレンド転換点をキャプチャできます.
  • 戦略はトレンド転換時に一度だけ入場し,ストップロスを設定することで,無意味な過剰な取引を減らすことができ,資金は大きなポケットを追求する.
  • CCI指数パラメータとストップダストは,戦略パラメータをより普遍的にするために最適化されています.

リスク分析

  • CCI指標は,偽突破のゼロの交差信号を生じ,不必要な損失を引き起こす可能性があります.
  • 止損距離の設定が不適切である場合,止損が緩やかすぎたり,狭すぎたりする可能性があります.
  • CCI指標のパラメータの長さは不合理に設定され,より短い周期の有効な取引機会をフィルターすることができます.
  • 価格のトレンドが形成されているが,CCI指数のゼロの交差信号が遅れて,入場が遅れているという一定のタイムミスのリスクがある.

対策として

  • CCIの偽交差を避けるために,他の指標と組み合わせて確認する.
  • 動的に止損距離を調整する.
  • CCIパラメータの長さを最適化して,異なる周期長さのトレンドを捉えることができます.
  • CCIの0桁の交差点を引く必要はありません.

最適化の方向

この戦略は,以下の方向からさらに最適化できます.

  1. CCI指標のパラメータの長さを最適化して,最適なパラメータの組み合わせを見つけます.異なる長さのパラメータを巡って,収益率と勝利率をテストして,最適なパラメータを見つけることができます.

  2. KDJ,MACDなどの他の指標の確認を追加し,CCI指標の偽突破が不要な損失を引き起こすのを避ける.価格が一定の価格区間を継続的に突破するように設定することができます.または他の指標が同時に信号を発信するときにのみ入場することができます.

  3. 動的にストップ距離を調整する.市場変動の程度に応じて,ストップ距離の区間範囲を自動的に調整できる.ストップ距離を下げることは,タイムリーなストップに有利だが,過度に敏感かもしれない.ストップ距離を増やすことは,継続的なトレンドに有利だが,大きな損失を引き起こす可能性がある.

  4. 入場条件を最適化してミスを減らす.入場条件を緩和し,CCI指標がゼロに近づく時に入場を始め,死守のゼロ点交差点ではなく,徐々にポジションを上げる.

  5. トレンドを判断し,エクジティング条件を足し,利益を最大化する.トレンドが逆転すると,価格が一定幅を再び引き戻すときにストップするなど,新しいエクジットシグナルを設定することができる.

要約する

この戦略は,CCI指標のゼロの交差点を利用して価格トレンドの方向を判断し,交差が起こる時に入場し,合理的な止損距離を設定し,トレンドの動作を効果的に追跡できます.戦略を最適化すると,安定した信頼できるトレンド追跡戦略になることができます.他の指標の確認,最適化パラメータの設定,エントリー条件の変更,反転退出メカニズムの追加などと組み合わせて,戦略の効果をさらに高めることができます.投資家は,自分のリスクの好みに応じて,適切な止損距離,ポジションの保持時間などのパラメータを選択し,この戦略を利用して利益を得ることができます.

ストラテジーソースコード
/*backtest
start: 2022-09-21 00:00:00
end: 2023-09-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("CCI Level Zero Strategy (by Marcoweb) v1.0", shorttitle="CCI_L_Z_Strat_v1.0", overlay=true)

///////////// CCI
CCIlength = input(20, minval=1, title="CCI Period Length") 
CCIoverSold = -100
CCIoverBought = 100
CCIzeroLine = 0
CCI = cci(hlc3, CCIlength)
price = hlc3
vcci = cci(price, CCIlength)

source = close
buyEntry = crossover(source, CCIzeroLine)
sellEntry = crossunder(source, CCIzeroLine)
plot(CCI, color=black,title="CCI")
p1 = plot(CCIoverSold, color=blue,title="-100")
p2 = plot(CCIoverBought, color=red,title="100")
p3 = plot(CCIzeroLine, color=orange,title="0")


///////////// CCI 0Trend v1.0 Strategy 
if (not na(vcci))

    if (crossover(CCI, CCIzeroLine))
        strategy.entry("CCI_L", strategy.long, stop=CCIoverSold,  comment="CCI_L")
    else
        strategy.cancel(id="CCI_L")
        
    if (crossunder(CCI, CCIzeroLine))
        strategy.entry("CCI_S", strategy.short, stop=CCIoverBought,  comment="CCI_S")
    else
        strategy.cancel(id="CCI_S")

//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)