この戦略は,価格がチャネルを突破したときの購入・売却信号を生成するために,平均真差 (ATR) 指標に基づいてスーパートレンドチャネルを構築する.トレンドフォローとストップ損失管理の利点を組み合わせます.
スーパートレンドチャネルの上下帯は以下のように計算されます.
上部帯 = (最高価格 + 最低価格) / 2 + ATR ((n) * 因数 下帯 = (最高価格 + 最低価格) / 2 - ATR (n) * 因数
ATR (n) は n 期間の真平均範囲であり,ファクターは調整可能なパラメータで,デフォルトは 3 です.
閉じる価格が上位帯を超えると上昇信号が生成される.閉じる価格が下位帯を超えると下位信号が生成される.この戦略は,これらの信号に基づいてエントリーと出口を決定する.
リスク解決方法
この戦略は,トレンドトラッキングとストップ損失管理のためにスーパートレンドチャネルを使用する.ATR期間のマッチとファクタルパラメータは極めて重要です.次のステップは,パラメータチューニング,シグナルフィルタリングなどを通じて戦略をさらに最適化し,より複雑な市場環境に適応できるようにすることです.
/*backtest start: 2023-01-11 00:00:00 end: 2024-01-17 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Supertrend Backtest", shorttitle="STBT", overlay=true) // Input for ATR Length atrLength = input.int(10, title="ATR Length", minval=1) atrFactor = input.float(3.0, title="Factor", minval=0.01, step=0.01) // Calculate SuperTrend [supertrend, direction] = ta.supertrend(atrFactor, atrLength) supertrend := barstate.isfirst ? na : supertrend // Define entry and exit conditions longCondition = ta.crossover(close, supertrend) shortCondition = ta.crossunder(close, supertrend) // Plot the SuperTrend plot(supertrend, color=color.new(color.blue, 0), title="SuperTrend") // Plot Buy and Sell signals plotshape(series=longCondition, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title="Buy Signal") plotshape(series=shortCondition, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title="Sell Signal") // Strategy Entry and Exit strategy.entry("Long", strategy.long, when=longCondition) strategy.entry("Short", strategy.short, when=shortCondition)