Стратегия торговли на основе прорыва тренда с несколькими периодами EMA


Дата создания: 2024-02-26 16:55:48 Последнее изменение: 2024-02-26 16:55:48
Копировать: 0 Количество просмотров: 736
1
Подписаться
1617
Подписчики

Стратегия торговли на основе прорыва тренда с несколькими периодами EMA

Обзор

Эта стратегия является стратегией трендового отслеживания и прорыва в тренде, основанной на многопериодных скользящих средних показателях (EMA). Она одновременно объединяет 5 различных циклов EMA, обладая сильными способностями к распознаванию трендов, которые могут последовательно захватывать движение цены средней и длинной линии.

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

  1. Вычислите 5 различных циклов ЭМА, а именно 12 циклов, 15 циклов, 18 циклов, 21 циклов и 24 циклов ЭМА.

  2. EMA: EMA12 > EMA15 > EMA18 > EMA21 > EMA24 в качестве сигнала покупки; EMA12 < EMA15 < EMA18 < EMA21 < EMA24 в качестве сигнала продажи.

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

  4. При появлении сигнала “купить” выполняется операция “открыть” позицию на длинную позицию; при появлении сигнала “продать” - операция “открыть” позицию на короткую позицию.

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

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

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

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

  3. Начальная дата стратегии может быть настроена, и использование может быть гибким.

  4. Управление капиталом может быть настроено, и можно контролировать размер одного заказа.

  5. Правила торговли простые и понятные, подходят для отслеживания тенденций.

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

  1. По своей природе EMA является отсталой и может пропустить сильные краткосрочные колебания.

  2. Прорывные сделки легко поддаются фиксации и требуют разумного стоп-лосса.

  3. Если тенденция изменится, это может привести к значительным потерям.

  4. Необходимо выбрать подходящий сорт акций, который не подходит для слишком волатильных акций.

Соответствующие меры по контролю и оптимизации риска:

  1. Применение параметров EMA для оптимизации циклического сочетания.

  2. Добавить фильтры на другие показатели, чтобы определить направление тренда.

  3. Разумно устанавливайте стоп-стоп и контролируйте одиночные потери.

Оптимизация

  1. Добавление других комбинаций показателей, таких как MACD, KDJ и т.д., повышает эффективность стратегии.

  2. Добавить объем сделки, чтобы избежать ложного прорыва.

  3. Оптимизируйте циклические параметры EMA, чтобы найти оптимальную комбинацию.

  4. Прекратить торговлю в определенный период времени, чтобы избежать рыночных колебаний.

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

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

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

Исходный код стратегии
/*backtest
start: 2024-01-26 00:00:00
end: 2024-02-25 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy(title="Scalping Strategy - EMA",
         shorttitle="EMA Scalp",
         overlay=true)

// User input for start date
startDateInput = input(title="Start Date", defval=timestamp("2024-02-01"))

// Calculate EMAs
ema_12 = ta.ema(close, 12)
ema_15 = ta.ema(close, 15)
ema_18 = ta.ema(close, 18)
ema_21 = ta.ema(close, 21)
ema_24 = ta.ema(close, 24)

// Plot EMAs
plot(ema_12, color=color.red, title="EMA 12")
plot(ema_15, color=color.orange, title="EMA 15")
plot(ema_18, color=color.yellow, title="EMA 18")
plot(ema_21, color=color.green, title="EMA 21")
plot(ema_24, color=color.blue, title="EMA 24")

// Define a start date for the strategy based on user input
isAfterStartDate = true

// Visualize the isAfterStartDate condition
bgcolor(isAfterStartDate ? color.new(color.green, 90) : na, title="After Start Date")

// Entry conditions
buy_condition = (ema_12 > ema_15) and (ema_15 > ema_18) and (ema_18 > ema_21) and (ema_21 > ema_24) and isAfterStartDate
sell_condition = (ema_12 < ema_15) and (ema_15 < ema_18) and (ema_18 < ema_21) and (ema_21 < ema_24) and isAfterStartDate

// Execute trades using conditional blocks
if (buy_condition)
    strategy.entry("Buy", strategy.long)
    
if (sell_condition)
    strategy.entry("Sell", strategy.short)