В процессе загрузки ресурсов... загрузка...

Автоматизированная торговая система Multi-EMA с блокировкой прибыли

Автор:Чао Чжан, Дата: 2024-12-04 15:35:32
Тэги:ЕМАМ.А.

img

Обзор

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

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

Стратегия основывает торговые решения на многократных временных интервалах EMA и позиционных отношениях.

  1. Использует 5-периодные, 20-периодные (на основе высоких, низких и закрывающих цен) и 50-периодные EMA
  2. Условия вступления требуют от всех индикаторов выраженного повышения курса: 50EMA < 20EMA ((низкий) < 20EMA ((близкий) < 20EMA ((высокий) < 5EMA)
  3. Требует, чтобы текущая цена была выше всех EMA, что подтверждает сильную тенденцию
  4. Выход использует двойной механизм: получение прибыли, когда цена пробивается ниже 5-периодного EMA, или стоп-лосс, когда цена достигает 20-периодного минимума EMA.

Преимущества стратегии

  1. Иерархический механизм фильтрации значительно снижает количество ложных сигналов
  2. Многократное подтверждение перекрестного использования EMA повышает точность торговли
  3. Динамические позиции стоп-лосса корректируются с учетом волатильности рынка
  4. Полностью автоматизированная система устраняет эмоциональное вмешательство
  5. Механизм отслеживания прибыли эффективно блокирует полученную прибыль

Стратегические риски

  1. Может привести к частым сделкам на боковых рынках
  2. EMA по своей сути являются отстающими показателями, они могут пропустить точки начала рынка.
  3. Многочисленные условия могут привести к потере некоторых торговых возможностей
  4. Стоп-лосс на нижней точке 20EMA может быть относительно свободным

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

  1. Может добавить механизм подтверждения объема для улучшения надежности сигнала
  2. Рассмотреть возможность включения показателей волатильности для динамического размещения позиций
  3. Ввести более гибкие схемы получения прибыли, такие как частичное сокращение позиций
  4. Может сочетаться с осцилляторами, такими как RSI, чтобы оптимизировать время входа
  5. Подумайте о добавлении суждения о силе тренда для фильтрации слабых рынков

Резюме

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


/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-03 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Automated EMA Strategy with Hierarchical Conditions", overlay=true)

// Inputs for EMA lengths
length_5 = 5
length_20 = 20
length_50 = 50

// Calculating EMAs
ema_5 = ta.ema(close, length_5)
ema_20_high = ta.ema(high, length_20)
ema_20_low = ta.ema(low, length_20)
ema_20_close = ta.ema(close, length_20)
ema_50 = ta.ema(close, length_50)

// Buy condition: 50 EMA < 20 EMA (Close) < 20 EMA (High) < 20 EMA (Low) < 5 EMA
// and LTP above all EMAs
buy_condition = ema_50 < ema_20_low and ema_20_low < ema_20_close and ema_20_close < ema_20_high and ema_20_high < ema_5 and close > ema_5 and close > ema_20_close and close > ema_20_high and close > ema_20_low and close > ema_50

// Stop-loss and target levels
stop_loss = ema_20_low

// Target condition: Close below 5 EMA
target_condition = close < ema_5

// Check if there's an open position
is_in_position = strategy.position_size > 0

// Execute Buy Signal only if no position is open
if (buy_condition and not is_in_position)
    strategy.entry("Buy", strategy.long)

// Exit conditions: Stop-loss or target (close below 5 EMA)
if (is_in_position and (target_condition or close < stop_loss))
    strategy.close("Buy")

// Plotting the EMAs
plot(ema_5, color=color.blue, title="5 EMA")
plot(ema_20_high, color=color.green, title="20 EMA (High)")
plot(ema_20_low, color=color.red, title="20 EMA (Low)")
plot(ema_20_close, color=color.purple, title="20 EMA (Close)")
plot(ema_50, color=color.orange, title="50 EMA")


Связанные

Больше