
DZ London Session Breakout Strategy est une stratégie de trading quantitative basée sur la rupture de la session de Londres. L’idée principale de la stratégie est de capturer les opportunités de rupture au cours de la session de Londres et de prendre des décisions commerciales en déterminant si le prix a franchi le haut ou le bas précédent.
Le principe de base de la stratégie de rupture de la session de DZ London est basé sur des transactions de rupture à l’heure de la session de Londres. Comme Londres est l’un des plus grands centres de négociation de devises au monde, le volume des transactions est énorme et la volatilité du marché est élevée. La stratégie juge si l’heure actuelle est dans cette période en définissant le début et la fin de la session de négociation à Londres.
DZ London Session Breakout Strategy est une stratégie de trading quantitative basée sur la rupture de la session de négociation à Londres. Cette stratégie utilise le volume et la volatilité élevés de la session de négociation à Londres pour capturer des opportunités de négociation potentielles en déterminant si le prix a franchi le prix critique. La stratégie prend en compte le prix le plus élevé et le prix le plus bas de plusieurs périodes de temps et filtre les fausses ruptures par la confirmation de nouveaux hauts et de nouveaux bas.
/*backtest
start: 2023-05-14 00:00:00
end: 2024-05-13 00:00:00
period: 6h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("DZ Strategy ICT", overlay=true)
// Input parameters
london_open_hour = input(13, "London Open Hour")
london_open_minute = input(30, "London Open Minute")
london_close_hour = input(16, "London Close Hour")
// Get current datetime
hour = hour(time)
minute = minute(time)
// Get session high, daily high, and weekly high
sessionHigh = request.security(syminfo.tickerid, "D", high)
dailyHigh = request.security(syminfo.tickerid, "D", high)
weeklyHigh = request.security(syminfo.tickerid, "W", high)
// Condition for being in the specified time range
inLondonTimeRange = (hour >= london_open_hour and hour < london_close_hour) or (hour == london_close_hour and minute == 0)
// Check for breakout above session, daily, or weekly high
breakoutAboveSessionHigh = high > sessionHigh
breakoutAboveDailyHigh = high > dailyHigh
breakoutAboveWeeklyHigh = high > weeklyHigh
// Check for breakout below session, daily, or weekly high
breakoutBelowSessionHigh = low < sessionHigh
breakoutBelowDailyHigh = low < dailyHigh
breakoutBelowWeeklyHigh = low < weeklyHigh
// Check for new lower low or higher high on 1-minute chart
newLowerLow = ta.lowest(low, 10)[1] > low
newHigherHigh = ta.highest(high, 10)[1] < high
// Set entry point based on imbalance
imbalanceLevel = low[1] // Placeholder for imbalance level, adjust this as needed
// Entry conditions for short position
if (inLondonTimeRange and (breakoutAboveSessionHigh or breakoutAboveDailyHigh or breakoutAboveWeeklyHigh) and newLowerLow)
strategy.entry("Short Entry", strategy.short)
// Entry conditions for long position
if (inLondonTimeRange and (breakoutBelowSessionHigh or breakoutBelowDailyHigh or breakoutBelowWeeklyHigh) and newHigherHigh)
strategy.entry("Long Entry", strategy.long)