Estrategia de ruptura del canal de media móvil de cinco días


Fecha de creación: 2024-02-05 15:16:05 Última modificación: 2024-02-05 15:16:05
Copiar: 0 Número de Visitas: 666
1
Seguir
1617
Seguidores

Estrategia de ruptura del canal de media móvil de cinco días

Descripción general

Esta estrategia combina el canal de la media móvil de 5 días con los puntos de venta y venta de la idea del paseo, para lograr la doble función de la ruptura del canal y el comercio de líneas cortas. La estrategia primero calcula el promedio móvil de los máximos y mínimos de 5 días como el ascenso y el descenso del canal, y luego combina la señal de ruptura del canal y las características morfológicas de la idea del paseo para determinar el tiempo de entrada y salida.

Principio de estrategia

  1. Calcula el promedio móvil de los precios máximos y mínimos de 5 días como el canal de subida y bajada
  2. Cuando el precio de cierre se pone en trayectoria, genera una señal de compra
  3. Una señal de venta se genera cuando el precio de cierre se desvía por debajo de la vía.
  4. Características morfológicas combinadas con el concepto de bicicletas para determinar si el precio coincide con las características de compra y venta de bicicletas
    • Características de compra: precio de cierre> precio de apertura, precio más alto - precio de cierre < precio de cierre - precio de apertura, precio de apertura - precio más bajo < precio de cierre - precio de apertura
    • La venta de características: precio de apertura - precio de cierre> precio de apertura - precio de cierre de ayer, y la forma de 3 líneas K consecutivas
  5. Condición de compra final = la señal de ruptura de canal se cumple al mismo tiempo que la característica de compra del vehículo
  6. Condición de venta final = la señal de ruptura de canal se cumple al mismo tiempo que la característica de venta de la cabina

Ventajas estratégicas

  1. La combinación de estrategias de desbloqueo de corredores y el concepto de paseo permite un juicio multinivel que evita el riesgo de mal manejo
  2. Las estrategias de ruptura de canales pueden capturar tendencias en el ciclo intermedio
  3. El concepto de la cabina puede determinar la oportunidad de revertir la línea corta.
  4. Parámetros fáciles de ajustar para un entorno de múltiples mercados

Riesgo estratégico

  1. En un mercado con grandes sacudidas, los canales pueden romperse con frecuencia, lo que genera señales erróneas
  2. Cuando los criterios de las características del concepto de la bicicleta no son estrictos, es posible que compre más que el punto de inflexión real y venda menos.
  3. La configuración incorrecta de los parámetros también puede afectar la calidad de la señal de negociación

Dirección de optimización de la estrategia

  1. Se puede probar el canal bajo diferentes parámetros para encontrar una mejor combinación de parámetros
  2. Se puede ajustar el ciclo de conducción para probar si un ciclo más corto o más largo funciona mejor
  3. Los jueces de características que pueden optimizar el concepto de conducción, establecer condiciones más estrictas para filtrar el ruido
  4. Se pueden probar estrategias de aumento de la parada para controlar las pérdidas individuales

Resumir

Esta estrategia integra la estrategia de corredor de ruptura y la estrategia de comercio de línea corta de la idea de la marcha, para lograr varios niveles de juicio y control del riesgo. Es de destacar que la configuración de parámetros y el control del riesgo tienen un impacto importante en la eficacia de la estrategia, que requiere pruebas y verificación adecuadas.

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

//@version=5
strategy("5MABAND + Mileage Concept Buy & Sell Strategy", overlay=true)

// Command 1 - 5MABAND Calculation
length = input(5, title="Number of Candles for Average")
avgHigh = ta.sma(high, length)
avgLow = ta.sma(low, length)

// Plotting 5MABAND Bands
plot(avgHigh, color=color.green, title="5MABAND High Line", linewidth=2)
plot(avgLow, color=color.red, title="5MABAND Low Line", linewidth=2)

// Command 2 - Mileage Concept Buy Entry
mileageBuyCondition = close > open and high - close < close - open and open - low < close - open and close - open > close[1] - open[1] and close - open > close[2] - open[2] and close - open > close[3] - open[3] and close > open and open > close[1]

// Command 3 - Mileage Concept Sell Entry
mileageSellCondition = open - close > open[1] - close[1] and open - close > open[2] - close[2] and open - close > open[3] - close[3] and open > close and close > open[1] and close > avgHigh

// Command 4 - 5MABAND Buy Entry
buyAlertCandle_5MABAND = close > avgHigh
plotshape(buyAlertCandle_5MABAND, color=color.green, style=shape.triangleup, location=location.belowbar, size=size.small, title="Buy Signal (5MABAND)")

// Command 5 - 5MABAND Sell Entry
sellAlertCandle_5MABAND = close < avgLow
plotshape(sellAlertCandle_5MABAND, color=color.red, style=shape.triangledown, location=location.abovebar, size=size.small, title="Sell Signal (5MABAND)")

// Command 6 - 5MABAND Exit Trigger
exitTriggerCandle_5MABAND_Buy = low < avgLow
exitTriggerCandle_5MABAND_Sell = high > avgHigh

// Exit Signals for 5MABAND
exitBuySignal_5MABAND = close < avgLow
exitSellSignal_5MABAND = close > avgHigh

// Buy and Sell Conditions for 5MABAND
buyCondition_5MABAND = close > avgHigh and buyAlertCandle_5MABAND
sellCondition_5MABAND = close < avgLow and (exitTriggerCandle_5MABAND_Buy or exitSellSignal_5MABAND)

// Combine Buy Conditions for Mileage Concept and 5MABAND
combinedBuyCondition = mileageBuyCondition and buyCondition_5MABAND
combinedSellCondition = mileageSellCondition and sellCondition_5MABAND

// Execute Buy and Sell Orders
strategy.entry("Buy", strategy.long, when = combinedBuyCondition)
strategy.close("Buy", when = sellCondition_5MABAND)

strategy.entry("Sell", strategy.short, when = combinedSellCondition)
strategy.close("Sell", when = exitBuySignal_5MABAND)

// Exit Buy and Sell Orders for 5MABAND
strategy.close("Buy", when = exitBuySignal_5MABAND)
strategy.close("Sell", when = exitSellSignal_5MABAND)