Estrategia de color de vela de medianoche con Stop Loss y Take Profit

El autor:¿ Qué pasa?, Fecha: 2024-01-05 16:37:35
Las etiquetas:

img

Resumen general

Esta estrategia se opera basándose en el color de la vela de medianoche con un retraso de 1 hora, analizando el color de la vela de medianoche 0 de la noche anterior para determinar la dirección de negociación a la 1 de la mañana siguiente.

Estrategia lógica

La lógica central de esta estrategia se basa en el "efecto medianoche" en los mercados, donde el color de la vela de las 0 horas del día anterior representa el sentimiento general del mercado y puede usarse para determinar la dirección del mercado después de la apertura del día siguiente.

Específicamente, la estrategia primero juzga si la vela actual es la vela de 0 oh. Si es así, registre como verde si el cierre es más alto que el abierto, de lo contrario rojo. En la siguiente barra a la 1 oh, vaya largo / corto de acuerdo con el color de la vela de 0 oh del día anterior, con stop loss y take profit.

Al retrasar la entrada por 1 hora, evita que el precio volátil a medianoche afecte la entrada al mercado.

Ventajas

  1. Lógica simple usando el color de las velas de 0 horas para determinar la dirección del mercado
  2. El retraso de entrada de una hora evita el riesgo de volatilidad de los precios de medianoche
  3. Establecer el stop loss y tomar el beneficio para limitar las pérdidas y garantizar el beneficio

Los riesgos

  1. El color de las velas de las 0 horas puede no representar plenamente la tendencia del mercado del día siguiente con cierta incertidumbre
  2. No tiene en cuenta el riesgo de grandes oscilaciones repentinas de precios debido a grandes acontecimientos económicos, etc.
  3. Las operaciones de stop loss y take profit necesitan una optimización y prueba continuas, de lo contrario, existe el riesgo de ser atrapados o de que los beneficios sean limitados.

Áreas de mejora

  1. Combinar más factores para juzgar la eficacia de la indicación de la vela de 0 horas, por ejemplo, volumen, rango, etc.
  2. Prueba diferentes retrasos de entrada como 2 horas, 3 horas, etc.
  3. Ajustar dinámicamente el stop loss y el take profit para adaptarse mejor a la volatilidad del mercado

Resumen de las actividades

La estrategia tiene una lógica clara y simple, juzgando la dirección del día siguiente por el color de la vela de 0 horas y controlando los riesgos con stop loss / take profit. Es una estrategia de trading a corto plazo amigable para principiantes. Pero todavía hay algunas incertidumbres, que requieren optimización y validación continua en el trading en vivo.


/*backtest
start: 2023-12-28 00:00:00
end: 2024-01-04 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Midnight Candle Color Strategy with 1-Hour Delay and SL/TP", shorttitle="12AM +1H SL/TP Strat", overlay=true)

// Adjust for New York time (UTC-5 or UTC-4 for Daylight Saving Time)
// Assuming UTC-5 for now; adjust as necessary for Daylight Saving Time
nyHour(hour) => (hour - 5) % 24

// Function to check if the current bar is the 12:00 AM New York time bar
isMidnightBar() =>
    nyHour(hour) == 0 and minute == 0

// Function to check if the current bar is the 1:00 AM New York time bar (1 hour after midnight)
is1AMBar() =>
    nyHour(hour) == 1 and minute == 0

// Variable to store the color of the previous day's midnight candle
var color midnightCandleColorPrevDay = na

// Determine the color of the previous day's midnight candle
if isMidnightBar()
    midnightCandleColorPrevDay := close[1] > open[1] ? color.green : color.red

// Strategy execution at 1:00 AM based on the color of the previous day's midnight candle
if is1AMBar()
    if midnightCandleColorPrevDay == color.green
        strategy.entry("Long", strategy.long)
        strategy.exit("Take Profit", "Long", limit=close + 57 * syminfo.mintick, stop=close - 200 * syminfo.mintick)
    if midnightCandleColorPrevDay == color.red
        strategy.entry("Short", strategy.short)
        strategy.exit("Take Profit", "Short", limit=close - 50 * syminfo.mintick, stop=close + 200 * syminfo.mintick)

// Optional: Plot a marker for visualization
plotshape(series=isMidnightBar(), style=shape.triangleup, location=location.belowbar, color=color.new(midnightCandleColorPrevDay, 90), size=size.small)
plotshape(series=is1AMBar(), style=shape.triangledown, location=location.abovebar, color=color.blue, size=size.small)


Más.