Стратегия ежедневного прорыва - это простая стратегия, основанная на ежедневных графиках свечей. Она генерирует торговые сигналы, наблюдая взаимосвязь между ценами открытия и закрытия предыдущего дня, чтобы определить динамику рынка.
Основная логика этой стратегии заключается в следующем:
Если тело свечи предыдущего дня зеленое (цена закрытия выше цены открытия), это указывает на тенденцию к росту в тот день. Стратегия будет длинной на следующий день. Если тело свечи предыдущего дня красное (цена закрытия ниже цены открытия), это указывает на тенденцию к снижению. Стратегия будет короткой на следующий день.
Таким простым способом стратегия может определить рыночный импульс в рамках недавнего цикла одной свечи и соответственно совершать сделки. Это позволяет стратегии следовать последней тенденции рынка.
В частности, стратегия генерирует торговые сигналы следующим образом:
Благодаря этой логике стратегия может использовать краткосрочные ценовые тенденции.
К основным преимуществам этой стратегии относятся:
Некоторые риски и области улучшения:
Ежедневная стратегия прорыва определяет рыночный импульс посредством простого и эффективного сравнения ежедневных свечей, позволяя торговать в направлении краткосрочных тенденций.
/*backtest start: 2022-12-26 00:00:00 end: 2023-08-30 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Daily Candle Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=0.0) // Input parameters initialCapital = 10000 riskFactor = 3500 // Calculate the opening and closing values for the last day's candle lastDayOpen = request.security(syminfo.tickerid, "D", open[1], lookahead=barmerge.lookahead_on) lastDayClose = request.security(syminfo.tickerid, "D", close[1], lookahead=barmerge.lookahead_on) // Determine the color of the last day's candle lastDayColor = lastDayOpen < lastDayClose ? color.green : color.red // Plot the last day's candle on the chart plotshape(series=na, color=lastDayColor, style=shape.triangledown, location=location.abovebar) // Calculate trade size based on available capital at last day's closing availableCapital = strategy.equity tradeSize = availableCapital / riskFactor // Trading conditions buyCondition = lastDayColor == color.green sellCondition = lastDayColor == color.red // Execute strategy orders with calculated trade size strategy.entry("Buy", strategy.long, qty=tradeSize, when=buyCondition) strategy.entry("Sell", strategy.short, qty=tradeSize, when=sellCondition) // Exit strategy stopLoss = 0.001 * lastDayOpen * tradeSize strategy.exit("StopLoss/Profit", from_entry="Buy", loss=stopLoss) strategy.exit("StopLoss/Profit", from_entry="Sell", loss=stopLoss) // Plot stop loss level on the chart plot(stopLoss, color=color.red, linewidth=2, title="Stop Loss")