Estrategia de cruce de medias móviles con precio objetivo doble y stop loss dinámico

SMA MA TP SL
Fecha de creación: 2024-07-29 14:40:23 Última modificación: 2024-07-29 14:40:23
Copiar: 0 Número de Visitas: 561
1
Seguir
1617
Seguidores

Estrategia de cruce de medias móviles con precio objetivo doble y stop loss dinámico

Descripción general

Esta estrategia es un sistema de negociación basado en el cruce de medias móviles, que combina un método de gestión de riesgos con un stop loss móvil dinámico y un punto de ganancia de doble objetivo. La estrategia se basa principalmente en el cruce del precio con la media móvil de 200 periodos para determinar el momento de entrada, mientras que establece un stop loss y un beneficio flexibles para controlar el riesgo y maximizar las ganancias.

Principio de estrategia

  1. Señales de entrada:

    • Entrada múltiple: cuando el precio sube por encima de la media móvil de 200
    • Entrada en blanco: cuando el precio baja a través de la línea media de movimiento de 200 periodos
  2. Gestión de riesgos:

    • Detención inicial: se establece fuera de los 500 puntos del precio de entrada
    • Detención de movimiento dinámico: cuando el precio se mueve 200 puntos en la dirección favorable, el stop se mueve al precio de entrada
  3. Objetivos de ganancias:

    • Objetivo 1: Eliminar el 75% de las posiciones cuando el precio alcance los 3000 puntos de entrada
    • Segundo objetivo: el 25% restante de las posiciones se cerrará cuando el precio alcance los 4000 puntos de entrada
    • Si se activa el stop loss móvil dinámico, el stop loss de la posición restante se establece en el precio de entrada
  4. Administración de posiciones:

    • 100 unidades de una cantidad fija por transacción

Ventajas estratégicas

  1. El seguimiento de tendencias: el uso de promedios móviles para capturar las tendencias del mercado ayuda a obtener ganancias en las grandes tendencias.

  2. Control de riesgos: el uso de una combinación de stop loss inicial y stop loss móvil dinámico limita las pérdidas máximas y protege los beneficios obtenidos.

  3. Maximización de las ganancias: Al establecer dos precios objetivo, se puede seguir la tendencia general y al mismo tiempo garantizar una parte de las ganancias.

  4. Automatización: Las estrategias son completamente automatizadas, lo que reduce la interferencia emocional humana.

  5. Flexibilidad: los parámetros como el ciclo de las medias móviles, los puntos de parada, las ganancias, etc., se pueden ajustar según las condiciones del mercado.

Riesgo estratégico

  1. Riesgo de mercado en movimiento: en mercados en movimiento horizontal, puede desencadenar frecuentemente falsas brechas, lo que lleva a pérdidas continuas.

  2. Riesgo de deslizamiento: en un mercado rápido, el precio de transacción real puede estar muy alejado del precio ideal.

  3. Tráfico excesivo: las frecuentes señales de cruce pueden provocar un exceso de transacciones, aumentando los costos de transacción.

  4. Dependencia de un solo indicador: depender solo de las medias móviles puede pasar por alto otra información importante del mercado.

  5. Riesgo de posición fija: el número fijo de transacciones por transacción puede no ser adecuado para todos los entornos de mercado.

Dirección de optimización de la estrategia

  1. Combinación de varios indicadores: Considere la introducción de otros indicadores técnicos como el RSI, el MACD, etc., que se utilicen en combinación con las medias móviles para mejorar la fiabilidad de la señal de entrada.

  2. Gestión de posiciones dinámica: ajuste dinámico del número de operaciones según la volatilidad del mercado y el saldo de la cuenta para un mejor control del riesgo.

  3. Filtración de entornos de mercado: aumenta la intensidad de la tendencia o la volatilidad de los indicadores, evitando la entrada en un entorno de mercado no adecuado para el comercio.

  4. Optimización de parámetros: Utiliza datos históricos para evaluar diferentes combinaciones de parámetros para encontrar los mejores períodos de medias móviles, puntos de parada y configuraciones de ganancias.

  5. Filtración temporal: Considere la posibilidad de incorporar un filtro temporal para evitar el comercio en períodos de tiempo con mayor volatilidad o poca liquidez.

  6. Añadir los factores fundamentales: el momento oportuno para ajustar la estrategia en combinación con la publicación de datos económicos importantes u otros eventos fundamentales.

Resumir

La estrategia de cruce de la línea de la mediana de los precios de los dos objetivos móviles de parada dinámica es un sistema de negociación cuantitativa que combina análisis técnico y gestión de riesgos. Captura las tendencias del mercado a través de promedios móviles, mientras que utiliza el stop loss dinámico y el objetivo de ganancias múltiples para equilibrar el riesgo y los beneficios. La principal ventaja de la estrategia reside en su alto grado de automatización, la flexibilidad de control de riesgo y el potencial de obtener beneficios visibles en mercados de fuerte tendencia.

Código Fuente de la Estrategia
/*backtest
start: 2023-07-29 00:00:00
end: 2024-07-28 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("SOL/USDT Trading Strategy", overlay=true)

// Параметры стратегии
input_quantity = input(2, title="Trade Size (SOL)")
stop_loss_points = input(500, title="Stop Loss Points")
take_profit_points_1 = input(3000, title="First Take Profit Points")
take_profit_points_2 = input(4000, title="Second Take Profit Points")
move_stop_to_entry_points = input(200, title="Move Stop to Entry Points")
ma_period = input(180, title="MA Period")

// Расчет скользящей средней
ma = ta.sma(close, ma_period)

// Условия входа в сделку
long_condition = ta.crossover(close, ma)
short_condition = ta.crossunder(close, ma)

// Текущая цена
var float entry_price = na

// Логика открытия и закрытия сделок
if (long_condition)
    entry_price := close
    strategy.entry("Long", strategy.long, qty=input_quantity)
if (short_condition)
    entry_price := close
    strategy.entry("Short", strategy.short, qty=input_quantity)

// Логика выхода из сделок
if (strategy.position_size > 0)
    if (close >= entry_price + take_profit_points_1 * syminfo.mintick)
        strategy.exit("Partial Take Profit", "Long", qty=0.75 * input_quantity, limit=close)
        strategy.exit("Remaining Take Profit", "Long", qty=0.25 * input_quantity, limit=entry_price + take_profit_points_2 * syminfo.mintick, stop=entry_price)

    if (close >= entry_price + move_stop_to_entry_points * syminfo.mintick)
        strategy.exit("Stop Loss at Entry", "Long", qty=strategy.position_size, stop=entry_price)
    else
        strategy.exit("Take Profit/Stop Loss", "Long", stop=entry_price - stop_loss_points * syminfo.mintick, limit=entry_price + take_profit_points_1 * syminfo.mintick)

if (strategy.position_size < 0)
    if (close <= entry_price - take_profit_points_1 * syminfo.mintick)
        strategy.exit("Partial Take Profit", "Short", qty=0.75 * input_quantity, limit=close)
        strategy.exit("Remaining Take Profit", "Short", qty=0.25 * input_quantity, limit=entry_price - take_profit_points_2 * syminfo.mintick, stop=entry_price)

    if (close <= entry_price - move_stop_to_entry_points * syminfo.mintick)
        strategy.exit("Stop Loss at Entry", "Short", qty=strategy.position_size, stop=entry_price)
    else
        strategy.exit("Take Profit/Stop Loss", "Short", stop=entry_price + stop_loss_points * syminfo.mintick, limit=entry_price - take_profit_points_1 * syminfo.mintick)

// Отображение скользящей средней
plot(ma, title="200 MA", color=color.blue)