Estrategia de ruptura intradía basada en puntos altos y bajos de la línea K de tres minutos

MA EMA
Fecha de creación: 2024-06-14 15:43:42 Última modificación: 2024-06-14 15:43:42
Copiar: 3 Número de Visitas: 873
1
Seguir
1617
Seguidores

Estrategia de ruptura intradía basada en puntos altos y bajos de la línea K de tres minutos

Descripción general

La idea principal de esta estrategia es utilizar los puntos altos y bajos de la línea K de tres minutos como punto de ruptura, hacer más cuando el precio rompe los puntos altos de la línea K de tres minutos y cerrar cuando rompe los puntos bajos. La estrategia es adecuada para el comercio en el día, cerrar la posición al cierre del día y continuar el comercio al día siguiente. La estrategia tiene la ventaja de ser simple y fácil de entender, fácil de implementar y de riesgo relativamente bajo.

Principio de estrategia

  1. Obtenga datos de la línea K de los primeros tres minutos después de la apertura de cada día y registre los precios más altos y más bajos de la tercera línea K.
  2. Cuando el precio rompa el precio máximo de la tercera línea K, se abre una orden de compra, y el precio objetivo se agrega 100 puntos al precio de apertura de la posición, hasta que se cierre o se alcance la posición de equilibrio del precio objetivo.
  3. Cuando el precio rompa el precio mínimo de la tercera línea K, abre una carta en blanco, y el precio objetivo es el precio de apertura menos 100 puntos, hasta que se cierre o se alcance la posición de paridad del precio objetivo.
  4. El día se cierra con una posición cerrada y se continúa el día siguiente.

Ventajas estratégicas

  1. Es simple, fácil de entender y fácil de hacer.
  2. Aplicable para transacciones diarias, con una alta tasa de utilización de fondos.
  3. El riesgo es relativamente bajo y el punto de parada es claro.
  4. Aplicable a mercados con una fuerte tendencia.

Riesgo estratégico

  1. Cuando el mercado es más volátil, puede haber un mayor retroceso.
  2. El precio fluctúa mucho durante el período de apertura y el riesgo es alto.
  3. La ubicación de los puntos de ruptura no está bien definida, lo que puede conducir a errores de juicio.

Dirección de optimización de la estrategia

  1. Se puede considerar la inclusión de indicadores como las medias móviles para filtrar las señales de ruido en las ciudades convulsionadas.
  2. Se puede considerar la optimización de los tiempos de apertura para evitar los períodos de apertura.
  3. Se puede considerar la optimización de los puntos de parada y pérdida para mejorar la estabilidad de la estrategia.
  4. Se puede considerar la posibilidad de incorporar la gestión de posiciones para controlar el riesgo de retiro.

Resumir

La estrategia se basa en la ruptura de los puntos altos y bajos de la línea K de tres minutos y se aplica a las operaciones diarias. La ventaja es que es simple y fácil de entender, fácil de implementar, el riesgo es relativamente bajo. Pero también hay algunos riesgos, como cuando la volatilidad del mercado es grande, puede haber una gran retirada.

Código Fuente de la Estrategia
/*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)