勢い の 突破 の 戦略

作者: リン・ハーンチャオチャン,日付: 2023年10月9日 15:15:22
タグ:

概要

これはブレイクアウト取引のイントラデイ取引戦略で,モメント指標と主要なサポート/レジスタンスレベルを使用します.トレンドを特定するためにChoppinessインデックスを組み込み,リスクを制御するためにトレンドが明確である場合にのみ取引します.

戦略の論理

この戦略は,トレンドを特定するためにChoppinessインデックスを使用する.低いChoppiness値は明確なトレンドを示し,高い値は統合を示します.戦略は,Choppinessが44以下になるとのみ取引されます.

入場信号では,H4,H5などを含む主力日中のサポート/レジスタンスレベルを計算します.価格がH4を上回ると長値になり,価格がL4を下回ると短値になります.

具体的には,次の日中のレベルを計算します.

  • ピボット = (高い + 低い + 閉じる) / 3
  • 範囲 = 高低
  • H1-H6 =ピボット + 範囲 * 比率
  • L1-L6 = ピボット - 範囲 * 比

このレベルを計算した後, H4 と L4 をキーブレイクレベルとして使用します.

価格がH4を突破すると,上昇勢力が増加し,戦略が長引く.価格がL4を下回ると,下落勢力が増加し,戦略が短引く.

利点分析

この戦略の利点は以下の通りです.

  1. 明確なトレンドを特定するために Choppiness を使えば 統合の失敗を回避できます

  2. 計算されたサポート/レジスタンスレベルは通常意味があります.これらのレベルからのトレードブレイクはより高い勝利確率を与えます.

  3. H4 と L4 の取引ブレイクが閉じる価格に近い場合,重要な日中のブレイクが記録されます.

  4. ブレイクシグナルには非常に高い勝利率があります. H4 と L4 の有効なブレイクは通常トレンドを継続します.

  5. シンプルで明快な論理で 初心者でも簡単に理解し実行できます

リスク分析

この戦略のリスクは以下のとおりです.

  1. トレンドを特定するために Choppiness に頼ることは失敗し,トレンドを誤解する可能性があります.

  2. 値が崩れ ストップを起こす可能性があります

  3. 突破信号は 速やかに逆転する 偽の突破信号かもしれません

  4. 全体的な傾向を考慮しない限り 混乱する市場では損失が蓄積する可能性があります

  5. ストップ・ロスはありません 極端な動きでは 巨大なシングル・トレード・ロスは可能です

解決策:

  1. 交差確認のための他の指標を追加し,正確性を向上させる.

  2. シングルトレード損失を制御するために移動ストップロスを実装します.

  3. 長期トレンドフィルターを組み込み,反トレンド取引を避ける.

  4. 偽の逃亡者を追うのを避けるため 再入国信号を追加します

オプティマイゼーションの方向性

この戦略は,次の方法でさらに最適化できます.

  1. より良い値を見つけるために Choppiness パラメータを最適化します

  2. H3とL3のような 異なるブレークアウトレベルをテストして 効率を上げます

  3. 利益保護とリスク管理のために移動ストップロスを追加します

  4. 偽の脱出による損失を避けるため 再入力の信号を追加します

  5. 長期トレンドフィルターを組み込み,反トレンド取引を避ける.

  6. 取引時間を最適化します.例えば,米国やヨーロッパでの取引のみです.

  7. 固定量や固定パーセントのような ポジションのサイズを決めるルールを追加します

  8. パラメータの微調整を分析する

結論

トレンドを特定した後にトレードブレイクアウトを行うのがコアアイディアです. シンプルな論理と良質な勝ち率があります. しかしリスクは存在し,リスクを制御し,収益性を向上させるためにさらなる改良が必要です. パラメータチューニング,ストップ損失,トレンドフィルターなどにより,非常に実用的なイントラデイブレイクアウトシステムになります. 効果的なイントラデイ取引戦略であるモメンタムブレイクアウトフレームワークを提供します.


/*backtest
start: 2023-09-08 00:00:00
end: 2023-10-08 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
//Created by AS
strategy(title="ASH1Strategy", shorttitle="AS_H1_Strategy", overlay=true) 
//sd = input(true, title="Show Daily Pivots?")
EMA = ema(close,3)

pivot = (high + low + close ) / 3.0 
range = high - low
h5 = (high/low) * close 
h4 = close + (high - low) * 1.1 / 2.0
h3 = close + (high - low) * 1.1 / 4.0
h2 = close + (high - low) * 1.1 / 6.0
h1 = close + (high - low) * 1.1 / 12.0
l1 = close - (high - low) * 1.1 / 12.0
l2 = close - (high - low) * 1.1 / 6.0
l3 = close - (high - low) * 1.1 / 4.0
l4 = close - (high - low) * 1.1 / 2.0
h6 = h5 + 1.168 * (h5 - h4) 
l5 = close - (h5 - close)
l6 = close - (h6 - close)

// Daily line breaks
//sopen = request.security(syminfo.tickerid, "D", open [1])
//shigh = request.security(syminfo.tickerid, "D", high [1])
//slow = request.security(syminfo.tickerid, "D", low [1])
//sclose = request.security(syminfo.tickerid, "D", close [1])
//
// Color
//dcolor=sopen != sopen[1] ? na : black
//dcolor1=sopen != sopen[1] ? na : red
//dcolor2=sopen != sopen[1] ? na : green

//Daily Pivots 
dtime_pivot = request.security(syminfo.tickerid, 'D', pivot[1]) 
dtime_h6 = request.security(syminfo.tickerid, 'D', h6[1]) 
dtime_h5 = request.security(syminfo.tickerid, 'D', h5[1]) 
dtime_h4 = request.security(syminfo.tickerid, 'D', h4[1]) 
dtime_h3 = request.security(syminfo.tickerid, 'D', h3[1]) 
dtime_h2 = request.security(syminfo.tickerid, 'D', h2[1]) 
dtime_h1 = request.security(syminfo.tickerid, 'D', h1[1]) 
dtime_l1 = request.security(syminfo.tickerid, 'D', l1[1]) 
dtime_l2 = request.security(syminfo.tickerid, 'D', l2[1]) 
dtime_l3 = request.security(syminfo.tickerid, 'D', l3[1]) 
dtime_l4 = request.security(syminfo.tickerid, 'D', l4[1]) 
dtime_l5 = request.security(syminfo.tickerid, 'D', l5[1]) 
dtime_l6 = request.security(syminfo.tickerid, 'D', l6[1]) 

//offs_daily = 0
//plot(sd and dtime_pivot ? dtime_pivot : na, title="Daily Pivot",color=dcolor, linewidth=2)
//plot(sd and dtime_h6 ? dtime_h6 : na, title="Daily H6", color=dcolor2, linewidth=2)
//plot(sd and dtime_h5 ? dtime_h5 : na, title="Daily H5",color=dcolor2, linewidth=2)
//plot(sd and dtime_h4 ? dtime_h4 : na, title="Daily H4",color=dcolor2, linewidth=2)
//plot(sd and dtime_h3 ? dtime_h3 : na, title="Daily H3",color=dcolor1, linewidth=3)
//plot(sd and dtime_h2 ? dtime_h2 : na, title="Daily H2",color=dcolor2, linewidth=2)
//plot(sd and dtime_h1 ? dtime_h1 : na, title="Daily H1",color=dcolor2, linewidth=2)
//plot(sd and dtime_l1 ? dtime_l1 : na, title="Daily L1",color=dcolor2, linewidth=2)
//plot(sd and dtime_l2 ? dtime_l2 : na, title="Daily L2",color=dcolor2, linewidth=2)
//plot(sd and dtime_l3 ? dtime_l3 : na, title="Daily L3",color=dcolor1, linewidth=3)
//plot(sd and dtime_l4 ? dtime_l4 : na, title="Daily L4",color=dcolor2, linewidth=2)
//plot(sd and dtime_l5 ? dtime_l5 : na, title="Daily L5",color=dcolor2, linewidth=2)
//plot(sd and dtime_l6 ? dtime_l6 : na, title="Daily L6",color=dcolor2, linewidth=2)

longCondition = close >dtime_h4
if (longCondition)
    strategy.entry("My Long Entry Id", strategy.long)
    


shortCondition = close <dtime_l4
if (shortCondition)
    strategy.entry("My Short Entry Id", strategy.short)
    


もっと