Estratégia de avanço intradiário com base em pontos altos e baixos da linha K de três minutos

MA EMA
Data de criação: 2024-06-14 15:43:42 última modificação: 2024-06-14 15:43:42
cópia: 3 Cliques: 873
1
focar em
1617
Seguidores

Estratégia de avanço intradiário com base em pontos altos e baixos da linha K de três minutos

Visão geral

A principal idéia da estratégia é usar o ponto alto e baixo da linha K de três minutos como ponto de ruptura, fazer mais quando o preço quebra o ponto alto da linha K de três minutos e fechar quando o preço quebra o ponto baixo. A estratégia é adequada para negociações diárias, liquidar o liquidação do dia e continuar a negociação no dia seguinte.

Princípio da estratégia

  1. Obtenha dados da linha K nos primeiros três minutos após a abertura de cada dia, registrando os preços mais altos e mais baixos da terceira linha K.
  2. Quando o preço quebra o preço máximo da linha K da terceira base, abre a opção com o preço alvo aumentado em 100 pontos para o preço de abertura da posição até o fechamento ou até atingir o preço alvo.
  3. Quando o preço quebra o preço mínimo da linha K da terceira base, abre uma carta em branco, o preço-alvo é o preço de abertura da posição, menos 100 pontos, até o fechamento ou o equilíbrio do preço-alvo.
  4. A negociação continua no dia seguinte, após o fechamento do dia.

Vantagens estratégicas

  1. Simples, fácil de entender e fácil de implementar.
  2. Aplica-se a transações intradiárias, com alta taxa de utilização de fundos.
  3. O risco é relativamente baixo e o ponto de parada é claro.
  4. Aplica-se a mercados com maior tendência.

Risco estratégico

  1. Quando o mercado está mais flutuante, pode haver um retorno maior.
  2. A maior volatilidade dos preços durante o período de abertura é um risco maior.
  3. A localização do ponto de ruptura é incerta e pode levar a erros de interpretação.

Direção de otimização da estratégia

  1. Pode-se considerar a inclusão de indicadores como a média móvel para filtrar os sinais de ruído de uma cidade em choque.
  2. Pode-se considerar otimizar o tempo de abertura das posições, evitando os períodos de abertura.
  3. Pode-se considerar a otimização do ponto de parada para aumentar a estabilidade da estratégia.
  4. Pode-se considerar a inclusão de gestão de posições para controlar o risco de retirada.

Resumir

A estratégia é baseada em três minutos de alta e baixa da linha K, e é aplicada para negociação no dia. A vantagem é simples, fácil de entender, fácil de implementar, e o risco é relativamente baixo. Mas também há alguns riscos, como quando a volatilidade do mercado é grande, pode haver uma grande retração.

Código-fonte da estratégia
/*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)