The problem: charts and code live in different universes
Most traders discover strategies in one of two places:
-
On charts, using a familiar indicator stack (RSI, MACD, Bollinger Bands, SuperTrend, VWAP, etc.).
-
In backtest engines, where strategies become code (position sizing, order rules, execution models, fees, slippage).
The gap is that screeners usually only work “right now.” They filter the market based on today’s RSI, today’s moving averages, today’s volatility. That’s useful for trade ideas—but it’s not backtesting.
Backtesting demands a different question:
“On each historical day (or bar), which symbols matched my indicator rules as-of that moment, and what happened next?”
That’s exactly where most screeners break.
Why “today-only” screeners can’t validate indicator strategies
A technical strategy is usually a combination of:
-
A signal definition (indicator conditions)
-
A trigger (cross, threshold, regime change, pattern)
-
A market universe (watchlist, exchange, sector, liquidity constraints)
-
A time resolution (1m, 5m, 1h, 1D…)
-
Trade rules (entry timing, exits, stops, sizing)
If your screener can’t answer “what did the market look like on March 12, 2021 at 10:15?” you can’t reliably test:
-
how often the setup occurred,
-
whether it clustered in certain regimes,
-
whether performance decayed over time,
-
and whether your rules accidentally depend on future data (look-ahead bias).
What Wizzer Screener changes: point‑in‑time filtering as a first‑class feature
Wizzer Screener is built around a simple but powerful idea:
You should be able to search the market at any historical point in time using the same indicator logic you’d use today—and then feed those results directly into a real backtest.
Instead of “RSI < 30 today,” you can run:
-
“RSI(14) < 30 as-of each daily close between 2018–2024”
-
“SuperTrend flipped bullish on the bar it happened”
-
“Bollinger Band Width expanded above threshold before the breakout”
-
“Bullish Engulfing pattern occurred with volume confirmation”
And because Wizzer can treat any registered indicator as an INDICATOR_LINE emitted from the engine context, Wizzer can compute and store indicator series centrally (not scattered across strategy code).
Coverage matters: Wizzer unifies TradingView indicator expectations with backtesting power
Traders don’t want “a few indicators.” They want the indicators they already use.
On the charting side, TradingView’s Advanced Charts library exposes a large built‑in indicator catalog (100+; see Appendix A).
On the backtesting side, Wizzer provides 100+ supported indicators plus a full candlestick pattern set (see Appendix B).
This matters because it means Wizzer can support deep strategy discovery across:
-
Momentum (RSI, Stochastic, ROC, Connors RSI, etc.)
-
Trend (Ichimoku, moving averages, SuperTrend, regression channels)
-
Volatility (ATR, Bollinger width, historical volatility, volatility index)
-
Volume / flow (OBV, Chaikin money flow, volume profiles)
-
Patterns (candlestick pattern events as signal triggers)
-
Quant stats (Alpha/Beta, Sharpe/Sortino, VaR) where LEAN supports them
The workflow: from “find setups” → “prove it” → “ship it”
Here’s the practical Wizzer loop:
Step 1: Define your setup as indicator conditions
Use the same language traders already think in:
-
RSI(14) < 30
-
Price above SMA(200)
-
MACD histogram turns positive
-
SuperTrend flips bullish
-
Volume Profile shows a visible-range node (where applicable)
Step 2: Choose the time window and run a point‑in‑time scan
This is the key difference.
Instead of a single snapshot, Wizzer can scan:
-
across all dates in a range, and/or
-
across all symbols in a universe, and/or
-
across multiple timeframes (daily + intraday)
…always evaluating indicators as-of each timestamp.
The output is a clean dataset of:
- (time, symbol, signal, indicator values, context fields)
This becomes your “signals tape.”
Step 3: Backtest the signals in Wizzer with realistic execution rules
Now you can do what code engines are best at:
-
model fills, slippage, fees,
-
portfolio constraints,
-
exits and stops,
-
multi-asset allocation,
-
walk-forward or out-of-sample testing.
Because Wizzer already supports a wide indicator set and patterns, you can reproduce the same logic in code—or consume Wizzer’s signal tape as a universe/alpha feed.
Step 4: Visually validate “why” on the chart
One of the biggest time sinks in quant work is debugging signal quality.
Wizzer’s advantage is that it doesn’t force you to choose:
-
“visual, but not testable” or
-
“testable, but opaque”
You can inspect any historical signal occurrence directly on the chart, confirm whether the indicator logic matches your intention, and iterate faster.
Examples: strategies that become easy with point‑in‑time screening
Here are a few strategy patterns that benefit immediately:
Example A — Mean reversion with regime filter
-
Entry: RSI(14) < 30
-
Filter: Price above SMA(200) (avoid fighting long downtrends)
-
Exit: RSI crosses above 50 or fixed time stop
Point‑in‑time screening answers:
-
how often this occurred in each regime,
-
whether it worked better in specific years,
-
and whether signal density spikes during crisis volatility.
Example B — Trend following with SuperTrend flips
-
Entry: SuperTrend flips bullish
-
Filter: rising ATR or breakout confirmation
-
Exit: SuperTrend flips bearish / trailing stop
This is hard to evaluate with “today-only” tools because the flip event is historical and time-dependent.
Example C — Breakout driven by volatility expansion
-
Entry: Bollinger Band Width rises above threshold + price breaks range
-
Filter: volume confirmation (OBV/CMF or raw volume)
This is naturally point‑in‑time: you must know what volatility looked like before the breakout.
Example D — Candlestick pattern triggers at scale
LEAN includes a full candlestick pattern set (Engulfing, Doji variants, Morning/Evening star, Three Black Crows, etc.).
Patterns become powerful when you can:
-
scan them historically across a universe,
-
add indicator confirmation filters,
-
and test outcomes systematically.
Why this is “deeper” than typical products
Most products give you one of the following:
-
A screener (fast, visual, but not historical/point‑in‑time)
-
A backtester (powerful, but requires full coding and doesn’t help you discover setups quickly)
-
A charting tool (best-in-class visualization, but not a scanning/backtest workflow by itself)
Wizzer’s differentiator is the combination:
-
A broad indicator catalog aligned with TradingView chart expectations (Appendix A) and Wizzer indicator coverage (Appendix B).
-
Point‑in‑time filtering so your “screener logic” becomes “backtest input.”
-
Wizzer execution realism for final validation.
-
Chart-first explainability so traders can trust what the backtest is doing.
Appendix A — TradingView Advanced Charts indicator list
All available built-in indicators (107):
0–9
- 52 Week High/Low
A
-
Accelerator Oscillator
-
Accumulation/Distribution
-
Accumulative Swing Index
-
Advance/Decline
-
Arnaud Legoux Moving Average
-
Aroon
-
Average Directional Index
-
Average Price
-
Average True Range
-
Awesome Oscillator
B
-
Balance of Power
-
Bollinger Bands
-
Bollinger Bands %B
-
Bollinger Bands Width
C
-
Chaikin Money Flow
-
Chaikin Oscillator
-
Chaikin Volatility
-
Chande Kroll Stop
-
Chande Momentum Oscillator
-
Chop Zone
-
Choppiness Index
-
Commodity Channel Index
-
Connors RSI
-
Coppock Curve
-
Correlation Coefficient
-
Correlation - Log
D
-
Detrended Price Oscillator
-
Directional Movement
-
Donchian Channels
-
Double EMA
E
-
Ease of Movement
-
Elder’s Force Index
-
EMA Cross
-
Envelopes
F
- Fisher Transform
G
- Guppy Multiple Moving Average
H
-
Historical Volatility
-
Hull Moving Average
I
- Ichimoku Cloud
K
-
Keltner Channels
-
Klinger Oscillator
-
Know Sure Thing
L
-
Least Squares Moving Average
-
Linear Regression Curve
-
Linear Regression Slope
M
-
MA Cross
-
MA with EMA Cross
-
Mass Index
-
McGinley Dynamic
-
Median Price
-
Momentum
-
Money Flow Index
-
Moving Average
-
Moving Average Channel
-
MACD
-
Moving Average Exponential
-
Moving Average Weighted
-
Moving Average Double
-
Moving Average Triple
-
Moving Average Adaptive
-
Moving Average Hamming
-
Moving Average Multiple
-
Majority Rule
N
- Net Volume
O
- On Balance Volume
P
-
Parabolic SAR
-
Pivot Points Standard
-
Price Channel
-
Price Oscillator
-
Price Volume Trend
R
-
Rank Correlation Index
-
Rate Of Change
-
Ratio
-
Relative Strength Index
-
Relative Vigor Index
-
Relative Volatility Index
S
-
Standard Error
-
Standard Error Bands
-
SMI Ergodic Indicator/Oscillator
-
Smoothed Moving Average
-
Standard Deviation
-
Stochastic
-
Stochastic RSI
-
SuperTrend
-
Spread
T
-
TRIX
-
Triple EMA
-
True Strength Indicator
-
Trend Strength Index
-
Typical Price
U
- Ultimate Oscillator
V
-
Volatility Close-to-Close
-
Volatility Zero Trend Close-to-Close
-
Volatility O-H-L-C
-
Volatility Index
-
VWAP
-
VWMA
-
Volume Oscillator
-
Volume Profile Fixed Range
-
Volume Profile Visible Range
-
Vortex Indicator
-
Volume
W
-
Williams %R
-
Williams Alligator
-
Williams Fractal
Z
- Zig Zag
Appendix B — Wizzer supported indicators + candlestick patterns
2A) Supported indicators (133)
Source list:
-
Absolute Price Oscillator
-
Acceleration Bands
-
Accumulation Distribution
-
Accumulation Distribution Oscillator
-
Advance Decline Difference
-
Advance Decline Ratio
-
Advance Decline Volume Ratio
-
Alpha
-
Arms Index
-
Arnaud Legoux Moving Average
-
Aroon Oscillator
-
Augen Price Spike
-
Auto Regressive Integrated Moving Average
-
Average Directional Index
-
Average Directional Movement Index Rating
-
Average Range
-
Average True Range
-
Awesome Oscillator
-
Balance Of Power
-
Beta
-
Bollinger Bands
-
Chaikin Money Flow
-
Chaikin Oscillator
-
Chande Kroll Stop
-
Chande Momentum Oscillator
-
Choppiness Index
-
Commodity Channel Index
-
Connors Relative Strength Index
-
Coppock Curve
-
Correlation
-
Covariance
-
DeMarker Indicator
-
Delta
-
Derivative Oscillator
-
Detrended Price Oscillator
-
Donchian Channel
-
Double Exponential Moving Average
-
Ease Of Movement Value
-
Exponential Moving Average
-
Filtered Identity
-
Fisher Transform
-
Force Index
-
Fractal Adaptive Moving Average
-
Gamma
-
Heikin Ashi
-
Hilbert Transform
-
Hull Moving Average
-
Hurst Exponent
-
Ichimoku Kinko Hyo
-
Identity
-
Implied Volatility
-
Internal Bar Strength
-
Intraday Vwap
-
Kaufman Adaptive Moving Average
-
Kaufman Efficiency Ratio
-
Keltner Channels
-
Klinger Volume Oscillator
-
Know Sure Thing
-
Least Squares Moving Average
-
Linear Weighted Moving Average
-
Log Return
-
Mass Index
-
Maximum
-
McClellan Oscillator
-
McClellan Summation Index
-
McGinley Dynamic
-
Mean Absolute Deviation
-
Mesa Adaptive Moving Average
-
Mid Point
-
Mid Price
-
Minimum
-
Momentum
-
Momentum Percent
-
Momersion
-
Money Flow Index
-
Moving Average Convergence Divergence
-
New Highs New Lows
-
New Highs New Lows Volume
-
Normalized Average True Range
-
On Balance Volume
-
Parabolic Stop And Reverse
-
Parabolic Stop And Reverse Extended
-
Percentage Price Oscillator
-
Pivot Points High Low
-
Premier Stochastic Oscillator
-
Rate Of Change
-
Rate Of Change Percent
-
Rate Of Change Ratio
-
Regression Channel
-
Relative Daily Volume
-
Relative Moving Average
-
Relative Strength Index
-
Relative Vigor Index
-
Rho
-
Rogers Satchell Volatility
-
Schaff Trend Cycle
-
Sharpe Ratio
-
Simple Moving Average
-
Smoothed On Balance Volume
-
Sortino Ratio
-
Squeeze Momentum
-
Standard Deviation
-
Stochastic
-
Stochastic Relative Strength Index
-
Sum
-
Super Trend
-
Swiss Army Knife
-
T3 Moving Average
-
Target Downside Deviation
-
Theta
-
Time Profile
-
Time Series Forecast
-
Tom Demark Sequential
-
Triangular Moving Average
-
Triple Exponential Moving Average
-
Trix
-
True Range
-
True Strength Index
-
Ultimate Oscillator
-
Value At Risk
-
Variable Index Dynamic Average
-
Variance
-
Vega
-
Volume Profile
-
Volume Weighted Average Price Indicator
-
Volume Weighted Moving Average
-
Vortex
-
Wilder Accumulative Swing Index
-
Wilder Moving Average
-
Wilder Swing Index
-
Williams Percent R
-
Zero Lag Exponential Moving Average
-
Zig Zag
2B) Candlestick patterns (61)
Source list:
-
Abandoned Baby
-
Advance Block
-
Belt Hold
-
Breakaway
-
Closing Marubozu
-
Concealed Baby Swallow
-
Counterattack
-
Dark Cloud Cover
-
Doji
-
Doji Star
-
Dragonfly Doji
-
Engulfing
-
Evening Doji Star
-
Evening Star
-
Gap Side By Side White
-
Gravestone Doji
-
Hammer
-
Hanging Man
-
Harami
-
Harami Cross
-
High Wave Candle
-
Hikkake
-
Hikkake Modified
-
Homing Pigeon
-
Identical Three Crows
-
In Neck
-
Inverted Hammer
-
Kicking
-
Kicking By Length
-
Ladder Bottom
-
Long Legged Doji
-
Long Line Candle
-
Marubozu
-
Mat Hold
-
Matching Low
-
Morning Doji Star
-
Morning Star
-
On Neck
-
Piercing
-
Rickshaw Man
-
Rise Fall Three Methods
-
Separating Lines
-
Shooting Star
-
Short Line Candle
-
Spinning Top
-
Stalled Pattern
-
Stick Sandwich
-
Takuri
-
Tasuki Gap
-
Three Black Crows
-
Three Inside
-
Three Line Strike
-
Three Outside
-
Three Stars In South
-
Three White Soldiers
-
Thrusting
-
Tristar
-
Two Crows
-
Unique Three River
-
Up Down Gap Three Methods
-
Upside Gap Two Crows
Coming to Wizzer Beta on 31 January
Everything covered in this post—point-in-time screening and indicator-driven filtering/backtesting workflows across TradingView chart indicators and LEAN indicators—is shipping in our Beta plan on 31 January. If you want early access, keep an eye on the Beta release notes and onboarding updates as we roll it out.