Эта стратегия сочетает в себе теорию волны Эллиота и 200-дневный индикатор скользящей средней, чтобы достичь автоматизированной торговли, следующей за трендом и получающей прибыль.
Теория волны Эллиота разделяет колебания цен на рынке на 5 сегментов волн. Нечетные волны являются движущими волнами, а четные волны являются коррекционными волнами. Когда высокие точки Wave1, Wave3 и Wave5 подталкиваются вверх в последовательности, а Wave2 и Wave4 эффективно отступают в последовательности, это рассматривается как комбинация восходящих волн, которая относится к бычьему рынку. Стратегия в это время длится. Наоборот, когда низкие точки Wave1, Wave3 и Wave5 подталкиваются вниз в последовательности, а Wave2 и Wave4 эффективно отступают в последовательности, это рассматривается как комбинация нисходящих волн, которая относится к медвежьему рынку. Стратегия в это время идет коротко.
Стратегия также вводит 200-дневный скользящий средний индикатор в качестве дополнительного условия суждения. Только когда выявляется бычий или медвежий шаблон волны Эллиотта, и цена закрытия дня превышает 200-дневную скользящую среднюю линию, можно занять длинную позицию, а короткую позицию можно занять только в том случае, если цена закрытия дня превышает 200-дневную скользящую среднюю линию.
После того, как длинный и короткий сигналы выпускаются, в противоположном направлении пять волн выходят из позиции.
Эта стратегия объединяет в себе преимущества волновой теории и индикаторов, следующих за трендом, и хорошо работает в области захвата ключевых точек рынка и контроля торговых рисков. Однако, полагаясь исключительно на информацию о ценах, есть возможность повысить эффективность в сложных рыночных условиях.
/*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")