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

Динамическая фильтрация - перекрестная стратегия EMA для анализа ежедневных тенденций

Автор:Чао Чжан, Дата: 2025-01-06 11:16:35
Тэги:ЕМАМ.А.КРОССТенденция

img

Обзор

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

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

Основа стратегии основана на двух EMA с различными периодами для определения тренда. Быстрая EMA (период 10 по умолчанию) более чувствительна к изменениям цен, способна быстро улавливать движения рынка; медленная EMA (период 50 по умолчанию) отражает долгосрочные тенденции. Стратегия проверяет отношение позиций между этими двумя линиями в определенное время каждого торгового дня (по умолчанию 9:00), используя сигналы перекрестного EMA для определения направления тренда рынка и выполнения сделок. Долгая позиция вводится, когда быстрая EMA пересекает верхнюю часть медленной EMA, что указывает на усиление импульса вверх, в то время как короткая позиция вводится, когда быстрая EMA пересекает нижнюю часть медленной EMA, что указывает на усиление импульса вниз.

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

  1. Ясная и простая логика торговли, легкая для понимания и выполнения
  2. Фильтрует звуковые сигналы посредством ежедневных фиксированных проверок, что уменьшает количество ложных сделок
  3. Использует процентную классификацию позиций для эффективного контроля рисков
  4. Сочетает в себе быстрые и медленные скользящие средние показатели для эффективного фиксирования начала и изменения тренда
  5. Высоко регулируемые параметры стратегии, подходящие для различных рыночных условий
  6. Высокая степень автоматизации, не требующая ручного вмешательства

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

  1. Может вызвать частые сделки на нестабильных рынках, увеличивая затраты на транзакции
  2. Фиксированное время входа может пропустить важные движения цен
  3. Системы скользящих средних имеют врожденное отставание, потенциально вызывающее задержку входа или выхода
  4. Может произойти значительное снижение на сильно волатильных рынках
  5. Неправильный выбор параметров может повлиять на эффективность стратегии

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

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

Резюме

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


/*backtest
start: 2024-12-06 00:00:00
end: 2025-01-04 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Daily EMA Comparison Strategy", shorttitle="Daily EMA cros Comparison", overlay=true)

//------------------------------------------------------------------------------
// Inputs
//------------------------------------------------------------------------------
fastEmaLength = input.int(10, title="Fast EMA Length", minval=1)  // Fast EMA period
slowEmaLength = input.int(50, title="Slow EMA Length", minval=1)  // Slow EMA period
checkHour = input.int(9, title="Check Hour (24h format)", minval=0, maxval=23)  // Hour to check
checkMinute = input.int(0, title="Check Minute", minval=0, maxval=59)  // Minute to check

//------------------------------------------------------------------------------
// EMA Calculation
//------------------------------------------------------------------------------
fastEMA = ta.ema(close, fastEmaLength)
slowEMA = ta.ema(close, slowEmaLength)

//------------------------------------------------------------------------------
// Time Check
//------------------------------------------------------------------------------
// Get the current bar's time in the exchange's timezone
currentTime = timestamp("GMT-0", year, month, dayofmonth, checkHour, checkMinute)
// Check if the bar's time equals or passes the daily check time
isCheckTime = (time >= currentTime and time < currentTime + 60 * 1000)  // 1-minute tolerance

//------------------------------------------------------------------------------
// Entry Conditions
//------------------------------------------------------------------------------
// Buy if Fast EMA is above Slow EMA at the specified time
buyCondition = isCheckTime and fastEMA > slowEMA

// Sell if Fast EMA is below Slow EMA at the specified time
sellCondition = isCheckTime and fastEMA < slowEMA

//------------------------------------------------------------------------------
// Strategy Execution
//------------------------------------------------------------------------------
// Enter Long
if buyCondition
    strategy.entry("Long", strategy.long)

// Enter Short
if sellCondition
    strategy.entry("Short", strategy.short)

//------------------------------------------------------------------------------
// Plot EMAs
//------------------------------------------------------------------------------
plot(fastEMA, color=color.blue, title="Fast EMA")
plot(slowEMA, color=color.orange, title="Slow EMA")


Связанные

Больше