Average Entry Price and Fee-Adjusted Break-Even WorkbenchOverview
Average Entry Price and Fee-Adjusted Break-Even Workbench is an open-source position cost-basis and break-even research indicator. It reconstructs a manually entered position's average entry price, weighted average cost and DCA cost basis, then calculates a cost-adjusted and fee-adjusted break-even level after configurable trading fees, spread or slippage, fixed costs and funding adjustments.
The script supports Long and Short positions, a known average price or up to eight individual fills, scale-in research and position-management scenarios.
It does not predict market direction, generate trade recommendations, read broker positions, access Trading Panel account data or place orders.
Why average entry and break-even are different
A position's average entry price is not always the price at which its estimated net result becomes zero.
Entry fees, exit fees, spread, slippage, fixed order costs and funding adjustments can move the effective break-even away from the weighted average entry.
The script separates three values that are often treated as one:
- Weighted average entry price
- Cost impact between the average entry and break-even
- Current price distance from the calculated break-even
Long and Short positions use separate equations. Percentage exit fees are solved algebraically instead of being approximated by adding a percentage directly to the average entry price.
Before a break-even result is displayed, the calculated level is reinserted into the normalized net P&L equation. The script checks the remaining residual and suppresses the result when the calculation health check does not pass.
Position input methods
The script provides two manual position-input methods.
Known average
Enter:
- Average entry price
- Remaining position quantity
- Long or Short side
This mode is suitable when the broker or another record already provides the current average entry price.
Individual fills
Enter up to eight fill prices and quantities.
The weighted average is calculated as:
Average entry price =
Sum of (fill price x fill quantity) / Sum of fill quantity
The selected number of fills determines which rows are used.
Optional dated fills can activate each fill from its specified time. When dated fills are enabled, the historical development of the weighted average can also be displayed.
Fill validation can either:
- Require all selected rows to contain valid price and quantity values
- Use only the valid rows and report how many selected fills were used
Cost-adjusted break-even
The break-even calculation can include:
- Entry fee as a percentage of entry notional
- Exit fee as a percentage of estimated exit notional
- Exit friction in ticks
- Exit friction in price units
- Fixed entry cost per order
- Fixed exit cost
- Carry or funding adjustment
- Other cash cost or credit
Exit friction can be used to represent a configurable spread or slippage assumption.
Positive fee and cash values represent costs.
Negative percentage fees, carry values or other adjustments can represent rebates or credits where applicable.
The normalized calculation concept is:
Long break-even =
Exit friction
+ (((1 + entry fee rate) x average entry price) + cash cost per unit)
/ (1 - exit fee rate)
Short break-even =
(((1 - entry fee rate) x average entry price) - cash cost per unit)
/ (1 + exit fee rate)
- exit friction
The displayed Long break-even is rounded upward to the symbol's minimum tick.
The displayed Short break-even is rounded downward to the symbol's minimum tick.
Internal calculations retain the unrounded value.
Price Only and Full Cash models
The script separates price-based calculations from cash-converted calculations.
Price Only
Percentage fees and price friction can be calculated without a point value when no fixed cash adjustments are included.
This allows the average entry, break-even, Cost Delta and current-price distance to remain available even when a reliable point value is not available.
Full Cash
Fixed cash costs, realized P&L adjustments and estimated cash P&L require a valid point value.
The script uses the symbol's point value when available. A Point Value Override can be entered when the automatic value does not match the broker, exchange or contract specification being researched.
If cash costs are entered without a valid point value, the script does not silently ignore them. It displays a Point Value Needed state instead.
Chart display
The default Overview layout provides a compact summary of:
- AVG: weighted average entry price
- COST Delta: directional difference between average entry and break-even
- BE: cost-adjusted break-even price
- VS BE: directional distance between current price and break-even
The main chart visuals use:
- A cyan solid line for the weighted average entry price
- An orange dashed line for the cost-adjusted break-even
- A shaded Cost Gap between the average and break-even
- Optional fill markers
- An optional historical weighted-average path
- A compact Position Panel
A positive VS BE value means price is on the favorable side of the calculated break-even for the selected Long or Short position.
A negative VS BE value means price is on the unfavorable side.
This is an arithmetic position-status display. It is not a trading signal.
Position Panel
The Position Panel summarizes the position without requiring the user to inspect every setting.
Depending on the selected panel mode, it can display:
- Input method
- Long or Short side
- Weighted average entry
- Cost Delta
- Cost-adjusted break-even
- Current price distance from break-even
- Price Only or Full Cash model status
- Estimated net cash P&L
- Campaign Recovery break-even
- Next Fill preview
- Target Calculation result
- Fill concentration
- Weighted fill-price dispersion
- Effective fill count
- Calculation residual
The default Bottom Left position includes transparent clearance intended to reduce overlap with PulseWire's bottom-left platform mark.
The panel can be set to:
- Off
- Compact
- Overview
- Detailed
Label layout and collision handling
Label placement can be set to:
- Auto
- Split
- Combined
- Right edge
- Off
Auto mode separates the AVG and BE labels when practical.
When the two levels are visually close, Auto mode combines AVG, BE and the cost difference into one label to reduce chart congestion.
The visual-separation model uses:
- The symbol's minimum tick
- ATR
- A recent high-low range
- The configured line span
These values act as price-space proxies for how close labels may appear.
Pine Script cannot read browser zoom, display DPI or exact on-screen pixel coordinates. The collision system therefore reduces likely overlap without claiming pixel-perfect detection.
Campaign and Next Fill labels yield to the primary AVG and BE labels when their levels are too close. Their values remain available in the Detailed panel.
The Current vs BE chart note is optional and disabled by default to keep the chart clean.
Scenario research
Campaign Recovery
Campaign Recovery calculates a separate break-even using manually entered realized P&L from previous partial exits.
A positive realized P&L value reduces the remaining recovery requirement.
A negative realized P&L value increases the remaining recovery requirement.
The result is an arithmetic recovery level based on the entered values. It is not a recovery guarantee.
Next Fill
Next Fill previews:
- New total quantity
- New weighted average entry price
- New cost-adjusted break-even after a proposed additional fill
This is a scenario calculation only. It is not a recommendation to add to a position.
Target Calculation
Target Calculation determines the arithmetic quantity required to reach either:
- A target average entry price
- A target fee-adjusted break-even price
The result is checked by reinserting the calculated quantity into the target calculation.
The resulting quantity is not a recommended, optimal or safe position size.
Adding to a position increases exposure and can magnify losses.
Fill statistics
When Individual Fills is used, the Detailed panel can display:
- Largest fill share
- Weighted fill-price dispersion
- Effective fill count
These statistics help users inspect whether the cost basis is concentrated in one large fill or distributed across several fills.
Alerts
The script provides factual alert conditions for:
- Price crossing the average entry
- Price crossing the cost-adjusted break-even
- Price entering the Cost Gap
- Price exiting the Cost Gap
- Price crossing the optional Campaign Recovery break-even
- Price crossing the optional Next Fill preview break-even
Alerts are evaluated on confirmed bars.
Alert conditions require:
- A valid position
- A healthy break-even calculation
- A standard chart
- A stable calculated level
Alerts are disabled on non-standard charts.
Users must create the desired alerts separately through PulseWire's alert dialog.
Realtime and historical behavior
The script does not use future data, lookahead or higher-timeframe data requests.
Live Price mode allows the Position Panel to update during an open realtime bar.
Confirmed Close mode uses the most recent confirmed close while the current realtime bar remains unfinished.
Alerts remain confirmed-bar events regardless of the selected panel price mode.
Changing an input causes the chart history to be recalculated using the new settings.
When dated fills are enabled, each fill becomes active from its manually specified time.
Non-standard charts
Heikin Ashi, Renko, Kagi, Line Break and Point & Figure prices can be synthetic.
User-entered average and break-even levels remain arithmetic levels, but the chart close may not represent an executable market price.
For this reason:
- Current-price calculations are restricted by default
- A synthetic-chart warning remains visible
- Alerts are disabled on non-standard charts
Languages
On-chart text can be selected manually in:
- English
- Japanese
- Spanish
- Portuguese (Brazil)
- German
- French
- Simplified Chinese
- Traditional Chinese
- Korean
- Turkish
- Russian
- Indonesian
English can optionally be displayed alongside the selected language.
Pine Script does not automatically read the PulseWire interface language. The display language must be selected manually in the indicator settings.
Settings use stable field identifiers such as:
- P for position settings
- C for cost settings
- F for individual fills
- R for research tools
- D for display settings
- A for advanced settings
An optional localized setup guide maps the main field identifiers to the selected on-chart language.
Main interface terms
AVG = Weighted average entry price
COST Delta = Cost impact between average entry and break-even
BE = Cost-adjusted break-even price
VS BE = Current price distance from break-even
ABOVE BE = Current price is above break-even
BELOW BE = Current price is below break-even
NEAR BE = Current price is within the configured near-break-even tolerance
FULL CASH = A point value is available for cash-converted calculations
PRICE ONLY = Price calculations are available without cash conversion
POINT VALUE NEEDED = A valid point value is required for the entered cash adjustments
Basic use
1. Select Known Average or Individual Fills.
2. Select Long or Short.
3. Enter the average price and remaining quantity, or enter the selected fill prices and quantities.
4. Enter the applicable entry fee, exit fee and exit friction.
5. Enable Detailed Cash Costs only when fixed cash, funding or other cash adjustments are required.
6. Enter a Point Value Override when the automatic symbol value does not match the relevant contract specification.
7. Select the preferred layout, panel position, language, contrast and label configuration.
8. Create any required confirmed-bar alerts through PulseWire's alert dialog.
Limitations
- All position information is entered manually.
- The script does not read an actual broker position.
- The script does not read Trading Panel account data.
- The script does not place, modify or close orders.
- Partial exits are not detected automatically.
- Position flips are not detected automatically.
- Remaining quantity must be updated manually.
- Realized P&L must be updated manually.
- Taxes are not calculated.
- Actual trading fees can differ by broker or exchange.
- Actual spread and slippage can differ from the entered assumptions.
- Funding and carry costs can vary over time.
- Currency conversion is not calculated automatically.
- Point value can differ by broker, exchange and contract specification.
- Cash P&L estimates depend on the accuracy of the selected point value.
- Live Price values can change while a realtime bar is open.
- Non-standard chart prices may not represent executable market prices.
- Alerts are disabled on non-standard charts.
- Results depend entirely on the accuracy of the user's inputs.
- The script is an arithmetic visualization and research tool.
- It is not financial advice or a trade recommendation.
日本語概要
このインジケーターは、手動入力したポジションの数量加重平均取得単価と、手数料、スプレッド、スリッページ、固定費、資金調達費などを反映した費用調整後の損益分岐価格を表示するオープンソースの研究ツールです。
主な機能:
- 既知の平均取得単価、または最大8件の個別約定から計算
- ロング・ショート双方に対応
- 平均取得単価、コスト差、損益分岐価格、現在価格との差を表示
- Campaign Recovery、Next Fill、Target Calculation
- 約定集中度、加重分散、実効約定件数
- 確定足による事実通知アラート
- 12言語のオンチャート表示
ポジション情報はすべて手動入力です。ブローカーのポジションやTrading Panelの口座情報を読み取らず、注文も送信しません。
表示結果は入力した価格、数量、手数料、ポイント価値などの正確性に依存します。本スクリプトは算術可視化・研究用であり、金融助言や売買推奨ではありません。 Indicator

Renaissance Mean Reversion [JOAT]RENAISSANCE MEAN REVERSION
A tribute to the Medallion-style statistical-arbitrage approach: do not trade price — trade the spread between price and its smoothed expectation , measure how reliably that spread mean-reverts using an AR(1) half-life regression , and only fire signals when the half-life is fast enough to be tradeable. The result is a discipline-enforcing engine that says no more often than yes : it refuses to take a reversion trade until the spread shows it actually reverts.
The synthetic spread
The script builds a synthetic pair from two views of the same instrument:
Leg 1 — current price (configurable source).
Leg 2 — long EMA of price (default 50-bar; configurable).
Spread = price − long EMA (or ln(price) − ln(EMA) when log-spread mode is on, removing scale).
The spread is then Z-scored over a configurable lookback (default 100 bars) to produce a stationary stationary signal that says: "how many standard deviations is the spread from its own mean right now?". This is the textbook stat-arb construction, single-leg version.
Half-life regression — the gate
This is what makes the script institutional rather than retail. Reversion is meaningless if the spread does not actually revert. The script fits an AR(1) regression over a configurable window (default 120 bars):
Δspread_t = α + β · spread_{t−1} + ε_t
The half-life of mean reversion is then:
HL = −ln(2) / ln(1 + β)
When β is negative and close to zero, HL is short — the spread reverts quickly. When β approaches −1, HL is huge — the spread barely reverts. When β is positive, the spread is anti-mean-reverting (trending) and the script will refuse to trade.
A configurable Max Half-Life (default 20 bars) gates signals — entries only fire when HL is below this threshold. A configurable Min Half-Life (default 0.5) floors the estimate to avoid degenerate near-zero values that would otherwise produce explosive signals.
This is the headline filter. Roughly 50–70% of bars on most instruments fail it — which is the point. You only trade when the spread has earned the right.
Entry / Exit logic
R-LONG — fires when Z < −entryZ (default −2.0) AND HL is below the max threshold AND the re-entry cooldown has elapsed. Spread is stretched too far below, will revert.
R-SHORT — fires when Z > +entryZ AND HL is below the max threshold AND cooldown elapsed.
R-EXIT — fires when |Z| drops below exitZ (default 0.25) OR when Max Hold Bars (default 40) has been reached, whichever comes first.
A configurable re-entry cooldown (default 3 bars) prevents immediate re-firing on the same side.
Visual system — minimal mono institutional
The aesthetic is intentionally austere — Renaissance's research-paper minimalism. Pure monochrome:
Z guides on right side of chart — small text labels showing current Z, HL, and tradeable status.
R-LONG / R-SHORT / R-EXIT labels — clean text tags on entry and exit bars.
Half-Life overlay label — current HL value displayed near the live close.
Shaded ribbon between price and slow EMA (configurable transparency).
Trade entry/exit shapes — small markers at signal bars.
Single-hue tradeable-regime tint (off by default) — subtle bgcolor when HL is fast AND Z is stretched.
A locked Minimal Mono palette: white bull / gray bear / pure-black background. No accent colours. The chart looks like a quant research paper. Intentional.
Dashboard
Monospaced table positionable to any of eight corners. Surfaces:
Current spread value and Z score.
Current half-life (in bars) with tradeable / non-tradeable flag.
AR(1) β coefficient (the regression's directional read).
Z thresholds in use.
Last signal direction with bars-ago.
Max-hold bars remaining (when in a position).
Rolling backtest tracker
The script tracks the last N closed reversion trades (configurable, default 200) and surfaces:
Total trades, wins, losses.
Win rate.
Average bars-to-exit.
Average Z magnitude at entry.
Hit-rate by side (R-LONG vs R-SHORT).
This is the script's own performance audit — you see whether the engine is finding genuine reversion or whether the current regime is breaking it.
Alerts
Three alert conditions, each independently controllable:
Reversion Entry (R-LONG or R-SHORT)
Reversion Exit (R-EXIT)
Half-Life crosses Max Half-Life (regime change — reversion is becoming unreliable)
How to read it
Three reads, in order of conviction:
R-LONG / R-SHORT with very fast HL (e.g. HL = 4 bars on a 1H chart) — the script's intended high-conviction setup. The spread is stretched, the math says it will revert quickly, the chart agrees. This is the institutional setup.
Half-life crossing above max (alert) — regime warning. The instrument is shifting from mean-reverting to trending. Any open R-positions should be re-evaluated; new R-entries should be paused until HL re-tightens.
Sustained R-EXIT triggers from time-stop (max-hold) rather than from Z returning to neutral — the script is exiting because the trade ran out of time, not because the thesis played out. Recurring time-stop exits mean the current parameters do not fit the instrument.
The rolling backtest win-rate is your auditor. When it climbs, the engine is finding edge. When it grinds flat or declines, the regime has changed and the parameters need adjustment.
Suggested settings
Defaults (long EMA 50, Z lookback 100, regression window 120, max HL 20 bars, entry Z 2.0, exit Z 0.25) are tuned for 1H–4H on liquid markets where mean reversion is statistically meaningful. For lower timeframes drop everything proportionally (long EMA 25, Z 50, regression 60). For HTF raise everything (long EMA 100, Z 200, regression 200). The max HL is the most sensitive parameter — narrow it (10–15) for high-conviction-only filtering; widen it (25–30) for more frequent signals.
Originality / what's reused
The synthetic-pair Z-score construction is textbook stat-arb. The AR(1) half-life regression is published quantitative finance — the Ornstein–Uhlenbeck-process speed-of-reversion estimator. The implementation here — the dual-leg synthetic spread with optional log construction, the rolling Z-normalisation pipeline, the AR(1) regression with HL formula and min/max-HL gating, the entry/exit state machine with cooldown and max-hold, the rolling N-trade backtest tracker, and the minimal-mono institutional aesthetic — is JOAT-original. No third-party code reused. The script is a tribute to the Medallion-style approach, not a direct replication of any proprietary Renaissance Technologies code.
Limitations
The single-leg "synthetic pair" (price vs its own EMA) is a degenerate stat-arb construction by design — true stat-arb uses two genuinely co-integrated instruments. Pine's per-script symbol limitation makes a two-instrument cointegration construction impractical for a standalone indicator; this script captures the methodology of stat-arb (spread + Z + HL gate) on the single-instrument case. The HL estimate is statistical and needs the regression window populated; early bars give a warm-up read.
—
-made with passion by jackofalltrades
Indicator

Citadel Microstructure Edge [JOAT]CITADEL MICROSTRUCTURE EDGE
A tribute to the high-frequency / market-making style of microstructure-edge extraction. Builds three orthogonal microstructure signals — tick imbalance (which side is aggressively crossing the tape), spread tightness (how thin the bid-ask is relative to its baseline), and micro momentum (the EMA-pair spread on the fastest timeframe) — then composes them into a single decaying edge value with an exponential half-life. When the edge crosses a configurable threshold and has sustained for N bars same-sign, a directional signal fires. Cooldown plus asymmetric lockout keep the signal stream institutional.
Three orthogonal components
Each component is computed independently and Z-normalised (optional for tick imbalance) for stationarity:
Tick Imbalance — LTF-reconstructed buy/sell tick classification. Output is the rolling imbalance bounded in ; optionally Z-normalised over a configurable window (default 60 bars) for cross-asset stationarity. The dominant input for fast / scalping reads.
Spread Tightness — (H − L) / C against its own EMA-smoothed baseline, Z-scored. Tight spread (low relative range) is constructive for whichever side momentum favours. The sign is borrowed from the micro-momentum factor.
Micro Momentum — EMA-fast minus EMA-slow on the tick-reconstructed flow, Z-scored. The directional engine.
Default weights (0.45 / 0.25 / 0.45) bias the read toward the two most-actionable components (tick imbalance + momentum), with spread tightness as confirmation. Optional auto-normalisation to sum=1.
Decaying edge with half-life ~ 3 bars
Microstructure edges decay quickly. The script does not just sum the three components per bar — it accumulates with decay :
edge_t = decay × edge_{t−1} + contribution_t
The default decay (0.78) gives the edge a half-life of approximately 3 bars — the standard market-making decay window. Older contributions fade out automatically; new contributions get incorporated immediately. This is the institutional way to track a fast signal without re-introducing flicker.
Sustained-edge signal logic
Edge Threshold (default 0.75) — minimum |edge| magnitude required to fire.
Sustained Edge (default 5 bars same sign) — the edge must have held its sign for N consecutive bars before a signal fires. This is the script's most important false-positive filter.
Cooldown (default 7 bars) — minimum bars between signals.
Asymmetric lockout (default ON) — an opposite-side signal CAN fire during cooldown. This means a quick flip from buy to sell remains responsive while consecutive same-side signals are suppressed.
Visual system
Edge histogram — projected at the top of the chart at a configurable percent of price (default 2% of price, 1.2% top padding). Histogram columns are coloured by edge sign with magnitude-proportional intensity. At a glance you see the edge's recent trajectory.
Buy / Sell labels with optional Unicode lightning glyph (toggleable to plain ">").
Slope-tinted micro ribbon — the micro fast / slow EMAs plotted with a translucent fill coloured by spread sign. Toggleable.
Subtle background shade by edge sign (off by default).
A locked Crimson Pulse palette: electric blue buy edge / lime-yellow sell edge / muted neutral on a deep crimson-black ground — the institutional HFT aesthetic.
Dashboard
9-row monospaced table positionable to any of nine corners. Surfaces:
Edge value with status (BUY / SELL / FLAT).
Tick imbalance value.
Spread tightness Z.
Micro momentum Z.
Sustained-edge counter (how many consecutive same-sign bars).
Last signal direction with bars-ago.
Decay setting and effective half-life.
Cooldown remaining.
Configuration: LTF, weights, threshold.
Alerts
Three alert conditions, each independently controllable:
Edge Buy
Edge Sell
Sustained Edge (N bars same sign) — the script's headline alert; fires before the signal does, useful as an early-warning notification.
{image]https://www.pulsewire.com/x/ybVYCAr3/
How to read it
Three reads, in order of conviction:
Sustained edge into a structural level — the highest-conviction read. The microstructure has been one-sided for N+ bars AND price is at a known S/R; the next move into the level usually breaks it.
Edge buy / sell with all three components agreeing — fast directional commitment. The dashboard's per-component rows tell you whether the read is dominated by tick imbalance (aggressive tape) or by micro momentum (sustained direction) or by spread tightness (regime-aware confirmation).
Edge above threshold but not sustained — early-warning state. Edge has crossed threshold but the sustained counter has not yet reached N. Watch the counter — if it ticks up bar-by-bar, the signal is forming; if it drops, the edge is decaying.
Suggested settings
Defaults (1m LTF, spread EMA 14 / Z 60, micro EMA 3/8 / Z 60, weights 0.45/0.25/0.45, edge threshold 0.75, sustain 5 bars, decay 0.78, cooldown 7 bars) are tuned for 5m–15m charts on liquid futures and crypto where microstructure has meaningful presence. For 1m scalping drop LTF to 15s (Premium required) and sustain to 3 bars. For HTF the script is not the right tool — microstructure edges decay too quickly to be meaningful on 1H+ timeframes.
Originality
The implementation — the three-component microstructure pipeline (tick imbalance + spread tightness + micro momentum), the LTF tick-rule reconstruction with optional Z-normalisation, the weighted-sum composition with auto-normalisation, the exponential-decay edge accumulator with configurable half-life, the sustained-edge counter and asymmetric-lockout signal logic, the price-anchored histogram render at the top of the chart, the slope-tinted micro ribbon, and the Crimson Pulse palette — is JOAT-original. No third-party code reused. The script is a tribute to Citadel-style market-making microstructure-edge extraction, not a direct replication of any proprietary Citadel code.
Limitations
Reconstructed tick direction is an inference — the tick rule is the accepted public-market proxy but is not a direct read of bid/ask. Sub-minute LTFs require a PulseWire Premium or Ultimate plan. Microstructure edges decay fast by design; on 1H+ timeframes the engine produces few signals — that is correct behaviour, not a bug.
—
-made with passion by jackofalltrades
Indicator

Indicator

Liquidity Map & Execution Cost# Liquidity Map & Execution Cost
## What this script does
LMX answers three execution questions most indicators ignore: **how expensive is it to get in and out right now, how hard would it be to move size, and where on the chart will price struggle versus travel freely.** It reads only the chart's own price and volume — no symbol is hardcoded, so it runs on any asset and any market (equities, futures, FX, crypto, indices) — and turns the answers into a plain-language trade check: liquidity state, suggested position size, order type, estimated slippage, and a colour-coded map of support, resistance, walls and open gaps.
## Why these components are combined (mashup justification)
This is not several indicators stacked together — it is one liquidity model whose parts each answer a question the others cannot, and they are designed to be read together. Removing any one leaves a specific blind spot:
1. **Cost to cross — effective spread.** Estimated with the EDGE estimator (Ardia, Guidotti & Kroencke 2024) from open/high/low/close, cross-checked against Abdi-Ranaldo (2017) and Corwin-Schultz (2012). This tells you the round-trip cost of entering, which spread-blind tools cannot show. Alone, it says nothing about moving size or about levels.
2. **Cost to move size — price impact.** The Amihud (2002) illiquidity ratio with a high-low refinement, plus a rolling Kyle (1985) lambda computed as a true regression slope. This tells you how far your own order would push price — the question that matters for sizing, and one a spread estimate cannot answer.
3. **Direction of pressure — order imbalance.** A close-location signed-volume imbalance and its persistence. This tells you which side is leaning now, adding direction that the cost measures lack.
4. **The spatial map — volume at price.** A time-decay-weighted, range-distributed volume profile that yields the Point of Control and Value Area (standard 70% method), rendered as directional zones: green support below price, red resistance above, solid = a wall price struggles at, faint = an open gap price slides through. This converts the abstract cost/impact numbers into *locations* on the chart.
5. **Anchored VWAP — fair value.** A volume-weighted average anchored to your chosen reference (last major swing by default; or session/week/month open, or the highest-volume bar), drawn as a trend-coloured line. It is the dynamic counterpart to the static profile: where the average participant is positioned, and whether price is rich or cheap versus that.
Together they form one decision: the spread and impact set the **cost and size**, the imbalance and VWAP set the **direction and fair value**, and the map sets the **location** — so the output is "trade full size with market orders, buyers in control, room to run up to the gap above," not five separate readings.
## How a reading is produced
Each estimator is normalised to a percentile of its own history so thresholds adapt to every symbol and timeframe. The inverted spread, inverted impact and depth combine into a 0–100 **Liquidity Score**, classified as Deep / Normal / Thin / Stressed (a sudden impact spike forces Stressed). The score drives the suggested size multiplier, the order-type advice and the slippage estimate. The map is rebuilt on the last bar from the volume-at-price profile.
## How to use it
- Apply to any symbol. Set the price source and, if you trade very low intraday timeframes, optionally fix the calc timeframe (e.g. Daily) so the spread estimators stay stable. On symbols without real volume the volume modules disable automatically and the score leans on the spread estimators (the panel shows "price-only").
- **Simple mode (default)** gives plain-language guidance: Liquidity, Trade cost, Pressure, Position size, Orders, Watch-out, Fair value, and a one-line verdict. **Pro mode** exposes the full readout (spread in bps, Amihud and Kyle percentiles, depth, imbalance, flow persistence, value-area levels).
- On the chart: trade toward green support, expect resistance at red, size down where the map is thin (price moves fast there), and read the trend-coloured fair-value line for rich/cheap context.
- Alerts: liquidity-state change and sudden liquidity withdrawal.
## Originality
The combination is the original contribution: a single overlay that fuses low-frequency **spread**, **impact** and **imbalance** estimators with a **time-decay, range-distributed volume profile** and an anchored fair-value line, then translates all of it into sizing/order/slippage decisions in plain language. The building blocks are public-domain methods (EDGE, Abdi-Ranaldo, Corwin-Schultz, Amihud, Kyle, volume-profile Value Area, anchored VWAP), each used for the specific job described above and cited in the script header.
## Limitations (please read)
- These are **low-frequency estimators** of quantities normally measured from quote/tick data. They approximate — they do not measure — the true spread, depth, or dealer book.
- Volume-based modules require a real volume feed; they disable on symbols without one.
- Spread estimators were validated on daily-type bars; on very fast intraday timeframes they are noisier — use the calc-timeframe option if needed.
- The on-panel statistics are computed on the loaded chart history.
- This is an analysis tool, **not financial advice.** Test before use and trade at your own risk.
Indicator

Gatev Relative Value Arbiter [JOAT]Gatev Relative Value Arbiter
Introduction
Gatev Relative Value Arbiter studies relative value between the chart symbol and a selected peer using beta spread, z-score, stationarity, Kalman residuals, and OU speed.
This open-source indicator is designed as a context tool, not a standalone trading system. It focuses on explaining the current market state with restrained visuals and confirmed-bar logic where signals are used.
Core Concepts
1. Rolling Beta Spread
The chart log price is modeled against the peer log price with rolling beta and alpha.
2. Spread Z-Score
Residual spread is normalized to identify cheap and rich dislocations.
3. Kalman Residual
A recursive residual estimate adapts to changing pair behavior.
4. Stationarity and OU Speed
Correlation, beta drift, skew, kurtosis, and OU-style speed grade pair quality.
spread = logChart - (alpha + beta * logPeer)
Features
Peer relative-value model
Rolling beta and spread z-score
Kalman residual z-score
Stationarity and cointegration energy proxies
Cheap, rich, prime, broken, and fair-value states
Input Parameters
Peer symbol
Rolling beta and z-score lengths
Entry and exit z thresholds
Minimum correlation
Cooldown and display toggles
How to Use This Script
Choose a logically related peer. Cheap and rich states are most meaningful when pair validity and stationarity remain acceptable.
Limitations
The script uses historical OHLCV data and cannot know future prices.
Signals and states can be late during fast reversals because confirmed-bar logic is used to reduce repainting.
Model outputs should be interpreted with market context, risk controls, and independent analysis.
No visual state should be treated as a certain trade outcome.
Originality Statement
GRA is original in combining rolling beta arbitrage logic, Kalman residuals, OU speed, and stationarity grading.
Disclaimer
This indicator is provided for educational and informational purposes only. It is not financial advice, investment advice, or a recommendation to buy or sell any financial instrument. All calculations are derived from historical market data and may produce inaccurate readings in some market conditions. No indicator can predict future market behavior. Use proper risk management and independent judgment.
-Made with passion by jackofalltrades
Indicator

Meridian Stochastic Regime Suite [JOAT]Meridian Stochastic Regime Suite
Introduction
Meridian Stochastic Regime Suite is an open-source adaptive oscillator built for traders who want more context than a standard stochastic line can provide. The script combines a centered stochastic engine, an adaptive response model, and a regime profile so the oscillator changes character as the market shifts between trend, compression, expansion, and balance.
The problem Meridian solves is signal quality. Standard oscillators often look clean, but they do not explain whether momentum is occurring inside a compressed market, an expanding breakout phase, or a stable trend. Meridian adds that context directly into the oscillator architecture so the same reading can be interpreted differently depending on the active regime profile.
Core Concepts
1. Centered stochastic architecture
Price is pre-smoothed first, then converted into a stochastic reading that is centered around 50 so directional pressure is easy to interpret:
smoothHigh = ta.ema(high, priceSmoothLen)
smoothLow = ta.ema(low, priceSmoothLen)
smoothClose = ta.ema(close, priceSmoothLen)
rawStoch = 100.0 * (smoothClose - ta.lowest(smoothLow, stochLen)) / stochRange
2. Adaptive response engine
The main oscillator does not use static smoothing alone. Its response speed and gain expand or contract based on the regime profile:
gainBias = gainBase + trendScore * 0.38 + expansionScore * 0.18 - compressionScore * 0.12
speedBias = responseBase + trendScore * 0.08 + expansionScore * 0.04
adaptiveOsc := adaptiveOsc + speedBias * (adaptiveSeed - adaptiveOsc )
This helps the oscillator respond differently in directional and compressed conditions.
3. Embedded regime scoring
Meridian computes four internal state scores:
Trend
Compression
Expansion
Balance
Those scores are derived from ATR behavior, path efficiency, and slope strength, then normalized into a regime profile shown in the dashboard.
4. Spread and signal layer
The script compares the adaptive oscillator to a slower signal line and visualizes the spread around the neutral axis. This gives a direct view of acceleration versus drag.
5. Institutional oscillator panel
The panel uses restrained zones, layered fills, and a top-right dashboard instead of loud markers. The result stays readable while still carrying multiple analytical dimensions.
Features
Centered stochastic core: Keeps the oscillator readable around a neutral midpoint
Adaptive response model: Gain and speed shift with the internal regime profile
Four-state regime map: Trend, Compression, Expansion, and Balance
Fast line and signal line: Shows momentum acceleration versus stabilization
Spread shading: Highlights when the adaptive oscillator is separating from the signal line
Regime dashboard: Displays state, confidence, adaptive reading, signal reading, and regime profile shares
Confirmed-bar flips: Internal state transitions are tracked on closed bars
Non-repainting design: Uses only current-timeframe data and no future references
Input Parameters
Stochastic Core:
Price Pre-Smoothing
Stochastic Length
Fast Smoothing
Adaptive Signal Smoothing
Regime Filter:
Regime Window
ATR Window
Base Oscillator Gain
Base Response Speed
Visual Output:
Show Adaptive Zones
Show Centered Fast Line
How to Use This Indicator
Step 1: Start with the regime
Read the dashboard first. Trend and Expansion regimes support directional interpretation. Compression and Balance call for more caution.
Step 2: Watch adaptive versus signal spread
When the adaptive line separates cleanly from the signal line, momentum is strengthening. When the spread compresses, the move is losing urgency.
Step 3: Use the centered fast line as timing context
The fast line helps show whether short-term momentum is leading or lagging the adaptive engine.
Step 4: Avoid isolated readings
Meridian is strongest when used alongside a structure or value-based tool rather than as a standalone trade trigger.
Indicator Limitations
Like all oscillators, Meridian can remain elevated or depressed during strong directional trends
Compression states may delay re-acceleration readings until volatility expands again
The regime profile is descriptive, not predictive
Originality Statement
Meridian Stochastic Regime Suite is original in how it embeds a four-state regime profile directly into the adaptive behavior of a centered stochastic engine. It is published because:
The oscillator response changes with internal market-state measurements instead of using only fixed smoothing
The script surfaces trend, compression, expansion, and balance as percentages inside the same panel
The panel and dashboard design turn regime context into an interpretable momentum framework rather than a generic stochastic clone
Disclaimer
This indicator is provided for educational and informational purposes only. It is not financial advice or a recommendation to trade. Oscillator readings can remain extreme for extended periods, and regime classifications can shift as conditions evolve. Always use independent judgment and proper risk management.
Indicator

Covenant Regime Register [JOAT]Covenant Regime Register
Introduction
Covenant Regime Register is an open-source market context indicator that classifies whether price is currently behaving like a directional auction or a rotational auction. Instead of treating trend detection as a single yes-or-no output, the script builds two competing probability streams and continuously updates which state has stronger evidence.
The problem this indicator solves is context drift. Many tools are applied the same way in every environment even though trending conditions and ranging conditions reward very different decisions. Covenant Regime Register separates those environments first, then exposes confidence, directional efficiency, and bias so the trader can decide whether to lean into continuation logic or step back into rotation logic.
Core Concepts
1. Multi-factor regime observations
The regime engine does not rely on one input. It blends normalized returns, normalized volatility, directional efficiency, and slope persistence into a two-state regime model:
logReturn = math.log(close / nz(close , close))
realizedVol = ta.stdev(logReturn, volatilityLength)
efficiencyRatio = math.abs(close - close ) / math.sum(math.abs(ta.change(close)), efficiencyLength)
This keeps the classification grounded in both movement quality and volatility behavior.
2. Probabilistic state competition
Directional and rotational states each receive an emission score. Those scores are then smoothed through a persistence-heavy probability engine so the output does not flip on every small fluctuation:
posteriorTrend = emissionTrend * priorTrend
posteriorRange = emissionRange * priorRange
trendProb := trendProb + learningInput * (targetTrend - trendProb)
The result is a stable state register rather than a noisy binary switch.
3. Confidence-aware classification
The script only considers a regime confirmed when the dominant state exceeds the user-defined confidence threshold on a confirmed bar. This helps reduce false transitions during temporary turbulence.
4. Probability spread visualization
Trend probability and range probability are plotted together, while the spread between them is shaded as a separate area. This lets the user see whether the market is decisively one-sided or only marginally biased.
5. Institutional dashboard
The top-right dashboard reports current state, confirmation status, trend probability, range probability, efficiency, and directional bias using a restrained dark palette designed to stay readable on a clean chart.
Features
Two-state regime model: Directional auction versus rotational auction
Multi-factor classification: Uses returns, volatility, efficiency, and slope instead of a single oscillator threshold
Probability outputs: Trend and range are shown as separate probability streams
Confidence gate: Regimes are only considered confirmed above the user-defined threshold
Spread visualization: Shows the separation between the two competing states
Dark institutional dashboard: Compact top-right panel with current state and supporting metrics
Confirmed-bar regime alerts: Alerts only fire when a new regime is confirmed on bar close
Non-repainting design: Uses only current-timeframe information and confirmed-bar state transitions
Input Parameters
Regime Engine:
Return Lookback: Smoothing window for the return series
Volatility Lookback: Window used to normalize realized volatility
Efficiency Length: Measures directional travel versus rotational travel
Probability Learning: Controls how quickly the posterior probabilities adapt
Trend Confirmation Threshold: Minimum dominant probability required before a regime is treated as confirmed
Visual System:
Show Regime Backdrop
Show Probability Spread
Show State Ribbon
Show Dashboard
How to Use This Indicator
Step 1: Read the dominant state
If Trend Probability is above Range Probability and the confidence threshold is met, the market is behaving more directionally. If Range Probability dominates, the market is behaving more rotationally.
Step 2: Check confirmation
Use the confirmation state before treating the output as actionable. Developing readings can still change as the current bar closes.
Step 3: Use efficiency and bias together
High efficiency with strong directional bias supports continuation logic. Low efficiency with range dominance supports mean-reversion or lower-aggression decision making.
Step 4: Apply it as a filter
This indicator is best used as a context layer for other tools. It is not intended to predict the next bar by itself.
Indicator Limitations
Regime models classify the present environment; they do not forecast future direction
Extremely fast reversals can temporarily lower confidence before the new state stabilizes
Range and trend can overlap during transition periods, so marginal readings should be treated cautiously
Originality Statement
Covenant Regime Register is original in how it combines normalized return behavior, normalized volatility, directional efficiency, and slope persistence into a compact two-state probability register with an explicit confidence gate. It is published because:
The script produces competing regime probabilities rather than a single trend flag
The classification emphasizes state persistence and bar-close confirmation instead of hyper-reactive regime flipping
The dashboard surfaces regime context in a compact format suitable for use as a decision filter alongside other indicators
Disclaimer
This indicator is provided for educational and informational purposes only. It is not financial advice and does not guarantee future market behavior. All regime classifications are derived from historical and current price behavior and can produce false or delayed readings. Always use independent judgment and proper risk management.
Indicator

10Y Yield Spread - Auto FX Pair10Y Yield Spread — Auto FX Pair
Automatically displays the 10-year government bond yield spread for the FX pair currently on your chart. Switch from EURUSD to USDJPY to GBPAUD and the indicator instantly recalculates — no manual reconfiguration needed.
What it shows
The spread between the base currency's 10Y yield and the quote currency's 10Y yield, expressed in basis points. For example:
USD/JPY → US10Y minus JP10Y
EUR/USD → DE10Y (Bund) minus US10Y
GBP/AUD → GB10Y minus AU10Y
A positive spread (green) means the base currency offers a yield premium — historically a tailwind for the pair. A negative spread (red) means the opposite. The wider the spread, the stronger the rates differential pushing the pair.
Why it matters
Yield differentials are one of the most reliable medium-term drivers of major FX pairs. When the spread trends one way and the pair trends the other, you're often looking at a setup waiting to resolve — either the pair catches up, or the spread breaks. Particularly powerful for:
Carry trade decisions (positive spreads = positive carry on the long side)
Filtering FX trades against the macro backdrop
Spotting divergences between price and rates
Anticipating central bank repricing impact across pairs
Confirming or fading reactions to CPI, NFP, and rate decisions
Supported pairs
All combinations of the 8 majors: USD, EUR, JPY, GBP, AUD, NZD, CAD, CHF. Auto-detection works on standard naming (EURUSD, EUR/USD, OANDA:USDJPY, FX:GBPJPY, etc.). For exotic symbols or futures, switch to Manual mode and pick base/quote from the dropdowns.
Yield benchmarks used
USD → US10Y (US Treasury)
EUR → DE10Y (German Bund, eurozone benchmark)
JPY → JP10Y (JGB)
GBP → GB10Y (Gilt)
AUD → AU10Y
NZD → NZ10Y
CAD → CA10Y
CHF → CH10Y
Settings
Moving average : configurable SMA overlay (default 50) to smooth the spread trend
Zero line : visual reference for spread sign change
Background fill : green above zero, red below — instant regime read
End label : shows current pair and live spread value in bps
Pair detection : Auto (reads chart ticker) or Manual (override with dropdowns)
Recommended setup
Works on any FX chart timeframe from 15m to daily. For best results, pair this with my companion indicator Bond Yield Strength — 10Y Majors to see the full rates landscape alongside the specific spread of your pair.
Notes
DE10Y (German Bund) is used as the EUR proxy — it's the de facto eurozone benchmark used by rates desks globally. Data availability for some symbols depends on your PulseWire plan; if a yield doesn't render, your plan may not include that exchange.
Feedback and suggestions welcome. Indicator

Cross Exchange Premium Drift Map [AGPro Series]Cross Exchange Premium Drift Map
🧠 Core Idea
Is the active crypto venue drifting away from the exchange basket, or is the market staying aligned across venues?
📌 Overview / What it does
Cross Exchange Premium Drift Map is a crypto market structure tool designed to compare the active chart against a configurable basket of exchange reference symbols.
Instead of reading only the local chart, the script builds a venue basket from multiple exchange feeds and measures whether the active venue is trading at a premium, discount, or neutral alignment versus that basket.
It produces a premium drift path, a dispersion path, a right-side venue premium stack, event labels, strongest/weakest venue context, and a compact panel. It does not predict price direction, automate trading, or claim that a premium will close immediately.
🎯 Purpose & Design Philosophy
This script was built to fill a specific gap in crypto analysis: many traders look at one exchange chart and assume that chart represents the whole market.
Crypto is fragmented across venues. Premiums, discounts, and venue dispersion can appear before important shifts in liquidity, risk appetite, or execution quality.
The purpose of this tool is to make that fragmentation visible in a structured, readable, and non-predictive way.
⚡ Why This Script Is Different
Most tools focus on the active chart alone, or compare futures against spot using a basis model.
This script does NOT operate as a funding, carry, open interest, or perp-versus-spot basis indicator.
Instead, it compares the active venue against a configurable cross-exchange reference basket, then maps premium drift, venue dispersion, strongest venue, weakest venue, and alignment quality into a dedicated visual workflow.
⚙️ Methodology
1. Venue Basket Construction
The script requests multiple user-defined exchange symbols and builds an average reference basket from available venue prices.
2. Premium Drift Detection
The active chart is compared against the venue basket to calculate premium or discount.
3. Dispersion Evaluation
The script measures how far individual venues are spread around the basket.
4. State Classification
Premium, discount, spread expansion, spread compression, and exchange alignment are converted into readable states.
5. Visual Output
The chart displays premium paths, event labels, a right-side venue stack, and a panel summary.
🗺️ How to Read the Chart
The premium drift path shows how the active chart behaves relative to the venue basket.
The dispersion path shows whether exchange prices are widening away from each other or compressing toward alignment.
The right-side venue stack shows the current premium/discount context, basket drift, dispersion, strongest venue, and weakest venue.
Labels mark meaningful changes such as Venue Premium, Venue Discount, Spread Expansion, and Exchange Alignment.
The panel summarizes state, score, premium, drift z-score, velocity, dispersion, direction, grade, and venue count.
🚦 Signals & States
• Venue Premium → the active chart trades meaningfully above the exchange basket
• Venue Discount → the active chart trades meaningfully below the exchange basket
• Spread Expansion → venue dispersion is widening
• Spread Compression → venue prices are moving closer together
• Exchange Alignment → venues are compressed and the active chart is near the basket
• Check Venue Set → selected symbols may not represent the same asset or may be mismatched
🔔 Alerts Logic
Alerts trigger when the script detects a fresh state transition into a meaningful venue condition.
Venue Premium alerts mark active-chart premium pressure versus the basket.
Venue Discount alerts mark active-chart discount pressure versus the basket.
Spread Expansion alerts mark widening cross-exchange dispersion.
Exchange Alignment alerts mark compression toward venue agreement.
Alerts are attention markers, not trade instructions.
🧩 Confluence Logic
The strongest readings occur when premium drift, drift z-score, velocity, dispersion, and persistence align.
When these conditions align, the venue message becomes more meaningful, but it still remains context rather than a prediction.
📊 When to Use
• Crypto spot charts with active multi-exchange liquidity
• BTC, ETH, and major liquid altcoin pairs
• Periods where venue premium, discount, or spread quality matters
• Market structure review before interpreting local price action
• Cross-exchange monitoring during volatile sessions
⚠️ When NOT to Use
• Illiquid symbols with unreliable venue references
• Symbols where the basket does not match the active chart asset
• Extremely noisy low-timeframe conditions
• Markets where one or more venue feeds are missing or stale
• Situations where the user expects guaranteed arbitrage signals
🎛️ Key Inputs
• Venue Symbols → define the exchange reference basket
• Venue Labels → control the short exchange names shown in the visual stack
• Premium Threshold → controls when active-chart premium or discount becomes relevant
• Dispersion Threshold → controls when cross-exchange spread widening matters
• Premium Baseline Length → controls the drift baseline
• Premium Z-Score Length → controls normalization
• Visual Settings → control panel, labels, paths, and venue stack display
🖥️ Interface & Visual Design
The interface is built for quick market reading.
The panel provides compact state information.
The premium stack shows the current venue relationship without using pale or white primary visuals, preserving readability on both dark and light chart backgrounds.
Labels are designed to be visible, premium, and not buried inside candles.
🧪 Practical Usage Workflow
1. Confirm that the venue symbols match the active chart asset.
2. Read the panel state and score.
3. Check whether the active chart is premium, discount, aligned, or mismatched.
4. Inspect the strongest and weakest venue labels.
5. Use the premium and dispersion paths to understand whether the relationship is widening or normalizing.
🔍 Interpretation Guidelines
A venue premium does not automatically mean price must fall.
A venue discount does not automatically mean price must rise.
Spread expansion means exchange prices are becoming less aligned.
Exchange alignment means the active venue is closer to the basket.
The script should be read as market context, not as a buy or sell system.
🚫 What This Script Is NOT
This script is not a prediction engine.
It is not financial advice.
It is not an arbitrage execution tool.
It is not an auto-trading system.
It does not guarantee that premiums, discounts, or spreads will normalize.
⚠️ Limitations & Transparency
Cross-exchange readings depend on symbol quality, venue availability, quote currency differences, and PulseWire data access.
USD and USDT references may behave slightly differently.
Low-liquidity assets can produce unstable readings.
Timeframe differences and exchange data behavior can affect how states appear.
🧠 Market Context Notes
Crypto markets are fragmented.
The same asset can trade differently across exchanges because of liquidity, regional flow, quote currency differences, venue-specific demand, and execution conditions.
This script attempts to make that fragmentation easier to see.
🧾 Use Case Examples
When the active chart trades above the basket while dispersion expands, the market may be showing venue-specific premium pressure.
When the active chart trades below the basket while dispersion expands, the market may be showing local venue weakness.
When premium and dispersion compress together, the market may be returning toward exchange alignment.
🧱 System Philosophy
Cross Exchange Premium Drift Map follows the AGProLabs design principle of building decision-support maps rather than prediction tools.
The goal is to improve context, visual structure, and trader awareness.
🔐 Non-Promise Statement
No signal in this script guarantees a future price move.
No premium or discount reading guarantees convergence.
All outputs require broader market interpretation.
📉 Risk Disclosure
Trading involves risk.
Users are fully responsible for their own decisions.
This script does not provide financial advice, investment advice, or guaranteed trading outcomes.
📚 Educational Note
This tool is designed for educational and analytical use. It helps traders study cross-exchange price behavior, venue alignment, and premium drift as part of a broader market structure workflow.
Indicator

Perpetual Basis Drift Map [AGPro Series]Perpetual Basis Drift Map
🧠 Core Idea
Is the perpetual market quietly drifting away from spot, or is the basis relationship compressing back toward neutral?
📌 Overview / What it does
Perpetual Basis Drift Map is a crypto derivatives context tool designed to monitor how the active perpetual or futures market behaves against a matching spot reference.
The script compares the active chart price with an automatically selected spot reference, measures basis percentage, basis drift, normalized basis z-score, drift velocity, persistence, and trend context. It converts that relationship into an open three-rail basis drift meter, state labels, right-side tags, alerts, and an AG Pro dashboard.
It does not read official funding payments, automate trades, predict future price direction, or promise that basis must mean-revert. It is a structured visual map for interpreting perpetual premium, perpetual discount, basis expansion, basis compression, reset, and spot-reference mismatch conditions.
🎯 Purpose & Design Philosophy
This script was built to separate basis drift from generic funding or premium talk.
Funding pressure can be noisy, and a raw premium number is often not enough. Traders need to know whether the relationship between perp/futures and spot is widening, compressing, persisting, or simply resetting.
The design goal is to make basis behavior visible as a chart story, not just a number in a panel.
⚡ Why This Script Is Different
Most tools show a spread or premium value and leave the interpretation to the user.
This script does NOT treat basis as a simple buy or sell signal, does NOT claim that premium must reverse, and does NOT hide reference mismatch risk.
Instead, it maps the basis relationship into states: Positive Drift, Negative Drift, Basis Expansion, Basis Compression, Reset, and Check Spot Ref, while the chart labels use Premium Drift, Discount Drift, Spread Expansion, and Basis Compression for faster visual reading. It uses spot-reference comparison, baseline drift, z-score, velocity, persistence, and trend context together.
⚙️ Methodology
1. Context Detection
The script builds a spot reference from the active chart base currency, selected exchange, and selected quote.
2. Reference Mapping
It compares the active market against the spot reference and calculates basis percentage.
3. Reaction Evaluation
The model evaluates basis drift from baseline, normalized basis z-score, drift velocity, persistence, and trend context.
4. Visual Output
The result is shown as a compact open basis drift meter, centered meter label, right-side tags, event labels, and dashboard panel.
🗺️ How to Read the Chart
The basis drift meter separates the current read into three visible layers: state rail, basis value rail, and pressure score rail. It is intentionally open-ended rather than a closed corridor, so the visual story feels different from zone-first tools.
Labels mark state changes such as Premium Drift, Discount Drift, Spread Expansion, and Basis Compression. Optional compact pulse markers add additional context when premium, discount, expansion, or compression pressure appears without turning the script into a signal engine.
Colors communicate context:
• Teal = positive/perp-premium drift pressure
• Pink = negative/perp-discount drift pressure
• Yellow = spread expansion or reference warning
• Indigo = compression/reset regime
The panel summarizes state, score, basis, basis z-score, velocity, persistence, direction, quality, spot reference, trend, and meter values.
🚦 Signals & States
• Positive Drift → perpetual/futures market is drifting above the spot reference
• Negative Drift → perpetual/futures market is drifting below the spot reference
• Basis Expansion → basis deviation and drift velocity are widening
• Basis Compression → basis deviation is compressing back toward neutral
• Reset → no active drift state is strong enough to dominate the read
• Check Spot Ref → selected spot reference appears mismatched or unavailable
🔔 Alerts Logic
Alerts trigger when the script transitions into selected basis states.
Positive Basis Drift alerts mark meaningful upward perp-versus-spot drift.
Negative Basis Drift alerts mark meaningful downward perp-versus-spot drift.
Basis Expansion alerts mark widening basis deviation and drift velocity.
Basis Compression alerts mark movement back toward a neutral basis relationship.
Alerts are attention markers, not trade instructions.
🧩 Confluence Logic
The strongest context appears when multiple components align:
Basis percentage + normalized basis z-score + drift velocity + persistence + trend context.
When basis widens and persists, the relationship may deserve closer attention. When basis compresses, the market may be returning toward a more neutral perp-versus-spot condition.
📊 When to Use
• Crypto perpetual and futures charts
• Markets where spot reference comparison is meaningful
• Perp/spot monitoring on BTC, ETH, and liquid crypto pairs
• Basis expansion, basis compression, and drift-context analysis
• Sessions where derivatives premium or discount behavior matters
⚠️ When NOT to Use
• Symbols with poor spot-reference alignment
• Illiquid markets with unreliable pricing
• Spot-only charts if the user expects a derivatives basis story
• Extreme news events where spread behavior can become unstable
• Markets where the active symbol and selected reference are not comparable
🎛️ Key Inputs
• Auto Spot Reference → automatically builds a matching spot reference
• Basis Baseline Length → controls how quickly the normal basis relationship adapts
• Basis Normalization Lookback → controls how unusual basis drift must be
• Drift Velocity Lookback → measures whether basis is widening or tightening
• Persistence Window → measures whether basis behavior continues across bars
• Reference Mismatch Guard % → prevents mismatched references from being interpreted as real basis drift
• Visual Settings → control meter projection, labels, right-side tags, and font sizes
🖥️ Interface & Visual Design
The interface is designed around a premium chart-first story.
The basis drift meter provides the main visual anchor. Centered meter text explains the state without relying on weak transparent labels or a large corridor box. Right-side tags keep the current state, basis, and score visible near the active price area.
The panel follows the AG Pro standard with a merged blue header row, adjustable location, adjustable theme, and adjustable font size.
🧪 Practical Usage Workflow
1. Apply the script to a crypto perpetual or futures chart.
2. Keep Auto Spot Reference enabled for the first pass.
3. Confirm the Spot Ref row matches the active market base currency.
4. Read State, Score, Basis, Basis Z, and Velocity.
5. Inspect whether basis is drifting, expanding, compressing, or resetting.
6. Confirm the read with broader market structure, liquidity, volatility, and risk management.
🔍 Interpretation Guidelines
Positive basis drift can show perp premium building, but it does not automatically mean price must fall.
Negative basis drift can show perp discount building, but it does not automatically mean price must rise.
Basis expansion is a context marker, not a trade instruction.
Basis compression can indicate normalization, but normalization does not guarantee direction.
🚫 What This Script Is NOT
This script is not a prediction engine.
This script is not financial advice.
This script is not an auto trading system.
This script is not a guaranteed signal engine.
This script does not read official funding payments directly.
This script does not claim that basis drift must immediately reverse.
⚠️ Limitations & Transparency
The script estimates basis from active-symbol versus spot-reference price behavior.
Reference quality matters. If the selected reference is wrong or unavailable, the script shows Check Spot Ref rather than presenting the spread as valid basis drift.
Different exchanges, contract types, liquidity conditions, and timeframes can produce different basis behavior.
Very low basis values can be visually clean but may not produce a dramatic story.
🧠 Market Context Notes
Perpetual basis can help traders understand whether derivatives pricing is leaning above or below spot.
The value of this tool is strongest when combined with structure, volatility, liquidity, open interest, and disciplined risk management.
Basis tells context. It does not create certainty.
🧾 Use Case Examples
When a perpetual chart trades persistently above spot and basis velocity expands, the script may classify Positive Drift or Basis Expansion.
When a perpetual chart trades persistently below spot and basis velocity expands downward, the script may classify Negative Drift.
When basis returns toward its baseline, Basis Compression can help show normalization.
🧱 System Philosophy
Perpetual Basis Drift Map follows the AGProLabs principle of building decision-support maps rather than prediction tools.
The script is designed to make hidden derivatives context easier to see, not to replace judgment.
🔐 Non-Promise Statement
No basis model can guarantee future price direction.
No drift score removes uncertainty.
This tool helps organize context; it does not create certainty.
📉 Risk Disclosure
Trading involves risk.
Crypto derivatives can be highly volatile and may involve leverage, liquidation risk, exchange risk, funding-cost changes, and rapid market movement.
This script is for educational and analytical purposes only.
It does not provide financial advice or guaranteed trading outcomes.
Users remain responsible for their own decisions.
📚 Educational Note
Use the script as a learning layer for understanding how perpetual premium, perpetual discount, basis drift, basis velocity, and spot-reference behavior can combine into a cleaner derivatives-context read.
Indicator

Yield Curve MonitorWhat you see in the preview image
The chart displays the complete US Treasury yield curve as a smooth log-scaled polyline drawn to the right of the last bar, with all eleven maturities from 1-month T-bills to 30-year bonds plotted at their actual yield values. The solid line shows today's curve; the dashed line shows the curve from 21 trading days ago for direct visual comparison. Each tenor is labeled with its name and yield in percent. To the right, a comprehensive dashboard table lists every maturity with current yield, the change in basis points versus the historical reference date, and a relative magnitude bar. Below the maturity rows the four most-watched yield-curve spreads are shown (2s10s, 3m10y, 2s30s, 5s30s) with their current value, change versus history, and inversion status. The footer classifies both the current and historical curves into one of five regimes — Steep, Normal, Flat, Inverted, or Humped — using a user-selectable slope metric.
What this indicator does
This is a complete US Treasury yield-curve workstation built into a single PulseWire pane. It solves a problem that ordinary time-series indicators cannot: the yield curve is fundamentally a cross-sectional object — yield as a function of maturity at a single moment — but standard charts plot variables against time. By rendering the curve as a polyline anchored to the right of the last bar, with maturity on a logarithmic x-axis and yield on the price axis, the indicator gives you a real, geometrically faithful view of curve shape, alongside a complete data table and historical comparison.
Eleven maturities are pulled from PulseWire's TVC feed at daily resolution: US01MY, US03MY, US06MY, US01Y, US02Y, US03Y, US05Y, US07Y, US10Y, US20Y, US30Y. Each tenor is requested twice — once for the current bar and once for a user-defined lookback offset — giving the indicator a paired snapshot that drives every visualization and metric. If a specific tenor is unavailable on your data plan (US20Y is the most common gap), that point silently drops from the curve and shows an em dash in the table — no errors are raised.
Settings explained
Display group
Curves geplottet (Curves to plot) — choose which yield curves are drawn to the right of the last bar: , , or . The dashboard table always shows both datasets regardless of this setting; this toggle controls only the visual polyline. The tenor labels next to the points always reflect the curve being plotted (or the current curve when both are shown).Current onlyHistoric onlyBoth
Slope-Metrik (Shape-Klassifikation) — selects which spread drives the Steep / Normal / Flat / Inverted / Humped classification shown in the dashboard footer. Six options are available: (the default, broadest possible measure), (classic NBER recession lead-indicator), (the Federal Reserve's preferred recession signal), (long-end steepness), (pure long-end term-premium proxy), and (full-spectrum slope excluding T-bills). Each metric has its own empirically calibrated thresholds (see the Methodology section), so the classification remains meaningful regardless of which spread you choose. Alerts also fire on the selected spread.30y - 3m10y - 2y (2s10s)10y - 3m (3m10y)30y - 5y (5s30s)30y - 10y (10s30s)30y - 2y (2s30s)
Dashboard anzeigen — show or hide the data table.
Tabellen-Position — five anchor points for the dashboard: top-left, top-right, middle-right, bottom-right, bottom-left.
Historic Lookback (Daily Bars) — the number of trading days back used for the historical comparison. Default is 21, which approximates one trading month. Useful presets: 21 ≈ 1 month, 63 ≈ 1 quarter, 126 ≈ 6 months, 252 ≈ 1 year. Maximum 504 bars (≈ 2 years).
Style group
Five customizable colors mapped to semantic roles (Bull/Steep/Current, Bear/Inversion, Neutral/Normal, Warning/Flat/Hump, Historic). One additional input controls the polyline line width (1 to 5). All defaults match a dark theme; the colors can be repointed to fit any chart style.
Alerts group
Two alert toggles: one fires when the user-selected slope metric crosses below zero (inversion event), the other when it crosses back above zero (re-steepening event). Both alerts trigger on confirmed daily-bar closes only — there is no intrabar repainting.
What the dashboard shows
The table is divided into three blocks.
Maturity block (eleven rows) — one row per tenor showing the current yield to three decimal places, the change in basis points versus the lookback date with directional color (green up, red down), and a magnitude bar built from filled and empty Unicode block characters that visualizes the yield's size relative to the highest yield in the curve. This block lets you read absolute levels and recent moves at a glance.
Key Spreads block (four rows) — the four most-watched curve spreads (2s10s, 3m10y, 2s30s, 5s30s), each with current value, change in basis points versus the lookback date, and an OK / INVERTED status flag. These four are shown unconditionally regardless of which slope metric you selected for shape classification, so you always have the full institutional toolkit visible.
Curve Shape block (one or two rows) — one row per plotted curve (Current and/or Historic, depending on the curve toggle). Each row shows the regime label (STEEP, NORMAL, FLAT, INVERTED, or HUMPED) on a colored background matching the regime, the current slope value of the selected metric, and the metric's name. This lets you compare regime states between today and the lookback date directly: the curve may have shifted from FLAT to STEEP, for example, even if both versions are visible on the chart.
Methodology — shape classification
The indicator uses the user-selected spread as its primary slope input, with four absolute thresholds calibrated empirically from US Treasury data since 1990:
30y - 3m Steep : +1.5% Normal > +0.3% Flat > -0.3% Inverted ≤ -0.3%
10y - 2y (2s10s) +1.0% +0.2% -0.2% -0.2%
10y - 3m (3m10y) +1.5% +0.3% -0.3% -0.3%
30y - 5y (5s30s) +0.7% +0.15% -0.15% -0.15%
30y - 10y (10s30s) +0.5% +0.1% -0.1% -0.1%
30y - 2y (2s30s) +1.0% +0.2% -0.2% -0.2%
The thresholds reflect each spread's historical distribution: the long-end spreads (5s30s, 10s30s) have far narrower ranges than the broad measures (30y-3m, 3m10y), so applying a single global threshold would over-classify the long-end as STEEP at almost every reading. By calibrating per metric, the classification stays meaningful no matter which spread the user selects.
A separate Hump detection runs alongside: if the maximum yield in the curve falls in the belly (2Y, 3Y, 5Y, or 7Y) and the overall slope is below twice the Normal threshold, the curve is classified as HUMPED. This identifies the canonical inverted-belly shape that often signals a near-term policy-rate peak followed by expected easing.
How to read the curve
A Steep curve typically associates with early-cycle expansions, accommodative monetary policy, or rising inflation expectations — investors demand higher compensation to lend further out. A Normal curve is the long-term default state of healthy bond markets. A Flat curve indicates near-equality of short and long expectations, typically near cyclical turning points. An Inverted curve, where long yields trade below short yields, has preceded every US recession since the 1960s with an average lead time of roughly 12 to 18 months — this is the signal to watch for. A Humped shape, where the belly trades above both ends, typically reflects market pricing of a near-term hiking cycle followed by expected cuts.
The dashed historical curve makes regime transitions visually obvious. If the solid current curve sits below the dashed reference across all tenors, yields have fallen broadly (a bond rally). If the curves cross — for example, the short end is up but the long end is down — the curve has flattened or inverted further during the lookback window. If the spread between them widens at the long end, term premium is expanding.
Repainting and data behavior
All calls use . Alerts trigger only on confirmed daily-bar closes. There is no repainting on confirmed bars.request.securitylookahead = barmerge.lookahead_off
When the chart is on an intraday timeframe, the displayed yields reflect the most recent closed daily bar — during the US trading session this means yesterday's settlement until the new daily close prints. This is correct, non-repainting behavior and is consistent with how all daily-resolution data is served on PulseWire.
The pane scales automatically to the yield range using two invisible anchor plots (min and max across both current and historical curves). This ensures the polyline always uses the full vertical space without manual axis adjustment, regardless of the absolute level of yields.
Limitations
The classification thresholds are static absolutes, not adaptive. In persistent low-rate regimes (such as 2010-2021) the STEEP threshold may register slightly too generously; in high-rate regimes the FLAT threshold may understate compression. The numerical slope value is always shown alongside the label, so you can apply your own judgment when the regime label feels off.
The Hump detection uses a simple argmax check on the belly tenors rather than a full curvature metric (such as the 2 × 5Y minus 2Y minus 10Y butterfly). It is most reliable when the selected slope metric spans the full curve (30y-3m, 3m10y, 2s10s); for narrow long-end metrics (5s30s, 10s30s) the belly lies outside the metric's span and Hump classification can be misleading. When in doubt, switch the slope metric to for the most robust shape reading.30y - 3m
Only US Treasuries are supported in this version. The architecture leaves headroom in the request.security budget (22 of 40 calls used) for adding additional sovereign curves (Bunds, Gilts, JGBs) in future updates.
Two alert conditions are exposed for the user-selected slope metric:
Selected Spread Inversion — fires when the chosen spread crosses below zero (e.g., from positive to negative 2s10s). Useful as an early-warning trigger in macro frameworks.
Selected Spread Re-Steepening — fires when the chosen spread crosses back above zero. The bull-versus-bear-steepener distinction (which end of the curve is moving) requires looking at the individual yields in the dashboard at the moment the alert fires.
Alerts respect the user's slope-metric selection — switching from 2s10s to 3m10y in the settings will redirect the alerts to the new spread automatically.
Recommended use
Place the indicator on a daily chart of a broad US equity index (SPX, ES1!, SPY) to visualize how historical yield-curve regimes have aligned with equity-market phases — the inversion shading and shape labels make prior recession signals immediately visible. For fixed-income traders, place it directly on a Treasury futures chart (ZN1!, ZB1!) to use the live curve view as a directional input alongside the underlying price action. For macro discretionary traders, the configurable slope metric lets you align the shape classification with whichever spread your framework prioritizes — Fed-watchers typically use 3m10y, recession-modelers use 2s10s, term-premium analysts use 5s30s or 10s30s.
Originality
This indicator combines three distinct visualizations of the same dataset — a cross-sectional polyline curve drawn to the right of the last bar, a comprehensive numerical dashboard with eleven tenors and four spreads, and a configurable shape classification with per-metric calibrated thresholds — into a single, self-contained workspace. The log-scaled cross-sectional curve drawing using Pine v6's polyline objects, the historical comparison overlay, and the user-selectable slope metric with empirically calibrated thresholds per spread are not, to my knowledge, available in this combination in other public yield-curve scripts on the platform.
Indicator

Effort vs Result Reaction Map [AGPro Series]Effort vs Result Reaction Map
⚖️ OVERVIEW
Effort vs Result Reaction Map is a premium volume-price reaction indicator built around one of the most practical ideas from Wyckoff and Volume Spread Analysis: effort only matters when it is compared with result.
Many volume tools stop at identifying high volume, relative volume spikes, wide candles or bullish/bearish pressure. This script goes further by asking a more selective question:
Is the market actually getting progress for the effort being spent?
The indicator compares normalized participation effort, ATR-adjusted price progress, close-location quality, directional efficiency and wick behavior. The output is a clean reaction map that highlights two specific event families:
• High effort + poor result
• Low effort + strong result
That makes the script different from a simple volume spike detector, a generic pressure map, a support/resistance drawer or a full Wyckoff phase tool. It is focused on the moment where participation and progress become meaningfully disconnected.
🔬 CORE IDEA
Effort is built from two dimensions:
• Relative volume versus a rolling participation baseline
• Candle spread normalized by ATR
Result is built from:
• Price progress over a configurable number of bars
• Close-location quality in the direction of progress
• ATR-normalized movement quality
Efficiency measures the relationship between those two sides. A bar can show strong volume, but if price does not achieve directional progress, the script treats that as a potential failed-progress reaction. A bar can also move cleanly with surprisingly low effort, which can reveal ease of movement and directional acceptance.
🧭 WHAT MAKES IT DIFFERENT
Most public volume indicators answer one of these questions:
• Is volume high?
• Is relative volume expanding?
• Is price near a volume shelf?
• Is pressure bullish or bearish?
• Is a Wyckoff phase forming?
Effort vs Result Reaction Map answers a narrower and more actionable chart-reading question:
Did the market receive enough result for the effort it spent?
This keeps the tool focused and prevents it from overlapping with broader volume profile, relative volume, delta, session reaction or support/resistance scripts. It does not try to label accumulation, distribution, spring, upthrust or phase structure. Instead, it turns effort/result imbalance into a compact reaction framework that can sit cleanly on any chart.
🎯 SIGNAL TYPES
High Effort + Poor Result
This event appears when participation and spread are unusually active but price progress remains weak. The script studies wick behavior and candle direction to estimate which side attempted progress and failed. The label then expresses the opposite reaction bias:
• Failed Bull Progress
• Failed Bear Progress
Low Effort + Strong Result
This event appears when price makes strong directional progress while effort remains unusually light. This can suggest ease of movement, cleaner directional travel or a lack of opposing participation in that moment:
• Low Effort Rise
• Low Effort Drop
Each event must pass a confidence threshold and a visual cooldown before it appears on the chart. This keeps the output selective and suitable for publication-quality screenshots.
🟦 REACTION BOXES
The script can draw rectangular reaction boxes around qualified events. These boxes are not generic support and resistance zones. They are event-native reaction ranges created only when the effort/result engine finds a meaningful imbalance.
Reaction boxes help the user track whether the market later respects, revisits or ignores the area where effort and result became disconnected. The box length, padding, transparency and minimum confidence are configurable.
This gives the chart more structure without turning the indicator into another broad zone tool.
📊 PANEL
The compact panel reports:
• Effort
• Result
• Efficiency
• Reaction Bias
• Confidence
The first panel row follows the AGPro standard format: one merged blue header row containing only the script name. Panel location, panel theme and panel font size are all configurable from the settings.
⚙️ KEY SETTINGS
Engine
• Effort Baseline Length controls the volume normalization baseline.
• ATR Normalization Length controls spread, progress and object spacing.
• Result Progress Bars defines how far back the result comparison looks.
• Volume Weight In Effort balances relative volume versus candle spread.
Reaction Thresholds
• High Effort Threshold defines unusual participation.
• Low Effort Threshold defines unusually light participation.
• Poor Result Threshold filters failed-progress events.
• Strong Result Threshold filters low-effort strong-result events.
• Minimum Event Confidence controls final event selectivity.
• Visual Cooldown Bars keeps labels and boxes from clustering.
Reaction Boxes
• Box Minimum Confidence keeps boxes more selective than labels if desired.
• Box Extend Right Bars controls how long reaction ranges remain visible.
• Box ATR Padding gives boxes a clean margin around the event candle.
• Box Transparency controls chart softness.
Labels And Markers
• Event labels can be enabled or disabled.
• Label confidence can be shown or hidden; it is hidden by default for cleaner screenshots.
• Label font size defaults to Normal.
• Label offset uses ATR so labels stay away from candle bodies.
• Directional markers provide a minimal visual cue for qualified reactions.
🧠 HOW TO USE
Apply the script to a liquid market and start with the default settings.
Watch for high-effort poor-result labels when volume and spread expand but the market fails to make clean progress. These areas can be useful for studying absorption, failed pushes and short-term reaction shifts.
Watch for low-effort strong-result labels when price moves cleanly without requiring heavy participation. These events can help identify easier directional travel and cleaner movement conditions.
Use the reaction boxes as context zones created by the event itself. They are best read together with structure, trend context, liquidity areas, session behavior or your own discretionary framework.
✅ BEST USE CASES
• Spotting failed directional progress after heavy participation
• Comparing volume effort with actual price result
• Identifying clean movement when result expands on lighter effort
• Studying short-term absorption and efficiency shifts
• Adding Wyckoff/VSA-inspired logic without using a full phase detector
• Keeping a premium chart layout with selective labels and contextual boxes
🧩 LIMITATIONS AND TRANSPARENCY
Effort vs Result Reaction Map is an analytical indicator, not a strategy.
It does not classify full Wyckoff phases, does not draw generic support/resistance, and does not attempt to forecast future price. Its purpose is to organize observed effort/result behavior into a clean visual framework.
Event quality depends on symbol behavior, timeframe, volume reliability and selected thresholds. Markets with unreliable volume data may need more conservative settings.
The script is designed to be selective by default, but users can tune thresholds, confidence, cooldown, label size, panel theme and reaction box visibility to match their preferred chart style.
Indicator

Volume Climax Detector [AGPro Series]Volume Climax Detector
Volume Climax Detector is an advanced volume analytics tool that identifies extreme institutional volume events using a three-filter VSA (Volume Spread Analysis) methodology. Rather than triggering on simple volume multiples, the script combines Volume Z-Score statistics, Spread analysis, and Close Location to isolate genuine climax bars — the kind of exhaustion moves Wyckoff and VSA traders look for at trend tops and bottoms.
🔹 OVERVIEW
Volume alone is a noisy signal. A "high volume bar" on one instrument is a quiet bar on another, and most volume-based indicators either miss real climaxes or fire on every uptick. This script takes a statistical approach: it measures how extreme each bar's volume is relative to its own recent history (Z-Score), confirms the bar structure makes sense (Spread and Close Location), and then classifies the event as a Buying Climax or Selling Climax using trend context — the Wyckoff way.
The result is a small number of high-conviction labels at exactly the places where large participants tend to exhaust themselves: panic buys at tops, panic sells at bottoms, and hidden absorption in between.
🔹 WHAT MAKES IT DIFFERENT
Most volume indicators apply a single threshold (e.g. volume > 2× average) and stop there. This script layers three independent VSA filters, each addressing a different failure mode:
• Volume Z-Score — adapts to the instrument's own volume distribution. A 3σ event on BTC is genuinely rare, regardless of session or timeframe.
• Spread filter — requires the bar's range to exceed its recent average. Eliminates the common false positive of a high-volume bar that barely moved (compression).
• Close Location — requires the close to sit in the upper or lower third of the bar. Separates conviction from indecision.
Beyond detection, two analytics layers set it apart from typical volume tools:
• Reversal Success Tracking — every climax is tracked forward for a configurable window, and the script records whether a meaningful counter-move actually materialised (measured in ATR). The panel shows a live Reversal Rate, so users get honest feedback on how well climaxes have worked on the current symbol and timeframe.
• Magnitude Scoring (1–10) — every climax receives a strength score derived from its Z-Score, making it easy to distinguish routine spikes from truly extreme events (marked with ★).
🔹 METHODOLOGY
1. Volume Statistics
The script computes a rolling mean and standard deviation of volume over a configurable lookback window (default 50 bars). The Z-Score tells how many standard deviations above the mean the current bar is. A reading of 3.0σ or higher (default threshold) corresponds to the top ~0.27% of bars — statistically rare, not just "above average."
2. Triple Filter Gate
A bar qualifies as a potential climax only when:
• Z-Score ≥ threshold (volume anomaly)
• Bar range ≥ spread multiplier × average range (wide spread)
• Close is in the upper 33% (strength) or lower 33% (weakness) of the bar range
3. Wyckoff Classification
• Buying Climax — qualifying bar during an established uptrend. Interpretation: buyers are exhausting themselves; potential topping action.
• Selling Climax — qualifying bar during an established downtrend. Interpretation: sellers are exhausting themselves; potential basing action.
• When no clear trend exists, classification falls back to close location plus bar direction so that sideways regimes still produce meaningful signals.
4. Confluence Grouping
When multiple same-direction climaxes occur close together in time or price, the script collapses them into a single label representing the strongest event in the cluster. This keeps charts readable without losing information — the panel still counts every individual climax.
5. Effort vs Result (optional)
A companion layer flags high-volume bars with unusually narrow spread — the classic VSA "No Demand" and "No Supply" conditions. These often signal hidden absorption ahead of a reversal and are shown as separate labels.
🔹 SIGNALS & ALERTS
Four built-in alert conditions:
• Buying Climax detected
• Selling Climax detected
• Extreme Climax (Z-Score above the extreme threshold, marked with ★)
• No Demand / No Supply divergence
Each alert payload includes the symbol, Z-Score, and magnitude score, ready for automation or review.
🔹 KEY INPUTS
• Volume Lookback (default 50) — rolling window for statistics.
• Z-Score Threshold (default 3.0σ) — minimum statistical extremity. Lower on intraday, higher for premium signals only.
• Extreme Threshold (default 4.0σ) — above this, climaxes are flagged with a ★.
• Spread and Close filters — each can be toggled independently for flexibility across asset classes.
• Trend EMA Length and Sensitivity — control how the script defines uptrend and downtrend, with an ATR-normalised slope check to avoid misclassifying sideways regimes.
• Reversal Window and Threshold — define what counts as a "successful" reversal for the panel statistic.
• Confluence controls — Time-first (default), Price-first, or Strict mode, plus bar and ATR tolerances.
• Climax Zones (optional, default off) — extends each climax bar's range forward as a reaction zone, similar to S/R.
🔹 HOW TO USE
• Start with defaults on any liquid instrument and timeframe. The script adapts to the local volume distribution automatically.
• On highly volatile intraday timeframes, consider raising the Z-Score Threshold to 3.5σ for fewer, cleaner signals. On slower timeframes, the default works well.
• Treat a ★ Extreme Climax as higher-conviction than a plain climax, and pay attention to the Magnitude Score for fine gradation.
• Use the Reversal Rate panel value as a feedback loop — if it is low on your chosen instrument and timeframe, either adjust thresholds or reconsider the setup.
• Combine with your own structural analysis (support/resistance, HTF trend, market structure) for confirmation. The script identifies the event, not the entry.
🔹 LIMITATIONS & TRANSPARENCY
• This is an indicator, not a strategy. It does not generate buy or sell orders and makes no assumption about position sizing or risk management.
• Climaxes are statistical events. They tend to mark inflection points, but no volume pattern resolves into a reversal every time. The built-in Reversal Rate panel value exists precisely to make this honest — users see the actual hit rate on their own chart.
• The script uses publicly available volume data from the chart's exchange. Volume quality varies by venue; results may differ on symbols with thin or unreliable volume reporting.
• Classification depends on trend context. In strongly sideways regimes, the fallback rules may label climaxes differently than a human analyst would; reviewing the Trend EMA and sensitivity inputs helps here.
• Labels are confirmed on bar close (no repaint). Panel counters and the Current Z-Score value update intrabar for live monitoring.
🔹 RISK DISCLOSURE
Trading involves substantial risk of loss. Past behaviour of any signal or statistic does not guarantee future performance. This script is a research and analysis tool — it is not investment advice, a recommendation, or a solicitation to trade. Users are responsible for their own decisions, risk management, and position sizing. Indicator

Swap Engine - Pair Rotation (Z-Score) [AGPro Series]Swap Engine - Pair Rotation (Z-Score)
🔷 OVERVIEW
Swap Engine - Pair Rotation (Z-Score) transforms the log-ratio between two correlated crypto assets into a disciplined tier ladder decision framework. Rather than signalling single-asset direction, the engine measures how stretched one pair has become relative to its rolling mean and proposes rotation between the two assets when the spread reaches statistically meaningful extremes. Every decision is evaluated on confirmed Engine TF bar close, keeping suggestions non-repainting under the configured execution model.
🟣 UNIQUE EDGE
Unlike single-symbol mean-reversion or trend indicators, this engine treats the ratio itself as the tradable variable and pairs it with a full operational stack: a tiered exposure ladder (T0 to T3), an Integrity Gate that blocks entries when the pair relationship deteriorates, a Trend Regime filter that respects persistent one-sided moves, and a confirm-first execution model that converts raw signals into auditable decisions. A dedicated Signal Quality score (Q 0-100) and Integrity Score (IN 0-100) make every suggestion inspectable, not a black box.
🟢 METHODOLOGY
The engine fetches the closing price of Pair A and Pair B on the chosen Engine TF, computes the log-ratio L = ln(A / B), then derives a rolling z-score using user-defined lookback length. Entry thresholds (Z1, Z2, Z3) define the three tiers of exposure; exit thresholds (hysteresis) define when each tier is scaled back. A cost filter requires the expected mean-reversion edge to exceed a configurable multiple of estimated roundtrip cost before any entry is allowed. The Integrity Gate continuously validates rolling return correlation, ratio drift, and spread-volatility expansion, halting new entries when the pair relationship degrades.
🟡 SIGNALS & ALERTS
Each signal renders as a clearly tagged label on chart showing the action type (ENTRY / EXIT), source tier, target tier, direction (A->B or B->A), z-score snapshot, delta %, and Reason Code. Alerts are provided for: entry and exit events per direction, pending lifecycle (created, confirmed, skipped, expired), trend regime activation edges, duplicate suppression, and configuration warnings. All alerts fire on Engine TF bar close to remain consistent with the visible suggestions.
⚙️ KEY INPUTS
Pair A / Pair B: the two assets to rotate between (same quote currency recommended).
Engine TF: timeframe used for all ratio, z-score, and decision logic (240 / 4H default).
Lookback: bars used for rolling mean and standard deviation.
Entry Z1/Z2/Z3, Exit Z1/Z2/Z3: tiered thresholds for scaling in and out.
Tier Sizing (T1 / T2 / T3 %): rotation size per tier as a percentage of the active pool.
Trade Profile: preset gate behavior (Conservative, Balanced, Aggressive, Volatile Alt, High-Cost, Custom).
Integrity Gate: correlation, drift, and volatility expansion filter with configurable minimum score.
Execution Model: ASSUME (auto-advance), CONFIRM (pending + manual commit), or SIGNAL_ONLY (display only).
🔵 HOW TO USE
Start on the default BTCUSDT vs ETHUSDT pair on 4H Engine TF with the Balanced profile. Keep the chart timeframe equal to or lower than the Engine TF (the script warns otherwise). Watch the status panel for the current tier, direction, confidence strip (Q / IN / PH), and next action preview. In CONFIRM mode, a PENDING card appears when a signal fires; increase CONFIRM +1 to commit the rotation state, or SKIP +1 to discard. Use the Trade Profile dropdown to tighten or loosen effective gates without changing your base inputs.
🟠 LIMITATIONS & TRANSPARENCY
This is an indicator, not a strategy; no orders are placed and no backtest statistics are produced. Signals reflect statistical extremes in the pair's log-ratio and do not guarantee mean reversion. Performance depends heavily on pair selection - assets with persistent trends, broken correlation, or structural regime changes can cause extended adverse periods. The Integrity Gate mitigates but does not eliminate this risk. Costs, slippage, tax, and execution details are the user's responsibility; the Min Edge x filter is an estimate, not a realized-cost guarantee. Always validate on your own pair, timeframe, and account conditions before relying on any suggestion.
🔴 RISK DISCLOSURE
Trading and rotating between crypto assets involves substantial risk, including loss of capital. Past or simulated behavior of the ratio does not guarantee future results. This tool is shared for educational and analytical purposes only and does not constitute financial, investment, or trading advice. Users are solely responsible for their own decisions and should consult a qualified professional before committing capital. Indicator

Velocity Spectrum Analyzer [JOAT]Velocity Spectrum Analyzer
Introduction
The Velocity Spectrum Analyzer is an advanced open-source momentum wave system that combines Munich Wave methodology with ALMA enhancement and multi-basis momentum tracking. This indicator analyzes momentum across five distinct velocity layers, creating a spectrum of momentum waves that reveal trend strength, regime shifts, and momentum alignment across multiple timeframes.
Unlike single-line momentum indicators, the Velocity Spectrum Analyzer provides multi-dimensional momentum analysis through layered EMA calculations, ALMA enhancement, regime classification, and spread analysis. The indicator is designed for traders who understand that momentum flows in waves and that multi-layer alignment signals institutional conviction.
Why This Indicator Exists
This indicator addresses the need for multi-dimensional momentum analysis. By combining five momentum layers with ALMA enhancement and regime detection, it reveals:
Five Velocity Layers: Fast (9), Medium (21), Slow (55), Very Slow (100), and Ultra Slow (200) EMAs create a momentum spectrum
ALMA Enhancement: Arnaud Legoux Moving Average provides adaptive smoothing with reduced lag
Basis Calculations: Averages between EMA layers create intermediate momentum levels
Regime Classification: Extreme Bull/Bear detection using Bollinger-style bands
Spread Analysis: Distance between fast and slow layers measures momentum strength
Wave State Detection: All layers bullish or bearish signals strong directional momentum
Background Coloring: Visual regime indication shows extreme conditions
Core Components Explained
1. Core Momentum Calculation
The indicator starts with basic momentum (current close minus close N bars ago), then applies ALMA for adaptive smoothing:
The ALMA offset (default 0.85) and sigma (default 6) parameters control the balance between responsiveness and smoothness. Higher offset values shift the average toward recent prices, while higher sigma values increase smoothness.
2. Five EMA Layers
Five EMAs are calculated on the momentum values:
Fast EMA (9): Captures short-term momentum shifts
Medium EMA (21): Tracks intermediate momentum trends
Slow EMA (55): Identifies primary momentum direction
Very Slow EMA (100): Reveals long-term momentum bias
Ultra Slow EMA (200): Shows institutional momentum positioning
Each layer responds at different speeds, creating a spectrum of momentum perspectives.
3. Basis Calculations
Five basis levels are calculated as averages between EMA layers:
Basis 1: Average of Fast and Medium EMAs
Basis 2: Average of Medium and Slow EMAs
Basis 3: Average of Slow and Very Slow EMAs
Basis 4: Average of Very Slow and Ultra Slow EMAs
Basis 5: Average of Ultra Slow and Fast EMAs (wraps around)
These basis levels create intermediate momentum zones that smooth transitions between layers.
4. Trend Classification Functions
Two functions classify momentum direction:
Growing: Momentum > basis (bullish momentum)
Falling: Momentum <= basis AND momentum <= ALMA (bearish momentum)
Each basis is classified independently, creating five separate momentum assessments.
5. Regime Detection with Bollinger-Style Bands
The indicator calculates bands around the average of all five basis levels:
Origin: SMA of basis average (default 25 periods)
Deviation: Standard deviation multiplied by factor (default 6.0)
Top Band: Origin + deviation (extreme bullish threshold)
Bottom Band: Origin - deviation (extreme bearish threshold)
When basis 1 and ALMA both exceed the top band with rising momentum, the indicator signals extreme bullish conditions. When both fall below the bottom band with falling momentum, it signals extreme bearish conditions.
6. Mean Range Calculation
A long-term mean range (default 415 bars) tracks the highest and lowest basis average values. The center of this range serves as a reference point for ALMA positioning. When ALMA is above the center mean with all layers bullish, strong upward momentum is confirmed.
7. Wave State Analysis
The indicator tracks when all five basis levels are simultaneously bullish or bearish:
All Bullish: All five basis levels show growing momentum - strong uptrend
All Bearish: All five basis levels show falling momentum - strong downtrend
Mixed: Some layers bullish, some bearish - transitional or choppy conditions
Wave state alignment indicates institutional conviction across all momentum timeframes.
8. Spread Calculation
The spread between Basis 1 (fastest) and Basis 5 (slowest) measures momentum divergence:
Positive Spread (> 10): Fast momentum exceeds slow momentum - bullish acceleration
Negative Spread (< -10): Fast momentum below slow momentum - bearish acceleration
Extreme Spread (> 20 or < -20): Very strong momentum divergence - potential exhaustion
Large spreads indicate strong directional momentum, while narrowing spreads warn of momentum loss.
Visual Elements
Five Velocity Layer Lines: Thick colored lines showing each basis level with dynamic coloring (cyan = bullish, yellow = bearish, white = neutral)
ALMA Enhanced Line: Separate line showing ALMA-adjusted momentum with tri-color scheme
Wave State Line: Zero line colored based on overall wave state
Background Regime: Red background for extreme bull, green background for extreme bear
Information Dashboard: Displays wave state, regime, spread, ALMA position, momentum value, layer alignment, and signal status
Signal Generation
The indicator generates four types of signals:
Lean Short: Bearish crossover with falling Basis 1 and 2, spread <= -10
Maybe Buy: Bearish crossover with falling Basis 1 and 2, extreme bear regime, spread <= -20 (oversold)
Lean Long: Bullish crossover with growing Basis 1 and 2, spread >= 10
Maybe Sell: Bullish crossover with growing Basis 1 and 2, extreme bull regime, spread >= 20 (overbought)
Additional signals:
All Aqua: All layers bullish for 4+ consecutive bars - strong uptrend confirmation
All Yellow: All layers bearish for 4+ consecutive bars - strong downtrend confirmation
How to Use This Indicator
Step 1: Check Wave State
Monitor the dashboard for wave state (All Bullish, All Bearish, or Mixed). Trade in the direction of wave state alignment.
Step 2: Analyze Regime
Watch for extreme bull/bear regimes (red/green backgrounds). These often precede reversals or strong continuation moves.
Step 3: Monitor Spread
Large spreads (> 20 or < -20) indicate strong momentum but potential exhaustion. Narrowing spreads warn of momentum loss.
Step 4: Check ALMA Position
ALMA above center mean with bullish layers confirms uptrend. ALMA below center mean with bearish layers confirms downtrend.
Step 5: Count Layer Alignment
The dashboard shows how many layers are bullish (X/5). 5/5 bullish = strongest uptrend, 0/5 bullish = strongest downtrend.
Step 6: Wait for Signal Confirmation
Lean Long/Short signals work best when wave state aligns. Maybe Buy/Sell signals at extremes offer reversal opportunities.
Best Practices
Trade with wave state alignment, not against it
Use extreme regimes as reversal warnings, not continuation signals
Monitor spread for momentum strength - large spreads indicate strong trends
Wait for all layers to align (5/5) before taking aggressive positions
Use Maybe Buy/Sell signals only at extreme regimes with high spread
Combine with price action - momentum shows intent, price shows result
Be cautious when layers are mixed (2/5 or 3/5) - indicates choppy conditions
Watch for spread narrowing as early warning of trend exhaustion
Input Parameters
Momentum Engine:
Source: Price input (default: close)
Momentum Length: Period for momentum calculation (default: 21)
ALMA Offset: Offset parameter for ALMA (default: 0.85)
ALMA Sigma: Sigma parameter for ALMA (default: 6)
Momentum Layers:
Fast EMA: Short-term momentum (default: 9)
Medium EMA: Intermediate momentum (default: 21)
Slow EMA: Primary momentum (default: 55)
Very Slow EMA: Long-term momentum (default: 100)
Ultra Slow EMA: Institutional momentum (default: 200)
Regime Classification:
Mean Lookback: Period for mean range (default: 415)
StdDev Length: Period for standard deviation (default: 25)
StdDev Multiplier: Band width multiplier (default: 6.0)
Background Offset: Shift background display (default: 0)
Visual Configuration:
Bullish Color: Color for bullish momentum (default: cyan)
Bearish Color: Color for bearish momentum (default: yellow)
Neutral Color: Color for neutral momentum (default: white)
Enable Alerts: Toggle alert conditions (default: enabled)
Originality Statement
This indicator is original in its multi-layer momentum approach. While individual components (EMAs, ALMA, momentum) are established concepts, this indicator is justified because:
It combines five distinct momentum layers into a unified spectrum analysis
The basis calculation system creates intermediate momentum zones between layers
ALMA enhancement provides adaptive smoothing with reduced lag
Regime detection using Bollinger-style bands on basis average identifies extremes
Wave state analysis tracks alignment across all five layers simultaneously
Spread calculation measures momentum divergence between fast and slow layers
The comprehensive dashboard presents all momentum dimensions simultaneously
Disclaimer
This indicator is provided for educational and informational purposes only. It is not financial advice. Trading involves substantial risk of loss. Momentum analysis does not guarantee profitable trades. Past momentum patterns do not guarantee future results. Always use proper risk management and never risk more than you can afford to lose.
-Made with passion by officialjackofalltrades Indicator

Indicator

Indicator

Adaptive Bollinger Bands [by Oberlunar]Adaptive Bollinger Bands by Oberlunar extends a classical Bollinger-style framework by building structured envelopes on highs and lows and then interpreting them through flow and regime context rather than through band touches alone. The script combines two moving-average bases, adaptive volume-distribution logic above and below price, a normalized TRIX component, and a multi-timeframe directional filter to distinguish between mean-reversion conditions and breakout conditions in a more organized way.
Its original value is not in any single component taken in isolation, but in the way these elements are fused into one coherent visual system. The bands define the price structure, the heatmap and tape show where directional pressure is stronger, the regime engine helps separate quieter rejection environments from more persistent expansion, and the support, resistance, and compression areas help mark zones where market behavior becomes more interpretable.
The indicator is designed to be read directly on standard charts. It does not use future-looking logic, and higher-timeframe requests are made with no lookahead. It is meant as a decision-support tool for chart reading, not as a promise of performance or as a substitute for risk management.
A common way to use the script is to observe how price behaves when it reaches the outer parts of the envelope and then compare that location with the active regime, the side-specific flow, and the multi-timeframe bias. In quieter conditions, signals near the edge of the channel can be interpreted as possible rejection areas. In stronger directional conditions, the same area can instead be read as part of a continuation or breakout sequence. The heatmap and tape help show whether pressure is building above or below price, while the marked zones can help the user keep track of relevant local structure.
Enjoy
by Oberlunar ✦👁 Indicator

Indicator

TICK Arbitrage Toolkit [LuxAlgo]The TICK Arbitrage Toolkit is a specialized institutional internal analysis tool designed to track market breadth and identify high probability reversal zones through TICK and TICKQ index monitoring. It provides real time visualization of market sentiment and internal extremes to assist traders in index scalping and mean reversion strategies.
🔶 USAGE
The indicator identifies three distinct extension levels to signal when market internals are reaching extreme overbought or oversold conditions. Traders use these extensions to anticipate potential price exhausts or trend reversals in major indices like the S&P 500 or Nasdaq 100.
The toolkit maps the NYSE TICK or NASDAQ TICKQ values directly onto the price chart by colorizing bars and providing visual markers. A gradient system transitions bar colors based on the intensity of the TICK value, allowing for a clear interpretation of internal momentum without needing a separate pane.
🔹 Extension Levels
The script utilizes three configurable extension levels (defaulting to 800, 1000, and 1200) to categorize the strength of the internal move.
Extension 1: Displays a single marker and begins tracking for new session highs or lows.
Extension 2: Displays two vertical markers to indicate increasing internal pressure.
Extension 3: Displays three vertical markers and reaches maximum color opacity, signaling an extreme arbitrage opportunity.
🔹 Session Tracking
The toolkit automatically tracks the session high and low for the selected TICK source. When the market reaches a New High of Day (NHOD) or New Low of Day (NLOD) in the internals, a professional label is printed to highlight the breakout.
🔶 DETAILS
The toolkit includes a Refresh Frequency setting that allows the script to process data at a higher resolution than the chart timeframe. By selecting a sub minute frequency such as 1S or 5S, the indicator can react to internal spikes that occur within a single chart bar.
The Include High/Low Extremes feature ensures that brief intrabar spikes are captured. Rather than only looking at the close of the TICK bar, the script evaluates the high and low to find the maximum magnitude, providing a more accurate representation of true market stress.
🔶 SETTINGS
🔹 Settings
TICK Source: Select between NYSE TICK for S&P 500 analysis or NASDAQ TICKQ for Nasdaq 100 analysis.
Refresh Frequency: Determines how often the internal data is sampled. Lower values provide more granular intrabar detail.
Include High/Low Extremes: When enabled, the script uses the absolute highest or lowest value within the sampling period to capture spikes.
Extension 1, 2, 3: Numeric thresholds for the three levels of arbitrage intensity.
🔹 Style
Positive TICK Color: The color used for positive internal readings (typically associated with overbought/reversal zones).
Negative TICK Color: The color used for negative internal readings (typically associated with oversold/reversal zones).
Marker Style: Choose between Circles, Triangles, or None for the extension level markers.
🔹 Dashboard
Dashboard: Toggles the visibility of the on screen data table.
Position: Moves the dashboard to different corners of the chart.
Size: Adjusts the scale of the dashboard text and cells.
Indicator

Fair Interest Rate Ladder (Auto + Info)Description:
The Fair Interest Rate Ladder indicator is designed to visualize the "fair value" of interest rate instruments (bond futures, rate swaps, etc.), accounting for accrued interest or carry costs. It plots a step-line that converges toward a target base point as the expiration date approaches.
Key Features:
Auto-Spread Detection: The indicator automatically detects if you are using a spread formula (e.g., ZN1!-100). If detected, the anchor point automatically shifts from 100 to 0.
Adjustable Rate & Direction: Easily set the annual percentage rate and choose the price convergence direction (upward or downward toward expiration).
Leap Year Accuracy: Mathematically precise calculations based on the actual number of days in the current year (365 or 366).
Dashboard: A real-time table in the top-right corner displays the exact Fair Value and the countdown of days remaining until expiration.
Expiration Tracking: A distinct red "zero line" and a visual label marking the contract's end date.
How to use:
Input the start and expiration dates of your contract, set the current interest rate, and the indicator will show where the price should theoretically be trading today.
Russian (Русский)
Описание:
Индикатор Fair Interest Rate Ladder предназначен для визуализации «справедливой стоимости» процентных инструментов (фьючерсов на облигации, ставки) с учетом накопленного купона или процентного дохода. Он строит ступенчатую линию, которая стремится к целевой точке (базе) по мере приближения даты экспирации.
Основные возможности:
Автоматика для спредов: Индикатор автоматически определяет, используете ли вы формулу спреда (например, ZN1!-100). В этом случае точка нуля автоматически смещается со 100 на 0.
Гибкая настройка ставки: Возможность задать годовую процентную ставку и направление движения цены (вверх или вниз к экспирации).
Учет високосных лет: Математически точный расчет на базе количества дней в текущем году (365 или 366).
Инфо-панель: В правом верхнем углу отображается таблица с текущим расчетным значением Fair Value и счетчиком дней до экспирации.
Визуализация экспирации: Четкая красная линия «горизонта» и метка даты окончания контракта.
Как использовать:
Введите дату начала и дату экспирации вашего контракта, укажите актуальную ставку, и индикатор покажет, где должна находиться цена сегодня относительно её теоретического идеала. Indicator

Arbitrage Matrix [LuxAlgo]The Arbitrage Matrix is a follow-up to our Arbitrage Detector that compares the spreads in price and volume between all the major crypto exchanges and forex brokers for any given asset.
It provides traders with a comprehensive view of the entire marketplace, revealing hidden relationships among different exchanges for the same asset and offering easy, visual comparisons.
🔶 USAGE
Arbitrage is the practice of taking advantage of price differences for the same asset across different markets. Arbitrage traders look for these discrepancies to profit from buying where it’s cheaper and selling where it’s more expensive to capture the spread.
For begginers this tool is a clear snapshot of how different markets value the same asset, making global price dynamics easy to grasp.
For advanced traders it is a powerful scanner for arbitrage setups, helping you identify where the biggest opportunities lie in real time.
Arbitrage opportunities are often short‑lived, but they can be highly profitable. By showing you where spreads exist, this tool helps traders:
Understand market inefficiencies
Avoid trading at unfavorable prices
Identify potential profit opportunities across exchanges
By default, the tool searches all the enabled sources for the asset in the chart. It uses crypto exchanges as sources for crypto assets and forex brokers for all other assets.
The data is displayed on a dashboard, which is the tool's only visual element.
Traders can enable or disable any exchange or broker from the settings panel. All are enabled by default.
🔹 Displayable Data
Traders can choose from four types of data to display: last price, last volume, average price, and average volume.
Note that price and volume data may not be available for all assets at all sources, and sources without data will not be displayed.
As the image shows, each chart displays a different type of data for the same asset. In this case, the asset is ETHUSDT.
🔹 Reading the Matrix
Traders must read the data in a row-by-column format, as shown in the following example.
Assume that we are charting BTCUSDT Daily. In the row, we have Exchange A; in the column, we have Exchange B. The data is the average price, and the value is 100. The default length for the average is 20.
It reads like this: The average BTCUSDT price over the last 20 days is $100 higher on Exchange A than on Exchange B.
If the value were -100, it would mean that the average price is $100 lower in Exchange A than in Exchange B.
🔹 Matrix Style
Traders can change the colors and disable the background gradient, which is enabled by default.
They can also fine-tune the location and dashboard size from the settings panel.
🔶 SETTINGS
Sources: Choose between crypto exchanges, forex brokers, or automatic selection based on the asset in the chart.
Average Length: Select the length for the price and volume averages.
Crypto Exchanges: Enable or disable any available exchange.
Forex Brokers: Enable or disable any available broker.
🔹 Dashboard
Data: Select the data to display.
Position: Select the dashboard location.
Size: Select the dashboard size.
🔹 Style
Bullish: Select bullish color.
Bearish: Select bearish color.
Background Gradient: Enable background gradient color.
Indicator
