トリプルハル移動平均と一目均衡表に基づくトレンド取引戦略


作成日: 2023-12-25 13:40:10 最終変更日: 2023-12-25 13:40:10
コピー: 0 クリック数: 606
1
フォロー
1621
フォロワー

トリプルハル移動平均と一目均衡表に基づくトレンド取引戦略

概要

この戦略は,ハル移動平均と一目均衡表の2つの指標を組み合わせて,トレンド追跡取引システムを実現する.このシステムは,中短線トレンドを捕捉し,トレンド取引を行う.

戦略原則

この戦略は,価格の傾向の方向を判断するためにHull移動平均を使用する.Hull移動平均は,価格の変化により迅速に反応するために,移動平均の最適化のための指標である.この戦略は,Hull MAの6期,3期および1.5期を含むHull移動平均の三重システムを使用する.

さらに,戦略は,一目平衡表の変換線と遅延線を組み合わせている.この2つの指標は,価格の中長線傾向を反映している.戦略は,三重のHull MAと一目平衡表の指標を組み合わせて,取引信号を形成している.

具体的には,戦略は,三重のHull MA:n1,n2,n2ma。と,一目均衡表の2つの指標:leadLine1とleadLine2。を計算し,その後 post1とpost2を最終取引指標として計算する。

post1がpost2を突破するときは,多めに;post1がpost2を突破する時は,空いてください.このようにして,価格の短線トレンドを追跡して,トレンドトレンドを行うことができます.

優位分析

この戦略は以下の利点があります.

  1. 双重指標を組み合わせて,システムの安定性を向上させる.
  2. Hull MAを使用すると,トレンドの変化を迅速に捉えることができます.
  3. 一目平衡表の指標は偽突破をフィルターすることができる.
  4. 複数のHull MAを使用することで,価格の中間の短線トレンドを効果的に追跡できます.
  5. 戦略の論理はシンプルでわかりやすく,理解しやすく,最適化できます.

リスク分析

この戦略にはいくつかのリスクがあります.

  1. 震災の際には,複数の誤信号が発生する可能性があります.
  2. パラメータの設定を間違えた場合,戦略がうまく機能しない可能性があります.
  3. 重要なニュースを公開する際にはこの策略を使用しないでください.

対策として

  1. 適切なパラメータを調整して,いくつかのノイズをフィルターします.
  2. パラメータを最適化して,最適なパラメータの組み合わせを探すことをお勧めします.
  3. 大事なニュースが発表される前後,取引を避けましょう.

最適化の方向

この戦略は,以下の点で最適化できます.

  1. 異なる長さのHull MAの組み合わせを試してみてください.
  2. テストは,一目平衡表の指標を増加または減少させる.
  3. 取引指標post1とpost2のスムーズな最適化について.
  4. ストップ・ロジックを追加し,単一損失を制御します.

要約する

この戦略は,Hull MAと一目均衡表の指標を統合して,シンプルで実用的なトレンド追跡取引システムを構築している.戦略は,反応速度が速いので,価格の短線トレンドを効果的に捕捉することができる.このシステムは,パラメータ調整と他のフィルタリング指標を追加することによって,さらにテストと最適化の価値があり,より良い取引パフォーマンスを得る.

]

ストラテジーソースコード
/*backtest
start: 2023-12-17 00:00:00
end: 2023-12-24 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
//                                                HULL & ICHIMOKU & MATHS
strategy("3 HULLs & ICHIMOKU divided by PRICE", shorttitle="3H&I/P", overlay=true, default_qty_type=strategy.percent_of_equity, max_bars_back=720, default_qty_value=100, calc_on_order_fills=true, calc_on_every_tick=true, pyramiding=0)
keh=input(title="Hull MA period",defval=6)
p=ohlc4[1]
n2ma=2*wma(p,round(keh/2))
nma=wma(p,keh)
diff=n2ma-nma
sqn=round(sqrt(keh))
n2ma1=2*wma(p[1],round(keh/2))
nma1=wma(p[1],keh)
diff1=n2ma1-nma1
sqn1=round(sqrt(keh))
n1=wma(diff,sqn)
n2=wma(diff1,sqn)
conversionPeriods = input(9, minval=1, title="Conversion Line Periods")
basePeriods = input(26, minval=1, title="Base Line Periods")
laggingSpan2Periods = input(52, minval=1, title="Lagging Span 2 Periods")
displacement = input(26, minval=1, title="Displacement")
donchian(len) => avg(lowest(len), highest(len))
conversionLine = donchian(conversionPeriods)
baseLine = donchian(basePeriods)
leadLine1 = avg(conversionLine, baseLine)
leadLine2 = donchian(laggingSpan2Periods)
post1=((n1[1]*3)+leadLine1)/p
post2=((n2[1]*3)+leadLine2)/p
if (post1<post2)
    strategy.entry("buy", strategy.long, comment="BUY")
if (post1>post2)
    strategy.entry("sell", strategy.short, comment="SELL")