Skip to main content
r/TradingView icon

r/TradingView

members
online

[free Script] 2026 Aggregated super strategy:Tokyo range Breakout With VWAP/RSI Filters (Pine script v6 Brand Affiliate [free Script] 2026 Aggregated super strategy:Tokyo range Breakout With VWAP/RSI Filters (Pine script v6
Feature Request

Title: [Free Script] 2026 Aggregated Super Strategy: Tokyo Range Breakout with VWAP/RSI Filters (Pine Script v6)

Hey TV community,

I've been working on refining an institutional-style breakout strategy that aims to filter out "fakeouts" during major session opens. The focus is purely on price action aligned with institutional volume.

I’m sharing the full, free code below for anyone who wants to test it on their charts and offer feedback as we head into 2026.

The Strategy's Logic:

Tokyo Session (Purple Background): The script sets the daily range (High/Low boundaries) during quiet Asian hours.

London & NY Sessions (Blue/Red Background): We only look for trades during these high-volume windows.

The Filters: A trade is only valid if:

It breaks the Tokyo range (Purple Lines).

It aligns with the VWAP (Gray Line) institutional bias.

The RSI confirms momentum.

The Signal: A successful setup is identified by the candle turning Pink and showing a "BUY/SELL ORB" label.

Best Used On: 5m or 15m timeframes. Optimized for Forex pairs (EUR/USD) and Indices (SPY, QQQ).

The Code (Pine Script v6):

//@version=6

strategy("Aggregated Super Strategy V8 (Perfected)", overlay=true, initial_capital=10000)

// --- INPUTS ---

rsiLevel = input.int(50, "RSI Momentum Threshold", minval=1, maxval=100)

TOKYO_SESSION = "0000-0800"

LONDON_SESSION = "0800-1600"

NY_SESSION = "1300-2100"

TIMEZONE = "UTC"

// --- SESSION LOGIC ---

inTokyo = not na(time(timeframe.period, TOKYO_SESSION, TIMEZONE))

inLondon = not na(time(timeframe.period, LONDON_SESSION, TIMEZONE))

inNy = not na(time(timeframe.period, NY_SESSION, TIMEZONE))

isActionTime = inLondon or inNy

// --- TOKYO RANGE TRACKING ---

var float tHigh = na

var float tLow = na

if inTokyo

tHigh := na(tHigh) ? high : math.max(tHigh, high)

tLow := na(tLow) ? low : math.min(tLow, low)

else if not inTokyo and not isActionTime

tHigh := na

tLow := na

// --- INDICATORS ---

vwapValue = ta.vwap(close)

rsiValue = ta.rsi(close, 14)

// --- SIGNALS ---

long = isActionTime and ta.crossover(close, tHigh) and close > vwapValue and rsiValue > rsiLevel

short = isActionTime and ta.crossunder(close, tLow) and close < vwapValue and rsiValue < rsiLevel

if long

strategy.entry("Long", strategy.long, comment="BUY ORB")

if short

strategy.entry("Short", strategy.short, comment="SELL ORB")

// Auto-exit at end of New York

if (not inNy and not inLondon and not inTokyo)

strategy.close_all("EOD Exit")

// --- VISUALS ---

barcolor(long ? color.new(color.fuchsia, 0) : short ? color.new(color.fuchsia, 50) : na)

plot(isActionTime ? tHigh : na, title="Tokyo High", color=color.new(#ff00ff, 0), style=plot.style_linebr, linewidth=2)

plot(isActionTime ? tLow : na, title="Tokyo Low", color=color.new(#ff00ff, 0), style=plot.style_linebr, linewidth=2)

plot(vwapValue, title="VWAP", color=color.new(color.gray, 30), linewidth=3, style=plot.style_stepline)

bgcolor(inTokyo ? color.new(#9c27b0, 92) : na)

bgcolor(inLondon ? color.new(#2196f3, 92) : na)

bgcolor(inNy ? color.new(#f44336, 92) : na)

plotshape(long, style=shape.labelup, location=location.belowbar, color=color.green, text="BUY ORB", textcolor=color.white, size=size.small)

plotshape(short, style=shape.labeldown, location=location.abovebar, color=color.red, text="SELL ORB", textcolor=color.white, size=size.small)


Hey Option Traders! Our Trading API is here. Program your trades with real-time execution, no commissions, and earn rebates on stock and ETF options contracts.
Image Hey Option Traders! Our Trading API is here. Program your trades with real-time execution, no commissions, and earn rebates on stock and ETF options contracts.