Стратегия прорыва диапазона двойной EMA


Дата создания: 2023-10-25 12:43:59 Последнее изменение: 2023-10-25 12:43:59
Копировать: 0 Количество просмотров: 637
1
Подписаться
1617
Подписчики

Стратегия прорыва диапазона двойной EMA

Обзор

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

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

Эта стратегия использует быструю линию EMA (линия EMA с небольшим периодом) и медленную линию EMA (линия EMA с большим периодом) для определения торговых сигналов. Конкретная логика заключается в следующем:

  1. Вычислите быструю и медленную ЭМА.

  2. Делайте больше, когда быстрая EMA пересекает медленную EMA, и расстояние между двумя линиями EMA превышает установленный порог.

  3. Когда быстрая EMA пересекает медленную EMA, и расстояние между двумя линиями EMA превышает установленный порог, деактивируйте.

  4. Когда цена опять падает ниже быстрой ЭМА, сделайте позицию с плюсом.

  5. Когда цена вновь пробивается через быструю ЭМА, позиции убывают.

Таким образом, он использует гладкость EMA, чтобы определить направление тренда, а затем объединяет прорыв в промежутке EMA, чтобы определить конкретный момент входа. Чем дальше от указателя, тем сильнее тренд, тем больше шансов на победу.

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

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

Анализ стратегических рисков

  • EMA сама откладывает реакцию на ценовые изменения и может пропустить поворотный момент
  • Неэффективность в условиях слабой тенденции
  • Ущерб от землетрясений
  • Неправильная настройка параметров EMA может привести к избыточному количеству ложных сигналов

Риск может быть уменьшен путем корректировки комбинации параметров EMA, корректировки диапазона порога и позиции стоп-лорда.

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

  • Оптимизация комбинации циклических параметров для быстрого и медленного EMA
  • Тестирование различных пороговых значений ЭМА
  • Оптимизация стратегии по ликвидации убытков
  • Добавить другие фильтрующие сигналы
  • Оптимизация параметров, чтобы найти оптимальную комбинацию параметров

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

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

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

//@version=3
strategy("2-EMA Strategy", overlay=true, initial_capital=100, currency="USD", default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.075)

diffMinimum = input(0.95, step=0.01)

small_ema = input(13, title="Small EMA")
long_ema = input(26, title="Long EMA")

ema1 = ema(close, small_ema)
ema2 = ema(close, long_ema)


orderCondition = ema1 > ema2?((ema1/ema2)*100)-100 > diffMinimum:((ema2/ema1)*100)-100 > diffMinimum

longCondition = close > ema1 and ema1 > ema2
if (longCondition and orderCondition)
    strategy.entry("Long", strategy.long)

shortCondition = close < ema1 and ema1 < ema2
if (shortCondition and orderCondition)
    strategy.entry("Short", strategy.short)
    
strategy.close("Short", when=close > ema1)
strategy.close("Long", when=close < ema1)
    
plot(ema(close, small_ema), title="EMA 1", color=green, transp=0, linewidth=2)
plot(ema(close, long_ema), title="EMA 2", color=orange, transp=0, linewidth=2)