RunRox - Pairs Strategy🧬 Pairs Strategy is a new indicator by RunRox included in our premium subscription.
It is a specialized tool for trading pairs, built around working with two correlated instruments at the same time.
The indicator is designed specifically for pair trading logic: it helps track the relationship between two assets, identify statistical deviations, and generate signals for opening and managing long/short combinations on both legs of the pair.
Below in this description I will go through the core functions of the indicator and the main concepts behind the strategy so you can clearly understand how to apply it in your trading.
📌 CONCEPT
The core idea of pair trading is to find and trade correlated instruments that usually move in a similar way.
When these two assets temporarily diverge from each other, a trading opportunity appears.
In such moments, the relatively overvalued asset is sold (short leg), and the relatively undervalued asset is bought (long leg).
When the spread between them narrows and both instruments revert back toward their typical relationship (mean), the position is closed and the trader captures the profit from this convergence.
In practice, one leg of the pair can end up in a loss while the other generates a larger profit.
Due to the difference in performance between the two assets, the combined result of the pair trade can still be positive.
✅ KEY FEATURES:
2 deviation types (Z-Score and S-Score)
Invert signals mode
Hedge Coefficient (position size balancing between both legs)
6 hedge modes
Entries based on Score or RSI
Extra entries based on Score or Spread
Stop Loss
Take Profit
RSI Filter
RSI Pivot Mode
Built-in Backtester Strategy
Lower Timeframe Backtester Strategy
Live trade panel for current position
Equity curve chart
21 performance metrics in the backtester
2 alert types
*And many more fine-tuning options for pair trading
🔗 SCORE
Score is the core deviation metric between the two assets in the pair.
For example, if you are trading ETHUSDT/BTCUSDT, the indicator analyzes the relationship ETH/BTC, and when one leg temporarily diverges from the other, this difference is reflected in the Score value.
In other words, Score shows how much the current spread between the two instruments deviates from its typical state and is used as the main signal source for pair entries and exits.
In the screenshot above you can see how Score looks in our indicator.
Depending on how large the difference is between the two assets, the Score value can move in a range from −N to +N
When Score is in the −N zone, this is a 🟢 long zone for the first asset and a short zone for the second.
Using the ETH/BTC example: when Score is deeply negative, you open a long on ETH and a short on BTC at the same time, then close both legs when Score returns back to the 0 zone (balance between the two assets).
When Score is in the +N zone, this is a 🔴 short zone for the first asset and a long zone for the second.
In the same ETH/BTC example: when Score is strongly positive, you short ETH and long BTC, and again close both positions when Score comes back to the neutral 0 zone.
☯️ Z/S SCORE
Inside the indicator we added two different formulas for calculating the spread between the two legs of the pair: Z-Score and S-Score.
These approaches measure deviation in different ways and can produce slightly different signals depending on the chosen pair and its behavior.
This allows you to switch between Z-Score and S-Score and choose the method that gives more stable and cleaner signals for your specific instruments.
As you can see in the screenshot above, we used the same pair but applied different Score types to measure the spread and deviation from the norm.
🟣 Z-Score – generated 9 entry signals .
It reacts to price fluctuations more smoothly and usually stays within a range of approximately −8 to +8 .
🟠 S-Score – generated 5 entry signals .
It reacts to price changes more aggressively and produces wider deviations, often reaching −15 to +15 .
This gives traders the choice between a more sensitive but smoother model (Z-Score) and a more selective, stronger-deviation model (S-Score)
⁉️ HOW DOES THE STRATEGY WORK
Here is a basic example of how you can trade this pair trading strategy using our indicator and its signals.
In the classic approach the trade consists of one initial entry and several scale-ins (averaging) if the spread continues to move against the position.
The first entry is opened when Score reaches a standard deviation of −2 or +2.
If price does not revert to the mean and moves further against the position so that Score expands to −3 or +3, the strategy performs the first scale-in.
If Score extends to −4 or +4, a second scale-in is added.
If the spread grows even more and Score reaches −5 or +5, a third scale-in is executed.
In our indicator the number of averaging steps can be up to 4 scale-ins .
After that the position waits until Score returns back to the 0 level , where the whole pair position is closed.
This is the standard model of classical pair trading.
However there are many variations:
using Stop Loss and Take Profit,
exiting earlier or later than the 0 zone,
scaling in not by Score but by Spread, since Score is not linear while Spread is linear,
entering when RSI on both tickers shows opposite extremes, for example RSI 20 on one asset and RSI 80 on the other, and so on.
The number of possible trading styles for this strategy is very large.
We designed the indicator to cover as many of these variations as possible and added flexible tools so you can build your own pair trading logic on top of it.
Below is an example of a classic pair trade with two entries: one main entry and one extra entry (scale-in) .
The pair SUIUSDT / PENGUUSDT shows a high correlation, and on one of the trades the sequence looked like this:
A −2 Score deviation occurred into the long zone and triggered the Main Entry .
🔹 Main Entry
Long SUIUSDT – Margin: 5,000 USD, Entry price: 1.5708
Short PENGUUSDT – Margin: 5,000 USD, Entry price: 0.011793
Price then moved further against the position, Score went deeper into deviation, and the strategy added one extra entry.
🔸 Extra Entry
Long SUIUSDT – Margin: 5,000 USD, Entry price: 1.5938
Short PENGUUSDT – Margin: 5,000 USD, Entry price: 0.012173
The trade was closed when Score reverted back toward the 0 zone (mean reversion of the spread):
❎ Exit
SUIUSDT P&L: −403.34 USD, Exit price: 1.5184
PENGUUSDT P&L: +743.73 USD, Exit price: 0.011089
✅ Total P&L: +340.39 USD
With a total margin of 10,000 USD used per side (20,000 USD combined), this trade yielded around +1.7% on the deployed margin.
On different assets the size and speed of the spread movement will vary, but the principle remains the same.
This is just one example to illustrate how the strategy works in practice using simplified theoretical balances.
⚙️ MAIN SETTINGS
After explaining how the strategy works, we can move to the indicator settings and their logic.
The first block is Main Settings, which controls how the pair is built, how the spread is calculated, and how the backtest is performed.
The core idea of the indicator is to backtest historical data, generate entry signals, show open-position parameters, and provide all necessary metrics for both discretionary and algorithmic trading.
This is a complete framework for analyzing a pair of assets and building a trading system around them. Below I will go through the main parameters one by one.
🔹 Exclude Dates
Allows you to exclude abnormal periods in the pair’s history to remove outlier trades from the backtest.
This is useful when the market experienced extreme news events, listing spikes, or other non-typical situations that distort statistics.
🔹 Pair
Here you select the second asset for your pair.
For example, if your main chart is BTCUSDT, in this field you choose a correlated asset such as ETHUSDT, and the working pair becomes BTCUSDT / ETHUSDT.
The indicator then calculates spread, Score, and all related metrics based on this asset combination.
🔹 Lower Timeframe
This is a special mode for backtesting on a lower timeframe while using a higher timeframe chart to extend the history limit.
For example, if your TradingView plan provides only 5,000 bars of history on the current timeframe, you can switch your chart to a higher timeframe and select a lower timeframe in this setting.
The indicator will then reconstruct the pair logic using up to 99,000 bars of lower timeframe data for backtesting.
This allows you to test the pair on a much longer historical period and find more stable combinations of assets.
🔹 Method
Here you choose which deviation model you want to use: Z-Score or S-Score.
Both methods calculate spread deviation but use different formulas, which can give different signal behavior depending on the pair.
Examples of these two methods are shown earlier in this description.
🔹 Period
This parameter defines how many bars are used to calculate the average deviation for the pair.
If you set Period = 300, the indicator looks back 300 bars and calculates the typical spread deviation over that window.
For example, if the average deviation over 300 bars is around 1%, then a move to 2% or more will push Z/S Score closer to its boundary levels, since such a deviation is considered abnormal for that lookback period.
A larger Period means that only bigger deviations will be treated as anomalies.
A smaller Period makes the model more sensitive and treats smaller deviations as anomalies.
This allows you to tune how aggressive or conservative your pair trading signals should be.
🔹 Invert
This setting is used for negatively correlated pairs.
Some instruments have a positive correlation in the range from +0.8 to +1.0 (strong positive correlation), while others show a negative correlation from −0.8 to −1.0, meaning they usually move in opposite directions.
A classic example is the pair EURUSD and DXY.
As shown in the screenshot above, these instruments often have strong negative correlation due to macro factors and typically move in opposite directions: when EURUSD is rising, DXY is falling, and vice versa.
Such pairs can also be traded with our indicator.
To do this, we use the Invert option, which effectively flips one of the assets (as shown in the screenshot below). After inversion, both instruments are brought to a “same-direction” behavior from the model’s point of view.
From there, you trade the pair in the same way as a positively correlated one:
you open both legs in the same direction (both long or both short) depending on the spread and Score, and then wait for the spread between the inverted pair to converge back toward its mean.
🔀 HEDGE COEFFICIENT
The next block of settings is related to the hedge coefficient.
This defines how much margin is allocated to each leg of the pair.
The classic approach in pair trading is to split the position equally between both assets.
For example, if you allocate 100 USD to a trade , the standard model would open 50 USD long on one asset and 50 USD short on the other.
This works well for pairs with similar volatility , such as BTCUSDT / ETHUSDT
However, if you use a pair like BTCUSDT / DOGEUSDT , the volatility of these assets is very different.
They can still be correlated, but their amplitude is not the same. While Bitcoin might move 2% , Dogecoin can move 10% over the same period.
Because of that, for pairs with strongly different volatility, we can use a hedge coefficient and, for example, enter with 30 USD on one leg and 70 USD on the other, taking the volatility difference into account.
This is the main idea behind the Hedge Coefficient section and its primary use.
The indicator includes 6 methods of calculating the coefficient:
Cumulative RMA
Beta OLS
Beta TLS
Beta EMA
RMA Range
RMA Delta
Each method uses a different formula to compute the hedge coefficient and to size the position based on different metrics of the assets.
We leave it to the trader to decide which algorithm works best for their specific pair and style.
Below are the settings inside this section:
🔹 Method
When Auto Hedge is enabled, you can select which method to use from the list above.
The chosen method will automatically calculate the hedge coefficient between the two legs.
🔹 Hedge Coefficient
This is the manual hedge ratio per trade when Auto Hedge is disabled.
By default it is set to 1, which means the position is opened 50/50 between the two assets.
🔹 Min Allowed Hedge Coef.
This is the minimum allowed hedge coefficient.
By default it is 0.2, which means the model will not go below a 20% / 80% split between the legs.
🔹 MA Length
For methods that use moving averages (for example Beta EMA), this parameter sets the period used to calculate the hedge coefficient.
🛠️ STRATEGY SETTINGS
The next important block is Strategy Settings .
Here you define the core parameters used for backtesting: trading commission, position size, entry / exit logic, Stop Loss, Take Profit, and other rules that describe how you want the strategy to operate.
Below are all parameters with a detailed explanation.
🔸 Commission %
In this field you set your broker’s fee percentage per trade .
The indicator automatically calculates the correct commission for each leg of every trade. You only need to input the real commission rate that your broker charges for volume. No additional manual calculations are required.
🔸 Main Entry Mode
There are two options for the main entry:
Score - This is the primary entry method based on Z/S Score.
When Score reaches the deviation level defined in the settings below, the strategy opens the first position.
For example, if you set “Entry at 2 deviations”, the trade will be opened when Score hits ±2.
RSI Only - Alternative entry method based on RSI divergence between the two assets.
The exact RSI levels are defined in the RSI settings section below.
For example, if you set the entry threshold at 30, then when one asset has RSI below 30 and the second one has RSI above 70, the first entry will be triggered.
🔸 Extra Entries Mode
This defines how scale-ins (averaging) are executed. There are two modes:
Score - Works the same way as the main entry, but for additional entries.
For example, the main entry can be at 2 deviations, the first scale-in at 3, the second at 4, etc.
Spread - This mode uses the Spread (difference between the two assets) starting from the main entry moment.
As the spread continues to widen, the strategy can add extra entries based on spread growth rather than Score.
Since Score is a non-linear metric and Spread is linear, in some configurations averaging by Spread can produce better results than averaging by Score. This is pair- and strategy-dependent. 🔸 Entry parameters
Deviation / Spread threshold
Entry size
Main Entry – first field (deviation / spread), second field (position size)
Entry 2 – first field (deviation / spread), second field (position size)
Entry 3 – first field (deviation / spread), second field (position size)
Entry 4 – first field (deviation / spread), second field (position size)
This allows you to define up to four scaling steps with different triggers and different sizing.
🔸 Exit Level
This parameter defines at what Score level you want to exit the trade.
By default it is 0, which means the backtester closes the position when Score returns to the neutral (0) zone.
You can also use positive or negative values. Example:
Assume your main entry is configured at a 3 deviation.
You can exit at the 0 level, or you can set Exit Level = 2.
If your initial entry was at −3, the position will be closed when Score reaches +2.
If your initial entry was at +3, the position will be closed when Score reaches −2.
This approach can increase the profit per trade due to a larger captured spread, but it may also increase the holding time of the position.
🔸 Stop Loss
Here you define the maximum loss per trade in PnL units.
If a trade reaches the negative PnL value specified in this field and the Stop Loss option is enabled, the indicator will close the trade at a loss.
The Cooldown parameter sets a pause after a losing trade:
the strategy will wait a specified number of bars before opening the next trade.
🔸 Take Profit
Works similar to Stop Loss but for profit targets.
You set the desired PnL value you want to reach.
The trade will be closed when either the Take Profit target is hit or when Score reaches the exit level defined in the settings, whichever occurs first (depending on your configuration).
🔸 Show Qty in currency
When enabled, trade size is displayed in currency (USD) instead of token quantity.
This is useful for quickly understanding position size in monetary terms.
You will see this in the Current Trade panel, which is described later.
🔸 Size Rounding
Controls how many decimal places are used when rounding position size (from 0 to 10 digits after the decimal).
This is also used for the Current Trade panel so you can adjust how detailed or compact the size display should be.
📊 RSI FILTERS
This section is used for additional trade filtering.
RSI can be used in two ways:
as a primary entry signal,
or as an extra filter for entries based on Z/S Score.
If in the Strategy Settings the Main Entry Mode is set to RSI, then RSI becomes the main trigger for opening a position.
In this case a trade is opened when the RSI of the two assets reaches opposite zones.
Example:
If the threshold is set to 30, then:
when one asset has RSI below 30, and
the second asset has RSI above 70 (100 − 30),
the strategy opens the first entry.
All extra entries after that will be executed either by Spread or by Z/S Score, depending on your Extra Entries Mode.
Below are the parameters in this block:
RSI Length – standard RSI period setting.
RSI Pivot Mode – when enabled, RSI is used as an additional filter together with Z/S Score. The indicator looks for a reversal pattern on RSI (pivot behavior). If RSI forms a reversal structure, the trade is allowed to open. If not, the signal is skipped until a proper RSI pivot is formed.
Entry RSI Filter – here you define the RSI thresholds used for RSI-based entries. These are the same boundary levels described in the example above.
Overall, this section helps filter out lower-quality trades using additional RSI conditions or lets you build RSI-only entry logic based on extreme levels.
🎨 MAIN CHART STYLING
This section controls the visual appearance of trades on the main chart.
You can customize how the second asset line is drawn, as well as the icons for entries, scale-ins, and exits, including their size and style.
▫️ Price Line
This is the line that shows the price of the second asset and the relative difference between the two instruments.
You can adjust the line thickness and color to make it more readable on your chart.
▫️ Adjust Price Line by Hedge Coefficient
When this option is enabled, the second asset’s line is normalized by the hedge coefficient.
If you turn it off, the hedge coefficient will not be applied to the second asset’s line, and it will be displayed in raw form.
▫️ Entry Label
Here you can customize how the entry markers look:
choose the color, icon style, and size of the label that marks each trade entry and scale-in on the chart.
▫️ Exit Label
Similarly, you can define the color, icon style, and size of the label used for exits.
This helps visually separate entries and exits and makes it easier to read the trade history directly from the chart.
🎯 INDICATOR PANEL
This section controls the settings of the indicator panel, which works like an oscillator and allows you to visualize multiple metrics in one place.
You can flexibly enable, style, and scale each parameter.
🔹 Score
Displays the main deviation metric between the two assets.
You can customize the color and line thickness of the Score plot.
🔹 Spread
Shows the spread between the two assets.
It starts calculating from the moment the trade is opened.
You can adjust its color and thickness for better visibility.
🔹 Total Profit
Displays the cumulative profit for this pair and strategy as a line that grows (or falls) over time.
Color, opacity, and line thickness can be customized.
🔹 Unrealized PNL
Once a trade is opened, this line shows the current PnL of the active position.
It also lets you see historical drawdowns on the pair.
Color and thickness can be adjusted.
🔹 Released PNL
Shows the realized PnL of each closed trade as bars.
Useful for quickly evaluating the result of every individual trade in the backtest.
🔹 Correlation
Plots the correlation coefficient between the two assets as a graph, so you can visually track how stable or unstable the relationship between them is over time.
🔹 Hedge Coefficient
Shows the hedge coefficient as a line, which helps understand how the model is rebalancing exposure between the two legs depending on their behavior.
For each metric there is also a 📎 Stretch option.
Stretch allows you to compress or expand the scale of a specific line to visually align metrics with different ranges on the same panel and make the chart easier to read.
📈 PROFIT CHART
Since TradingView does not natively support proper backtesting for pair trading, this indicator includes its own profit curve for the pair.
You can visually see how the strategy performed over historical data: whether there were deep drawdowns, abnormal profit spikes, or stable equity growth over time. This makes it much easier to evaluate the quality of the pair and the strategy on history.
In the settings of this section you can flexibly customize how the profit chart is displayed:
labels, position of the panel, padding, and other visual details.
Everything depends on your personal preferences, so we give full control over styling:
you can adjust the look of the profit chart to match your layout or completely hide it from the chart if you do not need it.
📌 CURRENT TRADE
This section controls the current trade table.
When there is an active trade on the chart, the panel displays all key information for the open position:
direction for each ticker (long or short),
required position size for each leg,
entry price for both assets,
and real-time PnL for each leg separately,
so you always have a clear view of the current situation.
The main thing you can do with this table is customize its appearance:
you can change the size, position on the chart, background and text colors, as well as separate coloring for positive / negative PnL and different colors for long and short positions.
📅 BACKTEST RESULTS
The next key block is Backtest Results.
This results table with detailed metrics gives you an extended view of how the pair and strategy perform: win rate, profit factor, long/short breakdown, and more than 20 additional stats that help you evaluate the potential of your setup.
⚠️ First of all, it is important to note ⚠️
past performance does not guarantee future results.
Every trader must keep this in mind and factor these risks into their strategy.
The table shows metrics in three cuts:
All Entries
Main Entries
Extra Entries (scale-ins)
Core metrics:
Profit – total profit for each entry type.
Winrate – win rate for this pair.
Profit Factor – ratio of gross profit to gross loss for the strategy.
Trades – number of trades in the backtest.
Wins – number of winning trades.
Losses – number of losing trades.
Long Profit – profit generated by long positions.
Short Profit – profit generated by short positions.
Longs – total number of long trades.
Shorts – total number of short trades.
Avg. Time – average time spent in a trade.
Additional metrics for a deeper evaluation of the pair:
Correlation – current correlation between the two assets in the pair.
Bars Processed – number of bars used in the analysis.
Max Drawdown – maximum historical drawdown of the strategy.
Biggest Loss – the largest single losing trade in the backtest.
Recommended Hedge – recommended hedge coefficient based on historical behavior.
Max Spread – maximum positive spread observed in history.
Min Spread – maximum negative spread observed in history.
Avg. Max Spread – average of positive extreme spread values (above 0).
Avg. Min Spread – average of negative extreme spread values (below 0).
Avg Positive Spread – average positive spread across all trades (only values above 0).
Avg Negative Spread – average negative spread across all trades (only values below 0).
Current Spread – current spread between the assets when a trade is open.
These metrics together allow you to quickly assess how stable the pair is, how the risk/return profile looks, and whether the strategy parameters are suitable for live trading. You can fully customize this results table to fit your workflow:
hide metrics you don’t need, change colors, opacity, and other visual styles, and reorder the focus of the stats according to your trading style.
This way the backtest block can show only the metrics that matter to you most and remain clean and readable during analysis.
📣 ALERTS
The next section is dedicated to alerts.
Here you can configure all signals you need, both for manual trading and for full automation of this pair trading strategy. This block is designed to cover most practical use cases. The indicator supports two alert modes:
Single Alert – one universal custom alert for all events.
Two Alerts – separate alerts for each ticker so you can receive different messages per asset.
Available alert events:
Main Entry – when the main entry is triggered.
Entry 2 – when the first scale-in is executed.
Entry 3 – when the second scale-in is executed.
Entry 4 – when the third scale-in is executed.
Exit Alert – when the position is closed.
StopLoss Alert – when Stop Loss is hit.
TakeProfit Alert – when Take Profit is hit.
All alerts are fully customizable and support a set of placeholders for building structured messages or JSON payloads.
🔹1 Alert Type
List of supported placeholders: {{event}} – trigger name ('Entry 1', 'Exit').
{{dir_1}} – 'Long' or 'Short' for the main ticker.
{{dir_2}} – 'Long' or 'Short' for the other ticker.
{{action_1}} – 'Buy', 'Sell' or 'Close' for the main ticker.
{{action_2}} – 'Buy', 'Sell' or 'Close' for the other ticker.
{{price_1}} – price for the main ticker.
{{price_2}} – price for the other ticker.
{{qty_1}} – order size for the main ticker.
{{qty_2}} – order size for the other ticker.
{{ticker_1}} – main ticker (e.g. 'BTCUSD').
{{ticker_2}} – other ticker (e.g. 'ETHUSD').
{{time}} – candle open time in UTC.
{{timenow}} – signal time in UTC.
🔹2 Alert Type
List of supported placeholders: {{event}} – trigger name ('Entry 1', 'Exit', 'SL', 'TP').
{{action}} – 'Buy', 'Sell' or 'Close'.
{{price}} – order price.
{{qty}} – order size.
{{ticker}} – ticker (e.g. 'BTCUSD').
{{time}} – candle open time in UTC.
{{timenow}} – signal time in UTC. You can use these placeholders to build any JSON structure or custom alert text required by your trading bot, exchange API, or automation service.
In this post I’ve explained how the indicator works, the core concept behind this pair trading strategy, and shown practical examples of trades together with a detailed breakdown of each unique feature inside the tool.
We have invested a lot of work into building this indicator and we truly hope it will help you trade pair strategies more efficiently and more profitably by giving you structured, strategy-specific information that is difficult to obtain in any other way.
⚠️ Please also remember that past performance does not guarantee future results.
Always evaluate the risks, the robustness of your setup, and your own risk tolerance before entering any position, and make independent, well-considered decisions when using this or any other strategy.
Statistics
RSI Distribution [Kodexius]RSI Distribution is a statistics driven visualization companion for the classic RSI oscillator. In addition to plotting RSI itself, it continuously builds a rolling sample of recent RSI values and projects their distribution as a forward drawn histogram, so you can see where RSI has spent most of its time over the selected lookback window.
The indicator is designed to add context to oscillator readings. Instead of only treating RSI as a single point estimate that is either “high” or “low”, you can evaluate the current RSI level relative to its own recent history. This makes it easier to recognize when the market is operating inside a familiar regime, and when RSI is pushing into rarer tail conditions that tend to appear during momentum bursts, exhaustion, or volatility expansion.
To complement the histogram, the script can optionally overlay a Gaussian curve fitted to the sample mean and standard deviation. It also runs a Jarque Bera normality check, based on skewness and excess kurtosis, and surfaces the result both visually and in a compact dashboard. On the oscillator panel itself, RSI is presented with a clean gradient line and standard overbought and oversold references, with fills that become more visible when RSI meaningfully extends beyond key thresholds.
🔹 Features
1. Distribution Histogram of Recent RSI Values
The script stores the last N RSI values in an internal sample and uses that rolling window to compute a frequency distribution across a user selected number of bins. The histogram is drawn into the future by a configurable width in bars, which keeps it readable and prevents it from colliding with the active RSI plot. The result is a compact visual summary of where RSI clusters most often, whether it is spending more time near the center, or shifting toward higher or lower regimes.
2. Gaussian Overlay for Shape Intuition
If enabled, a fitted bell curve is drawn on top of the histogram using the sample mean and standard deviation. This overlay is not intended as a direct trading signal. Its purpose is to provide a fast visual comparator between the empirical RSI distribution and a theoretical normal shape. When the histogram diverges strongly from the curve, you can quickly spot skew, heavy tails, or regime changes that often occur when market structure or volatility conditions shift.
3. Jarque Bera Normality Check With Clear PASS/FAIL Feedback
The script computes skewness and excess kurtosis from the RSI sample, then forms the Jarque Bera statistic and compares it to a fixed 95% critical value. When the distribution is closer to normal under this test, the status is marked as PASS, otherwise it is marked as FAIL. This result is displayed in the dashboard and can also influence the histogram styling, giving immediate feedback about whether the recent RSI behavior resembles a bell shaped distribution or a more distorted, regime driven profile.
Jarque Bera is a goodness of fit test that evaluates whether a dataset looks consistent with a normal distribution by checking two shape properties: skewness (asymmetry) and kurtosis (tail heaviness, expressed here as excess kurtosis where a perfect normal has 0). Under the null hypothesis of normality, skewness should be near 0 and excess kurtosis should be near 0. The test combines deviations in both into a single statistic, which is then compared to a chi square threshold. A PASS in this script means the sample does not show strong evidence against normality at the chosen threshold, while a FAIL means the sample is meaningfully skewed, heavy tailed, or both. In practical trading terms, a FAIL often suggests RSI is behaving in a regime where extremes and asymmetry are more common, which is typical during strong trends, volatility expansions, or one sided market pressure. It is still a statistical diagnostic, not a prediction tool, and results can vary with lookback length and market conditions.
4. Integrated Stats Dashboard
A compact table in the top right summarizes key distribution moments and the normality result: Mean, StdDev, Skewness, Kurtosis, and the JB statistic with PASS/FAIL text. Skewness is color coded by sign to quickly distinguish right skew (more time at higher RSI) versus left skew (more time at lower RSI), which can be helpful when diagnosing trend bias and momentum persistence.
5. RSI Visual Quality and Context Zones
RSI is plotted with a gradient color scheme and standard overbought and oversold reference lines. The overbought and oversold areas are filled with a smart gradient so visual emphasis increases when RSI meaningfully extends beyond the 70 and 30 regions, improving readability without overwhelming the panel.
🔹 Calculations
This section summarizes the main calculations and transformations used internally.
1. RSI Series
RSI is computed from the selected source and length using the standard RSI function:
rsi_val = ta.rsi(rsi_src, rsi_len)
2. Rolling Sample Collection
A float array stores recent RSI values. Each bar appends the newest RSI, and if the array exceeds the configured lookback, the oldest value is removed. Conceptually:
rsi_history.push(rsi_val)
if rsi_history.size() > lookback
rsi_history.shift()
This maintains a fixed size window that represents the most recent RSI behavior.
3. Mean, Variance, and Standard Deviation
The script computes the sample mean across the array. Variance is computed as sample variance using (n - 1) in the denominator, and standard deviation is the square root of that variance. These values serve both the dashboard display and the Gaussian overlay parameters.
4. Skewness and Excess Kurtosis
Skewness is calculated from the standardized third central moment with a small sample correction. Kurtosis is computed as excess kurtosis (kurtosis minus 3), so the normal baseline is 0. These two metrics summarize asymmetry and tail heaviness, which are the core ingredients for the Jarque Bera statistic.
5. Jarque Bera Statistic and Decision Rule
Using skewness S and excess kurtosis K, the Jarque Bera statistic is computed as:
JB = (n / 6.0) * (S^2 + 0.25 * K^2)
Normality is flagged using a fixed critical value:
is_normal = JB < 5.991
This produces a simple PASS/FAIL classification suitable for fast chart interpretation.
6. Histogram Binning and Scaling
The RSI domain is treated as 0 to 100 and divided into a configurable number of bins. Bin size is:
bin_size = 100.0 / bins
Each RSI sample maps to a bin index via floor(rsi / bin_size), with clamping to ensure the index stays within valid bounds. The script counts occurrences per bin, tracks the maximum frequency, and normalizes each bar height by freq/max_freq so the histogram remains visually stable and comparable as the window updates.
7. Gaussian Curve Overlay (Optional)
The Gaussian overlay uses the normal probability density function with mu as the sample mean and sigma as the sample standard deviation:
normal_pdf(x) = (1 / (sigma * sqrt(2*pi))) * exp(-0.5 * ((x - mu)/sigma)^2)
For drawing, the script samples x across the histogram width, evaluates the PDF, and normalizes it relative to its peak so the curve fits within the same visual height scale as the histogram.
ORB Fusion🎯 CORE INNOVATION: INSTITUTIONAL ORB FRAMEWORK WITH FAILED BREAKOUT INTELLIGENCE
ORB Fusion represents a complete institutional-grade Opening Range Breakout system combining classic Market Profile concepts (Initial Balance, day type classification) with modern algorithmic breakout detection, failed breakout reversal logic, and comprehensive statistical tracking. Rather than simply drawing lines at opening range extremes, this system implements the full trading methodology used by professional floor traders and market makers—including the critical concept that failed breakouts are often higher-probability setups than successful breakouts .
The Opening Range Hypothesis:
The first 30-60 minutes of trading establishes the day's value area —the price range where the majority of participants agree on fair value. This range is formed during peak information flow (overnight news digestion, gap reactions, early institutional positioning). Breakouts from this range signal directional conviction; failures to hold breakouts signal trapped participants and create exploitable reversals.
Why Opening Range Matters:
1. Information Aggregation : Opening range reflects overnight news, pre-market sentiment, and early institutional orders. It's the market's initial "consensus" on value.
2. Liquidity Concentration : Stop losses cluster just outside opening range. Breakouts trigger these stops, creating momentum. Failed breakouts trap traders, forcing reversals.
3. Statistical Persistence : Markets exhibit range expansion tendency —when price accepts above/below opening range with volume, it often extends 1.0-2.0x the opening range size before mean reversion.
4. Institutional Behavior : Large players (market makers, institutions) use opening range as reference for the day's trading plan. They fade extremes in rotation days and follow breakouts in trend days.
Historical Context:
Opening Range Breakout methodology originated in commodity futures pits (1970s-80s) where floor traders noticed consistent patterns: the first 30-60 minutes established a "fair value zone," and directional moves occurred when this zone was violated with conviction. J. Peter Steidlmayer formalized this observation in Market Profile theory, introducing the "Initial Balance" concept—the first hour (two 30-minute periods) defining market structure.
📊 OPENING RANGE CONSTRUCTION
Four ORB Timeframe Options:
1. 5-Minute ORB (0930-0935 ET):
Captures immediate market direction during "opening drive"—the explosive first few minutes when overnight orders hit the tape.
Use Case:
• Scalping strategies
• High-frequency breakout trading
• Extremely liquid instruments (ES, NQ, SPY)
Characteristics:
• Very tight range (often 0.2-0.5% of price)
• Early breakouts common (7 of 10 days break within first hour)
• Higher false breakout rate (50-60%)
• Requires sub-minute chart monitoring
Psychology: Captures panic buyers/sellers reacting to overnight news. Range is small because sample size is minimal—only 5 minutes of price discovery. Early breakouts often fail because they're driven by retail FOMO rather than institutional conviction.
2. 15-Minute ORB (0930-0945 ET):
Balances responsiveness with statistical validity. Captures opening drive plus initial reaction to that drive.
Use Case:
• Day trading strategies
• Balanced scalping/swing hybrid
• Most liquid instruments
Characteristics:
• Moderate range (0.4-0.8% of price typically)
• Breakout rate ~60% of days
• False breakout rate ~40-45%
• Good balance of opportunity and reliability
Psychology: Includes opening panic AND the first retest/consolidation. Sophisticated traders (institutions, algos) start expressing directional bias. This is the "Goldilocks" timeframe—not too reactive, not too slow.
3. 30-Minute ORB (0930-1000 ET):
Classic ORB timeframe. Default for most professional implementations.
Use Case:
• Standard intraday trading
• Position sizing for full-day trades
• All liquid instruments (equities, indices, futures)
Characteristics:
• Substantial range (0.6-1.2% of price)
• Breakout rate ~55% of days
• False breakout rate ~35-40%
• Statistical sweet spot for extensions
Psychology: Full opening auction + first institutional repositioning complete. By 10:00 AM ET, headlines are digested, early stops are hit, and "real" directional players reveal themselves. This is when institutional programs typically finish their opening positioning.
Statistical Advantage: 30-minute ORB shows highest correlation with daily range. When price breaks and holds outside 30m ORB, probability of reaching 1.0x extension (doubling the opening range) exceeds 60% historically.
4. 60-Minute ORB (0930-1030 ET) - Initial Balance:
Steidlmayer's "Initial Balance"—the foundation of Market Profile theory.
Use Case:
• Swing trading entries
• Day type classification
• Low-frequency institutional setups
Characteristics:
• Wide range (0.8-1.5% of price)
• Breakout rate ~45% of days
• False breakout rate ~25-30% (lowest)
• Best for trend day identification
Psychology: Full first hour captures A-period (0930-1000) and B-period (1000-1030). By 10:30 AM ET, all early positioning is complete. Market has "voted" on value. Subsequent price action confirms (trend day) or rejects (rotation day) this value assessment.
Initial Balance Theory:
IB represents the market's accepted value area . When price extends significantly beyond IB (>1.5x IB range), it signals a Trend Day —strong directional conviction. When price remains within 1.0x IB, it signals a Rotation Day —mean reversion environment. This classification completely changes trading strategy.
🔬 LTF PRECISION TECHNOLOGY
The Chart Timeframe Problem:
Traditional ORB indicators calculate range using the chart's current timeframe. This creates critical inaccuracies:
Example:
• You're on a 5-minute chart
• ORB period is 30 minutes (0930-1000 ET)
• Indicator sees only 6 bars (30min ÷ 5min/bar = 6 bars)
• If any 5-minute bar has extreme wick, entire ORB is distorted
The Problem Amplifies:
• On 15-minute chart with 30-minute ORB: Only 2 bars sampled
• On 30-minute chart with 30-minute ORB: Only 1 bar sampled
• Opening spike or single large wick defines entire range (invalid)
Solution: Lower Timeframe (LTF) Precision:
ORB Fusion uses `request.security_lower_tf()` to sample 1-minute bars regardless of chart timeframe:
```
For 30-minute ORB on 15-minute chart:
- Traditional method: Uses 2 bars (15min × 2 = 30min)
- LTF Precision: Requests thirty 1-minute bars, calculates true high/low
```
Why This Matters:
Scenario: ES futures, 15-minute chart, 30-minute ORB
• Traditional ORB: High = 5850.00, Low = 5842.00 (range = 8 points)
• LTF Precision ORB: High = 5848.50, Low = 5843.25 (range = 5.25 points)
Difference: 2.75 points distortion from single 15-minute wick hitting 5850.00 at 9:31 AM then immediately reversing. LTF precision filters this out by seeing it was a fleeting wick, not a sustained high.
Impact on Extensions:
With inflated range (8 points vs 5.25 points):
• 1.5x extension projects +12 points instead of +7.875 points
• Difference: 4.125 points (nearly $200 per ES contract)
• Breakout signals trigger late; extension targets unreachable
Implementation:
```pinescript
getLtfHighLow() =>
float ha = request.security_lower_tf(syminfo.tickerid, "1", high)
float la = request.security_lower_tf(syminfo.tickerid, "1", low)
```
Function returns arrays of 1-minute high/low values, then finds true maximum and minimum across all samples.
When LTF Precision Activates:
Only when chart timeframe exceeds ORB session window:
• 5-minute chart + 30-minute ORB: LTF used (chart TF > session bars needed)
• 1-minute chart + 30-minute ORB: LTF not needed (direct sampling sufficient)
Recommendation: Always enable LTF Precision unless you're on 1-minute charts. The computational overhead is negligible, and accuracy improvement is substantial.
⚖️ INITIAL BALANCE (IB) FRAMEWORK
Steidlmayer's Market Profile Innovation:
J. Peter Steidlmayer developed Market Profile in the 1980s for the Chicago Board of Trade. His key insight: market structure is best understood through time-at-price (value area) rather than just price-over-time (traditional charts).
Initial Balance Definition:
IB is the price range established during the first hour of trading, subdivided into:
• A-Period : First 30 minutes (0930-1000 ET for US equities)
• B-Period : Second 30 minutes (1000-1030 ET)
A-Period vs B-Period Comparison:
The relationship between A and B periods forecasts the day:
B-Period Expansion (Bullish):
• B-period high > A-period high
• B-period low ≥ A-period low
• Interpretation: Buyers stepping in after opening assessed
• Implication: Bullish continuation likely
• Strategy: Buy pullbacks to A-period high (now support)
B-Period Expansion (Bearish):
• B-period low < A-period low
• B-period high ≤ A-period high
• Interpretation: Sellers stepping in after opening assessed
• Implication: Bearish continuation likely
• Strategy: Sell rallies to A-period low (now resistance)
B-Period Contraction:
• B-period stays within A-period range
• Interpretation: Market indecisive, digesting A-period information
• Implication: Rotation day likely, stay range-bound
• Strategy: Fade extremes, sell high/buy low within IB
IB Extensions:
Professional traders use IB as a ruler to project price targets:
Extension Levels:
• 0.5x IB : Initial probe outside value (minor target)
• 1.0x IB : Full extension (major target for normal days)
• 1.5x IB : Trend day threshold (classifies as trending)
• 2.0x IB : Strong trend day (rare, ~10-15% of days)
Calculation:
```
IB Range = IB High - IB Low
Bull Extension 1.0x = IB High + (IB Range × 1.0)
Bear Extension 1.0x = IB Low - (IB Range × 1.0)
```
Example:
ES futures:
• IB High: 5850.00
• IB Low: 5842.00
• IB Range: 8.00 points
Extensions:
• 1.0x Bull Target: 5850 + 8 = 5858.00
• 1.5x Bull Target: 5850 + 12 = 5862.00
• 2.0x Bull Target: 5850 + 16 = 5866.00
If price reaches 5862.00 (1.5x), day is classified as Trend Day —strategy shifts from mean reversion to trend following.
📈 DAY TYPE CLASSIFICATION SYSTEM
Four Day Types (Market Profile Framework):
1. TREND DAY:
Definition: Price extends ≥1.5x IB range in one direction and stays there.
Characteristics:
• Opens and never returns to IB
• Persistent directional movement
• Volume increases as day progresses (conviction building)
• News-driven or strong institutional flow
Frequency: ~20-25% of trading days
Trading Strategy:
• DO: Follow the trend, trail stops, let winners run
• DON'T: Fade extremes, take early profits
• Key: Add to position on pullbacks to previous extension level
• Risk: Getting chopped in false trend (see Failed Breakout section)
Example: FOMC decision, payroll report, earnings surprise—anything creating one-sided conviction.
2. NORMAL DAY:
Definition: Price extends 0.5-1.5x IB, tests both sides, returns to IB.
Characteristics:
• Two-sided trading
• Extensions occur but don't persist
• Volume balanced throughout day
• Most common day type
Frequency: ~45-50% of trading days
Trading Strategy:
• DO: Take profits at extension levels, expect reversals
• DON'T: Hold for massive moves
• Key: Treat each extension as a profit-taking opportunity
• Risk: Holding too long when momentum shifts
Example: Typical day with no major catalysts—market balancing supply and demand.
3. ROTATION DAY:
Definition: Price stays within IB all day, rotating between high and low.
Characteristics:
• Never accepts outside IB
• Multiple tests of IB high/low
• Decreasing volume (no conviction)
• Classic range-bound action
Frequency: ~25-30% of trading days
Trading Strategy:
• DO: Fade extremes (sell IB high, buy IB low)
• DON'T: Chase breakouts
• Key: Enter at extremes with tight stops just outside IB
• Risk: Breakout finally occurs after multiple failures
Example: [/b> Pre-holiday trading, summer doldrums, consolidation after big move.
4. DEVELOPING:
Definition: Day type not yet determined (early in session).
Usage: Classification before 12:00 PM ET when IB extension pattern unclear.
ORB Fusion's Classification Algorithm:
```pinescript
if close > ibHigh:
ibExtension = (close - ibHigh) / ibRange
direction = "BULLISH"
else if close < ibLow:
ibExtension = (ibLow - close) / ibRange
direction = "BEARISH"
if ibExtension >= 1.5:
dayType = "TREND DAY"
else if ibExtension >= 0.5:
dayType = "NORMAL DAY"
else if close within IB:
dayType = "ROTATION DAY"
```
Why Classification Matters:
Same setup (bullish ORB breakout) has opposite implications:
• Trend Day : Hold for 2.0x extension, trail stops aggressively
• Normal Day : Take profits at 1.0x extension, watch for reversal
• Rotation Day : Fade the breakout immediately (likely false)
Knowing day type prevents catastrophic errors like fading a trend day or holding through rotation.
🚀 BREAKOUT DETECTION & CONFIRMATION
Three Confirmation Methods:
1. Close Beyond Level (Recommended):
Logic: Candle must close above ORB high (bull) or below ORB low (bear).
Why:
• Filters out wicks (temporary liquidity grabs)
• Ensures sustained acceptance above/below range
• Reduces false breakout rate by ~20-30%
Example:
• ORB High: 5850.00
• Bar high touches 5850.50 (wick above)
• Bar closes at 5848.00 (inside range)
• Result: NO breakout signal
vs.
• Bar high touches 5850.50
• Bar closes at 5851.00 (outside range)
• Result: BREAKOUT signal confirmed
Trade-off: Slightly delayed entry (wait for close) but much higher reliability.
2. Wick Beyond Level:
Logic: [/b> Any touch of ORB high/low triggers breakout.
Why:
• Earliest possible entry
• Captures aggressive momentum moves
Risk:
• High false breakout rate (60-70%)
• Stop runs trigger signals
• Requires very tight stops (difficult to manage)
Use Case: Scalping with 1-2 point profit targets where any penetration = trade.
3. Body Beyond Level:
Logic: [/b> Candle body (close vs open) must be entirely outside range.
Why:
• Strictest confirmation
• Ensures directional conviction (not just momentum)
• Lowest false breakout rate
Example: Trade-off: [/b> Very conservative—misses some valid breakouts but rarely triggers on false ones.
Volume Confirmation Layer:
All confirmation methods can require volume validation:
Volume Multiplier Logic: Rationale: [/b> True breakouts are driven by institutional activity (large size). Volume spike confirms real conviction vs. stop-run manipulation.
Statistical Impact: [/b>
• Breakouts with volume confirmation: ~65% success rate
• Breakouts without volume: ~45% success rate
• Difference: 20 percentage points edge
Implementation Note: [/b>
Volume confirmation adds complexity—you'll miss breakouts that work but lack volume. However, when targeting 1.5x+ extensions (ambitious goals), volume confirmation becomes critical because those moves require sustained institutional participation.
Recommended Settings by Strategy: [/b>
Scalping (1-2 point targets): [/b>
• Method: Close
• Volume: OFF
• Rationale: Quick in/out doesn't need perfection
Intraday Swing (5-10 point targets): [/b>
• Method: Close
• Volume: ON (1.5x multiplier)
• Rationale: Balance reliability and opportunity
Position Trading (full-day holds): [/b>
• Method: Body
• Volume: ON (2.0x multiplier)
• Rationale: Must be certain—large stops require high win rate
🔥 FAILED BREAKOUT SYSTEM
The Core Insight: [/b>
Failed breakouts are often more profitable [/b> than successful breakouts because they create trapped traders with predictable behavior.
Failed Breakout Definition: [/b>
A breakout that:
1. Initially penetrates ORB level with confirmation
2. Attracts participants (volume spike, momentum)
3. Fails to extend (stalls or immediately reverses)
4. Returns inside ORB range within N bars
Psychology of Failure: [/b>
When breakout fails:
• Breakout buyers are trapped [/b>: Bought at ORB high, now underwater
• Early longs reduce: Take profit, fearful of reversal
• Shorts smell blood: See failed breakout as reversal signal
• Result: Cascade of selling as trapped bulls exit + new shorts enter
Mirror image for failed bearish breakouts (trapped shorts cover + new longs enter).
Failure Detection Parameters: [/b>
1. Failure Confirmation Bars (default: 3): [/b>
How many bars after breakout to confirm failure?
Logic: Settings: [/b>
• 2 bars: Aggressive failure detection (more signals, more false failures)
• 3 bars Balanced (default)
• 5-10 bars: Conservative (wait for clear reversal)
Why This Matters:
Too few bars: You call "failed breakout" when price is just consolidating before next leg.
Too many bars: You miss the reversal entry (price already back in range).
2. Failure Buffer (default: 0.1 ATR): [/b>
How far inside ORB must price return to confirm failure?
Formula: Why Buffer Matters: clear rejection [/b> (not just hovering at level).
Settings: [/b>
• 0.0 ATR: No buffer, immediate failure signal
• 0.1 ATR: Small buffer (default) - filters noise
• [b>0.2-0.3 ATR: Large buffer - only dramatic failures count
Example: Reversal Entry System: [/b>
When failure confirmed, system generates complete reversal trade:
For Failed Bull Breakout (Short Reversal): [/b>
Entry: [/b> Current close when failure confirmed
Stop Loss: [/b> Extreme high since breakout + 0.10 ATR padding
Target 1: [/b> ORB High - (ORB Range × 0.5)
Target 2: Target 3: [/b> ORB High - (ORB Range × 1.5)
Example:
• ORB High: 5850, ORB Low: 5842, Range: 8 points
• Breakout to 5853, fails, reverses to 5848 (entry)
• Stop: 5853 + 1 = 5854 (6 point risk)
• T1: 5850 - 4 = 5846 (-2 points, 1:3 R:R)
• T2: 5850 - 8 = 5842 (-6 points, 1:1 R:R)
• T3: 5850 - 12 = 5838 (-10 points, 1.67:1 R:R)
[b>Why These Targets? [/b>
• T1 (0.5x ORB below high): Trapped bulls start panic
• T2 (1.0x ORB = ORB Mid): Major retracement, momentum fully reversed
• T3 (1.5x ORB): Reversal extended, now targeting opposite side
Historical Performance: [/b>
Failed breakout reversals in ORB Fusion's tracking system show:
• Win Rate: 65-75% (significantly higher than initial breakouts)
• Average Winner: 1.2x ORB range
• Average Loser: 0.5x ORB range (protected by stop at extreme)
• Expectancy: Strongly positive even with <70% win rate
Why Failed Breakouts Outperform: [/b>
1. Information Advantage: You now know what price did (failed to extend). Initial breakout trades are speculative; reversal trades are reactive to confirmed failure.
2. Trapped Participant Pressure: Every trapped bull becomes a seller. This creates sustained pressure.
3. Stop Loss Clarity: Extreme high is obvious stop (just beyond recent high). Breakout trades have ambiguous stops (ORB mid? Recent low? Too wide or too tight).
4. Mean Reversion Edge: Failed breakouts return to value (ORB mid). Initial breakouts try to escape value (harder to sustain).
Critical Insight: [/b>
"The best trade is often the one that trapped everyone else."
Failed breakouts create asymmetric opportunity because you're trading against [/b> trapped participants rather than with [/b> them. When you see a failed breakout signal, you're seeing real-time evidence that the market rejected directional conviction—that's exploitable.
📐 FIBONACCI EXTENSION SYSTEM
Six Extension Levels: [/b>
Extensions project how far price will travel after ORB breakout. Based on Fibonacci ratios + empirical market behavior.
1. 1.272x (27.2% Extension): [/b>
Formula: [/b> ORB High/Low + (ORB Range × 0.272)
Psychology: [/b> Initial probe beyond ORB. Early momentum + trapped shorts (on bull side) covering.
Probability of Reach: [/b> ~75-80% after confirmed breakout
Trading: [/b>
• First resistance/support after breakout
• Partial profit target (take 30-50% off)
• Watch for rejection here (could signal failure in progress)
Why 1.272? [/b> Related to harmonic patterns (1.272 is √1.618). Empirically, markets often stall at 25-30% extension before deciding whether to continue or fail.
2. 1.5x (50% Extension):
Formula: [/b> ORB High/Low + (ORB Range × 0.5)
Psychology: [/b> Breakout gaining conviction. Requires sustained buying/selling (not just momentum spike).
Probability of Reach: [/b> ~60-65% after confirmed breakout
Trading: [/b>
• Major partial profit (take 50-70% off)
• Move stops to breakeven
• Trail remaining position
Why 1.5x? [/b> Classic halfway point to 2.0x. Markets often consolidate here before final push. If day type is "Normal," this is likely the high/low for the day.
3. 1.618x (Golden Ratio Extension): [/b>
Formula: [/b> ORB High/Low + (ORB Range × 0.618)
Psychology: [/b> Strong directional day. Institutional conviction + retail FOMO.
Probability of Reach: [/b> ~45-50% after confirmed breakout
Trading: [/b>
• Final partial profit (close 80-90%)
• Trail remainder with wide stop (allow breathing room)
Why 1.618? [/b> Fibonacci golden ratio. Appears consistently in market geometry. When price reaches 1.618x extension, move is "mature" and reversal risk increases.
4. 2.0x (100% Extension): [/b>
Formula: ORB High/Low + (ORB Range × 1.0)
Psychology: [/b> Trend day confirmed. Opening range completely duplicated.
Probability of Reach: [/b> ~30-35% after confirmed breakout
Trading: Why 2.0x? [/b> Psychological level—range doubled. Also corresponds to typical daily ATR in many instruments (opening range ~ 0.5 ATR, daily range ~ 1.0 ATR).
5. 2.618x (Super Extension):
Formula: [/b> ORB High/Low + (ORB Range × 1.618)
Psychology: [/b> Parabolic move. News-driven or squeeze.
Probability of Reach: [/b> ~10-15% after confirmed breakout
[b>Trading: Why 2.618? [/b> Fibonacci ratio (1.618²). Rare to reach—when it does, move is extreme. Often precedes multi-day consolidation or reversal.
6. 3.0x (Extreme Extension): [/b>
Formula: [/b> ORB High/Low + (ORB Range × 2.0)
Psychology: [/b> Market melt-up/crash. Only in extreme events.
[b>Probability of Reach: [/b> <5% after confirmed breakout
Trading: [/b>
• Close immediately if reached
• These are outlier events (black swans, flash crashes, squeeze-outs)
• Holding for more is greed—take windfall profit
Why 3.0x? [/b> Triple opening range. So rare it's statistical noise. When it happens, it's headline news.
Visual Example:
ES futures, ORB 5842-5850 (8 point range), Bullish breakout:
• ORB High : 5850.00 (entry zone)
• 1.272x : 5850 + 2.18 = 5852.18 (first resistance)
• 1.5x : 5850 + 4.00 = 5854.00 (major target)
• 1.618x : 5850 + 4.94 = 5854.94 (strong target)
• 2.0x : 5850 + 8.00 = 5858.00 (trend day)
• 2.618x : 5850 + 12.94 = 5862.94 (extreme)
• 3.0x : 5850 + 16.00 = 5866.00 (parabolic)
Profit-Taking Strategy:
Optimal scaling out at extensions:
• Breakout entry at 5850.50
• 30% off at 1.272x (5852.18) → +1.68 points
• 40% off at 1.5x (5854.00) → +3.50 points
• 20% off at 1.618x (5854.94) → +4.44 points
• 10% off at 2.0x (5858.00) → +7.50 points
[b>Average Exit: Conclusion: [/b> Scaling out at extensions produces 40% higher expectancy than holding for home runs.
📊 GAP ANALYSIS & FILL PSYCHOLOGY
[b>Gap Definition: [/b>
Price discontinuity between previous close and current open:
• Gap Up : Open > Previous Close + noise threshold (0.1 ATR)
• Gap Down : Open < Previous Close - noise threshold
Why Gaps Matter: [/b>
Gaps represent unfilled orders [/b>. When market gaps up, all limit buy orders between yesterday's close and today's open are never filled. Those buyers are "left behind." Psychology: they wait for price to return ("fill the gap") so they can enter. This creates magnetic pull [/b> toward gap level.
Gap Fill Statistics (Empirical): [/b>
• Gaps <0.5% [/b>: 85-90% fill within same day
• Gaps 0.5-1.0% [/b>: 70-75% fill within same day, 90%+ within week
• Gaps >1.0% [/b>: 50-60% fill within same day (major news often prevents fill)
Gap Fill Strategy: [/b>
Setup 1: Gap-and-Go
Gap opens, extends away from gap (doesn't fill).
• ORB confirms direction away from gap
• Trade WITH ORB breakout direction
• Expectation: Gap won't fill today (momentum too strong)
Setup 2: Gap-Fill Fade
Gap opens, but fails to extend. Price drifts back toward gap.
• ORB breakout TOWARD gap (not away)
• Trade toward gap fill level
• Target: Previous close (gap fill complete)
Setup 3: Gap-Fill Rejection
Gap fills (touches previous close) then rejects.
• ORB breakout AWAY from gap after fill
• Trade away from gap direction
• Thesis: Gap filled (orders executed), now resume original direction
[b>Example: Scenario A (Gap-and-Go):
• ORB breaks upward to $454 (away from gap)
• Trade: LONG breakout, expect continued rally
• Gap becomes support ($452)
Scenario B (Gap-Fill):
• ORB breaks downward through $452.50 (toward gap)
• Trade: SHORT toward gap fill at $450.00
• Target: $450.00 (gap filled), close position
Scenario C (Gap-Fill Rejection):
• Price drifts to $450.00 (gap filled) early in session
• ORB establishes $450-$451 after gap fill
• ORB breaks upward to $451.50
• Trade: LONG breakout (gap is filled, now resume rally)
ORB Fusion Integration: [/b>
Dashboard shows:
• Gap type (Up/Down/None)
• Gap size (percentage)
• Gap fill status (Filled ✓ / Open)
This informs setup confidence:
• ORB breakout AWAY from unfilled gap: +10% confidence (gap becomes support/resistance)
• ORB breakout TOWARD unfilled gap: -10% confidence (gap fill may override ORB)
[b>📈 VWAP & INSTITUTIONAL BIAS [/b>
[b>Volume-Weighted Average Price (VWAP): [/b>
Average price weighted by volume at each price level. Represents true "average" cost for the day.
[b>Calculation: Institutional Benchmark [/b>: Institutions (mutual funds, pension funds) use VWAP as performance benchmark. If they buy above VWAP, they underperformed; below VWAP, they outperformed.
2. [b>Algorithmic Target [/b>: Many algos are programmed to buy below VWAP and sell above VWAP to achieve "fair" execution.
3. [b>Support/Resistance [/b>: VWAP acts as dynamic support (price above) or resistance (price below).
[b>VWAP Bands (Standard Deviations): [/b>
• [b>1σ Band [/b>: VWAP ± 1 standard deviation
- Contains ~68% of volume
- Normal trading range
- Bounces common
• [b>2σ Band [/b>: VWAP ± 2 standard deviations
- Contains ~95% of volume
- Extreme extension
- Mean reversion likely
ORB + VWAP Confluence: [/b>
Highest-probability setups occur when ORB and VWAP align:
Bullish Confluence: [/b>
• ORB breakout upward (bullish signal)
• Price above VWAP (institutional buying)
• Confidence boost: +15%
Bearish Confluence: [/b>
• ORB breakout downward (bearish signal)
• Price below VWAP (institutional selling)
• Confidence boost: +15%
[b>Divergence Warning:
• ORB breakout upward BUT price below VWAP
• Conflict: Breakout says "buy," VWAP says "sell"
• Confidence penalty: -10%
• Interpretation: Retail buying but institutions not participating (lower quality breakout)
📊 MOMENTUM CONTEXT SYSTEM
[b>Innovation: Candle Coloring by Position
Rather than fixed support/resistance lines, ORB Fusion colors candles based on their [b>relationship to ORB :
[b>Three Zones: [/b>
1. Inside ORB (Blue Boxes): [/b>
[b>Calculation:
• Darker blue: Near extremes of ORB (potential breakout imminent)
• Lighter blue: Near ORB mid (consolidation)
[b>Trading: [/b> Coiled spring—await breakout.
[b>2. Above ORB (Green Boxes):
[b>Calculation: 3. Below ORB (Red Boxes):
Mirror of above ORB logic.
[b>Special Contexts: [/b>
[b>Breakout Bar (Darkest Green/Red): [/b>
The specific bar where breakout occurs gets maximum color intensity regardless of distance. This highlights the pivotal moment.
[b>Failed Breakout Bar (Orange/Warning): [/b>
When failed breakout is confirmed, that bar gets orange/warning color. Visual alert: "reversal opportunity here."
[b>Near Extension (Cyan/Magenta Tint): [/b>
When price is within 0.5 ATR of an extension level, candle gets tinted cyan (bull) or magenta (bear). Indicates "target approaching—prepare to take profit."
[b>Why Visual Context? [/b>
Traditional indicators show lines. ORB Fusion shows [b>context-aware momentum [/b>. Glance at chart:
• Lots of blue? Consolidation day (fade extremes).
• Progressive green? Trend day (follow).
• Green then orange? Failed breakout (reversal setup).
This visual language communicates market state instantly—no interpretation needed.
🎯 TRADE SETUP GENERATION & GRADING [/b>
[b>Algorithmic Setup Detection: [/b>
ORB Fusion continuously evaluates market state and generates current best trade setup with:
• Action (LONG / SHORT / FADE HIGH / FADE LOW / WAIT)
• Entry price
• Stop loss
• Three targets
• Risk:Reward ratio
• Confidence score (0-100)
• Grade (A+ to D)
[b>Setup Types: [/b>
[b>1. ORB LONG (Bullish Breakout): [/b>
[b>Trigger: [/b>
• Bullish ORB breakout confirmed
• Not failed
[b>Parameters:
• Entry: Current close
• Stop: ORB mid (protects against failure)
• T1: ORB High + 0.5x range (1.5x extension)
• T2: ORB High + 1.0x range (2.0x extension)
• T3: ORB High + 1.618x range (2.618x extension)
[b>Confidence Scoring:
[b>Trigger: [/b>
• Bearish breakout occurred
• Failed (returned inside ORB)
[b>Parameters: [/b>
• Entry: Close when failure confirmed
• Stop: Extreme low since breakout + 0.10 ATR
• T1: ORB Low + 0.5x range
• T2: ORB Low + 1.0x range (ORB mid)
• T3: ORB Low + 1.5x range
[b>Confidence Scoring:
[b>Trigger:
• Inside ORB
• Close > ORB mid (near high)
[b>Parameters: [/b>
• Entry: ORB High (limit order)
• Stop: ORB High + 0.2x range
• T1: ORB Mid
• T2: ORB Low
[b>Confidence Scoring: [/b>
Base: 40 points (lower base—range fading is lower probability than breakout/reversal)
[b>Use Case: [/b> Rotation days. Not recommended on normal/trend days.
[b>6. FADE LOW (Range Trade):
Mirror of FADE HIGH.
[b>7. WAIT:
[b>Trigger: [/b>
• ORB not complete yet OR
• No clear setup (price in no-man's-land)
[b>Action: [/b> Observe, don't trade.
[b>Confidence: [/b> 0 points
[b>Grading System:
```
Confidence → Grade
85-100 → A+
75-84 → A
65-74 → B+
55-64 → B
45-54 → C
0-44 → D
```
[b>Grade Interpretation: [/b>
• [b>A+ / A: High probability setup. Take these trades.
• [b>B+ / B [/b>: Decent setup. Trade if fits system rules.
• [b>C [/b>: Marginal setup. Only if very experienced.
• [b>D [/b>: Poor setup or no setup. Don't trade.
[b>Example Scenario: [/b>
ES futures:
• ORB: 5842-5850 (8 point range)
• Bullish breakout to 5851 confirmed
• Volume: 2.0x average (confirmed)
• VWAP: 5845 (price above VWAP ✓)
• Day type: Developing (too early, no bonus)
• Gap: None
[b>Setup: [/b>
• Action: LONG
• Entry: 5851
• Stop: 5846 (ORB mid, -5 point risk)
• T1: 5854 (+3 points, 1:0.6 R:R)
• T2: 5858 (+7 points, 1:1.4 R:R)
• T3: 5862.94 (+11.94 points, 1:2.4 R:R)
[b>Confidence: LONG with 55% confidence.
Interpretation: Solid setup, not perfect. Trade it if your system allows B-grade signals.
[b>📊 STATISTICS TRACKING & PERFORMANCE ANALYSIS [/b>
[b>Real-Time Performance Metrics: [/b>
ORB Fusion tracks comprehensive statistics over user-defined lookback (default 50 days):
[b>Breakout Performance: [/b>
• [b>Bull Breakouts: [/b> Total count, wins, losses, win rate
• [b>Bear Breakouts: [/b> Total count, wins, losses, win rate
[b>Win Definition: [/b> Breakout reaches ≥1.0x extension (doubles the opening range) before end of day.
[b>Example: [/b>
• ORB: 5842-5850 (8 points)
• Bull breakout at 5851
• Reaches 5858 (1.0x extension) by close
• Result: WIN
[b>Failed Breakout Performance: [/b>
• [b>Total Failed Breakouts [/b>: Count of breakouts that failed
• [b>Reversal Wins [/b>: Count where reversal trade reached target
• [b>Failed Reversal Win Rate [/b>: Wins / Total Failed
[b>Win Definition for Reversals: [/b>
• Failed bull → reversal short reaches ORB mid
• Failed bear → reversal long reaches ORB mid
[b>Extension Tracking: [/b>
• [b>Average Extension Reached [/b>: Mean of maximum extension achieved across all breakout days
• [b>Max Extension Overall [/b>: Largest extension ever achieved in lookback period
[b>Example: 🎨 THREE DISPLAY MODES
[b>Design Philosophy: [/b>
Not all traders need all features. Beginners want simplicity. Professionals want everything. ORB Fusion adapts.
[b>SIMPLE MODE: [/b>
[b>Shows: [/b>
• Primary ORB levels (High, Mid, Low)
• ORB box
• Breakout signals (triangles)
• Failed breakout signals (crosses)
• Basic dashboard (ORB status, breakout status, setup)
• VWAP
[b>Hides: [/b>
• Session ORBs (Asian, London, NY)
• IB levels and extensions
• ORB extensions beyond basic levels
• Gap analysis visuals
• Statistics dashboard
• Momentum candle coloring
• Narrative dashboard
[b>Use Case: [/b>
• Traders who want clean chart
• Focus on core ORB concept only
• Mobile trading (less screen space)
[b>STANDARD MODE:
[b>Shows Everything in Simple Plus: [/b>
• Session ORBs (Asian, London, NY)
• IB levels (high, low, mid)
• IB extensions
• ORB extensions (1.272x, 1.5x, 1.618x, 2.0x)
• Gap analysis and fill targets
• VWAP bands (1σ and 2σ)
• Momentum candle coloring
• Context section in dashboard
• Narrative dashboard
[b>Hides: [/b>
• Advanced extensions (2.618x, 3.0x)
• Detailed statistics dashboard
[b>Use Case: [/b>
• Most traders
• Balance between information and clarity
• Covers 90% of use cases
[b>ADVANCED MODE:
[b>Shows Everything:
• All session ORBs
• All IB levels and extensions
• All ORB extensions (including 2.618x and 3.0x)
• Full gap analysis
• VWAP with both 1σ and 2σ bands
• Momentum candle coloring
• Complete statistics dashboard
• Narrative dashboard
• All context metrics
[b>Use Case: [/b>
• Professional traders
• System developers
• Those who want maximum information density
[b>Switching Modes: [/b>
Single dropdown input: "Display Mode" → Simple / Standard / Advanced
Entire indicator adapts instantly. No need to toggle 20 individual settings.
📖 NARRATIVE DASHBOARD
[b>Innovation: Plain-English Market State [/b>
Most indicators show data. ORB Fusion explains what the data [b>means [/b>.
[b>Narrative Components: [/b>
[b>1. Phase: [/b>
• "📍 Building ORB..." (during ORB session)
• "📊 Trading Phase" (after ORB complete)
• "⏳ Pre-Market" (before ORB session)
[b>2. Status (Current Observation): [/b>
• "⚠️ Failed breakout - reversal likely"
• "🚀 Bullish momentum in play"
• "📉 Bearish momentum in play"
• "⚖️ Consolidating in range"
• "👀 Monitoring for setup"
[b>3. Next Level:
Tells you what to watch for:
• "🎯 1.5x @ 5854.00" (next extension target)
• "Watch ORB levels" (inside range, await breakout)
[b>4. Setup: [/b>
Current trade setup + grade:
• "LONG " (bullish breakout, A-grade)
• "🔥 SHORT REVERSAL " (failed bull breakout, A+-grade)
• "WAIT " (no setup)
[b>5. Reason: [/b>
Why this setup exists:
• "ORB Bullish Breakout"
• "Failed Bear Breakout - High Probability Reversal"
• "Range Fade - Near High"
[b>6. Tip (Market Insight):
Contextual advice:
• "🔥 TREND DAY - Trail stops" (day type is trending)
• "🔄 ROTATION - Fade extremes" (day type is rotating)
• "📊 Gap unfilled - magnet level" (gap creates target)
• "📈 Normal conditions" (no special context)
[b>Example Narrative:
```
📖 ORB Narrative
━━━━━━━━━━━━━━━━
Phase | 📊 Trading Phase
Status | 🚀 Bullish momentum in play
Next | 🎯 1.5x @ 5854.00
📈 Setup | LONG
Reason | ORB Bullish Breakout
💡 Tip | 🔥 TREND DAY - Trail stops
```
[b>Glance Interpretation: [/b>
"We're in trading phase. Bullish breakout happened (momentum in play). Next target is 1.5x extension at 5854. Current setup is LONG with A-grade. It's a trend day, so trail stops (don't take early profits)."
Complete market state communicated in 6 lines. No interpretation needed.
[b>Why This Matters:
Beginner traders struggle with "So what?" question. Indicators show lines and signals, but what does it mean [/b>? Narrative dashboard bridges this gap.
Professional traders benefit too—rapid context assessment during fast-moving markets. No time to analyze; glance at narrative, get action plan.
🔔 INTELLIGENT ALERT SYSTEM
[b>Four Alert Types: [/b>
[b>1. Breakout Alert: [/b>
[b>Trigger: [/b> ORB breakout confirmed (bull or bear)
[b>Message: [/b>
```
🚀 ORB BULLISH BREAKOUT
Price: 5851.00
Volume Confirmed
Grade: A
```
[b>Frequency: [/b> Once per bar (prevents spam)
[b>2. Failed Breakout Alert: [/b>
[b>Trigger: [/b> Breakout fails, reversal setup generated
[b>Message: [/b>
```
🔥 FAILED BULLISH BREAKOUT!
HIGH PROBABILITY SHORT REVERSAL
Entry: 5848.00
Stop: 5854.00
T1: 5846.00
T2: 5842.00
Historical Win Rate: 73%
```
[b>Why Comprehensive? [/b> Failed breakout alerts include complete trade plan. You can execute immediately from alert—no need to check chart.
[b>3. Extension Alert:
[b>Trigger: [/b> Price reaches extension level for first time
[b>Message: [/b>
```
🎯 Bull Extension 1.5x reached @ 5854.00
```
[b>Use: [/b> Profit-taking reminder. When extension hit, consider scaling out.
[b>4. IB Break Alert: [/b>
[b>Trigger: [/b> Price breaks above IB high or below IB low
[b>Message: [/b>
```
📊 IB HIGH BROKEN - Potential Trend Day
```
[b>Use: [/b> Day type classification. IB break suggests trend day developing—adjust strategy to trend-following mode.
[b>Alert Management: [/b>
Each alert type can be enabled/disabled independently. Prevents notification overload.
[b>Cooldown Logic: [/b>
Alerts won't fire if same alert type triggered within last bar. Prevents:
• "Breakout" alert every tick during choppy breakout
• Multiple "extension" alerts if price oscillates at level
Ensures: One clean alert per event.
⚙️ KEY PARAMETERS EXPLAINED
[b>Opening Range Settings: [/b>
• [b>ORB Timeframe [/b> (5/15/30/60 min): Duration of opening range window
- 30 min recommended for most traders
• [b>Use RTH Only [/b> (ON/OFF): Only trade during regular trading hours
- ON recommended (avoids thin overnight markets)
• [b>Use LTF Precision [/b> (ON/OFF): Sample 1-minute bars for accuracy
- ON recommended (critical for charts >1 minute)
• [b>Precision TF [/b> (1/5 min): Timeframe for LTF sampling
- 1 min recommended (most accurate)
[b>Session ORBs: [/b>
• [b>Show Asian/London/NY ORB [/b> (ON/OFF): Display multi-session ranges
- OFF in Simple mode
- ON in Standard/Advanced if trading 24hr markets
• [b>Session Windows [/b>: Time ranges for each session ORB
- Defaults align with major session opens
[b>Initial Balance: [/b>
• [b>Show IB [/b> (ON/OFF): Display Initial Balance levels
- ON recommended for day type classification
• [b>IB Session Window [/b> (0930-1030): First hour of trading
- Default is standard for US equities
• [b>Show IB Extensions [/b> (ON/OFF): Project IB extension targets
- ON recommended (identifies trend days)
• [b>IB Extensions 1-4 [/b> (0.5x, 1.0x, 1.5x, 2.0x): Extension multipliers
- Defaults are Market Profile standard
[b>ORB Extensions: [/b>
• [b>Show Extensions [/b> (ON/OFF): Project ORB extension targets
- ON recommended (defines profit targets)
• [b>Enable Individual Extensions [/b> (1.272x, 1.5x, 1.618x, 2.0x, 2.618x, 3.0x)
- Enable 1.272x, 1.5x, 1.618x, 2.0x minimum
- Disable 2.618x and 3.0x unless trading very volatile instruments
[b>Breakout Detection:
• [b>Confirmation Method [/b> (Close/Wick/Body):
- Close recommended (best balance)
- Wick for scalping
- Body for conservative
• [b>Require Volume Confirmation [/b> (ON/OFF):
- ON recommended (increases reliability)
• [b>Volume Multiplier [/b> (1.0-3.0):
- 1.5x recommended
- Lower for thin instruments
- Higher for heavy volume instruments
[b>Failed Breakout System: [/b>
• [b>Enable Failed Breakouts [/b> (ON/OFF):
- ON strongly recommended (highest edge)
• [b>Bars to Confirm Failure [/b> (2-10):
- 3 bars recommended
- 2 for aggressive (more signals, more false failures)
- 5+ for conservative (fewer signals, higher quality)
• [b>Failure Buffer [/b> (0.0-0.5 ATR):
- 0.1 ATR recommended
- Filters noise during consolidation near ORB level
• [b>Show Reversal Targets [/b> (ON/OFF):
- ON recommended (visualizes trade plan)
• [b>Reversal Target Mults [/b> (0.5x, 1.0x, 1.5x):
- Defaults are tested values
- Adjust based on average daily range
[b>Gap Analysis:
• [b>Show Gap Analysis [/b> (ON/OFF):
- ON if trading instruments that gap frequently
- OFF for 24hr markets (forex, crypto—no gaps)
• [b>Gap Fill Target [/b> (ON/OFF):
- ON to visualize previous close (gap fill level)
[b>VWAP:
• [b>Show VWAP [/b> (ON/OFF):
- ON recommended (key institutional level)
• [b>Show VWAP Bands [/b> (ON/OFF):
- ON in Standard/Advanced
- OFF in Simple
• [b>Band Multipliers (1.0σ, 2.0σ):
- Defaults are standard
- 1σ = normal range, 2σ = extreme
[b>Day Type: [/b>
• [b>Show Day Type Analysis [/b> (ON/OFF):
- ON recommended (critical for strategy adaptation)
• [b>Trend Day Threshold [/b> (1.0-2.5 IB mult):
- 1.5x recommended
- When price extends >1.5x IB, classifies as Trend Day
[b>Enhanced Visuals:
• [b>Show Momentum Candles [/b> (ON/OFF):
- ON for visual context
- OFF if chart gets too colorful
• [b>Show Gradient Zone Fills [/b> (ON/OFF):
- ON for professional look
- OFF for minimalist chart
• [b>Label Display Mode [/b> (All/Adaptive/Minimal):
- Adaptive recommended (shows nearby labels only)
- All for information density
- Minimal for clean chart
• [b>Label Proximity [/b> (1.0-5.0 ATR):
- 3.0 ATR recommended
- Labels beyond this distance are hidden (Adaptive mode)
[b>🎓 PROFESSIONAL USAGE PROTOCOL [/b>
[b>Phase 1: Learning the System (Week 1) [/b>
[b>Goal: [/b> Understand ORB concepts and dashboard interpretation
[b>Setup: [/b>
• Display Mode: STANDARD
• ORB Timeframe: 30 minutes
• Enable ALL features (IB, extensions, failed breakouts, VWAP, gap analysis)
• Enable statistics tracking
[b>Actions: [/b>
• Paper trade ONLY—no real money
• Observe ORB formation every day (9:30-10:00 AM ET for US markets)
• Note when ORB breakouts occur and if they extend
• Note when breakouts fail and reversals happen
• Watch day type classification evolve during session
• Track statistics—which setups are working?
[b>Key Learning: [/b>
• How often do breakouts reach 1.5x extension? (typically 50-60% of confirmed breakouts)
• How often do breakouts fail? (typically 30-40%)
• Which setup grade (A/B/C) actually performs best? (should see A-grade outperforming)
• What day type produces best results? (trend days favor breakouts, rotation days favor fades)
[b>Phase 2: Parameter Optimization (Week 2) [/b>
[b>Goal: [/b> Tune system to your instrument and timeframe
[b>ORB Timeframe Selection:
• Run 5 days with 15-minute ORB
• Run 5 days with 30-minute ORB
• Compare: Which captures better breakouts on your instrument?
• Typically: 30-minute optimal for most, 15-minute for very liquid (ES, SPY)
[b>Volume Confirmation Testing:
• Run 5 days WITH volume confirmation
• Run 5 days WITHOUT volume confirmation
• Compare: Does volume confirmation increase win rate?
• If win rate improves by >5%: Keep volume confirmation ON
• If no improvement: Turn OFF (avoid missing valid breakouts)
[b>Failed Breakout Bars:
[b>Goal: [/b> Develop personal trading rules based on system signals
[b>Setup Selection Rules: [/b>
Define which setups you'll trade:
• [b>Conservative: [/b> Only A+ and A grades
• [b>Balanced: [/b> A+, A, B+ grades
• [b>Aggressive: [/b> All grades B and above
Test each approach for 5-10 trades, compare results.
[b>Position Sizing by Grade: [/b>
Consider risk-weighting by setup quality:
• A+ grade: 100% position size
• A grade: 75% position size
• B+ grade: 50% position size
• B grade: 25% position size
Example: If max risk is $1000/trade:
• A+ setup: Risk $1000
• A setup: Risk $750
• B+ setup: Risk $500
This matches bet sizing to edge.
[b>Day Type Adaptation: [/b>
Create rules for different day types:
Trend Days:
• Take ALL breakout signals (A/B/C grades)
• Hold for 2.0x extension minimum
• Trail stops aggressively (1.0 ATR trail)
• DON'T fade—reversals unlikely
Rotation Days:
• ONLY take failed breakout reversals
• Ignore initial breakout signals (likely to fail)
• Take profits quickly (0.5x extension)
• Focus on fade setups (Fade High/Fade Low)
Normal Days:
• Take A/A+ breakout signals only
• Take ALL failed breakout reversals (high probability)
• Target 1.0-1.5x extensions
• Partial profit-taking at extensions
Time-of-Day Rules: [/b>
Breakouts at different times have different probabilities:
10:00-10:30 AM (Early Breakout):
• ORB just completed
• Fresh breakout
• Probability: Moderate (50-55% reach 1.0x)
• Strategy: Conservative position sizing
10:30-12:00 PM (Mid-Morning):
• Momentum established
• Volume still healthy
• Probability: High (60-65% reach 1.0x)
• Strategy: Standard position sizing
12:00-2:00 PM (Lunch Doldrums):
• Volume dries up
• Whipsaw risk increases
• Probability: Low (40-45% reach 1.0x)
• Strategy: Avoid new entries OR reduce size 50%
2:00-4:00 PM (Afternoon Session):
• Late-day positioning
• EOD squeezes possible
• Probability: Moderate-High (55-60%)
• Strategy: Watch for IB break—if trending all day, follow
[b>Phase 4: Live Micro-Sizing (Month 2) [/b>
[b>Goal: [/b> Validate paper trading results with minimal risk
[b>Setup: [/b>
• 10-20% of intended full position size
• Take ONLY A+ and A grade setups
• Follow stop loss and targets religiously
[b>Execution: [/b>
• Execute from alerts OR from dashboard setup box
• Entry: Close of signal bar OR next bar market order
• Stop: Use exact stop from setup (don't widen)
• Targets: Scale out at T1/T2/T3 as indicated
[b>Tracking: [/b>
• Log every trade: Entry, Exit, Grade, Outcome, Day Type
• Calculate: Win rate, Average R-multiple, Max consecutive losses
• Compare to paper trading results (should be within 15%)
[b>Red Flags: [/b>
• Win rate <45%: System not suitable for this instrument/timeframe
• Major divergence from paper trading: Execution issues (slippage, late entries, emotional exits)
• Max consecutive losses >8: Hitting rough patch OR market regime changed
[b>Phase 5: Scaling Up (Months 3-6)
[b>Goal: [/b> Gradually increase to full position size
[b>Progression: [/b>
• Month 3: 25-40% size (if micro-sizing profitable)
• Month 4: 40-60% size
• Month 5: 60-80% size
• Month 6: 80-100% size
[b>Milestones Required to Scale Up: [/b>
• Minimum 30 trades at current size
• Win rate ≥48%
• Profit factor ≥1.2
• Max drawdown <20%
• Emotional control (no revenge trading, no FOMO)
[b>Advanced Techniques:
[b>Multi-Timeframe ORB: Assumes first 30-60 minutes establish value. Violation: Market opens after major news, price discovery continues for hours (opening range meaningless).
2. [b>Volume Indicates Conviction: ES, NQ, RTY, SPY, QQQ—high liquidity, clean ORB formation, reliable extensions
• [b>Large-Cap Stocks: AAPL, MSFT, TSLA, NVDA (>$5B market cap, >5M daily volume)
• [b>Liquid Futures: CL (crude oil), GC (gold), 6E (EUR/USD), ZB (bonds)—24hr markets benefit from session ORBs
• [b>Major Forex Pairs: [/b> EUR/USD, GBP/USD, USD/JPY—London/NY session ORBs work well
[b>Performs Poorly On: [/b>
• [b>Illiquid Stocks: <$1M daily volume, wide spreads, gappy price action
• [b>Penny Stocks: [/b> Manipulated, pump-and-dump, no real price discovery
• [b>Low-Volume ETFs: Exotic sector ETFs, leveraged products with thin volume
• [b>Crypto on Sketchy Exchanges: Wash trading, spoofing invalidates volume analysis
• [b>Earnings Days: [/b> ORB completes before earnings release, then completely resets (useless)
• Binary Event Days: FDA approvals, court rulings—discontinuous price action
[b>Known Weaknesses: [/b>
• [b>Slow Starts: ORB doesn't complete until 10:00 AM (30-min ORB). Early morning traders have no signals for 30 minutes. Consider using 15-minute ORB if this is problematic.
• [b>Failure Detection Lag: [/b> Failed breakout requires 3+ bars to confirm. By the time system signals reversal, price may have already moved significantly back inside range. Manual traders watching in real-time can enter earlier.
• [b>Extension Overshoot: [/b> System projects extensions mathematically (1.5x, 2.0x, etc.). Actual moves may stop short (1.3x) or overshoot (2.2x). Extensions are targets, not magnets.
• [b>Day Type Misclassification: [/b> Early in session, day type is "Developing." By the time it's classified definitively (often 11:00 AM+), half the day is over. Strategy adjustments happen late.
• [b>Gap Assumptions: [/b> System assumes gaps want to fill. Strong trend days never fill gaps (gap becomes support/resistance forever). Blindly trading toward gaps can backfire on trend days.
• [b>Volume Data Quality: Forex doesn't have centralized volume (uses tick volume as proxy—less reliable). Crypto volume is often fake (wash trading). Volume confirmation less effective on these instruments.
• [b>Multi-Session Complexity: [/b> When using Asian/London/NY ORBs simultaneously, chart becomes cluttered. Requires discipline to focus on relevant session for current time.
[b>Risk Factors: [/b>
• [b>Opening Gaps: Large gaps (>2%) can create distorted ORBs. Opening range might be unusually wide or narrow, making extensions unreliable.
• [b>Low Volatility Environments:[/b> When VIX <12, opening ranges can be tiny (0.2-0.3%). Extensions are equally tiny. Profit targets don't justify commission/slippage.
• [b>High Volatility Environments:[/b> When VIX >30, opening ranges are huge (2-3%+). Extensions project unrealistic targets. Failed breakouts happen faster (volatility whipsaw).
• [b>Algorithm Dominance:[/b> In heavily algorithmic markets (ES during overnight session), ORB levels can be manipulated—algos pin price to ORB high/low intentionally. Breakouts become stop-runs rather than genuine directional moves.
[b>⚠️ RISK DISCLOSURE[/b>
Trading futures, stocks, options, forex, and cryptocurrencies involves substantial risk of loss and is not suitable for all investors. Opening Range Breakout strategies, while based on sound market structure principles, do not guarantee profits and can result in significant losses.
The ORB Fusion indicator implements professional trading concepts including Opening Range theory, Market Profile Initial Balance analysis, Fibonacci extensions, and failed breakout reversal logic. These methodologies have theoretical foundations but past performance—whether backtested or live—is not indicative of future results.
Opening Range theory assumes the first 30-60 minutes of trading establish a meaningful value area and that breakouts from this range signal directional conviction. This assumption may not hold during:
• Major news events (FOMC, NFP, earnings surprises)
• Market structure changes (circuit breakers, trading halts)
• Low liquidity periods (holidays, early closures)
• Algorithmic manipulation or spoofing
Failed breakout detection relies on patterns of trapped participant behavior. While historically these patterns have shown statistical edges, market conditions change. Institutional algorithms, changing market structure, or regime shifts can reduce or eliminate edges that existed historically.
Initial Balance classification (trend day vs rotation day vs normal day) is a heuristic framework, not a deterministic prediction. Day type can change mid-session. Early classification may prove incorrect as the day develops.
Extension projections (1.272x, 1.5x, 1.618x, 2.0x, etc.) are probabilistic targets derived from Fibonacci ratios and empirical market behavior. They are not "support and resistance levels" that price must reach or respect. Markets can stop short of extensions, overshoot them, or ignore them entirely.
Volume confirmation assumes high volume indicates institutional participation and conviction. In algorithmic markets, volume can be artificially high (HFT activity) or artificially low (dark pools, internalization). Volume is a proxy, not a guarantee of conviction.
LTF precision sampling improves ORB accuracy by using 1-minute bars but introduces additional data dependencies. If 1-minute data is unavailable, inaccurate, or delayed, ORB calculations will be incorrect.
The grading system (A+/A/B+/B/C/D) and confidence scores aggregate multiple factors (volume, VWAP, day type, IB expansion, gap context) into a single assessment. This is a mechanical calculation, not artificial intelligence. The system cannot adapt to unprecedented market conditions or events outside its programmed logic.
Real trading involves slippage, commissions, latency, partial fills, and rejected orders not present in indicator calculations. ORB Fusion generates signals at bar close; actual fills occur with delay. Opening range forms during highest volatility (first 30 minutes)—spreads widen, slippage increases. Execution quality significantly impacts realized results.
Statistics tracking (win rates, extension levels reached, day type distribution) is based on historical bars in your lookback window. If lookback is small (<50 bars) or market regime changed, statistics may not represent future probabilities.
Users must independently validate system performance on their specific instruments, timeframes, and broker execution environment. Paper trade extensively (100+ trades minimum) before risking capital. Start with micro position sizing (5-10% of intended size) for 50+ trades to validate execution quality matches expectations.
Never risk more than you can afford to lose completely. Use proper position sizing (0.5-2% risk per trade maximum). Implement stop losses on every single trade without exception. Understand that most retail traders lose money—sophisticated indicators do not change this fundamental reality. They systematize analysis but cannot eliminate risk.
The developer makes no warranties regarding profitability, suitability, accuracy, reliability, or fitness for any purpose. Users assume full responsibility for all trading decisions, parameter selections, risk management, and outcomes.
By using this indicator, you acknowledge that you have read, understood, and accepted these risk disclosures and limitations, and you accept full responsibility for all trading activity and potential losses.
[b>═══════════════════════════════════════════════════════════════════════════════[/b>
[b>CLOSING STATEMENT[/b>
[b>═══════════════════════════════════════════════════════════════════════════════[/b>
Opening Range Breakout is not a trick. It's a framework. The first 30-60 minutes reveal where participants believe value lies. Breakouts signal directional conviction. Failures signal trapped participants. Extensions define profit targets. Day types dictate strategy. Failed breakouts create the highest-probability reversals.
ORB Fusion doesn't predict the future—it identifies [b>structure[/b>, detects [b>breakouts[/b>, recognizes [b>failures[/b>, and generates [b>probabilistic trade plans[/b> with defined risk and reward.
The edge is not in the opening range itself. The edge is in recognizing when the market respects structure (follow breakouts) versus when it violates structure (fade breakouts). The edge is in detecting failures faster than discretionary traders. The edge is in systematic classification that prevents catastrophic errors—like fading a trend day or holding through rotation.
Most indicators draw lines. ORB Fusion implements a complete institutional trading methodology: Opening Range theory, Market Profile classification, failed breakout intelligence, Fibonacci projections, volume confirmation, gap psychology, and real-time performance tracking.
Whether you're a beginner learning market structure or a professional seeking systematic ORB implementation, this system provides the framework.
"The market's first word is its opening range. Everything after is commentary." — ORB Fusion
Implicit Dolar MEPWhich stock or CEDEAR offers the best implied MEP dollar rate?
This indicator displays labels positioned at the level of the implied MEP dollar rate for the 10 equity instruments (stocks, CEDEARs and ETFs) with the highest trading volume in MEP dollars over the last month on the BYMA market.
The implied rate for each asset is calculated as the ratio between its price in ARS and its price in MEP dollars, for example:
GGAL / GGALD.
As a reference (benchmark), a white line is plotted representing the implied MEP dollar rate of the AL30 bond, calculated as AL30 / AL30D, which is the most liquid government bond in the BYMA market.
Settings
• The user may enter the ticker of any bi-currency instrument (fixed income or equity) to add its label to the chart.
Key information
An information box highlights:
• The asset with the most expensive implied dollar (Best SELL).
• The asset with the cheapest implied dollar (Best BUY).
Not an investment recommendation.
This information is provided for informational purposes only and does not constitute an offer, solicitation, or investment advice. Investment decisions are the sole responsibility of the investor.
RSI For Loop | PWRSI For Loop – True Dominance Oscillator
RSI For Loop – True Momentum Dominance Through Historical Comparison
The Relative Strength Index (RSI) is excellent at measuring recent price change intensity, but a reading of 70 or 30 has completely different implications depending on the market regime. RSI For Loop removes this ambiguity by transforming RSI into a clean, zero-centered dominance / percentile-rank oscillator that always tells you exactly how strong or weak the current momentum is compared to recent history.
How it works
- Standard RSI is calculated normally (default length 46).
- A simple for-loop compares the current RSI value against the actual RSI value of every previous bar inside the user-defined lookback window (default 1 to 99 bars ≈ one full quarter on daily charts).
- Current RSI higher → +1 point
- Current RSI lower → –1 point
The resulting score ranges from –99 to +99 and is naturally centered around zero:
1. +40 = current momentum beats ~70 % of the last 99 bars (approximation)
2. –60 = current momentum is weaker than ~80 % of the last 99 bars (approximation)
3. Near zero = balanced or ranging market
Additional statistical layers
- A very long rolling median of the score (default 240 periods) serves as a slow, robust dynamic centerline
- Upper and lower 3σ bands are calculated from the standard deviation of the underlying RSI median (default length 60) to highlight truly rare extreme-dominance phases
- Asymmetric trend thresholds (default Long +15 / Short –28) reflect the empirical observation that downside momentum is usually sharper and faster
Origin and development
The core idea of using a for-loop on RSI was originally introduced by @viResearch in his invite-only “RSI For Loop” script.
While studying that concept I realised I needed an even more regime-robust strength gauge that looks back far enough to capture full market cycles (2–4 months). Therefore I completely rewrote the loop to compare against actual historical RSI values instead of fixed levels, added a 240-period median centerline, 3σ extreme bands, asymmetric thresholds, and visual signals. All parameters were extensively tested across dozens of major assets (BTC, ETH, SOL, SUI, BNB, XRP, TRX, DOGE, LINK, PAXG, CVX, HYPE, VIRTUAL + 20+ more cryptos; Magnificent 7 stocks, QQQ, SPX, XAUUSD) with the goal of achieving consistent profitability, high Sortino ratio and low drawdown in simple trend-following setups.
The final defaults represent the most robust compromise found — they keep you in real trends for dozens or hundreds of bars while staying almost silent in choppy, ranging markets.
Important Note
The optimization process is tailored to MY needs and have to be adjusted to you prefered timeframe!
I was mainly looking for an indicator that shows the underlying strength of an asset, the trend componant was only a bonus in my eyes.
How to use it
1. Green triangle below bar → score crosses above +15 → new bullish regime confirmed → enter or add to longs
2. Magenta triangle above bar → score crosses below –28 → exit longs or go cash/short
While score stays clearly positive → bullish bias hold
3. Score touching or breaking the 3σ bands → extreme conviction zone (add to winners or prepare for exhaustion)
Strength
Recommended defaults (My preference)
RSI length 46
Loop range 1–99
Long threshold +15
Short threshold –28
Median length 240
SD length 60
Recommended Universal Settings (Tested for low Max-Drawdown, high Sortino)
RSI length 44
Loop range 1–60
Long threshold +14
Short threshold –10
Median length 180
SD length 28
Works on every asset class, but the current settings are tuned for major liquid markets.
Disclaimer: This is not financial advice. Backtests are based on past results and are not indicative of future performance.
SMC Academy [PhenLabs]📊 SMC Academy
Version: PineScript™ v6
📌 Description
The SMC Academy indicator is a comprehensive educational tool designed to demystify Smart Money Concepts (SMC) for traders of all levels. Unlike standard indicators that simply print signals, this script uses a “Learning Phase” system that allows users to toggle between individual concepts—such as Market Structure, Liquidity, Imbalances, and Order Blocks—or view them all simultaneously. It lets you focus on one piece of the puzzle at a time.
🚀 Points of Innovation
Progressive Learning Modes: Toggle between 5 distinct phases to master concepts individually before using the Full Strategy Mode.
Educational Tooltips: Hover over labels to read detailed explanations of why a BOS, MSS, or Liquidity zone was identified.
Smart Filtering: Uses ATR and Volume integration to filter out low-quality Fair Value Gaps and weak Order Blocks.
HTF Dashboard: A built-in panel analyzes Higher Timeframe (4H) data to ensure you are trading in alignment with the broader trend.
🔧 Core Components
Market Structure Engine: Automatically detects Swing Highs and Lows to map out market direction using configurable swing lengths.
Liquidity Manager: Identifies unmitigated swing points that serve as Buy-Side (BSL) and Sell-Side (SSL) liquidity magnets.
Imbalance Detector: Highlights Fair Value Gaps (FVG) where price inefficiencies exist, using ATR thresholds to ignore noise.
Order Block Identifier: Locates the specific candles responsible for structure breaks, validated by volume analysis.
🔥 Key Features
Break of Structure (BOS): Automatically marks trend continuation signals with solid lines and color-coded labels.
Market Structure Shift (MSS): Identifies potential trend reversals when significant swing points are breached.
Dashboard Context: Displays the current trend direction and the 4H context directly on your chart.
Custom Alerts: Built-in alert conditions for structure breaks and new Order Blocks allow for automated tracking.
🎨 Visualization
Structure Lines: Solid lines indicate confirmed breaks (Green for Bullish, Red for Bearish).
Liquidity Zones: Dotted lines extending rightward indicate resting liquidity levels that price may target.
FVG Boxes: Shaded boxes highlight imbalance zones, automatically extending for a user-defined number of bars.
Dashboard: A clean, non-intrusive table in the top-right corner displays trend status and active mode.
📖 Usage Guidelines
Setting Categories
Learning Mode: Select from ‘1. Market Structure’ through ‘5. Full Strategy Mode’ to filter what appears on the chart.
Swing Detection Length: Default (5). Determines the sensitivity of the swing high/low detection.
Structure Break Type: Options (Close/Wick). Choose whether a candle close or just a wick is required to confirm a break.
Min FVG Size: Default (0.5 ATR). Filters out gaps smaller than this multiplier to reduce noise.
Filter Weak OBs by Volume: Default (True). Only highlights Order Blocks where volume exceeds the 20-period average.
✅ Best Use Cases
Educational Study: Isolate “Phase 1: Market Structure” to practice identifying trend changes without distraction.
Trend Following: Use “Phase 3: Imbalances” to find entry points within an established trend.
Reversal Trading: Combine “Phase 2: Liquidity” and “Phase 4: Order Blocks” to catch reversals at key levels.
⚠️ Limitations
Subjectivity: Market structure can be interpreted differently depending on the swing length settings used.
Ranging Markets: Like all trend-following concepts, false BOS/MSS signals may generate during choppy, sideways price action.
Repainting: While the signals are non-repainting once confirmed, the live candle may flash a signal before the close if “Close” mode is selected.
💡 What Makes This Unique
Interactive Learning: The inclusion of tooltip explanations transforms this from a simple tool into an active mentor.
Phase-Based Workflow: The ability to strip the chart back to basics at the click of a button is unique to the PhenLabs ecosystem.
🔬 How It Works
Swing Analysis: The script calculates pivot highs and lows based on your length input to define the structural landscape.
Break Validation: It checks if price crosses these pivot points to trigger BOS (Continuation) or MSS (Reversal) logic.
Volume Confirmation: For Order Blocks, it looks back inside the swing leg to find the specific candle responsible for the move, verifying it has significant volume.
💡 Note:
For the best experience, start in Phase 1 to calibrate your Swing Detection Length to the specific volatility of the asset you are trading before enabling Full Strategy Mode.
Custom ORBIT GSK-VIZAG-AP-INDIA🚀 Custom ORBIT — Opening Range Breakout & Reversal Indicator
This indicator automatically calculates and plots the Opening Range (OR) high and low levels for a user-defined session and duration. It is designed to assist intraday traders by providing immediate visual signals for both price breakouts and subsequent reversals from these key levels.
The indicator is particularly suitable for markets with defined trading hours, such as the Indian indices (Nifty, Bank Nifty), given its default time settings are based on GMT+5:30.
⚙️ How It Works (Indicator Logic)
The indicator operates based on three main logical components: time definition, level calculation, and signal generation.
1. Time Session and Range Definition: All time calculations are based on GMT+5:30 (Indian Standard Time/IST). The script defines a specific trading session from a customizable start time (default 9:15 AM) to a session end time (default 3:30 PM). The Opening Range (OR) is established during the initial duration, which is set by the rangeMinutes input (default 15 minutes, meaning the OR is calculated from 9:15 AM to 9:30 AM).
2. Level Calculation and Plotting: During the initial range duration, the script captures the absolute highest price (OR High) and the absolute lowest price (OR Low). Once this period ends, two horizontal lines—a green line for the OR High and a red line for the OR Low—are drawn and automatically extended across the chart for the remainder of the active trading session. The visual style of these lines can be customized to Dotted, Dashed, or Solid.
3. Breakout and Reversal Logic: The indicator actively tracks the market's state relative to the OR levels to generate four distinct signals:
Break Up: A signal is generated when the closing price crosses over the OR High, indicating potential upward momentum.
Break Down: A signal is generated when the closing price crosses under the OR Low, indicating potential downward momentum.
Reversal Down: This yellow signal occurs only after a price has already broken above the OR High (Break Up state), and then the price moves back into the range (closing below the ORH), suggesting a failed breakout.
Reversal Up: This yellow signal occurs only after a price has already broken below the OR Low (Break Down state), and then the price moves back into the range (closing above the ORL), suggesting a failed breakdown.
💡 Suggested Use Cases
The signals generated by this indicator can be used in two primary ways:
Breakout Trading: A trader may enter a long position on a "Break Up" signal or a short position on a "Break Down" signal. A common risk management practice is to use the opposite OR level (ORL for long trades, ORH for short trades) as a stop-loss reference.
Faded Breakout / Reversal Trading: Look for the yellow "Reversal Up" or "Reversal Down" signals. These signals indicate a rejection of the OR level, and a trader may take a counter-trend position with the expectation that the price will return to the consolidation range or move toward the opposite OR level.
⚠️ Educational Disclaimer
This indicator is for educational and illustrative purposes only. It provides technical signals based on mathematical calculation of price action and should not be construed as financial advice, trading advice, or a solicitation to buy or sell any financial instrument. Trading carries a high level of risk, and you may lose more than your initial deposit. Past performance is not indicative of future results. Always consult with a qualified financial professional before making any investment decisions.
Intraday Volume Pulse GSK-VIZAG-AP-INDIA📊 Intraday Volume Pulse — by GSK-VIZAG-AP-INDIA
Overview:
This indicator displays a simple and effective intraday volume summary in table format, starting from a user-defined session time. It provides an approximate breakdown of buy volume, sell volume, cumulative delta, and total volume — all updated in real-time.
🧠 Key Features
✅ Session Start Control
Choose the session start hour and minute (default is 09:15 for NSE).
🌐 Timezone Selector
View volume data in your preferred timezone: IST, GMT, EST, CST, etc.
📈 Buy/Sell Volume Estimation Logic
Buy Volume: When candle closes above open
Sell Volume: When candle closes below open
Equal: Volume split equally if Open == Close
🔄 Daily Auto-Reset
All volume metrics reset at the start of a new trading day.
🎨 Color-Coded Volume Insights
Buy Volume: Green shade if positive
Sell Volume: Red shade if positive
Cumulative Delta: Dynamic red/green based on net pressure
Total Volume: Neutral gray with emphasis text
🧾 Readable Number Formatting
Volumes are displayed in "K", "L", and "Cr" units for easier readability.
📌 Table Positioning
Choose from top/bottom corners to best fit your layout.
⚠️ Note
All data shown is approximate and based on candle structure — it does not reflect actual order book or tick-level data. This is a visual estimation tool to guide real-time intraday decisions.
✍️ Signature
GSK-VIZAG-AP-INDIA
Creator of practical TradingView tools focused on volume dynamics and trader psychology.
Market Session Terrain Monitor v1.0Summary
Market Session Terrain Monitor helps traders understand where the market is within its normal intraday behavior, not where it should go. It is a decision-support tool designed to reduce late entries, over-trading, and narrative bias by grounding intraday analysis in historical session statistics.
Purpose
Market Session Terrain Monitor provides statistical context for intraday market movement by analyzing how much each major trading session typically moves, how much it has moved so far, and what market state the current session inherits from previous sessions.
The indicator is designed to answer one core question:
Is the current session early, normal, or already expanded relative to its historical behavior?
This indicator does not predict direction and does not generate buy or sell signals. It is intended as a context and state-awareness tool to support independent, structure-based decision making.
Sessions Analyzed
The trading day is divided into three independent sessions, defined in UTC time:
• Asia
• London
• New York
Each session is analyzed separately using its own historical data. No session is assumed to control or predict the behavior of another.
Session Range
For each session, the indicator measures the session range, defined as the session high minus the session low. This captures how much the market actually moved during that session, regardless of direction.
P90 Expansion Benchmark
For each session, the indicator calculates a P90 expansion benchmark.
• P90 represents the range that only about ten percent of historical sessions exceed
• It reflects a large but repeatable expansion, not an extreme outlier
• It is used as a normalization reference so sessions with different volatility characteristics can be compared on equal terms
The P90 values are displayed in the table header in price units, such as USD, as a reference for scale.
Percent of P90
Current and previous session ranges are expressed as a percentage of that session’s own P90.
This shows:
• How much of a statistically large session has already been used
• Whether the session is still early, behaving normally, or approaching expansion
Rolling Comparative Table
The table displays three rows, ordered by time and anchored to the current active session:
• Current · Session
• Previous · Session
• Previous-2 · Session
Each row shows:
• Session name
• Session range in price units
• Session range as a percentage of that session’s P90
This rolling layout provides context about the market state inherited by the current session without implying causality.
How to Use the Indicator
The indicator helps with:
• Identifying whether a session is early or late in its statistical range
• Avoiding entries when a session is already stretched
• Recognizing compression versus expansion regimes
• Understanding the market state the current session inherits
The indicator does not:
• Predict direction
• Forecast highs or lows
• Assume that one session determines the next
Directional decisions should come from price structure, execution rules, and risk management.
Design Philosophy
• Range first, direction second
• State awareness over narrative
• Statistical normalization instead of absolute numbers
• Comparative, not predictive
The indicator intentionally avoids estimating remaining range or subtracting previous session movement, as those approaches introduce bias and false causality.
Suitable Markets
• Gold and silver
• Forex pairs
• Indices
• Other liquid instruments with clear session behavior
Option Chain Pro+ [Max Pain + PCR]
# 📊 Option Chain Pro+ - Complete Options Trading System
## 🎯 Overview
**Option Chain Pro+** is the most comprehensive options analysis indicator for Indian indices (NIFTY, BANKNIFTY, FINNIFTY, MIDCAP, SENSEX, BANKEX). This professional-grade tool combines real-time option chain data, Greeks calculation, Max Pain analysis, Put-Call Ratio (PCR), and intelligent trading signals - all in one powerful indicator.
Perfect for both **premium sellers** and **directional option buyers**, this indicator provides actionable trading signals with specific strike recommendations and entry prices.
---
## ✨ KEY FEATURES
### 📈 **Complete Option Chain Display**
- **Real-time option prices** for Calls and Puts across multiple strikes
- **All 5 Greeks**: Delta (Δ), Gamma (Γ), Theta (θ), Vega (ν), Rho (ρ)
- **Implied Volatility (IV)** for each strike
- **Put-Call Ratio (PCR)** column showing sentiment at each strike level
- **Configurable strikes** (5-15 strikes, default: 9)
- **Color-coded highlighting** for easy identification:
- 🟠 Orange: ATM (At-The-Money) strike
- 🔴 Red: Max Pain strike (💀MP)
- 🟢 Green: Recommended Call buy (🚀)
- 🟣 Magenta: Recommended Put buy (🔻)
### 💀 **Max Pain Analysis**
- **Automatic calculation** of Max Pain point (where option buyers lose most)
- **Visual highlighting** in option chain table
- **Chart level** plotting (red dashed line)
- **Trading signals** based on distance from Max Pain
- **Most effective** in expiry week (last 3-5 days)
### 📊 **Put-Call Ratio (PCR) Analysis**
- **Overall PCR**: Total Put premium / Total Call premium
- **Strike-wise PCR**: Individual PCR at each strike level
- **Color-coded signals**:
- 🔴 Red (PCR > 1.5): Bearish - Heavy put buying
- 🟠 Orange (PCR 0.7-1.5): Neutral - Balanced
- 🟢 Green (PCR < 0.7): Bullish - Heavy call buying
- **Support/Resistance identification** from PCR levels
### 🎯 **Intelligent Trading Signals**
#### **Greek-Based Analysis (7 Indicators)**
1. **DELTA**: Direction bias (Bullish/Bearish/Neutral)
2. **GAMMA**: Risk assessment (High/Moderate/Low)
3. **THETA**: Time decay speed (Fast/Moderate/Slow)
4. **VEGA**: Volatility environment (High/Moderate/Low)
5. **VIX**: Fear gauge (High/Moderate/Low fear)
6. **PCR**: Market sentiment (Bearish/Neutral/Bullish)
7. **MAX PAIN**: Price magnet effect (Below/At/Above)
#### **💰 Premium Selling Signals**
- **Automated recommendations** for credit strategies
- Signals: SELL PREMIUM / HEDGE/PROTECT / NEUTRAL STRATEGY
- Perfect for Iron Condors, Credit Spreads, and premium collection
#### **🚀 Option Buying Signals**
- **Specific strike recommendations** for directional trades
- **Entry prices** displayed in real-time
- **Risk/Reward assessment**: FAVORABLE / MODERATE / UNFAVORABLE
- **Visual highlighting** in option chain for recommended strikes
- Separate signals for Calls (🚀) and Puts (🔻)
### 📐 **Advanced Greeks Calculation**
- **Black-Scholes model** implementation in Pine Script
- **Real-time calculation** for all strikes
- **Accurate pricing** using current market data
- **Configurable risk-free rate** (default: 6.5%)
- **IV estimation** from India VIX with multiplier option
---
## 🔧 HOW IT WORKS
### **Data Collection**
1. Fetches real-time spot/futures price
2. Calculates ATM (At-The-Money) strike automatically
3. Retrieves option prices for configured number of strikes
4. Pulls India VIX for volatility estimation
### **Greeks Calculation**
- Implements Black-Scholes model for European options
- Calculates Delta, Gamma, Theta, Vega, Rho for each strike
- Uses 3 days to expiry (configurable via expiry date input)
- Adjusts for Indian market conventions
### **Max Pain Calculation**
- Simulates price settlement at each strike
- Calculates total option buyer losses (Calls + Puts)
- Identifies strike with maximum buyer loss
- Updates in real-time as prices change
### **PCR Analysis**
- Computes Put/Call premium ratio at each strike
- Aggregates overall PCR across all strikes
- Color-codes based on sentiment thresholds
- Identifies support/resistance from extreme PCR values
### **Signal Generation**
Combines multiple factors:
- Greek values (especially Delta, Gamma, Theta)
- VIX level (volatility environment)
- PCR sentiment (fear/greed gauge)
- Max Pain distance (price magnet)
- Generates BUY or SELL recommendations with specific strikes
---
## 🎨 VISUAL COMPONENTS
### **Main Option Chain Table (17 Columns)**
Left to Right:
1. **Call Greeks**: Rho, Gamma, Theta, Vega, Delta
2. **Call IV**: Implied Volatility
3. **Call Price**: Premium
4. **Strike**: Strike price with markers (*ATM, 💀MP, 🚀, 🔻)
5. **PCR**: Put-Call Ratio (color-coded)
6. **Put Price**: Premium
7. **Put IV**: Implied Volatility
8. **Put Greeks**: Delta, Vega, Theta, Gamma, Rho
**Footer**: ATM IV | Overall PCR | Max Pain | VIX | VWAP
### **Trading Signals Table (16 Rows)**
1. **Header**: Indicator | Value | Signal | Action
2. **7 Analysis Rows**: Delta, Gamma, Theta, Vega, VIX, PCR, Max Pain
3. **Sell Strategy**: Recommendation for premium selling
4. **Buy Opportunity**: Recommendation for directional buying
5. **Buy Details**: Specific strike + Entry price
6. **Risk/Reward**: Assessment of buy opportunity
### **Chart Elements**
- **Price plot**: Underlying price (white line)
- **ATM line**: Orange dashed horizontal line
- **Max Pain line**: Red dashed horizontal line
---
## ⚙️ SETTINGS & CUSTOMIZATION
### **Plot Settings**
- **Spot Symbol**: NIFTY, BANKNIFTY, MIDCAP, FINNIFTY, SENSEX, BANKEX
- **Ref Strike**: Manual strike reference (used when Auto Tracking = NONE)
- **Expiry Date**: Format YYYY-MM-DD (e.g., 2025-12-19)
- **Auto Tracking**: SPOT / FUTURES / NONE
- FUTURES (recommended): Uses futures price for ATM calculation
- SPOT: Uses spot index price
- NONE: Uses manual Ref Strike
- **Dashboard Location**: Position of option chain table (9 positions)
- **Signals Location**: Position of trading signals table (9 positions)
### **Display Settings**
- **Number of Strikes**: 5-15 (default: 9)
- More strikes = Better Max Pain accuracy
- Fewer strikes = Faster loading
- **Color Scheme**: Dark / Light
- **Show Trading Signals**: Toggle signals table ON/OFF
- **Show Symbols (Debug)**: Display option symbols instead of prices
### **Strike Difference**
Configure strike intervals for each index:
- NIFTY: 50 (default)
- BANKNIFTY: 100 (default)
- MIDCAP: 25 (default)
- FINNIFTY: 50 (default)
- SENSEX: 100 (default)
- BANKEX: 100 (default)
### **Advanced Settings**
- **Risk Free Rate**: 6.5% (default) - Used in Greeks calculation
- **IV Multiplier**: 1.0 (default) - Adjust VIX-based IV estimation
### **Buy Strategy**
- **Buy Strike Distance (OTM)**: 1-5 strikes (default: 2)
- 1 = Closer to ATM (higher probability, lower leverage)
- 2 = Balanced (recommended)
- 3-5 = Further OTM (lower probability, higher leverage)
---
## 📚 TRADING STRATEGIES SUPPORTED
### **1. Premium Selling Strategies**
**When to use**: High Theta + Low VIX + High IV Rank
- Iron Condors
- Credit Spreads (Bull/Bear)
- Naked Put selling (cash-secured)
- Ratio spreads
**Signals to watch**:
- SELL STRATEGY = "SELL PREMIUM"
- Theta > -15 (fast decay)
- VIX > 15 (high premiums)
- Gamma < 0.002 (low risk)
### **2. Directional Buying**
**When to use**: Low VIX + High Gamma + Strong trend
- ATM/OTM Call buying (bullish)
- ATM/OTM Put buying (bearish)
- Debit spreads
**Signals to watch**:
- BUY OPPORTUNITY = "🚀 BUY CALL" or "🔻 BUY PUT"
- RISK/REWARD = "FAVORABLE"
- VIX < 13 (cheap options)
- Clear directional bias from Delta
### **3. Max Pain Trading (Expiry Week)**
**When to use**: Last 3 days before expiry
- Price gravitates toward Max Pain
- Fade extremes, buy toward Max Pain
**Example**:
- Max Pain: 26000
- Current: 25850 (below)
- Action: Buy 25900 CE, target 26000
### **4. PCR Contrarian**
**When to use**: Extreme PCR readings
- PCR > 1.5: Excessive fear → Sell Puts
- PCR < 0.7: Excessive greed → Sell Calls
### **5. Support/Resistance from PCR**
**When to use**: Identify key levels
- High PCR at strike = Strong support (Put wall)
- Low PCR at strike = Strong resistance (Call wall)
---
## 💡 HOW TO USE
### **Step 1: Setup**
1. Add indicator to NIFTY/BANKNIFTY chart
2. Set expiry date (Thursday for weekly, last Thursday for monthly)
3. Choose number of strikes (9 recommended)
4. Select Auto Tracking = FUTURES
5. Position tables (Option Chain: top_right, Signals: bottom_right)
### **Step 2: Analyze Greeks**
Check the **Trading Signals Table**:
- **Delta**: Market direction bias
- **Gamma**: Risk of sudden moves
- **Theta**: Speed of time decay
- **Vega**: Volatility environment
- **VIX**: Overall fear/greed
- **PCR**: Put/Call sentiment
- **Max Pain**: Price magnet
### **Step 3: Identify Opportunities**
**For Premium Selling**:
- Check "💰 SELL STRATEGY" row
- If "SELL PREMIUM" → Look for credit spread setups
- High Theta + Low Gamma = Ideal for selling
**For Option Buying**:
- Check "🎯 BUY OPPORTUNITY" row
- If "🚀 BUY CALL" or "🔻 BUY PUT" appears
- Note the recommended STRIKE and PRICE
- Check RISK/REWARD assessment
- FAVORABLE = Full position size
- MODERATE = Half position size
- UNFAVORABLE = Wait
### **Step 4: Execute**
1. Locate highlighted strike in option chain (🚀 green or 🔻 magenta)
2. Verify price matches recommendation
3. Execute trade with proper position sizing
4. Set stop loss: 50% of premium paid for buyers
5. Target: 100-150% profit (2-2.5x)
### **Step 5: Monitor**
- **Max Pain line**: Price tends to gravitate here near expiry
- **PCR values**: Watch for shifts in sentiment
- **Greeks changes**: Delta/Gamma shifts indicate trend changes
- **VIX spikes**: Exit short premium positions if VIX > 20
---
## 🎓 INTERPRETATION GUIDE
### **Delta Signals**
- **> 0.6**: Bullish bias → Sell Puts / Buy Calls
- **0.4-0.6**: Neutral → Iron Condor / Range strategies
- **< 0.4**: Bearish bias → Sell Calls / Buy Puts
### **Gamma Signals**
- **> 0.002**: High risk → Avoid selling, spreads only
- **0.001-0.002**: Moderate risk → Use defined risk strategies
- **< 0.001**: Low risk → Safe to sell premium
### **Theta Signals**
- **|θ| > 20**: Fast decay → Aggressive premium selling
- **|θ| 10-20**: Moderate decay → Credit spreads
- **|θ| < 10**: Slow decay → Buy options (cheaper)
### **Vega Signals**
- **> 12**: High volatility → Sell volatility (straddles/strangles)
- **8-12**: Moderate → Neutral strategies
- **< 8**: Low volatility → Buy options (underpriced)
### **VIX Signals**
- **> 15**: High fear → Sell premium (expensive options)
- **12-15**: Moderate → Neutral
- **< 12**: Low fear → Buy protection / Long options
### **PCR Signals**
- **> 1.5**: Bearish (Put heavy) → Contrarian: Sell Puts
- **0.7-1.5**: Neutral (Balanced) → Range strategies
- **< 0.7**: Bullish (Call heavy) → Contrarian: Sell Calls
### **Max Pain Signals**
- **Below Max Pain**: Upside bias → Buy Calls / Sell Puts
- **At Max Pain**: Consolidation → Iron Condor
- **Above Max Pain**: Downside bias → Buy Puts / Sell Calls
---
## 📊 EXAMPLE SCENARIOS
### **Scenario 1: Premium Selling Setup**
```
Greeks Analysis:
- Delta: 0.52 (Neutral)
- Gamma: 0.0010 (Low Risk)
- Theta: -18 (Fast Decay)
- Vega: 13.5 (High Vol)
- VIX: 16.5 (High Fear)
- PCR: 1.4 (Neutral)
Signal: SELL PREMIUM ✅
Action: Sell Iron Condor
Setup: Sell 26050 CE + 25850 PE, Buy wings
```
### **Scenario 2: Bullish Buy Setup**
```
Greeks Analysis:
- Delta: 0.58 (Bullish)
- Gamma: 0.0018 (High - Big moves expected)
- Theta: -12 (Moderate)
- Vega: 8.5 (Moderate)
- VIX: 11.2 (Low - Cheap options)
- PCR: 1.6 (Bearish - Contrarian opportunity)
- Max Pain: 26000, Current: 25850
Signal: 🚀 BUY CALL
Strike: 26050 CE
Price: 12.50
Risk/Reward: FAVORABLE ✅
Action: Buy 26050 CE at ₹12.50
Target: ₹25-30 (2x)
Stop: ₹6 (50% loss)
```
### **Scenario 3: Max Pain Trade**
```
Max Pain: 26000
Current Price: 25850 (150 points below)
Days to Expiry: 2
PCR: 1.2 (Neutral)
Signal: BELOW MAX PAIN → Upside Likely
Action: Buy 25900 CE
Reason: Price likely to move toward Max Pain
Target: 26000 (Max Pain level)
```
---
## ⚠️ IMPORTANT NOTES
### **Data Limitations**
- Uses **simplified Greeks** calculation (assumes 3 DTE by default)
- Option prices may have slight delays (TradingView data refresh)
- Max Pain calculation is **approximation** based on current premiums
- Not all option symbols may be available on TradingView
### **Best Practices**
1. **Verify prices** on your broker platform before trading
2. **Use during market hours** (9:15 AM - 3:30 PM IST) for accurate data
3. **Most effective** 3-5 days before expiry
4. **Combine with price action** and trend analysis
5. **Risk management**: Never risk more than 2% per trade
### **Optimization Tips**
- **Increase strikes** to 9-11 for better Max Pain accuracy
- **Use FUTURES** tracking for liquid indices (NIFTY, BANKNIFTY)
- **Enable debug mode** initially to verify symbols are correct
- **Adjust IV Multiplier** if VIX seems over/underestimated
---
## 🔄 UPDATES & SUPPORT
### **Version 1.0 Features**
✅ Complete option chain display (17 columns)
✅ All 5 Greeks calculation
✅ Max Pain analysis
✅ Put-Call Ratio (PCR) - Overall + Strike-wise
✅ Trading signals (Buy + Sell)
✅ Specific strike recommendations
✅ Risk/Reward assessment
✅ Support for 6 Indian indices
✅ Configurable strikes (5-15)
✅ Dark/Light color schemes
✅ Auto ATM tracking
### **Planned Updates**
🔜 OI (Open Interest) data integration
🔜 Historical Max Pain tracking
🔜 PCR trends and momentum
🔜 Custom alerts for signals
🔜 Multi-expiry analysis
🔜 Volatility smile/skew display
---
## 📖 EDUCATIONAL RESOURCES
### **Understanding Greeks**
- **Delta**: Rate of change in option price vs underlying (0-1 for calls, -1-0 for puts)
- **Gamma**: Rate of change of Delta (highest at ATM)
- **Theta**: Time decay per day (always negative for buyers)
- **Vega**: Sensitivity to volatility changes
- **Rho**: Sensitivity to interest rate changes (less important for short-term)
### **Max Pain Theory**
Max Pain suggests that market makers manipulate prices toward the strike where option buyers lose the most money. While controversial, it has statistical validity in expiry week when:
1. Volume is high
2. Market makers hedge positions
3. Pin risk causes clustering at certain strikes
### **PCR as Sentiment Indicator**
- PCR > 1: More put buying than call buying (bearish)
- PCR < 1: More call buying than put buying (bullish)
- **Contrarian use**: Extreme readings often precede reversals
- **Confirmation use**: With trend for continuation trades
---
## 🎯 WHO IS THIS FOR?
### ✅ **Perfect For:**
- Options traders (all experience levels)
- Premium sellers (credit strategies)
- Directional option buyers
- Intraday option traders
- Swing traders in options
- Risk managers
- Market makers
- Professional traders
### ✅ **Use Cases:**
- Daily options trading on NIFTY/BANKNIFTY
- Weekly expiry strategies
- Monthly expiry positioning
- Volatility trading
- Hedging portfolios
- Greeks-based strategies
- Statistical arbitrage
---
## ⚖️ DISCLAIMER
**This indicator is for educational and informational purposes only.**
- NOT financial advice or recommendation to buy/sell
- Past performance does not guarantee future results
- Options trading involves substantial risk of loss
- Greeks calculations are theoretical models
- Max Pain is not guaranteed to be reached
- Always verify data with your broker
- Use proper risk management and position sizing
- Consult a financial advisor before trading
**The author is not responsible for any trading losses.**
---
## 📞 SUPPORT
For questions, issues, or feature requests:
- Comment below this indicator
- Check TradingView documentation for Pine Script basics
- Review NSE option chain for symbol verification
---
## 🏆 WHY CHOOSE THIS INDICATOR?
### **Comprehensive**
- Most complete options analysis tool on TradingView
- Combines Greeks + Max Pain + PCR + Signals in one
### **Professional**
- Used by professional traders
- Based on proven Black-Scholes model
- Real-time calculations
### **Actionable**
- Specific strike recommendations
- Entry prices displayed
- Clear Buy/Sell signals
- Risk/Reward assessment
### **Customizable**
- Multiple indices supported
- Configurable strikes
- Adjustable parameters
- Flexible positioning
### **Visual**
- Color-coded for easy reading
- Highlighted opportunities
- Chart levels for reference
- Professional table layouts
---
## 🚀 GET STARTED
1. **Add to chart**: Click "Add to favorites" ⭐
2. **Apply to NIFTY or BANKNIFTY** chart
3. **Set expiry date** in settings
4. **Configure strikes** (9 recommended)
5. **Start trading** with professional insights!
---
**Happy Trading! 📊💰**
*If you find this indicator useful, please like, comment, and share!*
*Your feedback helps improve future versions.*
---
**Tags**: #options #greeks #nifty #banknifty #maxpain #pcr #delta #gamma #theta #vega #optionchain #india #nse #trading #signals
SCOTTGO - RSI Divergence IndicatorRSI Divergence Indicator
This indicator combines the Relative Strength Index (RSI) with an automatic divergence detection system.
It is designed to help traders spot potential trend changes by:
Color-Coded RSI: The main RSI line dynamically changes color (e.g., green/red) above and below a user-defined threshold (default 50) to highlight strong or weak momentum instantly.
Divergence Signals: It automatically identifies and plots four types of RSI divergences (Regular Bullish, Hidden Bullish, Regular Bearish, and Hidden Bearish) between the price and the oscillator.
Custom Alerts: Includes alerts for all divergence types so you can be notified when a new signal is found.
This tool helps visualize momentum shifts and potential reversals in the market.
SCOTTGO - Buy Sell Volume📊 SCOTTGO - Buy Sell Volume Bars - Delta - Up Down Volume Bars
This indicator disaggregates the total volume traded on each bar into estimated Buying Volume and Selling Volume to visualize market pressure and dominance directly in a dedicated sub-pane.
Key Features:
Volume Disaggregation: Uses a standard formula to estimate how much of a bar's total volume was associated with upward (buying) pressure and how much was associated with downward (selling) pressure.
Visual Clarity: Plots the Buy Volume (teal, upward) and Sell Volume (red, downward) as separate columns against a transparent total volume background, allowing for quick assessment of pressure balance.
Real-Time Badge: A dynamic badge is fixed to the corner of the chart (default: Top Right) providing a numeric summary of the latest bar:
Buy %: Percentage of the bar's total volume estimated as Buying Volume.
Sell %: Percentage of the bar's total volume estimated as Selling Volume.
Delta %: The magnitude of the volume difference (Delta) as a percentage of total volume, indicating the strength of the dominant side.
Dominance Indicator: The background color of the badge changes dynamically to immediately signal whether Buying (customizable color, default: Teal) or Selling (customizable color, default: Red) pressure was dominant on the current bar.
Usage:
Traders can use this tool to identify periods of heavy accumulation (high Buy Volume) or distribution (high Sell Volume), providing insight into the conviction behind price movements.
Call-Put Cross Strike Match [Pro]📊 Call-Put Cross Strike Match - Professional Options Trading Indicator
Advanced NSE Options Analysis with AI-Powered Trading Signals & Dynamic Display
🎯 Overview
The Call-Put Cross Strike Match is an institutional-grade options analysis tool designed exclusively for NSE NIFTY and BANKNIFTY traders. Built on Pine Script v6, this indicator combines sophisticated cross-strike matching algorithms with intelligent trading signal generation to identify optimal options trading opportunities in real-time.
What makes it unique:
Analyzes 25 call-put combinations simultaneously
Generates actionable BUY/SELL signals using professional strategies
Fully customizable display with 9 table positions and 6 size options
Simplified setup with semi-automatic ATM detection
Clean, clutter-free interface with only essential information
Perfect for intraday scalpers, premium sellers, and positional options traders.
✨ Key Features
1. 🔍 Advanced Cross-Strike Matching Algorithm
The indicator calculates price differences for all 25 combinations (5 call strikes × 5 put strikes) and identifies the best matches based on put-call parity.
How it works:
Compares each call option price with every put option price
Calculates absolute difference: |Call - Put |
Ranks all 25 combinations from lowest to highest difference
Highlights top 3 or top 5 matches with visual checkmarks
Visual indicators:
✓✓ (Double check) = Best match (lowest price difference)
✓ (Single check) = Good matches (top 3 or top 5)
Empty cells = No match (significant price difference)
Why this matters:
When Call ≈ Put at same strike, it indicates fair pricing and synthetic position opportunities. The indicator automatically finds these opportunities across different strike combinations.
2. 🎯 Intelligent Trading Signals (Last Column)
The indicator generates professional trading recommendations based on Call-Put price difference analysis:
Signal Types:
BUY CE - Long call opportunity (bullish)
SELL CE - Short call opportunity (premium selling)
BUY PE - Long put opportunity (bearish/hedge)
SELL PE - Short put opportunity (premium selling)
BULL - Moderate bullish bias
BEAR - Moderate bearish bias
ATM - Neutral market (near parity)
NEUTRAL - No clear bias
Color-Coded for Quick Decisions:
🟩 Green = Long opportunities (BUY CE, BULL)
🟥 Red = Short call opportunities (SELL CE)
🟧 Orange = Long put opportunities (BUY PE)
🟫 Maroon = Short put opportunities (SELL PE)
⬛ Gray = Neutral zones (ATM, NEUTRAL)
3. 🤖 Three Professional Signal Modes
SMART Mode (Recommended) 🎯
Context-aware institutional strategy that considers strike position relative to spot price.
Signal Logic:
text
OTM Call Expensive (C-P > threshold, Strike > Spot):
→ SELL CE (Premium selling opportunity)
ITM Call Underpriced (C-P > threshold, Strike < Spot):
→ BUY CE (Synthetic long opportunity)
OTM Put Expensive (C-P < -threshold, Strike < Spot):
→ SELL PE (Premium selling opportunity)
ITM Put Underpriced (C-P < -threshold, Strike > Spot):
→ BUY PE (Protection or synthetic short)
Near Parity (|C-P| < threshold/4):
→ ATM (Neutral market, straddle/strangle zone)
Moderate Imbalance:
→ BULL or BEAR (Directional bias without extreme pricing)
Best for: Professional traders, option writers, synthetic position builders
MOMENTUM Mode 📈
Trend-following strategy that rides market momentum.
Signal Logic:
text
Calls Expensive (C-P > threshold):
→ BUY CE (Follow bullish momentum)
Puts Expensive (C-P < -threshold):
→ BUY PE (Follow bearish momentum)
Near Parity:
→ NEUTRAL (No clear trend)
Best for: Intraday scalpers, directional traders, swing traders
MEAN REVERSION Mode 🔄
Counter-trend strategy focused on premium selling.
Signal Logic:
text
Calls Overpriced (C-P > threshold):
→ SELL CE (Collect inflated premium)
Puts Overpriced (C-P < -threshold):
→ SELL PE (Collect inflated premium)
Near Parity:
→ ATM (Fair value, no edge)
Best for: Option writers, theta decay strategies, credit spread traders
4. 🎨 Fully Customizable Display
Dynamic Table Positioning (9 Options):
Top: left, center, right
Middle: left, center, right
Bottom: left, center, right
Choose position based on your chart layout and other indicators.
Dynamic Table Sizing (6 Options):
Auto - Adapts to content
Tiny - Minimal space (for cluttered charts)
Small - Default, best balance
Normal - Medium size (1080p monitors)
Large - Big text (4K monitors)
Huge - Maximum size (presentations)
Text scales intelligently:
Headers, data, and checkmarks adjust proportionally
Checkmarks remain visible even in tiny mode
Info row stays readable at all sizes
5. ⚙️ Simplified Input System
Auto Mode (Recommended):
Enter just 5 strikes once at market open - used for both calls and puts.
Example for NIFTY at 25,900:
text
Strike 1: 25850 (ATM - 100)
Strike 2: 25900 (ATM - 50)
Strike 3: 25950 (ATM)
Strike 4: 26000 (ATM + 50)
Strike 5: 26050 (ATM + 100)
Manual Mode (Advanced):
Enter separate call and put strikes for cross-strike arbitrage analysis.
Why this matters:
50% fewer inputs compared to traditional indicators
One-time setup at market open
Rarely needs updating (only if market moves 100+ points)
6. 🎛️ Semi-Automatic ATM Detection
The indicator automatically:
Detects current NIFTY/BANKNIFTY spot price
Calculates ATM strike (rounded to nearest 50 or 100)
Marks ATM strikes with *ATM in the table
Displays ATM and spot price in info box
No manual recalculation needed!
7. 📊 Clean Information Display
Main Table (Top/Middle/Bottom):
CE \ PE matrix showing all strike combinations
Checkmarks (✓✓ and ✓) highlighting best matches
SIGNAL column with color-coded trading recommendations
Best Match footer showing optimal combination
Info row displaying symbol, signal mode, and spot price
Info Box (Bottom Left):
Symbol (NIFTY/BANKNIFTY)
Signal Mode (Smart/Momentum/Mean Reversion)
Current Spot Price
Detected ATM Strike
Best Matched Call Strike
Best Matched Put Strike
Match Difference
C-P value for best match
📋 Quick Setup Guide (3 Steps)
Step 1: Add Indicator
Open NIFTY or BANKNIFTY chart on TradingView
Add "Call-Put Cross Strike Match " from indicators
Step 2: Configure Basic Settings
text
Symbol Detection: Auto (reads from chart)
Expiry Date: 251219 (format: YYMMDD for 19-Dec-2025)
Strike Mode: Auto
Strike Interval: 50 (for NIFTY) or 100 (for BANKNIFTY)
Step 3: Enter Strikes
At market open (9:15 AM), check current price and enter 5 strikes:
text
Example: NIFTY at 25,937
Strike 1: 25850 (ATM - 100)
Strike 2: 25900 (ATM - 50)
Strike 3: 25950 (ATM) ← Rounded to nearest 50
Strike 4: 26000 (ATM + 50)
Strike 5: 26050 (ATM + 100)
That's it! The indicator handles everything else automatically.
💡 Real-World Use Cases
1. 📉 Premium Selling (Mean Reversion Mode)
Scenario: Looking for overpriced options to write
How to use:
Set Signal Mode to "Mean Reversion"
Set Threshold: 30 (NIFTY) or 75 (BANKNIFTY)
Look for SELL CE or SELL PE signals with ✓ or ✓✓
Sell naked options or credit spreads at those strikes
Target 30-50% profit or 3-5 days theta decay
Perfect for: Credit spreads, iron condors, covered calls, naked puts
2. 📈 Directional Trading (Momentum Mode)
Scenario: Scalping intraday moves
How to use:
Set Signal Mode to "Momentum"
Set Threshold: 15 (aggressive) or 25 (conservative)
BUY CE signal + ✓✓ = Long call entry
Enter with tight stop (20% of premium)
Target 30-50% gain within 1-2 hours
Perfect for: Intraday scalping, swing trading, trend following
3. 🔄 Synthetic Positions (Smart Mode)
Scenario: Building synthetic long/short with defined risk
How to use:
Set Signal Mode to "Smart"
Look for BUY CE at ITM strike + SELL PE at OTM strike
Both should have ✓ indicator (good parity)
Creates synthetic long position
Lower capital than buying futures
Perfect for: Professional traders, arbitrage, capital efficiency
4. ⚖️ ATM Strategy Optimization (Smart Mode)
Scenario: Finding optimal strikes for straddle/strangle
How to use:
Identify strike marked *ATM
Check if signal shows ATM (balanced market)
If BULL/BEAR → Market has directional bias, adjust accordingly
✓✓ indicates best matched strike for neutral strategies
Perfect for: Volatility trading, earnings plays, event trading
5. 🛡️ Hedging Optimization (Smart Mode)
Scenario: Protecting long equity positions
How to use:
Look for BUY PE signals (protection signals)
Avoid strikes with SELL PE (expensive hedges)
✓✓ shows best value for hedge entry
Optimize hedge timing and strike selection
Perfect for: Portfolio hedging, risk management, protective puts
⚙️ Settings Guide
Symbol Settings
Symbol Detection: Auto (recommended) or Manual
Manual Symbol: NIFTY or BANKNIFTY
Expiry Date: Format YYMMDD (e.g., 251219 = 19-Dec-2025)
Update every Thursday after 3:30 PM for next week's expiry
Strike Settings
Strike Mode: Auto (recommended) or Manual
Strike Interval:
50 for NIFTY
100 for BANKNIFTY
Trading Signals
Signal Mode: Smart / Momentum / Mean Reversion
Smart: Professional institutional strategy (default)
Momentum: Trend-following for scalpers
Mean Reversion: Premium selling for writers
Signal Threshold: Sensitivity in points
NIFTY Recommendations:
Conservative: 30-40 points (fewer, higher quality signals)
Balanced: 20-25 points (default)
Aggressive: 10-15 points (more signals, more noise)
BANKNIFTY Recommendations:
Conservative: 75-100 points
Balanced: 50-60 points (default)
Aggressive: 30-40 points
Algorithm Settings
Matching Mode:
Top 3: Shows 3 best matches (cleaner display)
Top 5: Shows 5 best matches (more opportunities)
Display Settings
Show Matching Table: Enable/disable main table
Table Position: Choose from 9 positions
top_right (default) - Doesn't block price action
middle_right - Centered vertical view
bottom_right - If top is crowded
Table Size: Choose from 6 sizes
small (default) - Best for most users
normal - For 1080p/4K monitors
tiny - If you have many indicators
📊 Understanding The Table
Table Layout Example:
text
CE \ PE | 25950 | 25900 | 25850 | 26000 | 26050 | SIGNAL
---------|-------|-------|-------|-------|-------|--------
25850 | | | | | | SELL PE
25900*ATM| | ✓ | | | | ATM
25950 | ✓✓ | | | | | BULL
26000 | | | | ✓ | | BUY CE
26050 | | | | | | SELL CE
---------|-------|-------|-------|-------|-------|--------
Best Match: 25950 / 25950 (0.25)
Info: NIFTY | Smart | Spot:25881.9
Reading the Table:
Rows (Left): Call option strike prices
Columns (Top): Put option strike prices
Cells: Checkmarks where Call ≈ Put
✓✓: Best match (minimum price difference)
✓: Good matches (top 3 or 5)
Empty: Prices too different (no match)
*ATM: Automatically detected at-the-money strike
SIGNAL Column: Actionable trading recommendation for each call strike
Info Box Metrics:
Symbol: Currently analyzed index
Signal Mode: Active strategy
Spot: Current underlying price
ATM: Calculated at-the-money strike
Best Call: Matched call strike
Best Put: Matched put strike
Match Diff: Price difference (lower = better)
C-P (Best): Call minus Put for best match
📈 Best Practices
Strike Selection & Maintenance
At Market Open (9:15 AM):
Check current price (e.g., NIFTY at 25,937)
Round to nearest interval (25,950 for 50 interval)
Enter 5 strikes: -100, -50, 0, +50, +100 from ATM
Update Frequency:
Usually no update needed entire day
Update only if market moves 100+ points from initial ATM
Typically 0-2 updates per trading session
Signal Interpretation by Confidence Level
High Confidence (✓✓ + Signal):
Best match indicator present
Strongest signal quality
Highest probability setup
Medium Confidence (✓ + Signal):
Good match present
Reliable signal
Acceptable risk/reward
Low Confidence (Signal without ✓):
No match indicator
Strike far from parity
Requires additional confirmation
Risk Management Rules
Never trade signals blindly. Always:
✅ Confirm with price action and support/resistance
✅ Check overall market trend (NIFTY/BANKNIFTY direction)
✅ Consider time decay (theta) for your position
✅ Monitor IV changes (implied volatility)
✅ Use proper position sizing (1-2% risk per trade)
✅ Set stop losses (20-30% of premium for longs)
✅ Have profit targets (30-50% for scalps)
Timeframe Selection
Intraday Trading:
Use 5-minute or 15-minute chart
Momentum or Smart mode
Lower threshold (aggressive)
Quick entries and exits
Positional Trading:
Use hourly or daily chart
Smart or Mean Reversion mode
Higher threshold (conservative)
Swing trade positions
Combining with Other Tools
Recommended complements:
Support/resistance levels (horizontal lines)
Trend indicators (EMA 20/50, SuperTrend)
Volume analysis (confirm breakouts)
India VIX (volatility context)
Option chain data (open interest)
🎓 Strategy Examples
Strategy 1: Professional Premium Selling
text
Mode: Mean Reversion
Threshold: 30 (NIFTY) / 75 (BANKNIFTY)
Timeframe: Daily
Rules:
1. Wait for SELL CE or SELL PE signal
2. Verify strike has ✓ or ✓✓ (good parity)
3. Check if OTM (Strike away from spot)
4. Sell option or create credit spread
5. Target: 30-50% profit or 3-5 days theta
6. Stop: If signal changes to BUY
Position: Naked short or credit spreads
Risk: Define with spreads or capital allocation
Strategy 2: Intraday Momentum Scalping
text
Mode: Momentum
Threshold: 15 (aggressive)
Timeframe: 5-minute
Rules:
1. Wait for BUY CE signal + ✓✓
2. Enter long call immediately
3. Stop loss: 20% of premium paid
4. Target 1: 30% gain (partial exit)
5. Target 2: 50% gain (full exit)
6. Exit if signal changes or 2 hours pass
Position: Long calls or long puts only
Risk: 1-2% of capital per trade
Strategy 3: Synthetic Long Position
text
Mode: Smart
Threshold: 25 (NIFTY) / 60 (BANKNIFTY)
Timeframe: Hourly
Rules:
1. Identify BUY CE signal at ITM strike
2. Identify SELL PE signal at OTM strike
3. Both should have ✓ indicator
4. Buy ITM call + Sell OTM put = Synthetic Long
5. Lower capital than futures
6. Defined risk (width of strikes)
Position: Call debit + Put credit
Risk: Net debit paid (defined risk)
Strategy 4: ATM Straddle Entry
text
Mode: Smart
Threshold: 20 (default)
Timeframe: Daily
Rules:
1. Find strike marked *ATM
2. Check signal shows "ATM" (neutral)
3. Verify ✓✓ at that strike
4. Sell ATM call + Sell ATM put
5. Collect maximum premium
6. Exit at 30% profit or before expiry
Position: Short straddle or iron condor
Risk: Use defined risk (iron condor recommended)
🔔 Important Notes
Data Accuracy
Indicator uses TradingView's NSE options data feed
Always verify prices independently before trading
Ensure market is open (9:15 AM - 3:30 PM IST)
Check for "-" in cells indicating missing data
Expiry Management
Update expiry date every week on Thursday post-closing
Format: YYMMDD (6 digits)
Weekly expiry: Every Thursday
Monthly expiry: Last Thursday of month
Strike Format
NIFTY: Multiples of 50 (25850, 25900, 25950...)
BANKNIFTY: Multiples of 100 (51800, 51900, 52000...)
Wrong strikes = No data in table
Performance Optimization
Indicator updates every bar close
No lag or performance issues
Works on all timeframes (1m to 1D)
Maximum 5 calls + 5 puts = 10 security calls (within limits)
⚠️ Disclaimer
Trading options involves substantial risk of loss and is not suitable for all investors. This indicator is provided for educational and informational purposes only. It does not constitute financial advice, investment advice, or trading advice.
Important disclaimers:
Options can expire worthless, resulting in 100% loss
Past performance of signals is not indicative of future results
Accuracy depends on TradingView's NSE data feed
Signals are mathematical analysis, not predictions
You are solely responsible for your trading decisions
The developer is not liable for any trading losses incurred while using this indicator.
Before trading, ensure you understand:
Options Greeks (Delta, Gamma, Theta, Vega, Rho)
Implied volatility and its impact
Time decay and expiration risks
Assignment risk for short positions
Liquidity and slippage considerations
Margin requirements and capital needs
Always:
Use proper risk management (1-2% per trade)
Trade with capital you can afford to lose
Paper trade before live trading
Consult with a licensed financial advisor
Start with small position sizes
Never risk more than you can afford to lose
📊 Technical Specifications
Platform: TradingView Pine Script v6
Exchanges: NSE (National Stock Exchange of India)
Instruments: NIFTY, BANKNIFTY options
Timeframes: All (1m, 5m, 15m, 1h, 1D)
Strikes Analyzed: 5 calls × 5 puts = 25 combinations
Security Calls: 10 (5 calls + 5 puts)
Table Positions: 9 (all corners and centers)
Table Sizes: 6 (auto to huge)
Signal Modes: 3 (Smart, Momentum, Mean Reversion)
Performance: Optimized, minimal lag
🎯 Who Should Use This?
✅ Perfect For:
Options Traders: Intraday and positional
Premium Sellers: Option writers and theta strategists
Arbitrage Traders: Synthetic position builders
Straddle/Strangle Traders: ATM strategy traders
Professional Traders: Institutional-grade analysis
Volatility Traders: IV imbalance exploiters
Scalpers: Quick intraday moves
❌ Not Suitable For:
Stock options traders (NSE index-specific)
Equity-only traders (requires options knowledge)
International markets (NSE format only)
Complete beginners (requires basic options understanding)
💬 FAQ
Q: Why manual strike entry? Why not fully automatic?
A: Pine Script's type system limits fully automatic strike generation from live data. However, setup takes just 30 seconds once at market open, and the indicator handles all analysis automatically throughout the day.
Q: How often should I update strikes?
A: Rarely! Only when market moves 100+ points from initial ATM. Usually 0-2 times per day, even in volatile markets.
Q: Which Signal Mode is best?
A: Smart mode (default) for professional trading. Use Momentum for intraday scalping, Mean Reversion for premium selling.
Q: Can I use this for stock options?
A: No. The indicator is designed specifically for NSE index options (NIFTY and BANKNIFTY) with NSE format.
Q: Does it work on mobile?
A: Yes, but table display is optimized for desktop/tablet screens. Use "tiny" or "small" size on mobile.
Q: What if I see "-" in cells?
A: Check expiry format (YYMMDD), verify strikes match NSE strikes, and ensure market is open.
Q: What's the difference between ✓✓ and ✓?
A: ✓✓ = Best match (lowest price difference), highest quality. ✓ = Good matches (top 3-5), reliable quality.
Q: Can I backtest this indicator?
A: The indicator shows live analysis. For backtesting options strategies, you'll need historical options data and separate backtesting tools.
Q: What does the info box show?
A: Bottom-left box shows key metrics: symbol, signal mode, spot price, ATM strike, best matched strikes, match difference, and C-P value.
Q: Why no chart plotting?
A: v1.0 focuses on clean table display with maximum information density. Chart plotting may be added in future versions based on user feedback.
🙏 Credits
Developed by a professional options trader for the Indian trading community. Inspired by institutional trading desks and market makers who use call-put parity for daily trading decisions.
Found This Helpful?
⭐ Rate 5 stars if it improved your trading
💬 Comment with your strategy results
🔔 Follow for updates and new indicators
📢 Share with fellow options traders
Feature Requests
Continuous improvement based on trader feedback. Suggest features in comments!
Planned Features (v2.0):
Multi-expiry comparison
Greeks display (Delta, Theta, Vega)
Historical signal performance stats
Custom signal formulas
Export to CSV functionality
🏷️ Tags for Search
#Options #OptionsTrading #NIFTY #BANKNIFTY #NSE #India #OptionChain #CallPut #PutCallParity #Straddle #Strangle #ATM #TradingSignals #OptionsStrategy #PremiumSelling #OptionsScanner #Derivatives #IntradayTrading #VolatilityTrading #Arbitrage #SyntheticPosition #OptionsGreeks #OptionsSelling #OptionsWriting #IndianStockMarket #NSEOptions #OptionsAnalysis #TechnicalAnalysis #AlgoTrading #QuantTrading #ProfessionalTrading #TradingIndicator #PineScript #TradingView
📝 Version History
v1.0 (Current - Dec 2025)
Pine Script v6 implementation
Cross-strike matching (5×5 matrix, 25 combinations)
Three signal modes (Smart, Momentum, Mean Reversion)
Trading signal generation with color coding
Dynamic table positioning (9 positions)
Dynamic table sizing (6 sizes)
Intelligent text scaling
Semi-automatic ATM detection
Auto symbol detection
Simplified input system (50% fewer inputs in Auto mode)
Clean information display
Info box with key metrics
NSE NIFTY & BANKNIFTY support
Start trading smarter with institutional-grade options analysis! 📈💰🚀
Disclaimer: Options trading is subject to market risk. Please read all scheme-related documents carefully before investing.
UT Bilgi Paneli (Ugur TUFAN) English Description
UT Info Panel (Advanced Performance & Correlation Dashboard)
UT Info Panel is a comprehensive dashboard designed to help traders analyze the performance of an asset over multiple timeframes and compare it instantly with other assets or benchmark indices.
This tool overlays on the main chart, providing critical data in a clean, organized table located at the top-right corner without cluttering your workspace.
Key Features:
Detailed Performance Analysis:
Displays percentage returns for Daily, Weekly, Monthly, 3-Month, 6-Month, and 1-Year periods.
High & Low Distance Metrics:
Calculates the percentage distance to the 52-week (1 Year) High and Low levels.
Shows the distance to the All-Time High (ATH), helping to visualize potential recovery or growth margins.
Smart Dual Mode:
Mode 1 (Index Harmony): If no comparison symbols are entered, it compares the current asset with a benchmark index (e.g., XU100). It visually indicates directional correlation (Harmony) with checkmarks (✔) or crosses (✖).
Mode 2 (Multi-Asset Comparison): By adding up to 5 different symbols in the settings, the table automatically expands to show a side-by-side performance comparison of all selected assets.
Localized Visualization:
Data is presented with clear color coding (Green for positive, Red for negative) for easy reading.
How to Use:
When added, it defaults to the harmony mode with the benchmark index.
Open settings to input up to 5 different symbols you wish to compare.
The table automatically adjusts its size and positions itself at the top right.
Day of WeekDay of Week is an indicator that runs in a separate panel and colors the panel background according to the day of the week.
Main Features
Colors the background of the lower panel based on the day of the week
Includes all days, from Monday to Sunday
Customizable colors
Time Offset Correction
TradingView calculates the day of the week using the exchange’s timezone, which can cause visual inconsistencies on certain symbols.
To address this, the indicator includes a configurable time offset that allows the user to synchronize the calculated day with the day displayed on the chart.
By simply adjusting the Time Offset (hours) parameter, the background will align correctly with the visible chart calendar.
Momentum Table View (Bar-Based)// NOTE:
// This script uses bar-based lookbacks instead of calendar months.
// Approximate conversions for daily charts:
// - 21 bars ≈ 1 month
// - 63 bars ≈ 3 months
// - 252 bars ≈ 1 year
// For other timeframes, adjust accordingly for different time periods and needs.
// For hourly I have it set at 24*5, 24*5*4 and then finally 24*5*4 to give the same,
// daily, weekly and monthly aggregate returns but on the hourly scale.
// Of course you can split it anyway you like as well depends on the expected needs you have.
Running idea so there will likely be revisions to the z scoring to possibly a different method and the atan angle represented in the code will also likely be changed at some point as to maybe a regression method. These changes will take time as this is only a secondary platform for me not the main source of data. In saying that the table has the data representing the log returns of an asset of n bars which I decided on over the original more accurate daily, weekly and monthly close points which the user can always specify using this method if wanting to be more accurate with the standard method of momentum returns factor.
EMA Slope Angle V2 Auto Threshold# EMA Slope Angle Indicator
## Overview
The EMA Slope Angle Indicator visualizes the Exponential Moving Average (EMA) slope as an angle in degrees, providing traders with a clear, quantitative measure of trend strength and direction. The indicator features **automatic threshold calculation based on Gaussian distribution**, making it adaptive to any market and timeframe.
## Key Features
### 🎯 **Automatic Threshold Calculation (NEW!)**
- **Gaussian Distribution-Based**: Automatically calculates optimal thresholds from the 50% interquartile range (IQR) of historical angle data
- **Asset-Adaptive**: Thresholds adjust to each instrument's unique volatility and price characteristics
- **No Manual Tuning Required**: Simply enable "Use Auto Thresholds" and let the indicator optimize itself
### 📊 **Dynamic EMA Coloring**
- **Color Intensity**: EMA line color intensity reflects slope strength
- **Visual Feedback**:
- Green shades for uptrends (darker = stronger)
- Red shades for downtrends (darker = stronger)
- Gray for flat/neutral conditions
### 📈 **Regime Detection**
- **Three Regimes**: RISING, FALLING, and FLAT
- **Smart Classification**: Based on statistical distribution of angles
- **Non-Repainting**: All calculations use confirmed bars only
### 🔔 **Trend-Shift Signals**
- **Visual Arrows**: Automatic signals when transitioning from FLAT to RISING/FALLING
- **Configurable**: Enable/disable signals as needed
- **Reliable**: Only triggers on significant regime changes
### 📋 **KPI Dashboard**
- **Real-Time Metrics**: Current angle, regime, and last signal
- **Auto-Threshold Display**: Shows calculated thresholds when auto-mode is active
- **Statistics**: Optional angle distribution statistics
- **Clean Layout**: Top-right corner, non-intrusive
### 📊 **Angle Statistics (Optional)**
- **Distribution Analysis**: Histogram of angle ranges
- **Dynamic Buckets**: Automatically adjusts to data distribution when auto-mode is enabled
- **Percentage Breakdown**: See how often each angle range occurs
## Settings
### Main Settings
- **EMA Length**: Period for the Exponential Moving Average (default: 50)
- **Slope Lookback Bars**: Number of bars to calculate slope over (default: 5)
### Angle Settings
- **Use Auto Thresholds**: Enable automatic threshold calculation (recommended!)
- **Analysis Period**: Number of bars to analyze for distribution (default: 500)
- **Manual Thresholds**: Flat, Rising, and Falling triggers (used when auto-mode is off)
- **Max Angle for Color Saturation**: Maximum angle for color intensity scaling
### Display Options
- **Colors**: Customize uptrend, downtrend, and flat colors
- **Show Signals**: Enable/disable trend-shift arrows
- **Show Statistics**: Display angle distribution table
- **Show Dashboard**: Toggle KPI dashboard visibility
## How It Works
### Angle Calculation
The indicator calculates the angle between the current EMA value and the EMA value N bars ago:
```
Angle = arctan((EMA_now - EMA_then) / lookback) × 180° / π
```
### Auto-Threshold Calculation
When enabled, the indicator:
1. Analyzes historical angle data over the specified period
2. Calculates mean and standard deviation
3. Determines thresholds based on the 50% interquartile range (IQR):
- **Flat Threshold**: ±0.674σ (middle 50% of data)
- **Rising Trigger**: 75th percentile (mean + 0.674σ)
- **Falling Trigger**: 25th percentile (mean - 0.674σ)
### Regime Classification
- **FLAT**: Angle within ±Flat Threshold
- **RISING**: Angle ≥ Rising Trigger
- **FALLING**: Angle ≤ Falling Trigger
## Use Cases
### Trend Following
- Identify strong trends (high angle values)
- Spot trend reversals (regime changes)
- Filter trades based on trend strength
### Range Trading
- Detect flat/consolidation periods
- Avoid trading during choppy markets
- Enter when regime shifts from FLAT to RISING/FALLING
### Multi-Timeframe Analysis
- Apply to different timeframes for confirmation
- Use higher timeframe for trend direction
- Use lower timeframe for entry timing
## Tips for Best Results
1. **Enable Auto-Thresholds**: Let the indicator adapt to your instrument
2. **Adjust Analysis Period**: Use more bars for stable markets, fewer for volatile ones
3. **Combine with Price Action**: Use regime changes as confirmation, not standalone signals
4. **Multi-Timeframe**: Check higher timeframes for trend context
5. **Backtest First**: Test settings on historical data before live trading
## Technical Details
- **Non-Repainting**: All calculations use `barstate.isconfirmed`
- **Pine Script v6**: Latest version for optimal performance
- **Efficient**: Minimal computational overhead
- **Customizable**: Extensive settings for fine-tuning
## Version History
**v2.0** (Current)
- Added automatic threshold calculation based on Gaussian distribution
- Dynamic bucket adjustment for statistics
- Enhanced dashboard with auto-threshold display
- Improved regime detection using IQR method
**v1.0**
- Initial release with manual thresholds
- Basic EMA coloring
- Trend-shift signals
- KPI dashboard
## Support
For questions, suggestions, or bug reports, please leave a comment or contact the author.
---
**Disclaimer**: This indicator is for educational purposes only. Past performance does not guarantee future results. Always use proper risk management and never risk more than you can afford to lose.
**Keywords**: EMA, slope, angle, trend, automatic thresholds, Gaussian distribution, regime detection, non-repainting, adaptive
EM Levelsstdv levels for you using VIX and VXN for ES and NQ so hopefully it helps you try it out and have fun
Session HeatmapIntraday Seasonality
Overview
Analyzes historical patterns by time of day. Identifies when volatility, volume, and open interest changes tend to be highest or lowest.
Features
Multiple Metrics: TR (volatility), Volume, and Open Interest changes
Flexible Grouping: View patterns by weekday or month to spot day-of-week or seasonal effects
Heatmap Visualization: Blue (low) to Red (high) color scale for quick pattern recognition
Percentile Mode: Reduces outlier impact by using 5th-95th percentile range
Timezone Support: Display in UTC alongside your local time
Metrics Explained
TR: Volatility - when markets move most
Volume: Liquidity - when participation is highest
OI Increase: When new positions are opened
OI Decrease: When positions are closed
OI Net: Net open interest change
Usage
Set your timezone and preferred slot size (30min/1H)
Choose a date range (relative or custom)
Select a metric to analyze
Use "Group By" to see weekday or monthly patterns
Switch to Percentile color scale if outliers dominate
Notes
Chart timeframe should be equal to or smaller than Slot Size
OI metrics require Binance Perpetual symbols
DST is not automatically adjusted; consider seasonal shifts for US/EU sessions
Probability-Based Adaptive Detection🙏🏻 PBAD (Probability-Based Adaptive Detection) : adaptive control tool for outliers || novelty detection, made for worst case data & processes, for the highest time complexity O(n^2) compared with the alternatives (would be explained in a sec). Thresholds are completely data driven and axiomatic, no need in provided hyperparameters, are not learned or optimized. The method accepts multiple weights, e.g. both temporal and volatility weights.
Method briefly explained (I can go deeper if any1 asks explicitly):
Performs weighted KDE on initial input data, finds KDE global maximum (mode), creates new “residuals” dataset by centering initial data around this value;
Performs weighted KDE on residuals, uses sigmoid based probability mass targets with increasing probability coverage to construct a set of non-disjoint High Density Intervals (also called HDR, HPD in Bayesian terms);
Uses these intervals to calculate analogs of centralized & standardized moments;
Uses these ^^ moments to construct a set of control thresholds. The scheme used in PBAD is not only based on a central threshold, or on neighboring ones, it utilizes all previous thresholds, gaining more information.
...
The most important part is to understand whether you really need PBAD. Because even tho it seems to be the best one given highest algocomplexity, irl it would work worse in cases when it’s not required by your data.
Here’s the menu (aka taxonomy omg) of methods you can use that would let you make the right choice:
Moment-Based Adaptive Detection (MBAD) :
Norm: L2
Time complexity: original O(n), successfully reduced to O(1) in online version
Use case: default, general purpose
Based on: method of moments (powers of residuals from mean)
Thresholds architecture: centralized
Quantile-Based Adaptive Detection (QBAD):
Norm: L1
Time complexity: O(nlogn)
Use case: either bad data Or process instability
Based on: quantile moments (dyadic percentiles of residuals from median)
Thresholds architecture: chained/recursive/sequential
Probability-Based Adaptive Detection (PBAD):
Norm: L0
Time complexity: O(n^2)
Use case: both bad data And process instability
Based on: probability moments (target probability masses of residuals from KDE mode)
Thresholds architecture: decentralized (for lack of a better name xd, the idea is that these thresholds gain information from the all other threshold and are Not exclusively based on the central or neighboring thresholds)
...
Examples of true use cases:
^^ an appropriate financial instrument to use PBAD
^^ and another one
...
Additional details about how to use it:
Keep the student5 kernel, it’s the best you can do. I added others mostly for comparisons and if you want to use the tool Not for its primary purpose (on a fine data)
“Calculate for N bars” and “Starting at bar N” options allow to reduce calculation period only on the N number of last bars or next bars from a chosen one. It's vital, because calculations here are heavy
Keep plotting offset at 1 (allows to visually compare current bar with the previous threshold values). This is the way it should be done on price data.
HLC3 is the optimal source input, unless you want to use your own better one point estimate of each datapoint (in the best case done by using PBAD itself on OHLC+ values).
In essence it should be used just like MBAD or QBAD, fade/push extensions and limit, fade/push/skip deviations & basis, or other strategies of your. Again, the only reason for 3 methods to exist is to be chosen for according data characteristics.
Btw:
This is the initial version, I don’t consider it perfected tbh, even tho it works as expected, however this method is very situational anyways.
In this script KDE function is modified to ensure the outcoming probabilities Do sum up to 1. I didn’t do this normalization in Weighted KDE Mode script , but there it’s not required since we just need a KDE global max.
see ya
∞
Student Wyckoff Relative StrengthSTUDENT WYCKOFF Relative Strength compares one instrument against another and plots their relative performance as a single line.
Instead of asking “is this chart going up or down?”, the script answers a more practical question: “is THIS asset doing better or worse than my benchmark?”
━━━━━━━━━━
1. Concept
━━━━━━━━━━
The indicator builds a classic relative strength (RS) line:
• Main symbol = the chart you attach the script to.
• Benchmark symbol = any symbol you choose in the settings (index, ETF, sector, another coin, etc.).
RS is calculated as:
RS = Price(main symbol) / Price(benchmark)
If RS is rising, your symbol outperforms the benchmark.
If RS is falling, your symbol underperforms the benchmark.
You can optionally normalize RS from the first bar (start at 1 or 100) to clearly see how many times the asset has outperformed or lagged behind over the visible history.
This is not a “buy/sell” indicator. It is a **context tool** for rotation, selection and Wyckoff-style comparative analysis.
━━━━━━━━━━
2. How the RS line is built
━━━━━━━━━━
Inputs:
• Source of main symbol – default is close, but you can choose any OHLC/HL2/typical price etc.
• Benchmark symbol – ticker used as reference (index, sector, futures, Bitcoin, stablecoin pair, etc.).
• Benchmark timeframe – by default the current chart timeframe is used, or you can force a different TF.
The script uses `request.security()` with `lookahead_off` and `gaps_off` to pull benchmark prices **without look-ahead**.
A small epsilon is used internally to avoid division by zero when the benchmark price is very close to 0.
Normalization options:
• Normalize RS from first bar – if enabled, the very first valid RS value becomes “1” (or 100), and all further values are expressed relative to this starting point.
• Multiply RS by 100 – purely cosmetic; makes it easier to read RS as a “percentage-like” scale.
━━━━━━━━━━
3. Smoothing and color logic
━━━━━━━━━━
To help read the trend of relative strength, the script calculates a simple moving average of the RS line:
• RS MA length – period of smoothing over the RS values.
• Show RS moving average – toggle to display or hide this line.
Color logic:
• When RS is above its own MA → the line is drawn with the “stronger” color.
• When RS is below its MA → the line uses the “weaker” color.
• When RS is close to its MA → neutral color.
Optional background shading:
• When RS > RS MA → background can be tinted softly green (phase of relative strength).
• When RS < RS MA → background can be tinted softly red (phase of relative weakness).
This makes it easy to read the **trend of strength** at a glance, without measuring every small swing.
━━━━━━━━━━
4. How to interpret it
━━━━━━━━━━
Basic reading rules:
• Rising RS line
– The main symbol is outperforming the benchmark.
– In Wyckoff terms, this can indicate a leader within its group, or a sign of accumulation relative to the market.
• Falling RS line
– The main symbol is underperforming the benchmark.
– Can point to laggards, distribution, or simply an asset that is “dead money” compared to alternatives.
• Flat or choppy RS line
– No clear edge versus the benchmark; performance is similar or rotating back and forth.
With normalization on:
• RS > 1 (or > 100) – the asset has grown more than the benchmark since the starting point.
• RS < 1 (or < 100) – it has grown less (or fallen more) than the benchmark over the same period.
The RS moving average and colored background highlight whether this outperformance/underperformance is a **temporary fluctuation** or a more sustained phase.
━━━━━━━━━━
5. Practical uses
━━━━━━━━━━
This indicator is useful for:
• **Selecting stronger assets inside a group**
– Compare individual stocks vs an index, sector, or industry ETF.
– Compare altcoins vs BTC, ETH, or a crypto index.
– Prefer charts where RS is in a sustained uptrend rather than just price going “up on its own”.
• **Monitoring sector and rotation flows**
– Attach the script to sector ETFs or major coins and switch the benchmark to a broad market index.
– See where capital is rotating: which areas are gaining or losing strength over time.
• **Supporting Wyckoff-style analysis**
– Use RS together with volume, structure, phases and trading ranges.
– A breakout or SOS with rising RS vs the market tells a different story than the same pattern with falling RS.
• **Portfolio review and risk decisions**
– When an asset shows a long period of relative weakness, it may be a candidate to reduce or replace.
– When RS turns up from a long weak phase, it can signal the start of potential leadership (not an entry by itself, but a reason to study the chart deeper).
━━━━━━━━━━
6. Notes and disclaimer
━━━━━━━━━━
• Works on any symbol and timeframe available on TradingView.
• The last bar can change in real time as new prices arrive; this is normal behaviour for all indicators that depend on current close.
• There are no built-in alerts or trading signals – this tool is meant to support your own analysis and trading plan.
This script is published for educational and analytical purposes only.
It does not constitute financial or investment advice and does not guarantee any performance. Always test your ideas, understand the logic of your tools and use proper risk management.
Session ATR Progression Tracker📊 Session ATR Progression Tracker - SIYL Regression Trading Tool
Track how much of your instrument's 7-day Average True Range (ATR) has been covered during the current trading session. This indicator is specifically designed for regression traders who follow the "Stay In Your Lane" (SIYL) methodology, helping you identify when the probability of mean reversion significantly increases. If you are interested in more on that check out Rod Casselli and tradersdevgroup.com.
🎯 Key Features:
• Real-time ATR Coverage Percentage - See at a glance what percentage of the 7-day ATR has been covered in the current session
• SIYL-Optimized Thresholds - See at a glance when the instrument has achieved 80% and 100% ATR coverage, the proven thresholds where mean reversion probability increases (customizable)
• Flexible Session Modes:
- Daily: Resets at calendar day change
- Session: Uses exchange-defined trading sessions
- Custom Session: Set your exact session start/end times (perfect for futures traders and international markets)
• Visual Alerts - Color-coded display (gray → orange → red) and optional background highlighting
• Repositionable Display - Choose from 9 screen positions to avoid chart clutter
• Session Markers - Green triangles mark the start of each new session
• Detailed Stats - View current range, ATR value, session high/low, and session status
💡 Why Use This Indicator?
This tool is built around a proven concept: regression trading becomes significantly more effective once a session has achieved at least 80% of its 7-day ATR. At this threshold, the probability of price reverting to mean increases substantially, creating higher-probability trade setups for SIYL practitioners.
Benefits for regression traders:
- Identify optimal entry points when mean reversion probability is highest (≥80% ATR coverage)
- Avoid premature regression entries before adequate range has been established
- Recognize when daily moves have "earned their range" and are ripe for reversal
- Time fade-the-move and counter-trend strategies with statistical backing
- Improve win rates by trading only after proven probability thresholds are met
⚙️ Setup Instructions:
1. Add the indicator to your chart
2. Select your preferred "Reset Mode" (recommend "Custom Session" for futures/international markets)
3. If using Custom Session, enter your session times in 24-hour format (e.g., 0930-1600 for US stocks, 1700-1600 for CME futures)
4. Adjust alert thresholds if desired (default: 80% and 100% - proven SIYL thresholds)
5. Position the display where it's most visible on your chart
📈 Works Across All Markets:
Stocks • Futures • Forex • Indices • Crypto • Commodities
Perfect for regression traders, mean reversion specialists, and SIYL practitioners who want to trade with probability on their side by entering only after the session has "earned its range."
---
Tip: For futures contracts with overnight sessions that span calendar days (like MES, MNQ, MYM), use "Custom Session" mode with your exchange's official session times for accurate tracking.
Expectativa de Juros (Fed)An indicator that measures future expectations for US interest rates, measured by the difference between the Fed's interest rate and pricing on the CME.






















