En la carga de los recursos... Cargando...

Estrategia de ruptura intradiaria basada en los puntos bajos y altos de las velas de 3 minutos

El autor:¿ Qué pasa?, Fecha: 2024-06-14 15:43:42
Las etiquetas:- ¿Qué es?El EMA

img

Resumen general

La idea principal de esta estrategia es utilizar los puntos altos y bajos de la vela de tres minutos como puntos de ruptura. Cuando el precio rompe el máximo de la vela de tres minutos, va largo, y cuando rompe el mínimo, va corto. Esta estrategia es adecuada para el comercio intradiario, cerrando posiciones al final de cada día y continuando el comercio al día siguiente. La ventaja de esta estrategia es que es simple, fácil de entender y fácil de implementar, con un riesgo relativamente bajo. Sin embargo, también hay algunos riesgos asociados con esta estrategia, como la posibilidad de grandes bajadas cuando la volatilidad del mercado es alta.

Principio de la estrategia

  1. Obtenga los datos de las velas durante los primeros tres minutos después de la apertura del mercado cada día, y registre los precios más altos y más bajos de la tercera vela.
  2. Cuando el precio rompa el precio más alto de la tercera vela, abra una posición larga con un precio objetivo de 100 puntos por encima del precio de apertura y cierre la posición al final del día o cuando se alcance el precio objetivo.
  3. Cuando el precio rompa el precio más bajo de la tercera vela, abra una posición corta con un precio objetivo de 100 puntos por debajo del precio de apertura y cierre la posición al final del día o cuando se alcance el precio objetivo.
  4. Cierre todas las posiciones al final de cada día y continúe el día siguiente.

Ventajas estratégicas

  1. Simple y fácil de entender e implementar.
  2. Adecuado para operaciones intradiarias con una alta utilización de capital.
  3. Relativamente bajo riesgo con posiciones de stop loss claras.
  4. Adecuado para mercados con tendencias fuertes.

Riesgos estratégicos

  1. Puede experimentar grandes reducciones cuando la volatilidad del mercado es alta.
  2. Alto riesgo durante el período de apertura cuando las fluctuaciones de precios son grandes.
  3. Difícil de entender la posición del punto de escape, fácil de juzgar mal.

Dirección de optimización de la estrategia

  1. Considere la posibilidad de añadir indicadores como las medias móviles para filtrar las señales de ruido en los mercados oscilantes.
  2. Considere optimizar el tiempo de apertura para evitar el período de apertura.
  3. Considere la posibilidad de optimizar los puntos de toma de ganancias y stop-loss para mejorar la estabilidad de la estrategia.
  4. Considere la posibilidad de añadir la gestión de posiciones para controlar el riesgo de extracción.

Resumen de las actividades

Esta estrategia se basa en la ruptura de los puntos altos y bajos de la vela de tres minutos y es adecuada para el comercio intradiario. La ventaja es que es simple, fácil de entender y fácil de implementar, con un riesgo relativamente bajo. Sin embargo, también hay algunos riesgos, como la posibilidad de grandes reducciones cuando la volatilidad del mercado es alta. Para mejorar la estabilidad y la rentabilidad de la estrategia, considere optimizarla en términos de filtración de señales, optimización de los tiempos de apertura, optimización de puntos de toma de ganancias y stop-loss y adición de gestión de posiciones.


/*backtest
start: 2023-06-08 00:00:00
end: 2024-06-13 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Banknifty Strategy", overlay=true, default_qty_type=strategy.fixed, default_qty_value=1)

// Parameters
start_date = input(timestamp("2024-01-01 00:00"), title="Start Date")
end_date = input(timestamp("2024-06-07 23:59"), title="End Date")

// Time settings
var startTime = timestamp("2024-06-09 09:15")
var endTime = timestamp("2024-06-09 09:24")

// Variables to store the 3rd 3-minute candle
var bool isCandleFound = false
var float thirdCandleHigh = na
var float thirdCandleLow = na
var float baseCandleHigh = na
var float baseCandleLow = na
var float entryPrice = na
var float targetPrice = na

// Check if the current time is within the specified date range
inDateRange = true

// Capture the 3rd 3-minute candle
if (inDateRange and not isCandleFound)
    var int candleCount = 0
    if (true)
        candleCount := candleCount + 1
        if (candleCount == 3)
            thirdCandleHigh := high
            thirdCandleLow := low
            isCandleFound := true

// Wait for a candle to close above the high of the 3rd 3-minute candle
if (isCandleFound and na(baseCandleHigh) and close > thirdCandleHigh)
    baseCandleHigh := close
    baseCandleLow := low

// Strategy logic for buying and selling
if (not na(baseCandleHigh))
    // Buy condition
    if (high > baseCandleHigh and strategy.opentrades == 0)
        entryPrice := high
        targetPrice := entryPrice + 100
        strategy.entry("Buy", strategy.long, limit=entryPrice)
    // Sell condition
    if (low < baseCandleLow and strategy.opentrades == 0)
        entryPrice := low
        targetPrice := entryPrice - 100
        strategy.entry("Sell", strategy.short, limit=entryPrice)

// Exit conditions
if (strategy.opentrades > 0)
    // Exit BUY trade when profit is 100 points or carry forward to next day
    if (strategy.position_size > 0 and high >= targetPrice)
        strategy.exit("Take Profit", from_entry="Buy", limit=targetPrice)
    // Exit SELL trade when profit is 100 points or carry forward to next day
    if (strategy.position_size < 0 and low <= targetPrice)
        strategy.exit("Take Profit", from_entry="Sell", limit=targetPrice)

// Close trades at the end of the day
if (time == timestamp("2024-06-09 15:30"))
    strategy.close("Buy", comment="Market Close")
    strategy.close("Sell", comment="Market Close")

// Plotting for visualization
plotshape(series=isCandleFound, location=location.belowbar, color=color.red, style=shape.labeldown, text="3rd 3-min candle")
plot(baseCandleHigh, title="Base Candle High", color=color.green, linewidth=2, style=plot.style_line)
plot(baseCandleLow, title="Base Candle Low", color=color.red, linewidth=2, style=plot.style_line)


Relacionados

Más.