OPEN-SOURCE SCRIPT
Intraday Day-Trade Scanner

//version=5
indicator("Intraday Day-Trade Scanner", overlay=true)
// ----- Inputs -----
minFloat = input.int(10000000, "Min Float")
maxFloat = input.int(20000000, "Max Float")
minPrice = input.float(3, "Min Price")
maxPrice = input.float(50, "Max Price")
minRVOL = input.float(1.5, "Min Relative Volume")
minAtrPct = input.float(1.0, "Min ATR %")
maxAtrPct = input.float(5.0, "Max ATR %")
useLong = input.bool(true, "Long scan (above VWAP)")
useShort = input.bool(false, "Short scan (below VWAP)")
// ----- Data -----
float = request.financial(syminfo.tickerid, "FLOAT", "FQ")
avgVol = ta.sma(volume, 20)
rvol = volume / avgVol
atr = ta.atr(14)
atrPct = (atr / close) * 100
// VWAP
vwap = ta.vwap(close)
// ----- Conditions -----
floatOK = float >= minFloat and float <= maxFloat
priceOK = close >= minPrice and close <= maxPrice
rvolOK = rvol >= minRVOL
atrOK = atrPct >= minAtrPct and atrPct <= maxAtrPct
longOK = useLong and close > vwap
shortOK = useShort and close < vwap
qualified = floatOK and priceOK and rvolOK and atrOK and (longOK or shortOK)
// ----- Plot label on chart -----
plotshape(qualified,title ="Qualified Stock", text="SCAN HIT", style=shape.labelup, size=size.small, color=color.new(color.green, 0))
// ----- Alerts -----
alertcondition(qualified, title="Trade Candidate Found", message="This stock meets your day-trade scan criteria!")
indicator("Intraday Day-Trade Scanner", overlay=true)
// ----- Inputs -----
minFloat = input.int(10000000, "Min Float")
maxFloat = input.int(20000000, "Max Float")
minPrice = input.float(3, "Min Price")
maxPrice = input.float(50, "Max Price")
minRVOL = input.float(1.5, "Min Relative Volume")
minAtrPct = input.float(1.0, "Min ATR %")
maxAtrPct = input.float(5.0, "Max ATR %")
useLong = input.bool(true, "Long scan (above VWAP)")
useShort = input.bool(false, "Short scan (below VWAP)")
// ----- Data -----
float = request.financial(syminfo.tickerid, "FLOAT", "FQ")
avgVol = ta.sma(volume, 20)
rvol = volume / avgVol
atr = ta.atr(14)
atrPct = (atr / close) * 100
// VWAP
vwap = ta.vwap(close)
// ----- Conditions -----
floatOK = float >= minFloat and float <= maxFloat
priceOK = close >= minPrice and close <= maxPrice
rvolOK = rvol >= minRVOL
atrOK = atrPct >= minAtrPct and atrPct <= maxAtrPct
longOK = useLong and close > vwap
shortOK = useShort and close < vwap
qualified = floatOK and priceOK and rvolOK and atrOK and (longOK or shortOK)
// ----- Plot label on chart -----
plotshape(qualified,title ="Qualified Stock", text="SCAN HIT", style=shape.labelup, size=size.small, color=color.new(color.green, 0))
// ----- Alerts -----
alertcondition(qualified, title="Trade Candidate Found", message="This stock meets your day-trade scan criteria!")
Open-source script
In true TradingView spirit, the creator of this script has made it open-source, so that traders can review and verify its functionality. Kudos to the author! While you can use it for free, remember that republishing the code is subject to our House Rules.
Disclaimer
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.
Open-source script
In true TradingView spirit, the creator of this script has made it open-source, so that traders can review and verify its functionality. Kudos to the author! While you can use it for free, remember that republishing the code is subject to our House Rules.
Disclaimer
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.