この戦略は,エリオット波理論と200日移動平均指標を組み合わせて,自動的なトレンドフォローと利益採取取引を達成する.その基本的な論理は,エリオット5波パターンが現れるときにトレンド方向を決定し,補助条件として200日移動平均を伴う取引信号を発行することです.
エリオット波理論は,市場価格変動を5波分に分けます.奇数波は動機波であり,偶数波は修正波です.波1,波3と波5の高点が順に押し上げ,波2と波4が順に効果的に引き下げると,それは上昇波の組み合わせとして判断され,牛市に属します.この時点で戦略は長くなっています.逆に,波1,波3と波5の低点が順に押し下げ,波2と波4が順に効果的に引き下げると,それは下向き波の組み合わせとして判断され,それは熊市に属します.この時点で戦略は短くなっています.
この戦略では,200日間の移動平均指標も補助判断条件として導入している.上向きまたは下向きのエリオット波パターンが特定され,その日の閉盤価格が200日間の移動平均線を超えると,ロングポジションと,その日の閉盤価格が200日間の移動平均線を下回る場合にのみショートポジションが取ることができる.
反対方向の5つの波が位置を退出します 反対方向の5つの波が位置を退出します
この戦略は,波理論とトレンドフォローする指標の利点を統合し,市場の重要なポイントを把握し,取引リスクを制御する上で良好なパフォーマンスを発揮する.しかし,価格情報だけに頼ることは,複雑な市場状況下で有効性を向上させる余地があることを意味します.長期にわたる安定した利益を達成するために,ライブ取引中に厳格な監視と継続的な調整が必要です.
/*backtest start: 2024-01-26 00:00:00 end: 2024-02-25 00:00:00 period: 4h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Elliott Wave Strategy with 200 SMA", overlay=true) // Elliott Wave Strategy wave1High = high[1] wave1Low = low[1] wave2High = high[2] wave2Low = low[2] wave3High = high[3] wave3Low = low[3] wave4High = high[4] wave4Low = low[4] wave5High = high[5] wave5Low = low[5] bullishWavePattern = wave3High > wave1High and wave4Low > wave2Low and wave5High > wave3High bearishWavePattern = wave3Low < wave1Low and wave4High < wave2High and wave5Low < wave3Low enterLong = bullishWavePattern and close > sma(close, 200) exitLong = bearishWavePattern enterShort = bearishWavePattern and close < sma(close, 200) exitShort = bullishWavePattern // Plotting 200 SMA sma200 = sma(close, 200) plot(sma200, color=color.blue, title="Moving Average 200") // Displaying "Razer Moving 200" message on chart if (enterLong) label.new(bar_index, low, "Long on Moving 200", color=color.green, textcolor=color.white) if (enterShort) label.new(bar_index, high, "Short on Moving 200", color=color.red, textcolor=color.white) if (enterLong) strategy.entry("Long", strategy.long) if (exitLong) strategy.close("Long") if (enterShort) strategy.entry("Short", strategy.short) if (exitShort) strategy.close("Short")