Стратегия быстрого и медленного прорыва EMA Golden Cross


Дата создания: 2023-12-01 18:02:24 Последнее изменение: 2023-12-01 18:02:24
Копировать: 0 Количество просмотров: 751
1
Подписаться
1619
Подписчики

Стратегия быстрого и медленного прорыва EMA Golden Cross

Обзор

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

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

Стратегия основывается на сравнении средних линий EMA на 5 циклов, 8 циклов и 13 циклов для получения торговых сигналов. Включает:

  1. Вычислить 5-циклическую, 8-циклическую и 13-циклическую ЭМА.
  2. Когда 5-циклическая ЭМА проходит через 8-циклическую и 13-циклическую ЭМА, образуется сигнал покупки.
  3. Когда 5-циклическая ЭМА проходит через 8-циклическую и 13-циклическую ЭМА, генерируется сигнал продажи.
  4. Сигналы появляются только тогда, когда тренд достаточно силен, в сочетании с индикатором ADX.

Таким образом, достигается эффект отслеживания средне-длинной линии тренда. Когда короткий период проходит через среднюю линию длинной линии, означает, что краткосрочная тенденция переходит в многоголовый, можно купить; когда короткий период проходит через среднюю линию длинной линии, означает, что краткосрочная тенденция переходит в пустой, следует продать.

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

Основные преимущества этой стратегии:

  1. Простые в использовании и внедрении.
  2. Используйте плавный эффект средней линии EMA для эффективного отслеживания тенденций.
  3. Применение многогрупповых портфелей EMA позволяет избежать ложных сигналов.
  4. В сочетании с показателями ADX, сигнал становится более надежным.
  5. Например, в Китае, где в прошлом году было около 100 тысяч человек, в прошлом году было около 200 тысяч.

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

Однако эта стратегия также несет в себе некоторые риски:

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

Направление оптимизации

Эта стратегия может быть оптимизирована в следующих направлениях:

  1. Оптимизация параметров EMA, чтобы найти оптимальную комбинацию параметров.
  2. Добавление фильтров для других показателей, таких как KDJ, BOLL и т. д., улучшает качество сигнала.
  3. Регулирование управления позициями, оптимизация управления рисками.
  4. Изучение машинного обучения в поисках лучших правил входа и выхода.

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

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

Исходный код стратегии
/*backtest
start: 2023-11-23 00:00:00
end: 2023-11-30 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
// 
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © gregoirejohnb
// @It is modified by ttsaadet.
// Moving average crossover systems measure drift in the market. They are great strategies for time-limited people.
// So, why don't more people use them?
// 

//
strategy(title="EMA Crossover Strategy by TTS", shorttitle="EMA-5-8-13 COS by TTS", overlay=true, pyramiding=0, default_qty_type=strategy.percent_of_equity, default_qty_value=100, currency=currency.TRY,commission_type=strategy.commission.percent,commission_value=0.04, process_orders_on_close = true, initial_capital = 100000)

// === GENERAL INPUTS ===
//strategy start date
start_year = input(defval=2020, title="Backtest Start Year")

// === LOGIC ===
short_period = input(type=input.integer,defval=5,minval=1,title="Length")
mid_period = input(type=input.integer,defval=8,minval=1,title="Length")
long_period = input(type=input.integer,defval=13,minval=1,title="Length")
rsi_period = input(type=input.integer,defval=14,minval=1,title="Length")
longOnly = input(type=input.bool,defval=false,title="Long Only")
shortEma = ema(close,short_period)
midEma = ema(close,mid_period)
longEma = ema(close,long_period)

rsi = rsi(close, rsi_period)

[diplus, diminus, adx] = dmi(short_period, short_period)
plot(shortEma,linewidth=2,color=color.red,title="Fast")
plot(midEma,linewidth=2,color=color.orange,title="Fast")
plot(longEma,linewidth=2,color=color.blue,title="Slow")

longEntry = crossover(shortEma,midEma) and crossover(shortEma,longEma) //or ((shortEma > longEma) and crossover(shortEma,midEma)))and (adx > 25)
shortEntry =((shortEma < midEma) and crossunder(shortEma,longEma)) or ((shortEma < longEma) and crossunder(shortEma,midEma))

plotshape(longEntry ? close : na,style=shape.triangleup,color=color.green,location=location.belowbar,size=size.small,title="Long Triangle")
plotshape(shortEntry and not longOnly ? close : na,style=shape.triangledown,color=color.red,location=location.abovebar,size=size.small,title="Short Triangle")
plotshape(shortEntry and longOnly ? close : na,style=shape.xcross,color=color.black,location=location.abovebar,size=size.small,title="Exit Sign")

// === STRATEGY - LONG POSITION EXECUTION ===
enterLong() =>
    longEntry and 
       time > timestamp(start_year, 1, 1, 01, 01)
exitLong() =>
    crossunder(shortEma,longEma) or crossunder(close, longEma)

strategy.entry(id="Long", long=strategy.long, when=enterLong())
strategy.close(id="Long", when=exitLong())


// === STRATEGY - SHORT POSITION EXECUTION ===

enterShort() =>
    not longOnly and shortEntry and 
       time > timestamp(start_year, 1, 1, 01, 01)
exitShort() =>
    crossover(shortEma,longEma)

strategy.entry(id="Short", long=strategy.short, when=enterShort())
strategy.close(id="Short", when=exitShort())