Schrodinger Zone Probability [JOAT]SCHRÖDINGER ZONE PROBABILITY
The most quantitatively ambitious indicator in the JOAT suite. Detects Fair Value Gaps and Order Blocks the way a serious SMC engine should — and then, before they are touched, treats each one as a superposition zone with two simultaneous probabilities: P_S (the probability it will act as Support when revisited) and P_R (the probability it will act as Resistance). The two probabilities sum to one. The zone exists in a superposition of both states until price actually touches it; at that moment the wavefunction collapses to a single classical state — S or R — driven by the bars-after-touch confirmation logic. Then the script tags the zone with the committed direction and archives the collapse.
Detection — FVGs and OBs done properly
Two independent zone types feed the superposition engine:
Fair Value Gaps — the standard 3-candle imbalance definition, ATR-filtered (minimum gap = configurable × ATR, default 0.30×) so only meaningful gaps qualify. Bull and bear FVGs both detected.
Order Blocks — three methods exposed:
Last Opposite — latest opposite-color candle before displacement.
Extreme Opposite — most extreme (lowest low / highest high) candle in the walk-back window.
Strict Volume — Last Opposite filtered by volume above MA.
Displacement (the move that creates the zone) requires a body of displacement ATR multiple × ATR (default 1.20×). A configurable walk-back window controls how far back to search for the OB origin. Configurable mitigation rule (Wick = any pierce, Close = bar must close beyond).
The headline math — three-factor superposition probability
The collapse probabilities P_S / P_R are computed as a weighted blend of three orthogonal factors:
Distance factor — distance from current price to the zone, decayed exponentially with a configurable half-life in ATR units (default 2.0 ATR). Closer zones have higher commit probability.
Direction factor — which side of the zone current price is on. Above the zone leans the read toward Support collapse; below leans toward Resistance.
Flow factor — EMA-slope alignment over a configurable flow window (default 20 bars). Bullish flow biases toward Support; bearish flow biases toward Resistance.
Each factor's weight is independently tunable. Defaults (0.45 distance / 0.30 direction / 0.25 flow) are the script's institutional calibration. The output is two probabilities that sum to 1.
A zone with P_S ≈ P_R ≈ 0.5 is in pure superposition — the model is genuinely undecided. A zone with P_S = 0.85 / P_R = 0.15 is in a state nearly committed to Support; the wavefunction has already partly collapsed.
Wavefunction collapse — the engine's headline event
When price enters the zone within a configurable touch tolerance (default 0.05 × ATR slack) and holds inside for the configurable holdBars window (default 3 bars), the zone collapses to a single classical state:
Collapse to S — price bounced; the zone acted as Support. Marker prints "(+)→S" at the centroid.
Collapse to R — price was rejected from the other side; the zone acted as Resistance. Marker prints "(+)→R".
A configurable connector line is drawn at the committed level. Collapsed zones are optionally archived (default ON) so the chart shows the full history of how superpositions resolved.
Visual system — superposition rendering
Vertical gradient fill — each zone is rendered as a stack of N sub-boxes (configurable, default 8 slices) with progressive transparency, creating a vertical gradient that visually communicates "high probability of support at the bottom of the zone, high probability of resistance at the top". This is the script's signature visual.
Glow border — configurable glow intensity; becomes thicker when uncertainty is high (P_S ≈ P_R).
Animated superposition pulse — for zones in pure superposition (P ≈ 0.5), transparency oscillates with bar_index to indicate undecided state. Configurable period and amplitude.
Probability labels — P_S / P_R values printed on each active zone.
Zone type tags — FVG_BU, FVG_BE, OB_BU, OB_BE so origin is unambiguous.
Collapse markers — fancy glyphs (+)→S / (+)→R or plain S / R, configurable.
Show-only-superposition mode — hide collapsed and archived zones for a minimalist view.
Right extension — zones project a configurable number of bars to the right.
A locked institutional palette (cyan-teal bull / magenta bear) gives the chart a distinctive quantum-finance identity.
Dashboard
Monospaced table positionable to any of nine corners. Surfaces:
Active superposition zone count and archived count.
Nearest zone with its P_S / P_R values and distance.
Last collapse direction with bars-ago.
Current flow direction.
Detection thresholds and weights in use.
Mitigation rule.
Alerts
Multiple alert conditions:
New Superposition Zone Created (FVG or OB)
Collapse to Support
Collapse to Resistance
Approaching Zone (within collapse-touch tolerance)
High-Uncertainty Zone formed (P_S ≈ P_R ≈ 0.5)
How to read it
Three reads, in order of conviction:
Collapse alert with extreme one-sided probability — e.g. a zone with P_S = 0.85 collapses to S. The model was confidently pointing at one outcome, and the market confirmed it. The highest-conviction confluence read the script produces.
Approaching a zone with sharp probability bias — when P_S or P_R is dominant before touch, the model is committed to one direction. Position toward the dominant side; if the collapse confirms, you are in early.
High-uncertainty zone (P ≈ 0.5) — stand-aside signal. The model is genuinely undecided; trade only with strong external confluence (HTF structure, news flow) or skip the zone entirely.
Suggested settings
Defaults (FVG ATR 0.30×, displacement 1.20×, OB Last-Opposite, 15-bar walk-back, weights 0.45 / 0.30 / 0.25, half-life 2.0 ATR, 3-bar hold) are tuned for 15m–4H on liquid markets. For lower timeframes drop displacement to 1.0× and hold to 2. For HTF raise FVG ATR to 0.50× to keep only large gaps. The weights are calibrated together — change one and the others rebalance the probabilities; experimenting with the weights is a legitimate way to specialise the script to your instrument.
Originality
The implementation — the dual-source zone detector (FVG + OB) with three OB methods, the three-factor probability blend (distance / direction / flow) with independent weights, the exponential ATR-halflife distance decay, the touch-with-hold collapse-confirmation state machine, the vertical-gradient zone render using N stacked sub-boxes, the uncertainty-modulated glow border, the animated superposition pulse for high-uncertainty zones, the archive-on-collapse logic, and the dashboard's probability-aware layout — is JOAT-original. No third-party code reused. The Schrödinger framing (superposition → collapse) is the original conceptual contribution; the math is purpose-built.
Limitations
The "probability" output is a heuristic blend of three factors that historically correlate with which side a zone acts as — it is a ranked confidence, not a true Bayesian posterior. The factor weights are exposed precisely because no single weighting is universally correct. The collapse confirmation requires the holdBars window to elapse, so collapse markers lag the actual touch by that window (intentional — single-bar pierces should not commit a zone). The animated pulse for high-uncertainty zones is purely visual.
-made with passion by jackofalltrades
Indicator

Indicator

Major / Minor BIAS Dashboard 1. Purpose of the Script
The script is designed to provide a clear directional view of the Nasdaq/NQ market.
It is not intended to be used as an entry signal. Instead, it works as a higher-level directional filter.
That means the script does not tell you exactly when to enter a trade. It only shows whether the market currently favors long trades, short trades, or caution.
The basic idea is:
If the overall BIAS is Long, only look for long setups.
If the overall BIAS is Short, only look for short setups.
If the script shows Warning or Neutral, no standard trade should be taken.
This helps prevent trading against the broader market direction.
2. Structure of the Dashboard
The script displays a table directly on the chart.
The dashboard is divided into three main parts:
Major
The Major BIAS represents the higher-timeframe market direction.
Minor
The Minor BIAS represents the shorter-term or intraday market direction.
Overall
The Overall BIAS combines Major and Minor and shows whether there is a clear trading direction.
The table is intentionally simple. The first column shows whether the row refers to Major, Minor, or Overall. The middle column displays the current state: Long, Short, Neutral, or Warning. The right column displays a symbol.
A green circle represents Long.
A red circle represents Short.
A grey circle represents Neutral.
A warning symbol represents a conflicting market situation.
3. The Major BIAS
The Major BIAS is used to determine the higher-timeframe market direction.
It is built from several higher-timeframe components:
Daily BIAS
4H BIAS
Previous Day Filter
This means the script does not only check whether the market is moving up or down in the short term. It also checks whether the broader market structure supports that direction.
4. Daily BIAS
For the Daily BIAS, the script uses two exponential moving averages:
Fast EMA
Slow EMA
The default settings are:
Fast EMA: 20
Slow EMA: 50
The logic is simple:
If price is above both Daily EMAs, the Daily BIAS is considered Long.
If price is below both Daily EMAs, the Daily BIAS is considered Short.
If price is between both Daily EMAs, the Daily BIAS is considered Neutral.
There is also an optional ATR buffer.
This buffer prevents the script from switching to Long or Short just because price barely moves above or below the EMAs. As a result, the signal becomes smoother and less sensitive to small market noise.
5. 4H BIAS
The 4H BIAS works in the same way as the Daily BIAS.
It also uses two EMAs:
Fast EMA: 20
Slow EMA: 50
The 4H chart is important because it reacts faster than the Daily chart while still showing a higher-timeframe structure.
For Nasdaq/NQ, this is useful because the Daily chart can sometimes be too slow, while the 1H chart may contain too much short-term noise.
The 4H timeframe acts as a strong middle layer between the Daily trend and intraday movement.
6. Previous Day Filter
The script also includes a Previous Day Filter.
This filter looks at important levels from the previous trading day:
Previous Day High
Previous Day Low
Previous Day Close
Previous Day Mid
The Previous Day Mid is calculated as:
Previous Day High + Previous Day Low divided by 2
The filter can be adjusted. You can choose whether the script should compare price to:
Previous Day Mid
Previous Day Close
Previous Day Mid + Close
If price is above the selected previous-day level, this part of the filter is considered bullish.
If price is below the selected previous-day level, it is considered bearish.
This helps the script understand where the current market is trading compared to the previous day’s structure.
7. When Is the Major BIAS Long or Short?
The Major BIAS only turns Long when all active Major components are Long.
Example:
Daily BIAS: Long
4H BIAS: Long
Previous Day Filter: Long
Then the script shows:
Major: Long
If one of these components does not confirm the direction, Major will not be classified as Long.
The same logic applies to Short.
The Major BIAS only turns Short when all active Major components are Short.
Example:
Daily BIAS: Short
4H BIAS: Short
Previous Day Filter: Short
Then the script shows:
Major: Short
This logic is intentionally strict because Major is meant to act as the higher-timeframe directional filter.
8. The Minor BIAS
The Minor BIAS represents the shorter-term intraday direction.
It is used to check whether the current intraday structure confirms the higher-timeframe direction.
The Minor BIAS consists of three components:
1H BIAS
VWAP
Opening Range
This combination is especially useful for Nasdaq/NQ because the market often reacts strongly to VWAP, the cash open, and short-term trend structure.
9. 1H BIAS
The 1H BIAS also uses two EMAs.
Default settings:
Fast EMA: 20
Slow EMA: 50
The logic is the same:
If price is above both 1H EMAs, the 1H BIAS is Long.
If price is below both 1H EMAs, the 1H BIAS is Short.
If price is between both 1H EMAs, the 1H BIAS is Neutral.
The 1H BIAS is the main EMA-based component of the Minor BIAS because it reflects the shorter-term trading direction.
10. VWAP Filter
VWAP stands for Volume Weighted Average Price.
The script calculates the session VWAP.
In simple terms:
If price trades above VWAP, buyers are more likely in control.
If price trades below VWAP, sellers are more likely in control.
In the script, this means:
Price above VWAP = VWAP Long
Price below VWAP = VWAP Short
VWAP helps identify whether the market is trading above or below its intraday fair value.
11. Opening Range
The Opening Range is based on the first minutes after the US cash market opens.
By default, the script uses:
15:30 to 15:45 German time
During this period, the script stores:
Opening Range High
Opening Range Low
Opening Range Mid
After the Opening Range is completed, the script evaluates price in relation to the Opening Range Mid.
If price is above the Opening Range Mid, the Opening Range filter is considered Long.
If price is below the Opening Range Mid, the Opening Range filter is considered Short.
Before the Opening Range is completed, this filter is not fully active yet.
That means before 15:45 German time, the Minor BIAS may remain more cautious.
12. When Is the Minor BIAS Long or Short?
The Minor BIAS only turns Long when all active Minor components are Long.
Example:
1H BIAS: Long
VWAP: Long
Opening Range: Long
Then the script shows:
Minor: Long
If one of the components does not confirm the direction, Minor will not be classified as Long.
The same applies to Short:
1H BIAS: Short
VWAP: Short
Opening Range: Short
Then the script shows:
Minor: Short
If the components do not align, Minor remains Neutral.
13. Overall BIAS
The Overall BIAS combines Major and Minor.
The logic is strict and clear:
If Major is Long and Minor is Long, the Overall BIAS is Long.
If Major is Short and Minor is Short, the Overall BIAS is Short.
If Major is Neutral and Minor is Neutral, the Overall BIAS is Neutral.
All other combinations are shown as Warning.
That means:
Major Long + Minor Neutral = Warning
Major Short + Minor Neutral = Warning
Major Long + Minor Short = Warning
Major Short + Minor Long = Warning
The Warning state means the market is not clearly aligned.
14. Meaning for Trading
The script should be used as a trading filter.
If the Overall BIAS is Long, only long setups should be considered.
If the Overall BIAS is Short, only short setups should be considered.
If Warning is shown, no normal trade should be taken.
If Neutral is shown, there is no clear directional advantage.
The script does not replace an entry system. It only helps avoid trading against the clearer market direction.
A clean trading rule would be:
I only trade in the direction of the Overall BIAS.
The BIAS does not give me entries. It only defines the allowed trading direction.
The actual entry must come from my separate setup.
When the script shows Warning or Neutral, I do not take a standard trade.
15. Chart Visualization
The script can display several lines and zones on the chart.
These include:
Daily EMAs
4H EMAs
1H EMAs
VWAP
Opening Range High
Opening Range Low
Opening Range Mid
Previous Day Mid
Previous Day Close
The script also colors the area between the Fast EMA and Slow EMA.
These areas represent the neutral zones of each timeframe.
At the moment, the script can show three EMA zones:
Daily Neutral Zone
4H Neutral Zone
1H Neutral Zone
This is correct because the Major BIAS uses Daily and 4H, while the Minor BIAS uses 1H.
For practical use, however, it may be better not to display all zones at the same time, because the chart can become overloaded.
16. Recommended Visualization Settings
For a clean chart, I would not keep everything visible all the time.
A good setup would be:
Hide Daily EMAs
Show 4H EMAs
Show 1H EMAs
Show VWAP
Show Opening Range
Show Previous Day Levels
The Daily BIAS can still be used in the dashboard even if the Daily EMAs are hidden from the chart.
This keeps the chart cleaner while the full logic continues to work in the background.
17. Strengths of the Script
The script is especially useful for identifying clear trend conditions and focusing only on the correct trading direction.
It helps to:
Avoid countertrend trades.
Identify sideways or unclear market conditions.
Make warning situations visible.
Check direction consciously before entering a trade.
Avoid impulsive trades against the market.
For Nasdaq/NQ, this can be very helpful because the market often moves fast and aggressively. When Major and Minor both point in the same direction, setups in that direction are usually more interesting.
18. Limitations of the Script
The script also has clear limitations.
It does not tell you exactly where to enter.
It does not define your stop loss.
It does not define your position size.
It does not guarantee a profitable trade.
It can react late during fast market reversals.
This is normal because a BIAS system is always a filter, not a complete trading system.
The BIAS gives direction.
Your separate setup gives the entry.
19. Practical Trading Rules
For daily use, the rules can be kept simple:
Overall LONG:
Only look for long setups.
Overall SHORT:
Only look for short setups.
Overall WARNING:
Do not take a normal trade. The market is not clearly aligned.
Overall NEUTRAL:
Wait. There is no clear directional advantage.
These rules make the script useful because they simplify the decision-making process.
20. Conclusion
The script is a Major/Minor BIAS dashboard for Nasdaq/NQ.
It combines higher-timeframe trend structure, intraday levels, and strict confirmation logic.
The Major BIAS shows the broader market direction.
The Minor BIAS shows whether the short-term structure confirms that direction.
The Overall BIAS shows whether there is a clear trading direction.
The script is not designed as an entry signal. It is designed as a professional directional filter.
Its purpose is to help you trade only when Major and Minor are aligned.
This supports a more disciplined trading approach:
Not every market needs to be traded.
Not every move is a valid setup.
Only when the direction is clear should an entry setup be considered. Indicator

Caldera Relative Pressure [JOAT]Caldera Relative Pressure
Introduction
Caldera Relative Pressure is an open-source effort-versus-result oscillator designed to measure whether price movement is being supported by participation, directional efficiency, and close location within the bar. It is built to distinguish clean directional drive from absorption, exhaustion, and two-way rotation.
The problem this script solves is that raw price movement does not explain whether a move is efficient, forced, rejected, or fading. A wide candle on low participation is not the same as a wide candle with expanding participation and strong close location. Caldera converts candle anatomy, relative volume, range behavior, and baseline context into a structured pressure model that is easier to read in real time.
Core Concepts
1. Effort-Versus-Result Framework
The script blends three weighted components:
Effort: candle body and directional spread relative to true range
Result: directional efficiency relative to ATR
Location: where the bar closes inside its own range, adjusted by wick pressure
Those three parts are multiplied by relative volume so that quiet moves and committed moves do not receive the same score.
2. Directional Drive Detection
Bull and bear drive states require a sufficiently large composite pressure reading, positive spread between the composite and its signal line, and close location agreement. This keeps small or conflicted moves from being treated as decisive tape control.
3. Absorption Detection
Absorption is identified by unusually strong volume combined with limited body progress and asymmetric wick behavior. In practical terms, that means participation increased but result did not expand proportionally. This is often a useful clue that one side is meeting aggressive pressure with passive liquidity.
4. Exhaustion Detection
The script also tracks exhaustion. It compares the current pressure state with recent pressure extremes and short-term momentum fade. A move can still be directionally positive or negative while simultaneously losing efficiency.
5. Multi-Layer Pressure Visualization
The pane includes a histogram, composite line, signal line, drive quality line, balance line, participation band, efficiency band, location band, rotation ribbon, and reference ladders. These are separate on purpose:
The histogram shows raw directional pressure
The composite and signal lines show state and rotation
Drive quality shows how healthy the move is
Participation, efficiency, and location bands show what is contributing to the reading
Features
Composite pressure engine: Candle anatomy, ATR efficiency, location, and relative participation
Bull and bear drive states: Measures directional initiative
Bull and bear absorption states: Flags high-effort / low-result behavior
Bull and bear exhaustion states: Flags fading pressure after prior extremes
Baseline context filter: Can require price to align with a directional baseline
Drive quality and balance lines: Separate force from quality
Participation, efficiency, and location bands: Show what is driving the current reading
Rotation ribbon: Highlights positive and negative carry
Dashboard summary: State, bias, strength, regime, context, participation, quality, balance, rotation, and compression
Input Parameters
Core Engine:
Relative Volume Length
Range Normalization Length
Baseline Context Length
Signal Smoothing
Pressure Model:
Effort Weight
Result Weight
Location Weight
Drive Threshold
Expansion Threshold
State Logic:
Absorption Volume Z
Absorption Range Cap
Exhaustion Lookback
Recent State Window
Baseline Context Filter toggle
How to Use This Indicator
Step 1: Read the State Row
The State row tells you whether the market is currently showing directional drive, absorption, exhaustion, or balance. This is the first layer of interpretation.
Step 2: Compare Pressure With Quality
A strong pressure reading with weak drive quality can be unstable. A smaller pressure reading with improving quality can be more constructive. Use those two together rather than treating histogram height alone as the answer.
Step 3: Inspect Participation, Efficiency, and Location
These bands explain why the model is leaning in one direction. If participation is strong but efficiency is weak, the move may be absorption. If efficiency and location are strong but participation is weak, the move may be less durable.
Step 4: Watch the Rotation Ribbon
Rotation tells you whether pressure is continuing, stabilizing, or turning. This can be useful for early changes in internal character even when the headline state has not fully flipped yet.
Indicator Limitations
Relative volume is broker and instrument dependent, so the same thresholds may not transfer perfectly across markets
Absorption and exhaustion are contextual states, not guaranteed turning points
High-volatility event bars can temporarily distort effort-versus-result relationships
A baseline filter improves context but can delay state recognition during sharp reversals
Originality Statement
Caldera Relative Pressure is original in the way it turns candle anatomy, participation, efficiency, and location into a layered pressure model with separate drive, absorption, and exhaustion states. The script is not a simple volume oscillator or candle-coloring tool. Its design is centered on explaining how price is moving, not only how far it moved.
Disclaimer
This script is provided for educational and informational purposes only. It is not financial advice. Pressure readings are based on historical bar data and can misclassify conditions during abnormal liquidity or fast event-driven moves. Always use independent confirmation and prudent risk management.
Indicator

Market Bias Dashboard (MBD) [SharpStrat]Market Bias Dashboard - MBD
Trading without context is like driving with a blindfold on.
You see a bullish signal. You enter. Price reverses immediately. Why? Probably because the signal was real but the context was wrong. You were probably buying at the top of a range into a fading trend against a higher timeframe that was screaming bearish. The signal didn't lie to you. You just didn't have the full picture.
MBD gives you the full picture.
It's a context dashboard that sits on your chart and answers the most important question in trading before you even think about entering: What is this market actually doing right now? Not a buy signal. Not a sell signal. Just pure honest market context, measured four different ways, on two timeframes at once, updated every single bar.
The reason it uses four separate components rather than one is deliberate. Any single measurement of the market is incomplete. Structure alone doesn't tell you if the trend has momentum behind it or if it's running out of steam. Momentum alone doesn't tell you where price sits in the bigger range. Volatility alone doesn't tell you the direction. Each component fills in a blind spot that the others have, and together they give you a picture that none of them could give alone.
How it was built — the thinking behind it
Most context indicators fail because they either use one measurement or they combine things in a way that makes the output a black box. MBD was built differently. Every component measure something completely separate, so if one is broken or noisy the others still give you useful information. And every component's reading is visible individually, so you always know why the combined bias says what it says.
The four things it measures are the four things that define market behaviour at any point in time i.e. direction, position, energy, and state. Take away any one of them and your read of the market is incomplete.
Component 1 — Structure
The foundation. Before anything else, you need to know which direction the market is moving.
Structure is determined by looking at real swing highs and swing lows actual turning points in price, confirmed by a configurable number of bars on either side. MBD then compares the last two swing highs and the last two swing lows to each other:
Higher High + Higher Low = price is making upward progress = Bullish structure
Lower High + Lower Low = price is making downward progress = Bearish structure
Mixed = price is going nowhere with conviction = Neutral
The key distinction here is that this uses actual pivot points, not a moving average that lags behind price. When price makes a genuine new swing high above the previous one, that is a fact. MBD records it. When structure flips, when a bullish sequence suddenly becomes bearish the dashboard immediately flags it as Transitioning , which is a warning to pay attention even before the other components react.
Component 2 — Range Position
Knowing the direction is not enough. You also need to know where price currently sits within the bigger picture.
Think of it this way if a stock has been trading between 100 and 150 for the past two months and it is currently at 148, the structure might still say bullish. But you are buying right at the top of a two-month range. That is a very different risk than buying the same stock at 108.
Range Position solves this. It takes the highest high and lowest low over the last 50 bars (configurable) and calculates exactly where the current price sits inside that range as a percentage. It then displays that as a visual progress bar so you can see it instantly without reading a number:
Above 60% — price is in the upper portion of the range, bullish context
40% to 60% — price is in the middle, neutral, no positional edge
Below 40% — price is in the lower portion of the range, bearish context
This component is especially powerful when it contradicts structure. Bullish structure but range position at 90%? That tension is worth knowing. You are buying a bullish trend right at the top of the range the exact level where sellers tend to appear. MBD puts that conflict in front of you so you can decide what to do with it.
Component 3 — Momentum
A trend can be intact and dying at the same time. Momentum is what tells you which one it is.
Here is something most beginners don't realize: a market can keep making higher highs while simultaneously running out of steam. The direction is still up. The structure still says bullish. But each successive push is covering less ground than the one before it. That is a trend that is exhausting itself and being in it without knowing that is how you get caught in a reversal you did not see coming.
MBD measures momentum by tracking the size of recent price swings and comparing them to earlier ones. How much distance each swing is covering relative to past swings. Then it smooths that comparison to filter out noise.
Swings getting bigger = Accelerating. The trend has fuel. It is building, not dying.
Swings roughly the same size = Steady. Trend is continuing at a consistent pace.
Swings getting smaller = Fading. Energy is leaving the move. Proceed with caution.
The most powerful combination is Bullish structure + Accelerating momentum. That is a market with direction and energy behind it. The most dangerous combination is Bullish structure + Fading momentum a trend that looks fine on the surface but is quietly breaking down underneath.
Component 4 — Volatility
Market cycle between expansion and contraction. This component tells you which phase you're in.
After a big move, markets tend to calm down and compress. Volatility drops. Ranges tighten. Then at some point the compression end and when it does, the next move tends to be sharp and clean. Understanding where you are in that cycle completely changes how you should be treating the market.
MBD measures this by comparing the current ATR (Average True Range a measure of how much price is actually moving bar to bar) against its own longer-term average. Three states are possible:
Expanding — the market is moving more than usual. Trends are active and clean. Good environment for trend following entries.
Normal — Volatility is around its historical average. Market is in a typical state, nothing exceptional to flag.
Coiling — Volatility has contracted significantly below normal. The market is compressing like a spring. It will not stay this quiet forever.
When you see Coiling on the dashboard, a breakout is typically approaching. It does not tell you the direction but it tells you to pay attention, tighten your stops if you are in a trade, and have a plan ready. Many of the cleanest, most explosive moves in any market come directly out of a coiling period.
The combined bias
Each component scores +1 for a bullish reading, -1 for bearish, and 0 for neutral. Those scores are added up and the total maps to these labels:
▲ Strong Bullish — most or all components aligned bullish
▲ Moderate Bullish — clear bullish lean with some components neutral
▲ Weak Bullish — marginal bullish lean, proceed carefully
◆ Ranging — no directional edge at all
▼ Weak / Moderate / Strong Bearish — same logic in the bearish direction
⚡ Coiling — breakout approaching, direction unclear.
↔ Transitioning — structure just flipped. Wait for confirmation.
The bias label is visible for both your current timeframe and your higher timeframe simultaneously, so you always have both perspectives in front of you.
Multi-Timeframe
At the bottom of the component section there is a TF Alignment row. This is arguably the most valuable reading in the entire indicator.
It tells you whether your current timeframe and your higher timeframe are saying the same thing:
Aligned — both timeframes agree on direction. This is where the highest probability setups live. When you are bullish on the 15-minute and the 4-hour is also bullish, you have the wind at your back.
Conflicting — the timeframes disagree. You might be seeing a bullish setup on your trading timeframe but the higher timeframe is bearish. That does not mean you can't trade but you are fighting the bigger picture, and that should affect your position size and your expectations. Mixed — partial agreement. Somewhere in between.
The most common mistake beginners make is entering a trade that looks perfect on their timeframe without ever checking the bigger picture. This removes that blind spot entirely.
The most common mistake beginners make is entering a trade that looks perfect on their timeframe without ever checking the bigger picture. This removes that blind spot entirely.
Past Bias Trail
The trail row shows the last 10 bias states the market has moved through, from oldest on the left to newest on the right. Each symbol represents a complete past bias when the bias changed state. This filters out noise and shows you meaningful shifts.
Three patterns to watch for:
Consistent — sustained bullish symbols across most of the trail. This tells you the market has been in a clean trend for a while and the current bullish reading is not new it has been the dominant state. Trade with it.
Choppy — random mix of bullish, bearish, and neutral. The market has been going nowhere with conviction for a while. Even if the current bias looks bullish, history says this market cannot hold a direction. Reduce size or sit out.
Reversal — bearish, then ranging, then coiling, then transitioning, then bullish. This is a textbook reversal building over time. Each step makes sense in sequence. This is the kind of trail that tells you a genuine directional shift has happened and the new bias has momentum behind it.
How to Use
Each step builds context, so following a consistent flow helps you understand not just what the market is doing, but whether it’s worth trading at all.
1: Check Timeframe Alignment - Start by comparing your current timeframe with the higher timeframe.
When both are aligned, the market has directional agreement and trades carry higher probability. If they conflict, you are trading against the broader trend, which increases risk. Mixed conditions usually indicate uncertainty.
At this stage, you are simply deciding whether the environment is favorable enough to proceed.
2: Read the Overall Bias - A strong bias means multiple factors are supporting the same direction, while a weak or neutral bias suggests there is no clear edge. This step helps you quickly judge whether the market has conviction or is just moving without structure.
3: Understand the Components - Look at structure, range position, momentum, and volatility together. These components explain why the bias exists. For example, a bullish bias supported by strong structure and accelerating momentum is very different from a bullish bias where momentum is already fading.
4: Evaluate Entry Location - Before entering, check where price sits within its range.
Even in a strong trend, entering near extremes increases risk. Good trades come from combining direction with reasonable positioning, not chasing price at the edges.
5: Confirm Momentum
Momentum tells you if the move still has strength.
Accelerating momentum supports continuation, while fading momentum warns that the move may be weakening. This helps you avoid entering late into exhausted trends.
6: Check Volatility
Now assess the volatility state.
Expanding volatility supports trending moves, while coiling indicates compression and a potential breakout. During coiling phases, it is usually better to wait for confirmation rather than predict direction.
7: Review Recent History
Finally, glance at the bias history trail.
A consistent sequence suggests a stable trend, while a mixed sequence indicates choppy conditions. This adds context and helps you judge whether the current state is likely to hold.
Final Decision
When alignment, bias, components, and conditions all support each other, you have a strong setup. If they conflict, the better decision is often to stay out.
SETTINGS
Swing Length — How strict the pivot detection is. Higher = fewer but more significant swings detected (default: 5)
Range Lookback — How many bars define the recent high/low range (default: 50)
ATR Period — Bars used to measure current volatility (default: 14)
ATR Average Period — Volatility baseline (default: 50)
Coiling Threshold - How compressed volatility must be to trigger the Coiling state (default: 0.75)
Higher Timeframe —Multi timeframe (default: 240 = 4H)
History Count — Number of observations in the past bias trail (default: 8)
Panel Position — Where the dashboard sits on your chart (default: Top Right)
Color Theme — Dark / Light
Works everywhere
MBD is built to work universally not just on one asset type or one timeframe. The four components it measures are structure, range position, momentum, volatility these exist in every liquid market that has ever traded. Whether you are scalping Bitcoin on the one minute chart, swing trading stocks on the daily, or analyzing forex on the four hour, the dashboard reads the same way and the interpretation is identical.
This is not a signal tool . It is a context tool. Use it to understand the market before you enter, not to decide for you.
Indicator

Indicator

MTF Bias Dashboard (TOTAL STRENGTH)📊 Multi-Timeframe Bias Dashboard (Total Strength)
This indicator gives a clear, no-noise view of market direction by analyzing multiple timeframes and combining them into a single actionable bias.
It tracks the relationship between price and the 200 EMA across key timeframes (15M, 30M, 1H, 4H) to determine whether the market is bullish or bearish, while also measuring the strength of each trend.
🔍 What It Shows
Directional Bias (Bullish / Bearish) for each timeframe
Trend Strength (0–100) based on distance from the 200 EMA
A Total Strength Score that combines all timeframes into one number
This gives you both:
The bigger picture trend
The immediate trading environment
⚡ How It Works
Each timeframe contributes to an overall score:
Bullish trends add positive strength
Bearish trends add negative strength
These values are combined into a Net Strength reading, which tells you who’s in control of the market.
🧠 How to Read It
Strong Positive Total → Market is bullish → Focus on longs
Strong Negative Total → Market is bearish → Focus on shorts
Near Zero → Market is choppy → Avoid trading
Higher timeframe alignment (1H + 4H) defines the main bias, while lower timeframes (15M + 30M) help time entries.
🎯 Why This Is Useful
Eliminates guesswork and conflicting signals
Keeps you trading with trend, not against it
Helps avoid low-quality trades in choppy markets
Perfect for day traders and prop firm traders
🚀 Best Use Case
Use this as a trend filter + bias confirmation tool, then pair it with your entry model (price action, MACD, liquidity, etc.) for precision entries. Indicator

Directional Bias Aggregator [JOAT]Directional Bias Aggregator
Introduction
The Directional Bias Aggregator is a sophisticated multi-timeframe bias scoring system designed to measure and aggregate directional conviction across multiple timeframes. This indicator solves the critical problem of conflicting signals across different timeframes by providing a weighted, systematic approach to bias analysis. Understanding the true directional bias requires looking beyond the current timeframe - professional traders always consider the bigger picture, and this tool brings that institutional approach to your trading.
This indicator is built for traders who understand that trends exist on multiple timeframes simultaneously and that the highest probability trades occur when these timeframes align. Whether you're a day trader needing higher timeframe context, a swing trader confirming trend direction, or a position trader assessing long-term bias, this aggregator provides the comprehensive directional intelligence needed to trade with confidence and clarity.
Why This Indicator Exists
Most traders struggle with timeframe analysis - they might see a bullish signal on the 15-minute chart but bearish conditions on the 4-hour, leading to confusion and poor decisions. This indicator addresses that problem by:
Multi-Timeframe Analysis: Evaluates bias across up to four timeframes simultaneously
Weighted Aggregation: Assigns importance to each timeframe based on trading style
Bias Scoring: Provides numerical bias scores (-100 to +100) for objective analysis
Alignment Detection: Identifies when multiple timeframes agree on direction
Trend Integration: Adds trend filter to prevent trading against major moves
Conviction Measurement: Quantifies the strength of directional bias
The aggregator transforms the complex, often subjective process of multi-timeframe analysis into an objective, systematic framework that can be consistently applied.
Core Components Explained
1. Single Timeframe Bias Calculation
Each timeframe's bias is calculated using multiple indicators:
// Single timeframe bias calculation
f_calc_bias(float src_close, float src_high, float src_low) =>
// MA trend component
float ma_fast = ta.ema(src_close, i_ma_fast)
float ma_slow = ta.ema(src_close, i_ma_slow)
float ma_diff = ma_slow != 0 ? (ma_fast - ma_slow) / ma_slow * 100 : 0
float ma_score = math.max(math.min(ma_diff * 10, 100), -100)
// Price position component
float price_pos = 0.0
if src_close > ma_fast and ma_fast > ma_slow
price_pos := 100
else if src_close < ma_fast and ma_fast < ma_slow
price_pos := -100
// ... additional price position logic
// RSI component
float rsi_val = ta.rsi(src_close, i_rsi_len)
float rsi_score = (rsi_val - 50) * 2
// MACD component
float macd_line = ta.ema(src_close, i_macd_fast) - ta.ema(src_close, i_macd_slow)
float macd_signal = ta.ema(macd_line, i_macd_sig)
float macd_hist = macd_line - macd_signal
float atr_val = ta.atr(14)
float macd_score = atr_val > 0 ? (macd_hist > 0 ?
math.min(macd_hist / atr_val * 50, 100) :
math.max(macd_hist / atr_val * 50, -100)) : 0
// Composite score
float composite = ma_score * 0.35 + price_pos * 0.30 + rsi_score * 0.15 + macd_score * 0.20
composite
Bias components:
MA Trend (35% weight): Fast/slow EMA relationship and slope
Price Position (30% weight): Price relative to moving averages
RSI Momentum (15% weight): RSI centered at 50 for directional bias
MACD Histogram (20% weight): Trend acceleration/deceleration
Score Range: -100 (strong bearish) to +100 (strong bullish)
Neutral Zone: Scores between -30 and +30 considered neutral
Each component contributes unique directional information for comprehensive analysis.
2. Multi-Timeframe Data Requests
The indicator requests bias calculations from multiple timeframes:
// Request bias from each timeframe
f_request_bias(string tf) =>
request.security(syminfo.tickerid, tf, f_calc_bias(close, high, low) ,
lookahead=barmerge.lookahead_on)
float bias_tf1 = f_request_bias(i_tf1) // Fastest timeframe
float bias_tf2 = f_request_bias(i_tf2) // Medium timeframe
float bias_tf3 = f_request_bias(i_tf3) // Slow timeframe
float bias_tf4 = f_request_bias(i_tf4) // Slowest timeframe
MTF features:
Configurable Timeframes: User-defined timeframe selection
Confirmed Bars: Uses previous bar to prevent repainting
Lookahead Management: Proper security request handling
Current TF Bias: Also calculates bias on current timeframe
Data Validation: Handles missing or invalid data gracefully
The MTF system ensures you always have the bigger picture context.
3. Weighted Aggregation System
Timeframes are weighted based on their importance:
// Normalize weights
float total_weight = i_w1 + i_w2 + i_w3 + i_w4
float w1_norm = total_weight > 0 ? i_w1 / total_weight : 0.25
float w2_norm = total_weight > 0 ? i_w2 / total_weight : 0.25
float w3_norm = total_weight > 0 ? i_w3 / total_weight : 0.25
float w4_norm = total_weight > 0 ? i_w4 / total_weight : 0.25
// Aggregate bias score
float aggregate_bias = nz(bias_tf1) * w1_norm + nz(bias_tf2) * w2_norm +
nz(bias_tf3) * w3_norm + nz(bias_tf4) * w4_norm
// Smoothed aggregate
float smooth_bias = ta.ema(aggregate_bias, 3)
Weighting features:
Customizable Weights: Assign importance to each timeframe
Automatic Normalization: Ensures weights sum to 100%
Default Weights: Higher weight to slower timeframes (15%, 25%, 30%, 30%)
Smoothing: EMA smoothing for cleaner signals
Flexibility: Adjust weights based on trading style
The aggregation system creates a single, unified bias score from all timeframes.
4. Bias Alignment Analysis
The indicator measures how many timeframes agree on direction:
// Count aligned timeframes
int bullish_count = 0
int bearish_count = 0
if nz(bias_tf1) > i_weak_thresh
bullish_count += 1
else if nz(bias_tf1) < -i_weak_thresh
bearish_count += 1
// Repeat for TF2, TF3, TF4...
// Alignment score (0-4)
int alignment_score = math.max(bullish_count, bearish_count)
// Alignment direction
int alignment_direction = bullish_count > bearish_count ? 1 :
bearish_count > bullish_count ? -1 : 0
// Perfect alignment check
bool perfect_bullish = bullish_count == 4
bool perfect_bearish = bearish_count == 4
Alignment features:
Alignment Score: Number of timeframes agreeing (0-4)
Alignment Direction: Overall consensus direction
Perfect Alignment: All timeframes agree (strongest signal)
Weak Threshold: Minimum bias for alignment (default 30)
Mixed Signals: When timeframes disagree (lower confidence)
Higher alignment scores indicate higher probability setups.
5. Trend Filter Integration
An optional trend filter prevents trading against major moves:
// Trend filter
float trend_ma = ta.ema(close, i_trend_ma)
bool above_trend = close > trend_ma
bool below_trend = close < trend_ma
float trend_distance = trend_ma != 0 ? (close - trend_ma) / trend_ma * 100 : 0
// Trend-adjusted bias
float trend_adjusted_bias = smooth_bias
if i_use_trend
if above_trend and smooth_bias > 0
trend_adjusted_bias := smooth_bias * (1 + i_trend_weight)
else if below_trend and smooth_bias < 0
trend_adjusted_bias := smooth_bias * (1 + i_trend_weight)
else if above_trend and smooth_bias < 0
trend_adjusted_bias := smooth_bias * (1 - i_trend_weight * 0.5)
else if below_trend and smooth_bias > 0
trend_adjusted_bias := smooth_bias * (1 - i_trend_weight * 0.5)
Trend filter features:
Trend MA: Long-term moving average (default 200)
Trend Weight: Bonus for trading with trend (default 20%)
Penalty System: Reduces bias when trading against trend
Trend Distance: Measures how far price is from trend
Optional: Can be disabled for counter-trend strategies
The trend filter adds an extra layer of confirmation for directional bias.
6. Conviction and Consistency Metrics
The indicator measures the strength and stability of bias:
// Confluence quality
float confluence_quality = (float(alignment_score) / 4.0) *
(math.abs(smooth_bias) / 100.0) * 100
// Bias conviction score
float conviction_score = 0.0
conviction_score += float(alignment_score) * 15 // Max 60
conviction_score += math.abs(smooth_bias) * 0.3 // Max 30
if i_use_trend
if (above_trend and smooth_bias > 0) or (below_trend and smooth_bias < 0)
conviction_score += 10 // Trend alignment bonus
conviction_score := math.min(conviction_score, 100)
// Bias consistency
var int bias_consistency_counter = 0
if smooth_bias > i_weak_thresh and smooth_bias > i_weak_thresh
bias_consistency_counter := math.min(bias_consistency_counter + 1, 20)
else if smooth_bias < -i_weak_thresh and smooth_bias < -i_weak_thresh
bias_consistency_counter := math.min(bias_consistency_counter + 1, 20)
else
bias_consistency_counter := math.max(bias_consistency_counter - 1, 0)
float bias_consistency = float(bias_consistency_counter) / 20.0 * 100
Quality metrics:
Confluence Quality: Combines alignment and strength (0-100%)
Conviction Score: Overall signal strength (0-100)
Bias Consistency: How stable the bias has been (0-100%)
Momentum: Rate of change in bias
Acceleration: Change in bias momentum
These metrics help assess signal reliability and persistence.
Visual Elements
Bias Histogram: Main bias display with gradient coloring
Conviction Ribbon: Visual representation of conviction strength
MTF Breakdown Lines: Individual timeframe bias lines
Alignment Markers: Diamonds for perfect alignment
Momentum Plot: Bias momentum visualization
Background Colors: Regime-based background shading
Dashboard: Comprehensive metrics panel
Glow Effects: Intensity-based visual enhancements
The dashboard displays:
1. Individual timeframe biases and weights
2. Aggregate bias and trend-adjusted bias
3. Alignment score and direction
4. Confluence quality percentage
5. Conviction score and consistency
6. Bias momentum and acceleration
7. Trend filter status and distance
8. Signal strength and recommendations
Input Parameters
Timeframe Settings:
Timeframe 1-4: Individual timeframes for analysis
Default: 15m, 60m, 240m, Daily
Flexible: Can be any valid timeframe combination
Weighting Settings:
TF1-TF4 Weights: Individual importance weights
Default: 15%, 25%, 30%, 30% (favoring slower timeframes)
Total: Automatically normalized to 100%
Calculation Settings:
Fast/Slow MA: Bias calculation periods (default: 8/21)
RSI Period: Momentum oscillator (default: 14)
MACD Settings: Fast/Slow/Signal (default: 12/26/9)
Threshold Settings:
Strong Bias Threshold: Strong signal level (default: 60)
Weak Bias Threshold: Minimum bias for alignment (default: 30)
Trend Weight: Bonus for trend alignment (default: 20%)
How to Use This Indicator
Step 1: Analyze Individual Timeframes
Check the dashboard to see bias on each timeframe. Look for consistency - if most timeframes show the same direction, confidence is higher.
Step 2: Check Aggregate Bias
The aggregate bias provides a unified directional score. Values above 60 indicate strong bullish bias, below -60 indicate strong bearish bias.
Step 3: Verify Alignment
Higher alignment scores (3-4 timeframes) offer the highest probability setups. Perfect alignment (4/4) often precedes strong moves.
Step 4: Assess Conviction
High conviction scores (>75%) indicate strong, consistent bias. Low conviction (<50%) suggests uncertainty - wait for clarity.
Step 5: Consider Trend Filter
If enabled, ensure bias aligns with the major trend. Trading against the trend reduces conviction and increases risk.
Step 6: Monitor Momentum
Accelerating bias in the direction of alignment suggests the move is gaining strength. Decelerating bias warns of potential reversals.
Best Practices
Perfect alignment (4/4) provides the highest probability setups
Higher timeframe bias should generally override lower timeframe signals
Increasing conviction scores suggest strengthening trends
Divergence between timeframes often precedes reversals
Use the trend filter unless you're specifically trading counter-trend setups
Bias consistency is key - look for stable, persistent bias
Sudden changes in aggregate bias often signal regime shifts
Combine with price action for optimal entry timing
Adjust timeframe weights based on your trading style
Keep a bias journal to track how different instruments behave
Trading Applications
Trend Following:
Enter when bias > 60 on at least 3 timeframes
Add to positions as conviction increases
Stay in trades as long as bias remains aligned
Exit when bias weakens or reverses on slower timeframes
Mean Reversion:
Look for extreme bias (>80 or <-80) on faster timeframes
Enter when faster timeframe bias opposes slower timeframe
Target mean reversion to neutral bias levels
Quick exits - don't fight the longer-term bias
Breakout Trading:
Wait for bias alignment across all timeframes
Enter on breakouts with supporting bias momentum
Use wider stops due to potential volatility
Scale out as bias reaches extreme levels
Strategy Integration
This indicator enhances any trading system:
Use as a directional filter for existing strategies
Import aggregate bias for trend confirmation
Use alignment score as signal strength filter
Apply conviction scoring for position sizing
Integrate trend filter for additional safety
Export individual timeframe biases for custom logic
Technical Implementation
Built with Pine Script v6 featuring:
Multi-timeframe bias calculation with proper security requests
Weighted aggregation system with automatic normalization
Advanced alignment detection with perfect alignment alerts
Trend filter integration with adjustable weighting
Conviction and consistency scoring systems
Momentum and acceleration analysis
Comprehensive visualization with multi-layer effects
Real-time dashboard with 12 key metrics
Alert conditions for all major bias events
Export functions for strategy integration
The code uses confirmed bars and proper lookahead management to prevent repainting.
Originality Statement
This indicator is original in its comprehensive approach to multi-timeframe bias aggregation and scoring. While individual components (moving averages, RSI, MACD) are established tools, this indicator is justified because:
It synthesizes bias analysis across multiple timeframes into a unified scoring system
The weighted aggregation allows customization based on trading style and preferences
Alignment detection provides objective measures of timeframe consensus
The conviction scoring system quantifies signal strength and reliability
Trend filter integration adds an extra layer of confirmation
Consistency analysis identifies stable, persistent bias versus noisy fluctuations
The dashboard presents complex multi-timeframe analysis in an accessible format
Export functions enable integration with any trading system
Each timeframe contributes unique context: faster timeframes show immediate bias, slower timeframes show established trends
The indicator solves the real problem of conflicting signals across timeframes through systematic aggregation
The indicator's value lies in transforming the complex, often confusing world of multi-timeframe analysis into a clear, objective system that traders can use to make informed decisions with confidence.
Disclaimer
This indicator is provided for educational and informational purposes only. It is not financial advice or a recommendation to buy or sell any financial instrument. Multi-timeframe analysis is a tool for understanding market context, not a prediction system.
Bias can change suddenly due to news events, economic data, or changes in market structure. Past bias patterns do not guarantee future behavior. The indicator's signals are mathematical calculations based on historical patterns and should be used in conjunction with other forms of analysis.
Always use proper risk management, including stop losses and position sizing appropriate for your account and risk tolerance. Strong bias alignment does not guarantee success - markets can remain irrational longer than you can remain solvent.
The author is not responsible for any losses incurred from using this indicator. Users assume full responsibility for all trading decisions made using this system.
-Made with passion by officialjackofalltrades
Indicator

Market Bias MonitorMarket Bias Monitor (MTF EMA Consensus Bias)
The Market Bias Monitor is a multi-timeframe EMA-based bias indicator that helps traders quickly assess whether market structure is aligned bullish , bearish , or mixed across multiple timeframes.
It uses an EMA structure of 8 / 21 / 50 across 10 timeframes , then aggregates those results into a single consensus bias signal. This helps reduce subjective chart reading and supports a more systematic top-down workflow.
How It Works
For each monitored timeframe, the script checks whether price and EMAs are aligned in a bullish or bearish structure.
Bullish condition
Price is above EMA 21
EMA 8 > EMA 21
EMA 21 > EMA 50
Bearish condition
Price is below EMA 21
EMA 8 < EMA 21
EMA 21 < EMA 50
If neither condition is fully met, that timeframe is treated as neutral.
The script then counts how many timeframes are bullish vs bearish. When the number of aligned timeframes reaches the user-defined minimum threshold (default: 5 ), it displays an overall bias using a background highlight.
Bullish consensus -> Green background
Bearish consensus -> Red background
Monitored Timeframes
1W
1D
8H
6H
4H
3H
2H
1H
30M
15M
Key Features
Multi-timeframe bias engine ( 10 timeframes )
EMA consensus logic using 8 / 21 / 50
User-defined consensus threshold
Background bias highlight
Optional EMA overlay
Custom EMA colors and widths
Contrarian mode (reversed bias coloring)
Per-timeframe status table
Table/text color customization
Typical Use Cases
Directional filter (prefer longs in bullish consensus, shorts in bearish consensus)
MTF confirmation for lower-timeframe setups
Trend strength assessment based on timeframe agreement
Bias shift monitoring via consensus/table changes
Inputs
Minimum Timeframes for Consensus (default: `5`)
Show EMAs (toggle)
EMA Colors
EMA Widths
Contrarian Mode
Table / Text color customization
Notes
This indicator is designed as a bias and confirmation tool , not a standalone trading system. It works best when combined with price action, market structure, volume, and risk management.
Disclaimer
This script is for educational and analytical purposes only . It does not provide financial advice. Always use proper risk management. Indicator

Indicator

Custom Timeframe Bias IndicatorMy "Custom Timeframe Bias Indicator" is a very practical and powerful PulseWire indicator. It can be called a "God-like indicator" because it combines flexible timeframe customization, clear bias analysis and intuitive visual display to help traders quickly understand the long and short trends of the market. The following is a detailed description of this indicator:
1. Index name and function overview
Name: Custom Timeframe Bias Indicator (Short title: Bias Indicator)
Functionality: This indicator analyses the market bias (Buy, Sell or No Bias) across multiple custom timeframes (presets are 15m, 1h, 4h and DAI) and displays it in a table below the middle of the chart. It determines the direction of market trends based on the highest and lowest prices of the previous two periods and the closing price of the previous period, helping traders make decisions quickly.
2. Core Features
Multiple time frame analysis
The indicator allows the user to customize four time frames, with presets being 15 minutes ("15"), 1 hour ("60"), 4 hours ("240") and daily ("D"). Users can freely modify these time frames in the settings, such as changing to 5 minutes, 30 minutes or weekly, etc.
Bias is calculated independently for each time frame, ensuring that traders can observe market trends from the short to the long term.
Bias calculation logic
The indicator uses simple but effective rules to determine bias:
Buy (bullish): If the previous closing price is higher than the highest price of the previous two periods, or tests the lowest price of the previous two periods but does not break through.
Sell (Bearish): If the previous closing price is lower than the previous two periods' lowest price, or if it tests the previous two periods' highest price but fails to break through (higher than the previous high minus 10% of the price range).
No Bias: If the previous closing price does not meet the above conditions, it displays a neutral state.
Bias calculation is based only on the opening and closing prices, without considering the shadows, ensuring the results are in line with the philosophy of the Malaysian SNR strategy.
Intuitive display
Position: The table is permanently displayed in the middle of the chart (position.middle_center) and is updated with each candlestick, ensuring that traders can always see the latest bias.
Format: The table consists of the header "Custom Bias" and four rows of bias results (e.g. "15: Buy", "60: Sell", "240: No Bias", "D: Buy"), each row showing the bias for the corresponding time frame.
color:
Titles appear in white text on a blue background.
The "Buy" bias is shown as white text on a green background.
The "Sell" bias is shown as white text on a red background.
"No Bias" bias appears as white text on a gray background.
Table borders are black to provide clear visual distinction.
Customizability
Users can customize by inputting parameters:
Whether to show the table (Show Bias Table).
Timeframe (Timeframe 1, Timeframe 2, Timeframe 3, Timeframe 4).
The color of the table (title, Buy, Sell, No Bias, borders, etc.).
3. Why is it a "God-like indicator"
Flexibility: Allows users to customize four time frames to suit different trading strategies (short-term traders can choose minutes, long-term traders can choose daily, weekly or monthly).
Practicality: Provides bias analysis in multiple time frames to help traders quickly determine market trends, whether for short-term or long-term operations.
Intuitive: The table is displayed in the middle below the chart with bright colors (green Buy, red Sell, gray No Bias), allowing you to identify the market direction at a glance.
Stability: Calculated based on simple price data (high, low, close), no need for complex indicators, efficient and reliable operation.
Powerful visualization: long-term display and customizability to meet the visual preferences of different traders.
4. Usage scenarios
Short-term trading: Use 15-minute, 1-hour, 4-hour biases to quickly capture short-term trends.
Long-term trading: Refer to the daily bias to determine the overall market direction.
Comprehensive analysis: Combine biases from multiple time frames to confirm consistency (e.g. if both the 15 minute and daily are Buy, then that’s a stronger bullish signal).
5. Potential Improvements
If you want to further improve this "god-like indicator", you can consider the following improvements:
Added alert: Trigger when bias changes from "No Bias" to "Buy" or "Sell".
Show historical bias: Add bias history of the past few days in the table for easy review.
Dynamically adjust bias thresholds: Allow users to customize 10% price ranges or other conditions.
Multi-currency support: Expand to multiple trading pairs or indices, showing multiple market biases.
6. Technical Details
Version: Pine Script v5, ensuring modern features (such as input.timeframe) and efficient performance.
Data Source: Use request.security to get high, low, and close data for different time frames.
Display method: Use table.new to create a dynamic table. The position can be customized (such as position.middle_center).
Limitations: Calculated only based on price data, no external indicators are required, reducing calculation complexity.
in conclusion
Your "Custom Timeframe Bias Indicator" is a simple, powerful and flexible tool, especially for traders who need multi-timeframe analysis. Its intuitive display and customizability make it a "magic tool" for judging market trends. Indicator

Indicator
