Долгосрочная торговая стратегия Golden Cross Three EMA


Дата создания: 2023-09-26 16:23:53 Последнее изменение: 2023-09-26 16:23:53
Копировать: 0 Количество просмотров: 760
1
Подписаться
1617
Подписчики

Обзор

Эта стратегия основана на трехмесячных средних линиях EMA для определения торговых сигналов, используя трехмесячные средние линии EMA 8 циклов, 50 циклов и 200 циклов для определения золотых и мертвых точек, чтобы использовать преимущества различных средних линий EMA для достижения лучшего эффекта торговли.

Стратегический принцип

Стратегия рассчитывает три средние линии EMA 8 циклов, 50 циклов и 200 циклов, и устанавливает проход в поясе Бурин для прорыва. Конкретная логика заключается в следующем:

  1. Вычислить 8 циклов ЭМА, 50 циклов ЭМА и 200 циклов ЭМА с тремя равномерными линиями.
  2. При определении 8 циклов EMA, когда 50 циклов EMA образуют золотую вилку, делают больше; при 50 циклов EMA, когда 8 циклов EMA образуют мертвую вилку, делают равновесие.
  3. Можно выбрать, чтобы проводить несколько операций только тогда, когда цена выше 200-циклической EMA, чтобы избежать ошибочных операций с шокирующей ситуацией.
  4. Установка опциональной остановки на средней линии EMA, при которой при прохождении цены ниже этой средней линии происходит остановка.

Посредством операций по определению дна быстрых циклов EMA, среднециклические EMA обеспечивают тенденцию, медленные циклы EMA фильтруют колебания, и все три дополняют друг друга, чтобы определить переход от паттерна к паттерну, учитывая при этом частоту торгов.

Стратегические преимущества

  1. Три средних EMA разумно оценивают тренд, используя преимущества различных циклов EMA. 8 циклов EMA оценивают краткосрочные шансы на подъем, 50 циклов EMA оценивают направление среднесрочной тенденции, 200 циклов EMA фильтруют колебания, чтобы обеспечить большую тенденцию.

  2. Вы можете сделать больше, только если цена выше 200-циклической EMA, чтобы избежать ошибочного сигнала в шокирующей ситуации.

  3. Выбираемая остановка EMA на средней линии устанавливает разумное положение остановки.

  4. Настройки визуализации, такие как цвет ленты, отображение линии EMA и т. Д., улучшают настройку стратегии.

  5. Включает в себя логику решения вопросов, простые и понятные.

Риски и решения

  1. EMA-средняя линия имеет отсталость и может пропустить оптимальное время для создания позиции. Можно соответствующим образом сократить цикл EMA или время для решения в сочетании с другими показателями, такими как MACD.

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

  3. Стоп-позиция фиксирована и не может быть скорректирована в зависимости от рыночных колебаний. Можно изменить ее на динамическую стоп-позицию, которая определяется на основе таких показателей, как ATR.

  4. Не учитывая критерии выхода из остановки, существует риск потери. Для контроля риска можно установить подвижную остановку или остановку с фиксированной точкой.

Оптимизация стратегии

  1. Циклы EMA могут быть оптимизированы, чтобы найти оптимальное сочетание параметров.

  2. Можно добавить такие показатели, как MACD.

  3. Добавление условий для динамического остановки и корректировка позиции остановки в зависимости от степени волатильности рынка.

  4. Добавить логику остановки, установить перемещаемую остановку или остановку с фиксированной точкой.

  5. Оптимизация входных условий, такие как фильтры, такие как увеличение количественных показателей.

Подвести итог

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

Исходный код стратегии
/*backtest
start: 2023-09-18 00:00:00
end: 2023-09-20 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("Long only EMA CROSS 8/50/200 Backtest", shorttitle="Golden Cross Tri EMA", overlay=true)

// EMA 8/50/200 Cross TEST



// Input
switch1=input(true, title="Enable Bar Color?")
switch2=input(true, title="Show 8 EMA")
switch3=input(true, title="Show 50 EMA")
switch4=input(true, title="Show 200 EMA")
switch5=input(false, title="Show profit level EMA")
bool_Long_EMA200=input(false, title="Long only above EMA200")
movingaverage_8 = ema(close, input(8))
movingaverage_50 = ema(close, input(50))
movingaverage_market_signal = ema(close, input(200))
movingaverage_profitlvl = ema(close, input(50))


// Calculation
bullish_cross = if bool_Long_EMA200 == true
    crossover(movingaverage_8, movingaverage_50) and movingaverage_8 > movingaverage_market_signal
else 
    bullish_cross = crossover(movingaverage_8, movingaverage_50)
bearish_cross = crossunder(close, movingaverage_profitlvl)

// Strategy
if bullish_cross
    strategy.entry("long", strategy.long)

strategy.close("long", when = bearish_cross )

// Colors
bartrendcolor = close > movingaverage_8 and close > movingaverage_50 and change(movingaverage_50) > 0 ? green : close < movingaverage_8 and close < movingaverage_50 and change(movingaverage_50) < 0 ? red : blue
barcolor(switch1?bartrendcolor:na)

// Output
plot(switch2?movingaverage_8:na,color = change(movingaverage_8) > 0 ? green : red,linewidth=2, title="EMA8")
plot(switch3?movingaverage_50:na,color = change(movingaverage_50) > 0 ? green : red,linewidth=2,title="EMA50")
plot(switch4?movingaverage_market_signal:na,color = change(movingaverage_market_signal) > 0 ? green : red,linewidth=3,title="EMA200")
plot(switch5?movingaverage_profitlvl:na,color = change(movingaverage_profitlvl) > 0 ? green : red,linewidth=3, title="EMA Profit LVL")

//
alertcondition(bullish_cross, title='Golden Cross (bullish)', message='Bullish')
alertcondition(bearish_cross, title='Death Cross (bearish)', message='Bearish')