デュアル・スーパートレンド戦略は,デュアル・スーパートレンドチャネルシステムを組み込んだ定量的な取引戦略である. 真の範囲変動を計算し,価格突破を監視するための2バンドチャネルを構築し,トレンドフォローと逆転取引を可能にします.
デュアル・スーパートレンド戦略は,スーパートレンド指標から派生したものです.スーパートレンドは,価格のトレンドと主要なサポート/レジスタンスレベルを決定するための上下帯で構成されています.デュアル・スーパートレンドは,その上に2つのチャネルを構築します:統合チャネルとブレイキングチャネル.
この戦略は,まず真の範囲と平均的な真の範囲を計算する.その後,長さと倍数パラメータに基づいて基本帯を計算する.次に,価格が基本帯を突破した場合,破線チャネルを構築する.したがって,ダブルチャネルシステムが確立される.
価格が異なるチャネルを横断するときに,二チャネル構造では,取引信号が生成されます.
2チャネルモニタリングにより,トレンドフォローと逆転の記録の両方が可能になります.
双チャネルシステムによるダブルスーパートレンド戦略には以下の利点があります.
双重スーパートレンド戦略には以下のリスクもあります.
パラメータ範囲を調整し,フィルターを追加し,位置サイズを制御することによってリスクを軽減できます.
二重スーパートレンド戦略は,次の側面で最適化できます.
さらに最適化することで,より強力なパフォーマンスのためにパラメータフィッティングとウォーク・フォワード・アナリティスを改善できます.
デュアル・スーパートレンド戦略は,トレンドフォローと逆転捕捉のためのダブルチャネルメカニズムを利用する.パラメータ最適化によって安定したトレード戦略を開発することができるが,制限がある.リスクコントロールアドオンが必要である.全体として,デュアル・スーパートレンドは短期的定量的なトレード戦略のための堅牢な枠組みを提供します.
/*backtest start: 2022-11-08 00:00:00 end: 2023-11-14 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Double Supertrend Strategy", overlay=true) // Define your parameters length = input(10, title="Length") multiplier = input(3, title="Multiplier") // Calculate the True Range and Average True Range trueRange = max(high - low, max(abs(high - close[1]), abs(low - close[1]))) averageTrueRange = sma(trueRange, length) // Calculate the basic upper and lower bands basicUpperBand = hl2 + (multiplier * averageTrueRange) basicLowerBand = hl2 - (multiplier * averageTrueRange) // Calculate the final upper and lower bands finalUpperBand = basicUpperBand finalLowerBand = basicLowerBand finalUpperBand := close[1] > finalUpperBand[1] ? max(basicUpperBand, finalUpperBand[1]) : basicUpperBand finalLowerBand := close[1] < finalLowerBand[1] ? min(basicLowerBand, finalLowerBand[1]) : basicLowerBand // Determine if we're currently in an uptrend or downtrend uptrend = close > finalLowerBand[1] downtrend = close < finalUpperBand[1] // Plot the bands plot(uptrend ? finalUpperBand : na, color=color.green, linewidth=2) plot(downtrend ? finalLowerBand : na, color=color.red, linewidth=2) // Define your conditions for entering and exiting trades if (uptrend) strategy.entry("Buy", strategy.long) else if (downtrend) strategy.entry("Sell", strategy.short)