Стратегия отслеживания тренда с пересечением двойной скользящей средней в сочетании с системой контроля рисков и временного скрининга

EMA SL TP ALGO
Дата создания: 2024-11-29 15:05:45 Последнее изменение: 2024-11-29 15:05:45
Копировать: 0 Количество просмотров: 104
1
Подписаться
1166
Подписчики

Стратегия отслеживания тренда с пересечением двойной скользящей средней в сочетании с системой контроля рисков и временного скрининга

Обзор

Стратегия представляет собой полную торговую систему, которая сочетает в себе двухуровневые перекрестные сигналы, стоп-стоп-лосс-менеджмент и временную фильтрацию. В основе стратегии лежит скрещивание быстрого и медленного движущегося среднего значения (EMA) для захвата рыночных тенденций и контроля риска путем установки стопов (Take Profit) и стопов (Stop Loss). Вместе с тем, стратегия включает в себя функцию временной фильтрации, которая позволяет трейдеру совершать сделки в определенном временном промежутке.

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

Стратегия действует на основе следующих основных механизмов:

  1. Индексные скользящие средние с использованием двух различных циклов ((по умолчанию 5 и 21)
  2. Когда быстрая EMA пересекает медленную EMA вверх, система генерирует многосигнал
  3. Система генерирует пустоту, когда быстрая ЭМА пересекает медленную ЭМА вниз
  4. Каждая сделка устанавливает процентный уровень стоп-лосса и стоп-стоп.
  5. Направление торговли может быть гибко настроено на: только плюс, только минус или двунаправленную торговлю
  6. Включает в себя временную фильтрацию, которая позволяет совершать сделки только в указанные временные промежутки
  7. Система будет подавать сигналы в критические моменты (открытие позиции, касание стоп-лосса / остановка)

Стратегические преимущества

  1. Систематическое управление рисками: предоставление четкого контроля риска для каждой сделки с помощью заранее установленных уровней стоп-лосса и стоп-стоп
  2. Гибкая параметровая конфигурация: трейдеры могут корректировать циклы EMA, стоп-лосс и стоп-стрит в зависимости от рыночной ситуации
  3. Свобода выбора направления: можно выбрать однонаправленную или двунаправленную торговлю, чтобы адаптироваться к различным рыночным предпочтениям
  4. Управление временем: с помощью фильтрации времени избегайте торговли в неблагоприятное время
  5. Реальная функция предупреждения: помогает трейдерам получать своевременные торговые сигналы и подсказки о риске
  6. Полный менеджмент позиций: система автоматически обрабатывает вход и выход без вмешательства человека

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

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

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

  1. Добавить фильтр рыночной среды:
    • Добавление показателей волатильности для различных рыночных условий
    • Введение фильтра силы тренда, чтобы избежать ложных прорывов
  2. Изменение динамических параметров:
    • Уровень остановки убытков, скорректированный на основе динамики волатильности рынка
    • Динамическая корректировка цикла EMA в зависимости от силы рыночных тенденций
  3. Улучшенное управление рисками:
    • Добавление мобильной защиты от убытков
    • Реализовать механизм пакетного наращивания и сокращения позиций
  4. Повышенная точность:
    • Комбинированный показатель трафика подтверждает эффективность сигнала
    • Добавление других технических показателей в качестве вспомогательного подтверждения

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

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

Исходный код стратегии
/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-27 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Estrategia Cruce de EMAs con: Stop Loss, Take Profit, Días de Operación y Alertas (Modificables)", overlay=true, commission_value = 0.2, process_orders_on_close = true, initial_capital = 1000)

// Parámetros de las EMAs
emaRapidaLen = input.int(5, title="Periodo EMA rápida")
emaLentaLen = input.int(21, title="Periodo EMA lenta")

// Parámetros de Stop Loss y Take Profit
stopLoss = input.float(3.0, title="Stop Loss (%)", step=0.1) / 100
takeProfit = input.float(6.0, title="Take Profit (%)", step=0.1) / 100

// Tipo de operación: Largo, Corto o Ambos
operacion = input.string(title="Tipo de operación", defval="Largo", options=["Largo", "Corto", "Ambos"])

// Parámetros de la duración de la estrategia (días)
diasInicio = input(timestamp("2009-01-03 00:00"), title="Fecha de inicio (YYYY-MM-DD HH:MM)")
diasFin = input(timestamp("2024-09-11 00:00"), title="Fecha de fin (YYYY-MM-DD HH:MM)")

// Comprobar si estamos dentro del rango de días definido
dentroDeRango = true

// Cálculo de las EMAs
emaRapida = ta.ema(close, emaRapidaLen)
emaLenta = ta.ema(close, emaLentaLen)

// Condiciones para cruce de EMAs
cruceAlcista = ta.crossover(emaRapida, emaLenta)
cruceBajista = ta.crossunder(emaRapida, emaLenta)

// Operaciones en Largo (solo si estamos en el rango de días definido)
if dentroDeRango and (operacion == "Largo" or operacion == "Ambos") and cruceAlcista 
    strategy.entry("Compra", strategy.long)
    alert("Posición larga abierta: Cruce alcista de EMAs", alert.freq_once_per_bar_close)

// Operaciones en Corto (solo si estamos en el rango de días definido)
if dentroDeRango and (operacion == "Corto" or operacion == "Ambos") and cruceBajista
    strategy.entry("Venta", strategy.short)
    alert("Posición corta abierta: Cruce bajista de EMAs", alert.freq_once_per_bar_close)

// Cálculo del Stop Loss y Take Profit para largos
if (strategy.position_size > 0 and strategy.opentrades.entry_id(strategy.opentrades - 1) == "Compra")
    strategy.exit("Cerrar Compra", "Compra", stop=strategy.position_avg_price * (1 - stopLoss), limit=strategy.position_avg_price * (1 + takeProfit))
    alert("Posición larga cerrada: Alcanzado Stop Loss o Take Profit", alert.freq_once_per_bar_close)

// Cálculo del Stop Loss y Take Profit para cortos
if (strategy.position_size < 0 and strategy.opentrades.entry_id(strategy.opentrades - 1) == "Venta")
    strategy.exit("Cerrar Venta", "Venta", stop=strategy.position_avg_price * (1 + stopLoss), limit=strategy.position_avg_price * (1 - takeProfit))
    alert("Posición corta cerrada: Alcanzado Stop Loss o Take Profit", alert.freq_once_per_bar_close)

// Plot de las EMAs
plot(emaRapida, color=color.blue, title="EMA rápida", linewidth = 2)
plot(emaLenta, color=color.red, title="EMA lenta", linewidth = 2)