高級スーパートレンド追跡戦略

作者: リン・ハーンチャオチャン, 日付: 2023-12-12 12:27:36
タグ:

img

この戦略は,トレンドの方向性を決定するためにスーパートレンド指標を使用し,低リスクトレンドを追求するために,ストップロスを設定し,利益を得るためにATR指標を組み合わせます.

戦略原則

この戦略のコア指標はスーパートレンドである.スーパートレンド指標は,価格突破に基づいてトレンド方向を判断するためにATRを組み合わせます.特定の計算方法は以下のとおりです:

上部帯:上部帯 = 現在の価格 - (ATR × マルチプリキュア) 下帯:下帯 = 現在の価格 + (ATR x マルチプリキュア)

価格が上位帯を超えると上昇傾向であり,価格が下位帯を超えると下落傾向である.

この戦略は,スーパートレンド指標に基づいてトレンド方向を決定し,上昇傾向ではロング,下落傾向ではショートする.同時に,戦略は,ATR指標の平均変動範囲を使用してストップロスを設定し,リスクを制御するために利益ポジションを取ります.

戦略 の 利点

  • スーパートレンド指標を使用してトレンドを決定し,市場のトレンドを正確に把握します
  • ATR ストップ損失と 利益を取ることは,単一の損失を効果的に制御します.
  • トレンドとストップロスの組み合わせにより,全体的に高い得率の取引を実現します.
  • 市場に入場し,ストップ・ロスを容易にして,短期追跡に適しています.

戦略 の リスク

  • スーパートレンドインジケーターは再塗装の問題があり,市場への入力に信号を完全に頼ることはできません.
  • ATRインジケーターは,激しい変動に完全に適応できない,ストップ損失があまりにも近く,停止される傾向があります.
  • 戦略そのものが 傾向の質を判断できず 手動による検証が必要です

リスク軽減方法:

  1. 誤ったブレイク時の逆転操作を避けるために,トレンドの質を手動で確認する.
  2. ストップ・ロスのポイントを適度に緩め,通常の波動性中の小さな変動によって停止されないようにする.

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

  • 傾向の質を判断するために多要素検証を増やす
  • ATR パラメータを動的に調整するために波動性指標を組み合わせる
  • 入口と出口のタイミングを判断するのに役立つ機械学習モデルを追加する
  • ストップ・ロスのメカニズムを最適化して,通常の変動が停止されないようにする

この戦略は,トレンドの方向性を決定するためにスーパートレンド指標を使用し,トレード後に低リスクトレンドを達成するためにATR指標でストップ・ロスを設定し,利益を上げます. 戦略の考え方は明確で理解しやすいです. 個人的リスクの好みに応じてパラメータを調整できます. これは汎用的なトレンド追跡戦略です. しかし,戦略自体はトレンドの質を判断することはできません. そのため,誤った動作のリスクを減らすために他の指標またはモデルと一緒に使用することをお勧めします.


/*backtest
start: 2022-12-05 00:00:00
end: 2023-12-11 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Advanced Trend Strategy", overlay=true)

// Input parameters
length = input(14, title="ATR Length")
multiplier = input(1.5, title="Multiplier")
src = close

// Calculate ATR
atr_value = ta.atr(length)

// Calculate Supertrend
upst = src - multiplier * atr_value
downst = src + multiplier * atr_value

var float supertrend = na
var float trend_direction = na

if (na(supertrend))
    supertrend := upst

if (src > supertrend)
    supertrend := upst

if (src < supertrend)
    supertrend := downst

// Buy and Sell conditions
buyCondition = ta.crossover(src, supertrend)
sellCondition = ta.crossunder(src, supertrend)

// Execute Buy and Sell orders
if (buyCondition)
    strategy.entry("Buy", strategy.long)

if (sellCondition)
    strategy.close("Buy")  // Close the long position

if (sellCondition)
    strategy.entry("Sell", strategy.short)

if (buyCondition)
    strategy.close("Sell")  // Close the short position

// Plot Supertrend
plot(supertrend, color=color.blue, title="Supertrend")

// Highlight bars based on trend direction
bgcolor(src > supertrend ? color.new(color.green, 95) : src < supertrend ? color.new(color.red, 95) : na)

// Plot ATR for reference
plot(atr_value, color=color.gray, title="ATR", linewidth=2)

// Plot arrows for buy and sell signals
plotshape(buyCondition, color=color.green, style=shape.triangleup, location=location.belowbar, size=size.small, title="Buy Signal")
plotshape(sellCondition, color=color.red, style=shape.triangledown, location=location.abovebar, size=size.small, title="Sell Signal")


もっと