В процессе загрузки ресурсов... загрузка...

Стратегия внутридневного выхода на основе 3-минутных высоких и низких точек свечей

Автор:Чао Чжан, Дата: 2024-06-14 15:43:42
Тэги:М.А.ЕМА

img

Обзор

Основная идея этой стратегии состоит в том, чтобы использовать высокие и низкие точки трехминутной свечи в качестве точек выхода. Когда цена проходит через высокий уровень трехминутной свечи, она идет на длинный, а когда она проходит через низкий уровень, она идет на короткий. Эта стратегия подходит для внутридневной торговли, закрытия позиций в конце каждого дня и продолжения торговли на следующий день. Преимущество этой стратегии заключается в том, что она проста, проста в понимании и проста в реализации, с относительно низким риском. Однако есть также некоторые риски, связанные с этой стратегией, такие как возможность больших снижений, когда волатильность рынка высока.

Принцип стратегии

  1. Получите данные свечей за первые три минуты после открытия рынка каждый день и запишите самые высокие и самые низкие цены третьей свечи.
  2. Когда цена пробивается через самую высокую цену третьей свечи, открыть длинную позицию с целевой ценой на 100 пунктов выше цены открытия, и закрыть позицию в конце дня или когда целевая цена достигнута.
  3. Когда цена пробивается через самую низкую цену третьей свечи, открыть короткую позицию с целевой ценой на 100 пунктов ниже цены открытия, и закрыть позицию в конце дня или когда достигнута целевая цена.
  4. Закрывайте все позиции в конце каждого дня и продолжайте торговать на следующий день.

Преимущества стратегии

  1. Просто и легко понять и реализовать.
  2. Подходит для внутридневной торговли с высоким использованием капитала.
  3. Относительно низкий риск с четкими позициями стоп-лосса.
  4. Подходит для рынков с сильными тенденциями.

Стратегические риски

  1. При высокой волатильности рынка может наблюдаться значительное снижение.
  2. Высокий риск в период открытия, когда колебания цены велики.
  3. Трудно понять положение точки прорыва, легко ошибиться.

Направление оптимизации стратегии

  1. Подумайте о добавлении показателей, таких как скользящие средние, чтобы отфильтровать сигналы шума на колеблющихся рынках.
  2. Подумайте об оптимизации времени открытия, чтобы избежать периода времени открытия.
  3. Подумайте об оптимизации точек получения прибыли и остановки потери для улучшения стабильности стратегии.
  4. Подумайте о добавлении управления позициями для контроля риска привлечения.

Резюме

Эта стратегия основана на прорыве высоких и низких точек трехминутной свечи и подходит для внутридневной торговли. Преимущество заключается в том, что она проста, проста в понимании и проста в реализации, с относительно низким риском. Однако есть также некоторые риски, такие как возможность больших выводов, когда волатильность рынка высока. Чтобы улучшить стабильность и рентабельность стратегии, подумайте об оптимизации ее с точки зрения фильтрации сигналов, оптимизации времени открытия, оптимизации точек получения прибыли и стоп-лосса и добавления управления позициями.


/*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)


Связанные

Больше