Estrategia de fuga diaria

El autor:¿ Qué pasa?, Fecha: 2024-01-02 13:57:42
Las etiquetas:

img

Resumen general

La estrategia de ruptura diaria es una simple estrategia de seguimiento de tendencia basada en gráficos de velas diarias.

Estrategia lógica

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

Si el cuerpo de la vela del día anterior es verde (el precio de cierre es mayor que el precio de apertura), indica una tendencia al alza en ese día. La estrategia será larga en la apertura del día siguiente. Si el cuerpo de la vela del día anterior es rojo (el precio de cierre es menor que el precio de apertura), indica una tendencia a la baja. La estrategia será corta en la apertura del día siguiente.

De esta manera simple, la estrategia puede identificar el impulso del mercado dentro del reciente ciclo de una vela y realizar operaciones en consecuencia. Esto permite a la estrategia seguir la última tendencia del mercado.

Específicamente, la estrategia genera señales comerciales de la siguiente manera:

  1. Obtener los datos de candlestick del día de negociación anterior en el mercado abierto cada día
  2. Compare los precios de apertura y cierre de ese candelabro
  3. Si abierto < cerrado (candelabro verde), generar una señal larga, ir largo en un porcentaje de los fondos disponibles
  4. Si está abierto > cerrado (candelabro rojo), generar una señal corta, ir corto en un porcentaje de los fondos disponibles
  5. Utilizar el stop loss para las posiciones de salida

A través de esta lógica, la estrategia puede capitalizar las tendencias de precios a corto plazo.

Ventajas

Las principales ventajas de esta estrategia incluyen:

  1. La simplicidad- La lógica central compara directamente el color del candelabro y es muy simple y clara.
  2. Siguiendo la tendencia- Identifica la dirección de tendencia del último día de negociación, siguiendo el impulso a corto plazo.
  3. La flexibilidad- Parámetros como el tamaño de la posición, stop loss se puede ajustar para modificar el riesgo vs recompensa.
  4. Potencial de optimización- Se pueden añadir más mejoras, como el análisis de marcos de tiempo múltiples y el ajuste de datos para mejorar la robustez.

Riesgos y mejoras

Algunos riesgos y áreas de mejora:

  1. Riesgo de la sierra- Sólo se mira a la vela diaria, por lo que puede comprar falsamente retrocesos en lugar de la tendencia real en los mercados variados.
  2. Riesgo de cortocircuito- Las posiciones cortas tienen un riesgo a la baja ilimitado.
  3. Ajuste de parámetros- ajuste fino del nivel de stop loss, dimensionamiento de posiciones, etc. para lograr mejores rendimientos ajustados al riesgo.
  4. Añadir indicadores- Incorporar más indicadores técnicos para mejorar la robustez y la estabilidad.

Conclusión

La estrategia de ruptura diaria identifica el impulso del mercado a través de una comparación simple y efectiva de las velas diarias, lo que le permite operar en la dirección de las tendencias a corto plazo.


/*backtest
start: 2022-12-26 00:00:00
end: 2023-08-30 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Daily Candle Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=0.0)

// Input parameters
initialCapital = 10000
riskFactor = 3500

// Calculate the opening and closing values for the last day's candle
lastDayOpen = request.security(syminfo.tickerid, "D", open[1], lookahead=barmerge.lookahead_on)
lastDayClose = request.security(syminfo.tickerid, "D", close[1], lookahead=barmerge.lookahead_on)

// Determine the color of the last day's candle
lastDayColor = lastDayOpen < lastDayClose ? color.green : color.red

// Plot the last day's candle on the chart
plotshape(series=na, color=lastDayColor, style=shape.triangledown, location=location.abovebar)

// Calculate trade size based on available capital at last day's closing
availableCapital = strategy.equity
tradeSize = availableCapital / riskFactor

// Trading conditions
buyCondition = lastDayColor == color.green
sellCondition = lastDayColor == color.red

// Execute strategy orders with calculated trade size
strategy.entry("Buy", strategy.long, qty=tradeSize, when=buyCondition)
strategy.entry("Sell", strategy.short, qty=tradeSize, when=sellCondition)

// Exit strategy
stopLoss = 0.001 * lastDayOpen * tradeSize
strategy.exit("StopLoss/Profit", from_entry="Buy", loss=stopLoss)
strategy.exit("StopLoss/Profit", from_entry="Sell", loss=stopLoss)

// Plot stop loss level on the chart
plot(stopLoss, color=color.red, linewidth=2, title="Stop Loss")



Más.