Estrategia de negociación de ruptura de impulso

El autor:¿ Qué pasa?, fecha: 2024-01-31 14:14:56
Las etiquetas:

img

Resumen general

Se trata de una tendencia basada en el impulso después de la estrategia de negociación de ruptura. Calcula los precios más altos y más bajos durante un cierto período para determinar la dirección de la tendencia, y entra en operaciones largas o cortas cuando los precios rompen los niveles clave.

Estrategia lógica

La lógica central de esta estrategia es la siguiente:

  1. Utilizar las funciones más alta y más baja para calcular los precios más altos y más bajos de los 20 candeleros recientes, como indicadores de impulso para juzgar la tendencia.

  2. Cuando el último precio de cierre se rompe por encima del precio más alto del período anterior, ir largo.

  3. Cuando el último precio de cierre se rompe por debajo del precio más bajo del período anterior, sea corto.

  4. Para controlar los riesgos, establecer una distancia de stop loss del 1% y una distancia de take profit del 2%, dando una relación riesgo-recompensación de 2:1.

  5. Trace los precios más altos y más bajos dentro de los 20 candelabros para determinar visualmente la dirección de la tendencia y los niveles de ruptura.

Lo anterior es la lógica de negociación central de esta estrategia. Utiliza indicadores de impulso para juzgar la tendencia y negocia breakouts de niveles clave, lo que lo convierte en una tendencia después de la estrategia de breakout.

Ventajas

Las ventajas de esta estrategia incluyen:

  1. El cálculo de los precios más altos y más bajos ayuda a filtrar las señales falsas de los mercados de rango.

  2. Lógica simple y clara, muy por encima del máximo anterior y muy por debajo del mínimo anterior, fácil de entender e implementar.

  3. Los riesgos controlables. La pérdida máxima es del 1% y la ganancia máxima es del 2% con el stop loss y el take profit establecidos, dando una razonable relación riesgo-recompensa.

  4. Fácil de optimizar. El período de cálculo se puede ajustar para un mejor momento de entrada. Los niveles de stop loss y take profit también se pueden ajustar para obtener más ganancias o menores riesgos.

Los riesgos

También hay algunos riesgos:

  1. El stop loss todavía es posible con cambios rápidos y enormes en los precios.

  2. Falta de señales de reversión si el período de cálculo es demasiado largo.

  3. El período de cálculo y los niveles de stop loss / take profit requieren pruebas y optimización cuidadosas.

Optimización

Esta estrategia puede mejorarse en aspectos como:

  1. Añadir filtros para garantizar una fuerza de tendencia suficiente antes de entrar en operaciones.

  2. Ajustar el parámetro de período para equilibrar la puntualidad y la estabilidad del juicio de tendencia.

  3. Incorporar un stop loss para bloquear las ganancias y evitar que se produzca un stop loss.

  4. Optimización de parámetros a través de pruebas de retroceso históricas para encontrar las combinaciones óptimas de configuraciones.

Conclusión

Esta es una tendencia típica después de la estrategia de negociación de ruptura. Utiliza indicadores de impulso para determinar la tendencia y las operaciones de ruptura de los niveles clave. Los pros son la simplicidad, los riesgos controlables y la facilidad de comprensión / optimización. Pero puede tener un rendimiento inferior en ciertos entornos de mercado.


/*backtest
start: 2023-12-31 00:00:00
end: 2024-01-30 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Trend Following Breakout Strategy with 2:1 RRR", overlay=true)

// 定义前高和前低的计算
length = input(20, minval=1, title="Length")
highestHigh = highest(high, length)
lowestLow = lowest(low, length)

// 定义买入和卖出的条件
longCondition = close > highestHigh[1] // 当前收盘价高于前一期的最高价
shortCondition = close < lowestLow[1] // 当前收盘价低于前一期的最低价

// 为了确保盈亏比为2:1,我们需要定义止损和目标价
stopLoss = input(1, title="Stop Loss %") / 100
takeProfit = stopLoss * 2

// 如果满足买入条件,进入多头
if (longCondition)
    strategy.entry("Long", strategy.long)
    strategy.exit("Long TP", "Long", profit=takeProfit * close, loss=stopLoss * close)

// 如果满足卖出条件,进入空头
if (shortCondition)
    strategy.entry("Short", strategy.short)
    strategy.exit("Short TP", "Short", profit=takeProfit * close, loss=stopLoss * close)

// 绘图显示前高和前低
plot(highestHigh, color=color.green, title="Previous High")
plot(lowestLow, color=color.red, title="Previous Low")


Más.