Kurdistani Macro Regime# Kurdistani Macro Regime
## Overview
Kurdistani Macro Regime is a comprehensive macroeconomic dashboard designed to help traders evaluate the current global macro environment using publicly available economic data.
Rather than predicting future prices, the script converts multiple macroeconomic indicators into a rule-based market regime model that helps identify whether current conditions favor:
• Expansion
• Recovery
• Slowdown
• Stagflation
• Recession
The indicator combines inflation, monetary policy, liquidity, labor market conditions, yield curve dynamics, credit spreads and volatility into a single analytical framework.
This script is intended for macro analysis and portfolio positioning rather than short-term price forecasting.
---
# Data Sources
The indicator retrieves macroeconomic information directly from the FRED (Federal Reserve Economic Data) database whenever available.
Main datasets include:
• CPI Inflation
• Federal Funds Rate
• ECB Policy Rate
• GDP
• Unemployment Rate
• M2 Money Supply
• Treasury Yields
• Credit Spreads
• VIX
• Inflation Breakevens
• Oil Prices
Because macroeconomic releases occur weekly, monthly or quarterly, values update only when new official data become available.
---
# Macro Regime Engine
The script evaluates three major components of the economy.
## 1. Growth
Growth is estimated using:
• GDP Growth
• PMI Trend
• Labor Market
• Growth Momentum
Higher scores indicate stronger economic expansion.
---
## 2. Inflation
Inflation analysis includes:
• CPI Level
• CPI Trend
Higher inflation increases the probability of restrictive monetary policy.
---
## 3. Liquidity
Liquidity considers:
• M2 Growth
• Federal Funds Rate
• Yield Curve
• Market Volatility
Higher liquidity generally supports risk assets.
---
These components are combined into five macro regimes.
Expansion
Strong growth with controlled inflation.
Recovery
Improving growth following economic weakness.
Slowdown
Moderating economic activity.
Stagflation
High inflation combined with weak growth.
Recession
Broad deterioration across multiple macro indicators.
---
# Advanced Macro Indicators
The dashboard includes several composite indicators.
## Macro Health Score
A composite score between 0 and 100 summarizing overall macro conditions.
Higher values indicate healthier macro environments.
---
## Recession Risk Score
A rule-based composite using:
• Yield Curve
• GDP
• PMI
• Labor Market
• Credit Spreads
• Real Interest Rates
This score is **not** a statistical recession probability.
---
## Fed Pivot Score
Measures whether macro conditions are becoming more favorable for future monetary easing.
Inputs include:
• Inflation
• GDP
• Unemployment
• Yield Curve
• Interest Rates
This is an analytical score rather than a forecast.
---
## Dollar Milkshake Score
Estimates relative USD strength using:
• Interest Rate Differential
• Credit Stress
• Emerging Market Stress
• Volatility
• Real Rates
Higher values suggest stronger demand for USD liquidity.
---
# Asset Outlook
The indicator estimates macro conditions for several asset classes.
## Gold
Gold generally benefits from:
• Negative Real Rates
• Higher Inflation
• Recession Risk
• Easier Liquidity
---
## Bitcoin
Bitcoin is evaluated primarily through:
• Global Liquidity
• Risk Appetite
• Real Rates
• Monetary Conditions
---
## US Dollar
The Dollar score reflects:
• Rate Differentials
• Risk-Off Conditions
• Real Rates
• Credit Stress
---
## US Equities
The equity model incorporates:
• Growth
• Liquidity
• Yield Curve
• Credit Conditions
---
## Long-Term Treasury Bonds
Bond scoring focuses on:
• Recession Risk
• Fed Pivot
• Yield Curve
• Real Rates
---
# Dashboard
The dashboard summarizes:
Current Macro Regime
Risk-On / Risk-Off Environment
Macro Health
Recession Risk
Fed Pivot Score
Dollar Milkshake Score
Yield Curve
Interest Rates
Inflation
GDP
PMI
Employment
Oil Trend
Asset Scores
Signal History
Upcoming Economic Calendar
---
# Trading Signals
The script generates several informational signals.
Gold Macro Bullish
Appears when macro conditions become favorable for gold.
Bitcoin Risk-On
Appears when liquidity and risk conditions support Bitcoin.
Yield Curve Inversion
Highlights significant inversion events.
Fed Pivot
Indicates improving conditions for potential future monetary easing.
Oil Shock
Flags unusually large oil price movements.
These signals are informational and should be confirmed with market structure and price action.
---
# Risk Management
This indicator is designed to complement—not replace—technical analysis.
Possible workflow:
1. Determine the current macro regime.
2. Evaluate risk appetite.
3. Compare asset scores.
4. Wait for technical confirmation.
5. Execute trades according to your own trading plan.
---
# Inputs
Users can customize:
• Macro thresholds
• Dashboard visibility
• Signal visibility
• Calendar dates
• Watermark
• Risk profile
• Alert system
• Bullish thresholds
---
# Limitations
This script uses macroeconomic data that update less frequently than market prices.
Economic releases may be revised after publication.
Some FRED series may be unavailable depending on PulseWire data availability.
The model is deterministic and rule-based.
It does not employ machine learning or statistical forecasting.
---
# Disclaimer
This indicator is intended solely as an educational and analytical tool.
All scores, regimes, probabilities and signals are generated using predefined rule-based logic and should not be interpreted as predictions or guarantees of future market performance.
Always combine macro analysis with technical analysis, sound risk management and your own independent research before making trading decisions. Indicator

Perfect Profit BenchmarkMost traders evaluate a strategy only by Net Profit, Profit Factor, or Drawdown. But these metrics do not answer the main question: how effectively did the strategy use the real opportunity provided by the market? Perfect Profit Benchmark was created for exactly this purpose — it shows not just the profit of a strategy, but its efficiency relative to the ideal swing potential of the instrument.
The script is based on the concept of Perfect Profit and Model Efficiency, described by Robert Pardo in his approach to evaluating and optimizing trading strategies. The idea is simple: over any selected period, the market contains a certain amount of potential profit. Even a perfect strategy cannot earn more than the price movement itself allowed. Therefore, it is more important to understand not only how much a strategy earned, but what share of the available market movement it was able to capture.
Pardo uses Perfect Profit as an ideal benchmark and compares the result of a real trading model against it. As a practical guideline, the author indicates that an efficiency of 5% or more of the ideal result can already be considered a strong performance level. This makes the metric especially useful: the trader receives not an abstract profit number, but a clear percentage of captured market opportunity.
Perfect Profit Benchmark measures this market capacity through ZigZag swings. The script detects confirmed pivot highs and pivot lows based on a selected reversal percentage, then calculates the ideal profit between these points. Unlike unrealistic bar-by-bar models that assume predicting every next bar, this approach evaluates the market through larger directional swings, making it much closer to real swing/trend trading logic.
The script calculates three key metrics:
ZigZag Perfect L/S — ideal performance when trading both directions, long and short.
ZigZag Perfect Long — ideal performance from upward swings only.
ZigZag Perfect Short — ideal performance from downward swings only.
The script also shows the total number of swings, the number of long swings, the number of short swings, and the efficiency percentage of your strategy relative to each ideal model. This helps identify where the strategy is stronger: in long moves, short moves, or the overall long/short market structure.
Perfect Profit Benchmark takes into account position size, point value, commission, fixed trading costs, and slippage. This makes the comparison more realistic: each swing is calculated not as raw price movement, but as potential profit after trading costs. The chart displays ZigZag lines, current direction zones, and labels showing the profit of each completed swing, allowing you to visually see where the market provided the main profit opportunities and how much of that movement an ideal model could have captured.
The main value of the script is that it gives the trader a benchmark. If a strategy earned $50,000, that number alone says little. But if the ideal swing potential of the market over the same period was $1,000,000, the strategy captured 5%. If the potential was $200,000, the strategy captured 25%. These are fundamentally different conclusions about the quality of the model.
Perfect Profit Benchmark helps separate a strong strategy from a strategy that simply benefited from a favorable market. It shows how efficiently an algorithm extracts profit from the available movement, where the return ceiling of the instrument is, and how far the current model is from ideal performance.
Test your strategy, enter its Net Profit into Perfect Profit Benchmark, and compare the result with the market’s ideal performance. This is a direct way to understand the real strength of a trading system, its share of captured market movement, and its potential for further optimization.
Indicator

Bullish Candle RatioIntroduction
Bullish Candle Ratio is a market statistics indicator that measures the percentage of bullish candles within a selected lookback period.
Instead of focusing on price levels or moving averages, the indicator evaluates the balance between bullish and bearish candles. This provides a simple overview of market participation and directional dominance over recent bars.
The result is displayed as a percentage between 0% and 100%, making it easy to assess whether buyers or sellers have been more active during the selected period.
How It Works
The indicator counts how many candles closed above their opening price during the selected lookback period.
The Bullish Candle Ratio is calculated as:
Bullish Candle Ratio = (Number of Bullish Candles ÷ Lookback Period) × 100
For example, if 15 out of the last 20 candles are bullish, the Bullish Candle Ratio equals 75%.
Key Features
Market Participation
Quickly measures whether buyers or sellers have dominated recent price action.
Easy to Read
Values range from 0% to 100%, making interpretation straightforward.
Trend Confirmation
High readings often support bullish market conditions, while low readings indicate bearish dominance.
Lightweight
Requires only basic candle calculations, making it suitable for all markets and timeframes.
Interpretation
Above 80%
Strong bullish dominance.
Most recent candles have closed higher than they opened.
Between 60% and 80%
Moderately bullish conditions.
Buyers are controlling the majority of recent price action.
Around 50%
Balanced market.
Neither buyers nor sellers have established clear dominance.
Between 20% and 40%
Moderately bearish conditions.
Selling pressure has become more noticeable.
Below 20%
Strong bearish dominance.
Most recent candles have closed lower than they opened.
Alert Conditions
The indicator includes two alert conditions.
Bullish Ratio Increasing
Triggered when the Bullish Candle Ratio crosses above 60%.
Bearish Ratio Increasing
Triggered when the Bullish Candle Ratio crosses below 40%.
Example Applications
- Measuring short-term market sentiment.
- Confirming trend strength.
- Monitoring shifts in buying and selling pressure.
- Comparing bullish participation across different markets.
- Supporting price action analysis.
Notes
Bullish Candle Ratio is intended to measure market participation rather than generate trading signals.
A high bullish ratio does not guarantee that prices will continue rising, just as a low ratio does not guarantee further declines.
The indicator is most effective when combined with trend analysis, support and resistance, and overall market structure.
Bullish Candle Ratio provides a simple statistical view of recent market sentiment by measuring the balance between bullish and bearish candles within a selected period. Indicator

Overnight vs Intraday Return SplitOvernight vs Intraday Return Split
Overnight vs Intraday Return Split is a return-decomposition indicator that separates daily stock returns into close-to-open gap return and open-to-close session return.
The indicator separates cumulative return into two components:
1. Overnight return
Previous close to current open.
2. Intraday return
Current open to current close.
It also plots a Total cumulative return line for comparison.
This is a context and diagnostic tool. It is not a buy/sell indicator, not a strategy, and not a prediction model.
1. Core Idea
Many stocks do not move equally during the close-to-open window and the regular open-to-close session.
Some names may generate a large part of their historical return from gaps between the previous close and the next open. Other names may show stronger contribution from the regular trading session between open and close.
This indicator helps visualize that split by compounding the close-to-open and open-to-close components separately.
2. Important Calculation Note
This script does not separately calculate each pre-market candle or each after-hours candle.
The Overnight component represents the close-to-open gap:
Previous close → current open
The Intraday component represents the open-to-close session move:
Current open → current close
By default, the script uses daily bars internally, so it should be understood as a daily close-to-open versus open-to-close return decomposition, not a detailed extended-hours session breakdown.
3. What the Lines Mean
The indicator plots up to three lines:
* Overnight cumulative %
Shows the compounded contribution from previous close to current open.
* Intraday cumulative %
Shows the compounded contribution from current open to current close.
* Total cumulative %
Shows the compounded full-period return.
The Total line is included as a reference to compare the two return components with the overall buy-and-hold style return.
4. Important Compounding Note
The Total line is compounded from log returns.
It should not be read as:
Overnight % + Intraday %
The overnight and intraday lines are compounded separately, so the visual relationship between the lines should be interpreted as a return-contribution comparison rather than a simple arithmetic sum.
5. Daily-Bar Calculation
By default, the script uses daily bars internally for the calculation.
This is intentional.
Using daily bars keeps the meaning of the close-to-open and open-to-close split consistent, even if the chart is opened on another timeframe such as 1H, 4H, or 1W.
Users can switch to Chart timeframe mode from the settings, but Daily bars is the recommended calculation source for the cleanest interpretation of the split.
6. Standard OHLC Option
The script includes an option to use standard candles for calculation.
When enabled, the calculation uses the symbol’s standard OHLC data.
This helps avoid distorted return calculations on synthetic chart types such as Heikin Ashi.
7. Optional Start Date Reset
Users can reset the cumulative comparison from a selected start date.
When this setting is enabled, the cumulative Overnight, Intraday, and Total lines restart from 0 at the chosen date.
This can be useful when studying a specific market regime, post-earnings period, IPO phase, trend phase, or custom research window.
8. Readout Label
The last-bar readout label summarizes:
* Calculation source
* Overnight cumulative return
* Intraday cumulative return
* Total cumulative return
* Which component is leading
* Latest bar overnight return
* Latest bar intraday return
* Latest bar total return
The label also includes warnings when the selected mode or market type may reduce the conceptual reliability of the split.
9. Best Markets
This indicator is best used on instruments with a real daily open and close, such as:
* Stocks
* ETFs
* Stock indices
* Session-based markets
It is generally not suitable for 24/7 markets such as crypto, because the concept of a true close-to-open gap is not the same in continuously traded markets.
10. How to Use
A practical workflow:
1. Add the indicator to a stock or ETF chart.
2. Keep Calculation source set to Daily bars.
3. Compare the Overnight and Intraday cumulative lines.
4. Watch which line contributes more to the Total return.
5. Use the readout label to identify the current leader.
6. Review whether the stock’s return profile is mostly gap-driven or session-driven.
7. Use the information as context alongside trend, volatility, volume, earnings, and broader market conditions.
8. Interpretation Examples
If the Overnight line is far above the Intraday line, the stock’s historical return during the selected period came mostly from close-to-open gaps.
If the Intraday line is far above the Overnight line, the stock’s historical return during the selected period came mostly from open-to-close session movement.
If one component is strongly positive while the other is negative, the stock may have a meaningful timing split between gap behavior and regular-session behavior.
These observations are analytical context only. They are not automatic trade signals.
12. Alerts
The script includes alert conditions for:
* Overnight cumulative return crossing above Intraday cumulative return
* Overnight cumulative return crossing below Intraday cumulative return
Alerts are informational only. They do not confirm future performance and do not execute trades.
13. Limitations
This indicator does not predict future returns.
It does not identify entries or exits.
It does not measure true order flow.
It does not separately calculate pre-market candles.
It does not separately calculate after-hours candles.
It does not include commissions, slippage, dividends, borrow costs, or tax effects.
It can behave differently around corporate actions, symbol adjustments, extended-hours data treatment, or unusual session structures.
It is less meaningful on markets that trade continuously without a true close-to-open gap.
14. Educational Disclaimer
This script is for educational and chart-analysis purposes only. It is not financial advice, investment advice, or a recommendation to buy or sell any financial instrument. Users are responsible for their own analysis, risk management, and trading decisions.
Indicator

COT Heatmap [invincible3]COT Heatmap
COT Heatmap is a professional Commitment of Traders dashboard designed to visualize historical positioning pressure between two selected markets, currencies, commodities, indices, or crypto futures. The indicator converts weekly COT positioning data into an easy-to-read heatmap table, allowing traders to compare Non-Commercial and Commercial positioning strength, extremes, long/short participation, and A-B spread pressure directly on the chart.
The tool is built for macro, forex, commodities, futures, and intermarket analysis. It can automatically detect the current chart symbol or allow the user to manually select Pair A and Pair B from a predefined COT market list.
-----------------------------------------------------------------------------------------------
Main Features
Historical COT heatmap table
Auto symbol detection from the chart
Manual Pair A / Pair B selection
Futures Only or Futures + Options data mode
Non-Commercial, Commercial, or Both participant modes
Separate metric control for Pair A and Pair B
Historical weekly values displayed by date
Adjustable table size, position, start date, and number of periods
Heatmap coloring for fast visual interpretation
Optional A-B positioning spread columns
-----------------------------------------------------------------------------------------------
Data Source
The indicator uses weekly COT data through PulseWire’s COT Library.
Available data modes:
Futures Only
Uses futures positioning data only.
Futures and Options
Uses combined futures and options positioning data.
The indicator uses Legacy COT report categories:
Non-Commercial Positions
Commercial Positions
Open Interest
All COT calculations are performed on the weekly timeframe.
-----------------------------------------------------------------------------------------------
Participant Modes
The indicator supports three participant display modes:
Non-Commercial Only
Shows speculative positioning metrics.
Commercial Only
Shows hedger/commercial positioning metrics.
Both
Shows both Non-Commercial and Commercial metrics side by side.
-----------------------------------------------------------------------------------------------
Core Positioning Formulas
For each selected market:
Open Interest
OI = Total Open Interest
Non-Commercial Net Position
NC Net = NC Long − NC Short
Commercial Net Position
Commercial Net = Commercial Long − Commercial Short
Long Change
Long Change = Current Long − Previous Week Long
Short Change
Short Change = Current Short − Previous Week Short
Net Change
Net Change = Long Change − Short Change
-----------------------------------------------------------------------------------------------
Long% and Short% Formulas
The indicator normalizes long and short positions against open interest.
Long Percentage
Long% = Long Positions / Open Interest × 100
Short Percentage
Short% = Short Positions / Open Interest × 100
These values show how much of total open interest is held on the long or short side by a specific participant group.
-----------------------------------------------------------------------------------------------
Flip% Formula
Flip% measures the net long/short bias as a percentage of open interest.
Flip%
Flip% = Long% − Short%
Interpretation:
Positive Flip% = participant group is net long
Negative Flip% = participant group is net short
Higher positive values show stronger bullish positioning
Lower negative values show stronger bearish positioning
Example:
If Non-Commercial Long% = 42%
and Non-Commercial Short% = 25%
Then:
NC Flip% = 42 − 25 = +17%
This means Non-Commercial traders are net long by 17% of open interest.
-----------------------------------------------------------------------------------------------
Difference Metrics
The indicator compares Non-Commercial and Commercial net positioning.
Non-Commercial Difference
NC Difference = NC Net − Commercial Net
This measures how strongly speculative positioning differs from commercial positioning.
Commercial Difference
Commercial Difference = Commercial Net − NC Net
This is the inverse view, useful when analyzing commercial hedger pressure.
-----------------------------------------------------------------------------------------------
Diff13 / Diff26 / Diff52 Formulas
The Diff columns are stochastic-style normalized scores of the positioning difference over different historical windows.
Stochastic Positioning Score
Stoch(X, Length) =
(X − Lowest(X, Length)) / (Highest(X, Length) − Lowest(X, Length)) × 100
If the range is zero, the value returns 50.
Where:
X = selected positioning series
Length = 13, 26, or 52 weeks
NC Diff13 *
NC Diff13 = Stoch(NC Difference, 13)
NC Diff26
NC Diff26 = Stoch(NC Difference, 26)
NC Diff52
NC Diff52 = Stoch(NC Difference, 52)
Commercial Diff13
Commercial Diff13 = Stoch(Commercial Difference, 13)
Commercial Diff26
Commercial Diff26 = Stoch(Commercial Difference, 26)
Commercial Diff52
Commercial Diff52 = Stoch(Commercial Difference, 52)
Interpretation:
Values near 100 show positioning is near the upper extreme of the selected lookback period
Values near 50 show neutral/mid-range positioning
Values near 0 show positioning is near the lower extreme of the selected lookback period
-----------------------------------------------------------------------------------------------
COT Index Formulas
The COT Index measures where current net positioning stands relative to its own historical range.
COT Index
COT Index =
(Current Net Position − Lowest Net Position over N weeks) /
(Highest Net Position over N weeks − Lowest Net Position over N weeks) × 100
If the range is zero, the value returns 50.
-----------------------------------------------------------------------------------------------
Non-Commercial COT Index
NC Index 52
NCIdx52 = Stoch(NC Net, 52)
This shows where current Non-Commercial net positioning stands within its 1-year range.
NC Index 156
NCIdx156 = Stoch(NC Net, 156)
This shows where current Non-Commercial net positioning stands within its 3-year range.
-----------------------------------------------------------------------------------------------
Commercial COT Index
Commercial Index 52
ComIdx52 = Stoch(Commercial Net, 52)
This shows where current Commercial net positioning stands within its 1-year range.
Commercial Index 156
ComIdx156 = Stoch(Commercial Net, 156)
This shows where current Commercial net positioning stands within its 3-year range.
-----------------------------------------------------------------------------------------------
A-B Spread Formulas
The indicator can also compare Pair A and Pair B positioning directly.
A-B Non-Commercial Flip%
A-B NC Flip% = Pair A NC Flip% − Pair B NC Flip%
A-B Commercial Flip%
A-B Commercial Flip% = Pair A Commercial Flip% − Pair B Commercial Flip%
Interpretation:
Positive A-B Flip% means Pair A has stronger positioning than Pair B
Negative A-B Flip% means Pair B has stronger positioning than Pair A
Useful for forex pair analysis, relative commodity analysis, and intermarket comparison
Example:
If EUR NC Flip% = +20%
and USD NC Flip% = +5%
Then:
EUR − USD NC Flip% = +15%
This suggests stronger speculative positioning in EUR relative to USD.
-----------------------------------------------------------------------------------------------
Heatmap Color Logic
The table uses color gradients to make positioning extremes easy to identify.
For score-based columns such as Diff13, Diff26, Diff52, NCIdx52, NCIdx156, ComIdx52, and ComIdx156:
High values move toward the positive color
Mid-range values move toward the neutral color
Low values move toward the negative color
Default colors:
Positive: Blue
Neutral: Pink
Negative: Red
For Long% columns:
Higher Long% is treated as stronger
Lower Long% is treated as weaker
For Short% columns:
Higher Short% is treated as weaker
Lower Short% is treated as stronger
For Flip% columns:
The heatmap uses a signed scale.
Signed Heatmap Normalization
Normalized Flip Value =
(Flip% + Flip Scale) / (2 × Flip Scale)
The value is clamped between 0 and 1.
Default Flip Scale = 35%
This means:
+35% or above = strong positive color
0% = neutral color
−35% or below = strong negative color
-----------------------------------------------------------------------------------------------
How to Read the Table
Each row represents one weekly COT snapshot.
The Date column shows the COT week.
Pair A and Pair B are displayed in separate grouped sections. Each section can include Non-Commercial metrics, Commercial metrics, or both, depending on user settings.
Important interpretation guidelines:
Diff13 / Diff26 / Diff52
Shows short-term, medium-term, and 1-year positioning extremes between Non-Commercial and Commercial groups.
NCIdx52 / NCIdx156
Shows whether speculative positioning is historically stretched or depressed.
ComIdx52 / ComIdx156
Shows whether commercial hedger positioning is historically stretched or depressed.
Long%
Shows the long-side participation as a percentage of open interest.
Short%
Shows the short-side participation as a percentage of open interest.
Flip%
Shows the net directional bias after subtracting short exposure from long exposure.
A-B Flip%
Shows relative positioning pressure between the two selected markets.
-----------------------------------------------------------------------------------------------
Example Use Cases
Forex Analysis
Use Pair A and Pair B to compare currency futures positioning.
Example:
Pair A = EUR
Pair B = USD
This allows EUR/USD positioning analysis using COT data.
Commodity Analysis
Compare metals, energy, or agricultural markets.
Example:
Pair A = Gold
Pair B = Silver
This helps identify relative speculative or commercial positioning strength.
Index Analysis
Compare equity index futures.
Example:
Pair A = NASDAQ
Pair B = S&P 500
This can help identify relative risk appetite and index positioning rotation.
Macro Sentiment Analysis
Use Non-Commercial positioning to track speculative crowding and Commercial positioning to observe hedging pressure.
-----------------------------------------------------------------------------------------------
Notes
COT data is weekly and is not designed for intraday signals. This indicator is best used as a macro positioning tool, sentiment confirmation tool, or higher-timeframe market context dashboard.
The heatmap does not generate direct buy or sell signals. Instead, it provides a structured view of positioning extremes, participant behavior, and relative strength between selected COT markets.
Extreme readings can remain extreme for long periods, so COT data should be combined with price action, trend structure, volatility, liquidity, and broader market context.
-----------------------------------------------------------------------------------------------
Summary
COT Historical Heatmap transforms weekly Commitment of Traders data into a clean, customizable, and visually intuitive positioning dashboard. By combining Net Positioning, Long%, Short%, Flip%, COT Index, Difference Scores, and A-B relative spread analysis, it helps traders understand how Non-Commercial and Commercial participants are positioned across major futures markets.
Indicator

EDGE SMC Structure & Sweeps EDGE Structure & Sweeps maps market structure and liquidity for Smart Money / ICT traders. It marks structure breaks, order blocks, equal highs and lows, higher timeframe bias, and two-candle liquidity sweeps, then prints an entry signal only when structure, a supply or demand zone, and higher timeframe bias all line up.
What it does
Structure: Confirmed swing pivots drive BOS (break of structure, trend continuation) and CHoCH (change of character, the first break against trend and the reversal warning).
Order blocks: The last opposite candle before a break is drawn as a demand or supply zone. Zones are mitigate-and-delete, so they clear from the chart the moment price trades back through them and never blanket your view.
Liquidity: EQH and EQL mark equal highs and lows where stops tend to rest.
HTF bias: A higher timeframe EMA relationship, read from closed bars, sets a single directional bias.
Chop filter: Signals are suppressed when the swing range is small relative to ATR.
Entries: Buy or Sell prints only when price taps a zone in the trend direction, higher timeframe bias agrees, and the market is not chopping. Fewer signals, higher agreement.
Fakeouts: A two-candle liquidity sweep. The setup candle takes liquidity past a swing level, the next candle closes back across it, and the setup candle is marked in light purple with a Fake Out sign. The same check runs on two higher timeframes and labels sweeps there.
How to use it
Works on any symbol and timeframe. Every threshold scales in ATR, so no retuning between instruments.
For full multi-timeframe fakeout coverage, run it on your lowest timeframe and set the two higher timeframe scans above it (for example chart on 1m, scans at 5m and 15m).
Set the HTF bias source to roughly 10 to 15 times your chart timeframe (15m bias for a 1m chart, 1h for a 5m chart).
Control fakeout sensitivity with swept swing length and min trap size (ATR). Raise both for fewer, cleaner marks.
Originality and repainting
This script is original. Structure uses confirmed pivots, entries, and fakeouts evaluate on bar close, and every higher timeframe value is pulled from closed bars. Historical marks reflect what would have printed live. It does not repaint.
This is a structure and context tool. It is not a signal service and not financial advice. No indicator predicts price. Test on replay and forward test before trading live. Indicator

Indicator

Stocks: Dashboard [invincible3]Stocks Dashboard is a professional all-in-one stock analysis dashboard built directly for PulseWire charts. It is designed to help investors, traders, and analysts quickly evaluate a stock using a combination of fundamental strength, valuation, financial health, income quality, shareholder return, and price momentum.
The indicator displays a clean table-based dashboard on the chart and converts raw financial and technical data into easy-to-read category scores. Instead of checking many separate financial ratios manually, this dashboard organizes the most important stock metrics into structured sections and gives a clear visual overview of the company’s current condition.
The dashboard includes composite scoring for Quality, Value, Growth, Financial Health, Income / Shareholder Return, and Momentum. Each category is scored from 0 to 100 and classified using simple rating labels such as Elite, Strong, Fair, Weak, or Risk. This allows users to quickly compare the strength and weakness of a stock across multiple dimensions.
The Valuation section includes important valuation metrics such as P/E TTM, Forward P/E, PEG Ratio, P/S, P/B, EV/EBITDA, EV/Sales, Earnings Yield, Operating Earnings Yield, Graham Price, Graham Number Upside, EPS TTM, and BVPS. These metrics help identify whether a stock may be expensive, fairly valued, or potentially undervalued.
The Quality section focuses on profitability and business efficiency. It includes ROE, Asset Return / ROA, ROIC, Piotroski F-Score, Gross Margin, Operating Margin, Net Margin, EBITDA Margin, and Free Cash Flow Margin. These values help evaluate how efficiently the company generates profits from its assets, equity, capital, revenue, and operations.
The Growth section tracks the company’s expansion profile using Revenue Growth, EPS Growth, and Sustainable Growth Rate. These metrics help users understand whether the business is improving, stagnating, or losing earnings momentum.
The Financial Health section evaluates balance sheet strength and risk. It includes Debt / Equity, Debt / Assets, Debt / EBITDA, Net Debt / EBITDA, Cash / Debt, Current Ratio, Quick Ratio, Interest Coverage, Altman Z-Score, Operating Cash Flow, and Free Cash Flow. This section is useful for identifying companies with strong liquidity, manageable debt, and lower financial risk.
The Income / Return section is designed for dividend and shareholder-return analysis. It includes Dividend Yield, Payout Ratio, Free Cash Flow Yield, DPS, Buyback Yield, and Buyback Ratio. These metrics help investors evaluate whether a company is returning value to shareholders through dividends, buybacks, and cash generation.
The Momentum section adds a technical view of the stock. It includes RSI 14, 1-month return, 3-month return, 6-month return, 12-month return, 6-month relative strength versus a selected benchmark, 12-month relative strength versus a selected benchmark, volatility, and moving-average trend using the 20, 50, and 200 daily moving averages.
The Snapshot section provides a quick summary of the selected stock, including current price, market capitalization, enterprise value, 52-week position, and distance from the 52-week high. This gives users a fast overview of where the stock is trading relative to its recent range.
Users can customize the stock symbol, benchmark/index symbol, financial period, table position, text size, color theme, and visible sections. The dashboard supports multiple professional themes, including Dark Terminal, Light Terminal, Emerald Pro, Royal Blue, and Amber Desk. Users can also enable or disable colored score backgrounds, score bars, alternating rows, colorful section headers, and directional symbols.
This indicator is useful for:
* Long-term stock analysis
* Fundamental screening
* Valuation comparison
* Dividend and shareholder-return review
* Financial health analysis
* Momentum confirmation
* Relative strength comparison against an index or benchmark
* Building a structured watchlist review process
The goal of this dashboard is to provide a fast, organized, and visually professional stock overview without requiring users to switch between multiple financial websites or separate indicators. It combines fundamental data and technical momentum into one compact chart-based table, making it easier to identify strong, weak, undervalued, overvalued, or financially risky stocks.
Note: The dashboard uses PulseWire’s available financial data. Some metrics may appear unavailable depending on the selected symbol, exchange, market, or financial data coverage. This tool is intended for analysis and research purposes only and should not be considered financial advice.
Indicator

RichmondHillCM - VWAP & Volume-Spike Suite V1.3RichmondHillCM — VWAP & Volume-Spike Suite
A clean, focused overlay that combines an anchored monthly VWAP with above-average volume detection to flag high-conviction bars in real time. Built for the weekly chart but works on any timeframe.
What it does
The indicator watches for volume spikes — bars where volume rises above its own moving average by a set threshold — and marks each one with a directional triangle:
Green up-triangle (below the bar) — a volume spike closing on the bullish side (buyers in control)
Red down-triangle (above the bar) — a volume spike closing on the bearish side (sellers in control)
"Bullish" and "bearish" are, by default, defined relative to the monthly VWAP: a spike closing above VWAP prints an up-triangle; below VWAP prints a down-triangle. This ties conviction (volume) to fair value (VWAP) in a single, easy-to-read signal.
The VWAP structure
An anchored VWAP resets at the start of each month and acts as the volume-weighted "fair value" pivot. Standard-deviation bands bracket the typical range around it:
Lower bands (−1σ / −2σ / −3σ) — progressively cheap vs fair value; classic long / entry zones
Upper bands (+1σ / +2σ / +3σ) — progressively rich vs fair value; scale-out / short zones
VWAP itself — the mean pivot: reclaim = bullish, lose = bearish
A live summary table lists all seven VWAP levels (±1σ, ±2σ, ±3σ and the mean), the current VWAP zone, the latest volume-vs-average ratio, the live spike state, and a running count of bullish vs bearish spikes. On a weekly chart each month spans roughly 4–5 bars, giving the VWAP and its bands enough data to be meaningful.
Settings
Volume MA length and spike threshold (× average)
Direction definition: VWAP-relative (default), Candle (close vs open), or Close-to-Close
Band width (σ multiplier) for the plotted band, plus toggles for bands, shading, and on-chart labels
Optional "confirm on bar close" to avoid intrabar repaint on the live bar
Summary table with a Top / Bottom position toggle
Built-in alerts for bullish/bearish spikes and VWAP reclaim/loss
How to use it
Watch for a lower-band tag paired with a bullish spike triangle as a potential long, and an upper-band tag paired with a bearish spike triangle as a scale-out or short. Use the VWAP itself as your mean pivot — trading above it favors longs, below it favors shorts.
For educational and informational purposes only; not financial advice. Always do your own research and manage risk. Indicator

Structural Divergence [Proozac]Structural Divergence — Pine Script v6 — Overlay Indicator
What It Does
Structural Divergence merges two of the most reliable concepts in technical analysis into a single confluence-based signal: Market Structure (HH/HL/LH/LL, BOS/CHoCH) and RSI/MACD divergence detected precisely at structural swing points — not anywhere on the chart, but exactly where it matters.
Most divergence indicators flag every RSI/price disagreement, drowning traders in low-quality signals. Structural Divergence only calculates divergence at confirmed swing highs and lows, then cross-references it against real structural breaks. A signal only fires when both align.
## How It Works
Swing Detection: identifies significant highs and lows using a configurable pivot length, then labels each one HH, HL, LH, or LL relative to the prior swing of the same type.
BOS / CHoCH: automatically draws Break of Structure and Change of Character lines whenever price closes beyond the last confirmed swing level, tracking trend direction in real time.
Divergence Engine: at every swing high/low, RSI (and optionally MACD histogram, for stricter confirmation) is compared against the prior swing of the same type to detect classic bearish/bullish divergence.
Confluence Signal: when a divergence and a BOS/CHoCH occur within a configurable bar window in the same direction, a triangle signal fires with a built-in alert — filtering out the noise of standalone divergence or structure signals used alone.
Why It's Different
Instead of stacking indicators and hoping for visual confluence, this script computes it algorithmically. The result is fewer, higher-conviction signals: you're not just seeing "RSI diverged" or "structure broke" — you're seeing both happen together, which historically marks higher-probability reversal and continuation zones.
## Settings
Swing Detection Length (pivot sensitivity)
RSI Length
Optional MACD confirmation (stricter mode)
Confluence window (max bars between divergence and structural break)
Full color customization for bullish/bearish elements
Alerts
Two ready-to-use alert conditions: Confluence Buy Signal and Confluence Sell Signal — plug straight into PulseWire's alert system or your own webhook automation. Indicator

Indicator

RichmondHillCM - Log-Price Regression Channel V1.2RichmondHillCM - Log-Price Regression Channel V1.2
An OLS linear regression fitted to the logarithm of price, with standard-deviation bands (±1σ / ±2σ / ±3σ) projected around the fitted mean. Because the fit is done in log-space, the channel is geometric — it scales proportionally across very different price levels, which makes it well suited to long-trending instruments like SPY where a raw-price channel would distort.
⚠️ Designed for the WEEKLY (1W) timeframe. The default 252-bar lookback (~5 years of weekly data) and the band logic are tuned for weekly candles. A live banner at the top of the stats table turns red whenever the chart is not on a weekly timeframe.
Features
Log-space regression mean + ±1σ/±2σ/±3σ bands with optional fills
BUY / SELL labels on ±2σ crosses, optional STRONG BUY / SELL on ±3σ
Stats table: each band's price, % distance from current price, and Z-score
Background shading when price is stretched beyond ±2σ / ±3σ
Built-in alert conditions for every band cross and the mean
How to use
Best suited to long-term growth compounders like Google (GOOGL, SPY, NDX). Use it on the weekly (1W) timeframe and set your price axis to logarithmic scale for the bands to line up correctly.
Instrument: growth compounders / steady long-term trenders (e.g. GOOGL, MSFT, SPY)
Timeframe: weekly (1W)
Price axis: log scale (right-click the axis → "Logarithmic")
How to read it: price drifting toward ±2σ/±3σ is unusually far from its own trend; the bands act like a statistical rubber band. Use band touches as context, not standalone entries.
For research and educational purposes only. Not financial advice. Indicator

Order Flow Delta Proxy (Tick-Rule)This indicator approximates buy-side versus sell-side trading pressure, commonly referred to as order flow delta or cumulative volume delta, using a tick-rule method applied to lower-timeframe price data. True bid and ask tick data is not available for most index and cash market symbols on this platform, so this script provides a volume-based directional approximation instead.
How it works:
For each bar on the chart, the script pulls a configurable lower-timeframe series of closes and volumes using request.security_lower_tf(). Each lower-timeframe close is compared to the prior lower-timeframe close: if price ticked up, that portion of volume is classified as buy-side; if price ticked down, it is classified as sell-side; unchanged ticks are split evenly, following standard tick-rule convention. These classified volumes are summed per chart bar to produce a per-bar delta value, plotted as a histogram, alongside a running cumulative delta line. If lower-timeframe data is unavailable, the script falls back to a close-position-within-range volume split as an approximation.
Notes and limitations:
This is a volume-based directional proxy, not real bid or ask order flow data. The currently forming bar's values can update intrabar as new lower-timeframe data arrives, which is expected behavior for any real-time order-flow style tool; once a bar closes, its value is fixed. This script does not generate trade signals and does not guarantee profitability. It is intended as a supplementary analytical tool and should be used alongside sound risk management. Past patterns in delta do not guarantee future price behavior. Indicator

Indicator

Supply and Demand Zones | Flux ChartsGENERAL OVERVIEW
Supply and Demand Zones indicator uses a simple but effective mechanism to find the most useful supply and demand zones on any chart. Most tools draw every zone they can find and leave the trader to sort through the clutter. This indicator does the opposite: it watches how price actually behaves at each zone and keeps only the levels that have earned attention.
The mechanism is straightforward. Each zone is built from a confirmed price swing, and from that moment it is tracked as a living object. Every time price returns, the indicator records what happened — a clean rejection (retest), a failed push-through that snaps back (also a retest), or a decisive break. From that record it computes one honest number, Held: the share of retests where the zone successfully pushed price away. A zone that has held four of five tests is immediately separated from one that keeps breaking.
That same track record then drives what you see. Instead of showing every zone, the indicator surfaces a small set of the most useful ones — ranked by how reliably they have held, how often they have been tested, and how close they are to current price. The result is a clean chart focused on the zones that have actually proven themselves, rather than a wall of boxes you have to filter by eye.
WHAT IS THE THEORY BEHIND THE INDICATOR?
Supply and demand trading is built on a simple idea: where price reversed sharply once, it often reacts again, because unfilled orders and trapped traders remain at that level. The problem is that not every zone is equal. Some levels are respected again and again; others break the first time they are tested. Most supply and demand tools draw every zone the same way and leave the trader to guess which ones still matter.
This indicator takes the position that a zone's history is more informative than its existence. A level that has been tested five times and held four of them is telling you something a fresh, untested level cannot. So instead of treating zones as static boxes, the indicator watches every interaction — bounces, failed breakouts, and clean breaks — and turns that record into a measurable hold rate. A zone earns its place on your chart by performing, not just by existing.
FEATURES
Finds the most useful zones — instead of drawing every zone, it tracks how each one behaves and surfaces only the levels that have proven themselves
Automatic zone detection — supply and demand zones are built from confirmed price swings, with boundaries sized by the average wick so each box covers the real reaction area
Per-zone track record — every zone carries its own data: how many times it has been retested, how many times it has broken, and how reliably it has held
Held statistic — each zone shows the share of its retests that successfully held, turning its history into one honest reliability number you can read at a glance
Retest tracking — every test of a zone is recorded and marked on the chart, including failed breakouts that snap back into the zone
Breakout & flip tracking — clean breaks are recorded, and the zone flips from supply to demand (or vice-versa) while keeping its full history
Strongest / Nearest ranking — shows the most useful zones, ranked by how reliably they have held, how often they have been tested, and how close they are to price
Clear, data-rich visuals — gradient zone fills, glowing retest markers, colour-coded flip segments, and a per-zone stats label that displays its retests, breakouts, and Held % right beside it
Clean-chart controls — minimum spacing hides near-duplicate zones, and a smooth fade-out dims zones as they drop off the list
Four alerts — retests and breakouts, on both supply and demand
ZONE DETECTION AND BOUNDARIES
What is a zone?
A zone is a price area drawn around a recent swing high or swing low. A swing high becomes a supply zone (an area sellers defended); a swing low becomes a demand zone (an area buyers defended). New zones are only created when they don't overlap an existing one, so the chart never stacks duplicate boxes on the same level.
Why does it matter?
Swings are where the market actually changed its mind, which makes them the most natural place to expect a future reaction. Building zones only from confirmed swings — and skipping overlaps — keeps the set of zones meaningful instead of cluttered. Clean, non-overlapping detection is the foundation everything else builds on: the track record and ranking are only as useful as the zones they start from.
How is it detected and calculated?
The indicator waits for a swing to confirm using the Swing Period: a high or low only counts once that many bars have printed on both sides of it. The zone's outer edge sits at the swing's extreme (the high for supply, the low for demand). The inner edge is set using the average wick of the candles around the swing, so the zone covers the real reaction area rather than a single thin line. Because a swing needs bars on both sides to confirm, each zone appears a fixed number of bars after the swing itself — a normal, non-repainting delay rather than a level that appears and disappears.
Settings
Swing Period — how many bars must confirm a swing on each side before it forms a zone. Higher = fewer, more significant zones; lower = more zones that react faster to price. Default 30.
Lookback — how far back the indicator looks for zones, in bars. Higher keeps older zones on the chart; lower focuses on recent price action. Default 2000.
RETESTS AND FAILED BREAKOUTS
What is a retest?
A retest is when price returns to a zone, touches it, and is rejected — closing back out on the same side it came from. This is the classic supply/demand reaction: price revisits the area and the zone pushes it away. A failed breakout — price pushing through the zone but then closing back inside it — is also counted as a retest, because the zone ultimately won.
Why does it matter?
Retests are the evidence that a zone is still active. A level that keeps rejecting price is one the market is clearly watching. Counting failed breakouts as retests is important too: a level that traps breakout traders and reclaims is often the strongest kind of level, and ignoring those events would understate a zone's true strength.
How is it detected and calculated?
On each closed bar, a zone is checked for a reaction: for a supply zone, price reaching into the zone but closing back below it counts as a retest; for a demand zone, reaching in but closing back above. To avoid over-counting when price lingers at a level, a Retest Cooldown requires a minimum number of bars between two counted retests on the same zone. Separately, if price closes clean through a zone and then closes back inside it on the next resolution, that failed breakout is recorded as a retest as well. All events are evaluated only on confirmed (closed) bars, so nothing is counted on an unfinished candle.
Settings
Retest Cooldown — waits this many bars before counting another test of the same zone, so price lingering at a level isn't counted as many separate retests. Default 3.
Retests (toggle + marker) — show or hide retest markers and choose their shape (Circle, Triangle, Cross, Diamond).
BREAKOUTS AND ZONE FLIPS
What is a breakout?
A breakout is when price closes decisively through a zone and keeps going, rather than being rejected. When a zone breaks, it flips: a broken supply zone becomes a demand zone, and a broken demand zone becomes a supply zone — the same idea as old resistance becoming new support. Crucially, the zone keeps its history through the flip; it doesn't start over.
Why does it matter?
A clean break is the opposite of a hold, and tracking it is what makes the Held statistic meaningful. The flip behaviour also reflects how these levels really work in practice — a level that breaks rarely disappears; it changes role. Keeping each zone's full history across flips means a level that has been a battleground through several cycles is shown as exactly that.
How is it detected and calculated?
When price first closes through a zone, the zone enters a pending state. The very next resolution decides what happened: if price closes through again, it is confirmed as a breakout and the zone flips its side; if price instead closes back inside, it is recorded as a failed breakout (a retest). This two-step confirmation avoids calling a breakout on a single bar that immediately reverses. Each flip also starts a new coloured time segment, so the zone's box visually records when it was supply and when it was demand across its life.
Settings
Breakouts (toggle + marker) — show or hide breakout markers and choose their shape. Off by default to keep the chart clean.
THE HELD STATISTIC
What is Held?
Held is the heart of the indicator. It answers a simple question: when price comes back to this zone, how often does the zone actually hold? It is shown on each zone's stats label as a count and a percentage, for example "Held: 4 (80%)" — meaning four of the zone's five retests successfully held.
Why does it matter?
This is the number that separates a level worth trading from one that just happens to be on the chart. A high Held % means the zone has repeatedly done its job; a low one warns you the level is leaky. Because it is measured from the zone's own history rather than assumed, it gives you an honest, at-a-glance read on reliability.
How is it detected and calculated?
After each retest, the indicator looks forward over the Hold Window — a set number of candles — and checks whether the zone was broken during that window. If the zone survived the window without a breakout, that retest counts as a hold. Only retests old enough to have a full window behind them are judged, so a very recent retest doesn't distort the number before its outcome is known. Held is then the count of successful holds, shown alongside its percentage of all retests.
Settings
Hold Window — after a retest, the zone must avoid a breakout for this many candles to count as a successful hold. Drives the Held stat and the Strongest ranking. Default 10.
STRONGEST AND NEAREST RANKING
What is the ranking?
Rather than crowd the chart with every zone it finds, the indicator shows a limited number per side and chooses which ones using one of two modes. Nearest simply shows the zones closest to current price. Strongest shows the zones that have most reliably held, weighted by how often they've been tested and how close they are to price.
Why does it matter?
Most charts have far more historical zones than are useful at once. Nearest is best when you care about the levels price is about to interact with regardless of their record. Strongest is best when you want the chart to surface proven levels — the ones that have repeatedly held — so your attention goes to the areas with the best track record.
How is it detected and calculated?
The Strongest score combines three things. Reliability is the zone's hold rate, but smoothed so a zone tested only once can't look perfect — its record is trusted more as it accumulates more tests. Evidence rewards zones that have been tested more often, with diminishing returns so one ancient zone doesn't dominate forever. Proximity favours zones closer to price. A small bonus is given to zones already on screen so the displayed list stays steady instead of swapping every bar. Nearest mode, by contrast, simply ranks by distance to price.
Settings
Rank By — Strongest (most reliable, weighted by tests and proximity) or Nearest (closest to price). Default Strongest.
Show — how many supply and how many demand zones to show at once; each side is counted separately. Default 5.
ZONE SPACING AND FADE-OUT
What are spacing and fade-out?
Two features keep the chart readable. Minimum spacing hides a zone that sits too close to one already shown, so you don't get several near-identical boxes stacked together. Fade-out smoothly dims a zone as it drops off the visible list, instead of having it vanish abruptly.
Why does it matter?
A clean chart is easier to act on. Spacing prevents visual clutter at congested levels, and the fade-out makes it obvious when a zone is no longer among the top picks without the chart jumping around distractingly.
How is it detected and calculated?
When selecting which zones to show, the indicator skips any candidate sitting within the Min Zone Spacing distance (a percentage of price) of a zone already chosen. When a previously shown zone is no longer selected, it is moved to a fade list and dimmed over a fixed number of bars before being removed. Drawing is also budgeted internally so the gradient zone fills always stay within the platform's object limits.
Settings
Min Zone Spacing (%) — hides zones sitting too close to one already shown, to keep the chart clean. Set to 0 to show every zone. Default 0.1%.
Supply / Demand colours — the colours used for supply and demand zones, their gradient fills, and their markers.
ALERTS
What alerts are available?
Bullish Retest — price bounced from a demand zone.
Bearish Retest — price rejected from a supply zone.
Bullish Breakout — price broke above a supply zone.
Bearish Breakout — price broke below a demand zone.
When do they fire?
Each alert fires on a confirmed bar at the moment the matching event is recorded, so you are notified of bounces and breaks as they are confirmed rather than on an unfinished candle.
IMPORTANT NOTES
All retests, breakouts and flips are evaluated only on closed (confirmed) bars, so events are not counted on an in-progress candle.
A breakout requires price to close through a zone and then confirm on the next resolution. A single bar that closes through and immediately closes back in is recorded as a retest (failed breakout), not a breakout.
Held only judges retests that have a full Hold Window of bars behind them, so the most recent retest may not yet be reflected in the Held count until its outcome is known.
When a zone breaks it flips side and keeps its full history, so a single long-lived zone can show interactions from several supply/demand cycles.
The number of zones shown is limited per side by the Show setting; other valid zones continue to be tracked in the background and can appear later as conditions change.
UNIQUENESS
Most supply and demand indicators draw zones and stop there, leaving the trader to guess which levels still matter. Supply and Demand Zones treats each zone as a tracked object with a measurable record. Every retest, failed breakout and clean break is recorded over the zone's life, and the Held statistic turns that record into a single, honest reliability number shown right on the zone — a level that has held four of five tests is immediately distinguishable from one that keeps breaking. Failed breakouts are folded into retests rather than ignored, capturing the trap-and-reclaim behaviour that often marks the strongest levels, and broken zones flip side while keeping their entire history instead of resetting. The Strongest ranking is driven by that same measured record — reliability, number of tests, and proximity — with smoothing so a single lucky test can't masquerade as a perfect level, meaning the chart automatically surfaces the zones that have actually proven themselves. The result is a supply and demand tool that doesn't just show you where zones are, but how much each one has earned your trust.
DISCLAIMER
This indicator is an analytical and educational tool. It does not predict future price movement and does not provide financial advice. A zone's past hold rate describes what has already happened and does not guarantee future behaviour. Always use proper risk management and combine this tool with your own analysis. Indicator

Position Size Calculator - Risk Manager, Risk/Reward & L[LunqFX]Risk Manager is an on-chart position size and risk/reward calculator for PulseWire that turns proper risk management into one click. Set your account size and risk per trade %, and it instantly gives you the exact position size (units / lots / contracts / shares), your risk and reward in dollars, the risk/reward ratio, and the breakeven win rate you need to be profitable — all visualized as clean risk and reward zones right on the chart. It works out of the box with an auto ATR setup (Entry / Stop Loss / Take Profit placed for you), or type your own levels. Built in Pine Script v6, it works on forex, crypto, stocks, indices, futures, gold (XAUUSD) and Bitcoin (BTCUSD), on any timeframe — because it sizes risk, not signals. Keywords: position size, position sizing, risk management, risk reward, risk/reward ratio, lot size calculator, money management, stop loss, take profit, R multiple, risk per trade, breakeven win rate, Kelly criterion, day trading, swing trading, scalping.
◆ WHY THIS MATTERS
Most traders blow accounts not because of bad entries, but because of bad position sizing and inconsistent risk. Professionals risk a fixed small % per trade (commonly 0.5–2%) and know their risk/reward before they click buy. This tool enforces that discipline on every trade — no spreadsheets, no external calculators.
◆ WHAT IT DOES
Exact position size from your account balance and risk %, in units, lots, contracts, shares or coins.
Risk and reward in account currency and as a % of account.
Risk/reward ratio with a clean visual meter.
Breakeven win rate — the minimum win rate needed to be profitable at your current R:R (a metric most calculators skip).
Visual risk zone (red) and reward zone (green) drawn between Entry, Stop and Target.
Optional fractional Kelly suggested risk %.
A modern, colour-coded dashboard.
◆ HOW IT WORKS
Auto mode (default): Entry is set at price, Stop at a chosen ATR distance, and Target at your chosen R multiple — a valid setup appears instantly on any instrument.
Manual mode: turn Auto off and enter your own exact Entry / Stop / Target prices in the settings.
Position size = (account balance × risk %) ÷ (distance from entry to stop). This guarantees that if the stop is hit, you lose exactly your chosen risk %.
Reward = position size × distance to target; R:R = reward ÷ risk.
Breakeven win rate = 100 ÷ (1 + R:R) — e.g., at 2R you only need to win >33% of trades to break even.
Lots/contracts = units ÷ your contract size (100000 for a forex standard lot, 1 for stocks/crypto, your multiplier for futures).
◆ HOW TO USE IT
Set Account balance and Risk per trade % once (e.g., 1%).
Pick Auto direction (Long/Short) or switch to manual and place your real Entry/Stop/Target.
Read the Position size — that is exactly how much to trade so your loss at stop = your set risk.
Check the R:R meter and Breakeven — only take trades whose math fits your strategy’s win rate.
Use the red/green zones to see risk and reward visually before entering.
Adjust Contract size to match your instrument (forex lots, futures multiplier, etc.).
◆ SETTINGS
Trade Setup (auto ATR or manual prices, direction, ATR stop, target R), Account & Risk (balance, risk %, contract size, size label), Kelly (optional), Visuals (box length, neon candles), Panel (text size, position, colours).
◆ ALERTS
Price hit Entry · Price hit Stop · Price hit Target.
◆ ORIGINALITY
This is original work. The auto-ATR setup engine, the account-aware sizing, the visual risk/reward zones, the colour-coded dashboard with the R:R meter and the breakeven-win-rate readout are all my own implementation. No third-party code is used.
◆ LIMITATIONS
This is a planning and sizing tool, not a signal generator — it does not tell you when to buy or sell.
Position size assumes your account currency matches the quote currency; for cross-currency pairs or unusual contracts, set Contract size to match your broker’s lot/units.
The auto ATR setup is a starting template — always adjust Stop and Target to real structure.
Results depend on the inputs you provide (balance, risk %, contract size); double-check them for your broker.
◆ NON-REPAINTING
This is a calculator: it draws from your inputs and the current price and never alters historical bars.
Risk Manager is an educational tool, not financial advice. Trading involves risk of loss. Always do your own research and manage risk responsibly. © LunqFX. Indicator

Indicator

Gap Closure Stats# Gap Closure Stats — Publication Description
---
## What This Indicator Does
**Gap Closure Stats** tracks the gap between each session's **4:15pm ET close** (the anchor price) and up to three configurable **opening prices** — by default the midnight open (00:00 ET), the London/European open (03:00 ET), and the RTH open (09:30 ET). For each of those levels it draws a coloured box on the chart spanning from the anchor price to the opening price, and records statistics on how often price subsequently fills that gap during the regular trading session.
Every percentage in the stats table is computed **live, from the history on your own chart**. There are no hard-coded numbers. The statistics describe exactly the instrument and timeframe you are looking at, and they update automatically as new sessions complete.
The indicator answers a core structural question about daily price behaviour:
- Given a gap of a certain size between yesterday's 4:15pm close and today's open, how often does price retrace back to that 4:15pm level (a full gap fill)?
- How often does price retrace at least a defined partial amount of the gap?
- Do these tendencies differ depending on whether the gap is up or down?
- Do they change when the gap is unusually large or small relative to recent history?
It is an analytical and contextual tool. It does not issue buy or sell signals.
---
## Core Concepts and Definitions
### The Anchor Price (4:15pm ET Close)
The reference price for each trading day is the **close of the 4:15pm ET bar** from the prior session. This is captured during a narrow one-minute anchor session (default 16:15–16:16 ET). The anchor represents where the market last traded before overnight activity begins, and it is the level that a "gap fill" requires price to return to.
### The Gap
A gap exists when the opening price at one of the three configurable levels differs from the anchor. If the opening price is **above** the anchor, the gap is **up** — price has gapped higher overnight and a fill means price would need to fall back to the anchor. If the opening price is **below** the anchor, the gap is **down** — price would need to rally back to fill it.
The **gap size** in points is the absolute difference between the anchor and the opening price.
### Gap Size Buckets (Quartiles vs. History)
Each day's gap size is classified into one of four buckets based on where it falls in the **historical distribution of all prior gaps** on your chart:
- **Q1 (0–25th percentile)** — the smallest gaps relative to history
- **Q2 (25–50th percentile)** — below-median gaps
- **Q3 (50–75th percentile)** — above-median gaps
- **Q4 (75–100th percentile)** — the largest gaps relative to history
This classification requires at least 4 prior sessions of data before it becomes meaningful. On very fresh charts, all gaps are assigned to Q2 until enough history accumulates. The bucket thresholds update as each new session completes.
### Full Gap Fill (Hit%)
A **full gap fill** (labelled **FULL%** in the table) is recorded when price trades at or through the anchor price at any point during the RTH session (09:30–16:00 ET). It does not matter whether price opens, then reverses immediately, or whether it fills the gap hours later — any intraday touch of the anchor counts.
### Partial Gap Fill (≥X%)
The **partial fill level** is user-configurable (default 50%). A partial fill is recorded when price retraces at least that percentage of the gap back toward the anchor from the opening price. For example, with a 50% setting: if the gap up is 10 points (open is 10 points above the 4:15pm close), a partial fill is recorded when price falls to within 5 points of the open (i.e. 5 points back toward the anchor). A 100% setting makes this equivalent to FULL% — a complete gap fill.
### The Three Gap Levels
The indicator captures three independent opening prices, each at a configurable time:
- **Level 1** — defaults to the **RTH open at 09:30 ET**. This is the most widely watched gap — the difference between the prior day's 4:15pm close and the next day's regular-session open.
- **Level 2** — defaults to the **03:00 ET open** (broadly the London/European futures open). This captures the gap that existed when European trading began.
- **Level 3** — defaults to the **midnight (00:00 ET) open**. This captures the initial overnight gap that formed at the start of the new calendar day.
Each level builds its own independent statistics, so you can compare how gap-fill behaviour differs across these three time windows.
### Level Quartile (LQ)
For the current session, the **level quartile** describes where the opening price of each level sits **within the gap box** — i.e. how far into the gap that level's open was relative to the full anchor-to-RTH-open range. LQ1 means the level opened very close to the RTH open (near the far edge of the gap), LQ4 means it opened very close to the anchor (near full-fill territory already).
---
## What You See on the Chart
### Gap Boxes
For each active level, a shaded box is drawn spanning from the **anchor price** to the **opening price** at that level's time. The box extends rightward through the session, stopping at 4:15pm ET. The box colour matches the level's configured colour (default: purple for Level 1, blue for Level 2, teal for Level 3). Boxes are shown only when there is a genuine gap — if the opening price equals the anchor, no box is drawn.
### Quartile Lines Inside Boxes
When enabled, three dashed/solid lines are drawn inside each gap box, dividing it into four equal price quartiles:
- **Q1 line (dashed)** — 25% of the way from the opening price toward the anchor
- **Q2 line (solid)** — the midpoint of the gap (50%)
- **Q3 line (dashed)** — 75% of the way toward the anchor
These help you gauge how far price has retraced into the gap at a glance, and they correspond to the Level Quartile (LQ) measure in the stats table.
### Opening Price Lines
A dotted line is drawn at each level's opening price for the session and extends rightward to 4:15pm, giving a persistent visual reference for where each gap began.
### Session History
The indicator keeps and displays the last N sessions (configurable, default 10). Older boxes and lines are automatically removed as new sessions are added, keeping the chart uncluttered.
---
## The Stats Table, Explained Column by Column
The stats table has one block of four rows per level. Each block breaks down the statistics for that level across the four gap-size quartile buckets.
### Row structure
Each row corresponds to one **gap size bucket** (Q1 through Q4). The row currently matching today's session is highlighted in grey.
### Columns
**LEVEL** — identifies which opening level the block belongs to (shown as the configured session string, e.g. `0930-0931`). The label is coloured to match the level's chart colour.
**GAP SIZE BUCKET (vs history)** — the quartile label for that row:
- `0–25%ile (smallest gaps)` — Q1
- `25–50%ile` — Q2
- `50–75%ile` — Q3
- `75–100%ile (largest gaps)` — Q4
**GAP UP — N** — the number of completed sessions where the gap was **up** (open above anchor) and fell in this size bucket.
**GAP UP — FULL%** — of those sessions, the percentage where price returned to the anchor at any point during RTH. This is the full gap fill rate for up-gaps of this size.
**GAP UP — ≥X%** — of those sessions, the percentage where price retraced at least the configured partial fill percentage back toward the anchor. At the default 50% setting, this is how often the market covered at least half the gap.
**GAP UP — AVG GAP** — the average gap size in points for up-gap sessions in this bucket.
**GAP DOWN — N / FULL% / ≥X% / AVG GAP** — the same four columns as above, but for sessions where the gap was **down** (open below anchor).
**CURRENT SESSION — GAP-Q / LVL-Q** — visible only on the row matching today's gap size bucket, and only when a level has fired today. Shows two numbers:
- **GQ** — the gap size quartile for today (GQ1 = smallest, GQ4 = largest)
- **LQ** — the level quartile, indicating where that level's open sits within today's overall gap box (LQ1 = close to the RTH open, LQ4 = close to the anchor)
---
## How To Configure the Indicator
### Anchor Settings
**Anchor Session (4:15pm)** — the one-minute session window used to capture the previous session's closing price. The default `1615-1616` captures the 4:15pm ET bar close. Only change this if your instrument's reference close is at a different time.
### Gap Times
These three groups configure the three independent opening levels. Each has the same three inputs:
**Level X Open Time** — a PulseWire session string defining the one-minute window at which the opening price is captured. The default sessions are:
- Level 1: `0930-0931` (RTH open)
- Level 2: `0300-0301` (European open)
- Level 3: `0000-0001` (Midnight ET)
You can change any of these to any time of day. Common alternatives include the 08:30 ET futures open (`0830-0831`) or the London open (`0800-0801`). The level fires once per calendar day at the first bar inside that window, and only if the anchor has already been set.
**Level X Color** — the colour used for that level's box, lines, and table label.
**Show Level X** — master toggle. When off, the level's boxes and lines are hidden and its rows are omitted from the stats table.
### Gap Fill Stat
**Partial Fill Level (%)** — controls what counts as a partial fill, from 1% to 100%. At 50% (default), the ≥X% column in the table tracks how often price retraced at least halfway back to the anchor. Set this to 100% to track only complete fills, or to a lower value such as 25% to track more modest retracements. The column header in the table updates to reflect your chosen value (e.g. `≥50.0%`).
### Visuals
**Show Gap Boxes (per level)** — toggles the shaded gap boxes on or off for all levels. The opening-price dotted lines are still drawn when this is off.
**Show Quartile Lines Inside Boxes** — toggles the three internal Q1/Q2/Q3 division lines inside each gap box.
**Keep Last N Sessions** — how many sessions of boxes and lines to retain on the chart. Higher values give more context but can clutter the chart. Default is 10.
### Stats Table
**Position** — one of nine positions on the chart for the stats table (top/middle/bottom × left/center/right). Default is `bottom_right`.
**Text Size** — `tiny`, `small`, `normal`, or `large`. Default is `small`. Use `tiny` on smaller screens or when all three levels are shown simultaneously.
---
## Practical Tips for Interpreting the Statistics
**Focus on N first.** A FULL% or ≥X% figure is only meaningful with an adequate sample size. Rows with small N values (especially Q4, which by definition can only contain 25% of all sessions) should be read cautiously. As a general guide, treat any figure based on fewer than 20–30 sessions as directionally interesting but not statistically reliable.
**Compare up vs. down gaps.** Many instruments show different fill rates for up-gaps versus down-gaps. A market that fills up-gaps 80% of the time but down-gaps only 50% of the time has a structural asymmetry worth knowing about.
**Use the size buckets to understand context.** The quartile split reveals whether gap-fill behaviour is consistent across all gap sizes or whether it changes materially. For example, small gaps (Q1) may fill at very high rates while large gaps (Q4) fill much less often — or vice versa. Today's highlighted row tells you which regime today's gap falls into.
**The partial fill column adds nuance.** Even when FULL% is modest, the ≥50% column may be high, suggesting price often makes a meaningful but incomplete move back toward the anchor. This can be useful context for targets and stops.
**The current session column (GAP-Q / LVL-Q)** tells you at a glance where today sits historically. GQ4 / LQ2 would mean today has a historically large gap, and Level 2 opened roughly in the middle of that gap — already halfway to a fill before the RTH session began.
**Compare levels against each other.** If Level 3 (midnight open) shows a higher fill rate than Level 1 (RTH open), it may indicate that much of the gap-filling happens during the overnight and pre-market session before RTH begins. If Level 1 shows a higher fill rate, the RTH session is where fills predominantly occur.
---
## Important Limitations and Considerations
1. **Levels must fire after midnight ET.** Because the indicator resets its session state once per calendar day in Eastern Time, a level's open time must fall on or after 00:00 ET for it to be captured correctly for that calendar day. If you configure a level earlier than midnight ET (which would be the prior afternoon), it will not associate correctly with the next day's anchor. The three defaults (00:00, 03:00, 09:30) all respect this constraint.
2. **The indicator requires an anchor from the prior session.** On the very first bar of a chart's history (or after a gap in data), there is no prior 4:15pm close available and no gap is measured for that day. This is normal behaviour and those sessions are simply skipped.
3. **Gap size quartile buckets need history to calibrate.** Until at least 4 prior gaps have been recorded, all sessions are assigned to Q2. The quartile thresholds update as history grows, so the bucket assignments for earlier sessions may shift over time as more data accumulates. This is by design — the buckets are always relative to all available history, not a fixed absolute threshold.
4. **All times are Eastern Time (ET).** The indicator uses the `America/New_York` timezone for all session windows. If your chart's timezone is set differently, the session windows still fire at the correct ET times — but the visual bar positions will correspond to your chart's local timezone.
5. **The stats table only shows levels that are enabled.** If you turn off Level 2, its rows are removed from the table and its data is no longer accumulated. Stats accumulate only for sessions where a level is enabled, so disabling and re-enabling a level mid-history will cause a gap in its data.
6. **Descriptive, not predictive.** The indicator reports what has happened on your chart's history. Past fill rates do not guarantee future behaviour. A 75% full-fill rate means the gap did not fill 25% of the time. These statistics provide context, not certainty, and should be used alongside your own analysis and risk management.
7. **Not financial advice.** This is an analytical and educational tool. It does not provide buy or sell signals and makes no claim about future price direction.
---
*Gap Closure Stats computes everything from the sessions on your own chart — no external data, no hard-coded numbers. The statistics are only as reliable as the history available on your chart.* Indicator

Indicator

ZHZH TV Indicators/ Layout
ZH Indicator — Current Summary
A single Pine Script v6 overlay indicator combining everything ZH uses for EP trading.
1. Moving Averages
10 EMA, 20 EMA, 50 SMA, 100 SMA, 200 SMA — each with a custom color picker. A Show On Timeframe dropdown controls where they appear: All / Intraday Only / Daily Only / Daily & Weekly / Weekly & Above. Master on/off toggle included.
2. VWAP
HLC/3 source, session anchor, intraday only — disappears on daily and above. No bands.
3. EP Data Tables
Top right — Market Context:
* QQQ % and BRD % — green/red colored, flush to top
Bottom right — Stock Data (always daily, timeframe-locked):
* Market Cap (red if < $40M), Share Float, ADR%, ATR — label/value tight right-aligned
* VOL | RVOL 90 | $ VOL — horizontal row below with individual color thresholds:
* VOL — green if > 8.9M
* RVOL 90 — green if > 300%
* $ VOL — tiered: yellow > $100M / orange > $500M / red > $1B Indicator

Indicator

Indicator

RichmondHillCM - BTC vs Business Cycle (ISM PMI)BTC vs Business Cycle (ISM PMI)
This indicator overlays the U.S. ISM Manufacturing PMI against Bitcoin price to help you frame BTC within the broader macro/business cycle. The idea is simple: manufacturing activity is a classic gauge of economic momentum, and BTC has historically behaved differently in expansionary versus contractionary macro environments. This tool makes that relationship visible at a glance.
What it does
It pulls monthly PMI data and monthly BTC price, then normalizes Bitcoin into the PMI's 40–70 range so both can be read on the same scale. The PMI line is color-coded by regime, and Bitcoin is plotted alongside it for easy comparison.
Regime classification
Expansion — PMI at or above 50 (amber)
Strong Expansion / Bull — PMI at or above the Bull Threshold, default 55 (green)
Contraction — PMI below 50 (red)
The 50 level marks the expansion/contraction boundary, and a configurable Bull Threshold marks the stronger-momentum zone. Background shading highlights contraction and strong-bull periods, and labels mark the moments PMI crosses 50 in either direction.
Reading the panel
A live info table (top-right) summarizes the current PMI value, the active regime, whether BTC is in a "bull-supportive" macro environment, and the latest BTC price.
Inputs
PMI Symbol — the data feed for PMI. Availability depends on your PulseWire data access. If the default doesn't load, try alternates such as FRED:NAPM, ECONOMICS:USPMI, or another ISM/PMI source your plan supports.
Bull PMI Threshold — adjusts where the "strong expansion" zone begins.
Shade Regimes — toggles background shading on/off.
Notes
This is a macro-context tool, not a timing or entry/exit signal generator. PMI is monthly and released with a lag, so treat it as a regime backdrop rather than a trade trigger. Not financial advice — do your own research. Indicator
