Стратегия Elliott Wave с 200-дневной скользящей средней

Автор:Чао Чжан, Дата: 2024-02-26 10:49:25
Тэги:

img

Обзор

Эта стратегия сочетает в себе теорию волны Эллиота и 200-дневный индикатор скользящей средней, чтобы достичь автоматизированной торговли, следующей за трендом и получающей прибыль.

Принцип стратегии

Теория волны Эллиота разделяет колебания цен на рынке на 5 сегментов волн. Нечетные волны являются движущими волнами, а четные волны являются коррекционными волнами. Когда высокие точки Wave1, Wave3 и Wave5 подталкиваются вверх в последовательности, а Wave2 и Wave4 эффективно отступают в последовательности, это рассматривается как комбинация восходящих волн, которая относится к бычьему рынку. Стратегия в это время длится. Наоборот, когда низкие точки Wave1, Wave3 и Wave5 подталкиваются вниз в последовательности, а Wave2 и Wave4 эффективно отступают в последовательности, это рассматривается как комбинация нисходящих волн, которая относится к медвежьему рынку. Стратегия в это время идет коротко.

Стратегия также вводит 200-дневный скользящий средний индикатор в качестве дополнительного условия суждения. Только когда выявляется бычий или медвежий шаблон волны Эллиотта, и цена закрытия дня превышает 200-дневную скользящую среднюю линию, можно занять длинную позицию, а короткую позицию можно занять только в том случае, если цена закрытия дня превышает 200-дневную скользящую среднюю линию.

После того, как длинный и короткий сигналы выпускаются, в противоположном направлении пять волн выходят из позиции.

Анализ преимуществ

  • Использование теории волн Эллиота для определения рыночных тенденций и ключевых моментов может своевременно зафиксировать рыночные повороты.
  • На основе 200-дневной скользящей средней индикатор фильтр, чтобы избежать ловушки в диапазоне рынка.
  • В целом эта стратегия может принести хорошую прибыль в среднесрочной и долгосрочной перспективе на фондовом рынке или фьючерсном рынке.

Анализ рисков

  • В режиме реального времени колебания цен могут не соответствовать пятиволновым моделям, описанным в теории Эллиота, поэтому существует определенный риск ошибочного суждения.
  • Опираясь исключительно на схему пяти волн, нельзя определить положение и значение этого сегмента волн в более широком контексте рынка.
  • Легко генерировать неправильные торговые сигналы и потери на боковых рынках.
  • Он не учитывает динамическое влияние колебаний цен на акции на позицию 200-дневной скользящей средней.

Руководство по оптимизации

  • Для фильтрации можно объединить больше индикаторов, таких как MACD, KDJ и т. д., чтобы уменьшить уровень ошибочных оценок.
  • Оптимизируйте алгоритм распознавания паттернов с пятью волнами для повышения точности.
  • Усилить суждение о том, находится ли текущий сегмент волны в восходящей или нисходящей волне на более высоком уровне, чтобы избежать торговли против тренда.
  • Включайте такие показатели, как изменение объема торговли, чтобы определить истинные точки обратного тренда.
  • Рассмотрим динамические корректировки с учетом колебаний цен на акции на 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")

Больше