Hemanth's Pure Z-Score IndicatorThe Pure Z-Score Indicator is a statistical tool that measures how far the current price is from its recent average in terms of standard deviations. It helps traders identify overbought, oversold, and mean-reverting conditions in the market. This indicator is fully customizable, lightweight, and easy to use.
Key Features:
Displays the Z-Score of the price with optional smoothing.
Highlights overbought and oversold zones based on standard deviation thresholds.
Highlights mean (0) level for tracking price reversion.
Optional SMA or EMA smoothing to reduce noise.
Background highlights visually indicate extreme zones for easier analysis.
Inputs:
Length – Number of bars used to calculate the Z-Score.
Higher values smooth the indicator but react slower.
Lower values make it more sensitive but may produce more noise.
Overbought Level – Upper threshold for the Z-Score.
Default: 2.0 (2 standard deviations above the mean).
Crossing above this level signals a statistically overbought condition.
Oversold Level – Lower threshold for the Z-Score.
Default: -2.0 (2 standard deviations below the mean).
Crossing below this level signals a statistically oversold condition.
Use EMA instead of SMA – Determines whether the basis for Z-Score calculation is an Exponential Moving Average (EMA) or a Simple Moving Average (SMA).
EMA reacts faster to recent price changes.
SMA gives a smoother, slower-reacting average.
Smooth Z-Score (0 = no smoothing) – Apply additional smoothing to the Z-Score using a moving average.
Reduces noise and false spikes for cleaner visualization.
How to Use:
Overbought/Oversold: Watch for the Z-Score crossing the upper or lower levels to identify potential reversal zones.
Mean Reversion: Z-Score crossing the mean (0) can indicate short-term trend shifts.
Smoothing Options: Adjust the smoothing length and type to suit your trading style and timeframe.
Recommended Timeframes:
Works on any timeframe; suitable for day trading, swing trading, or longer-term analysis.
Best used in combination with price action or other indicators for confirmation.
Note:
This is a pure statistical indicator based on standard deviations. It does not provide buy/sell signals by itself, but helps traders identify areas of extreme price movement and potential reversals.
Statistics
FAIR VALUE CEDEARSFair Value CEDEARS y ETFs
Important: load together with the CEDEARdata library.
Returns the “Fair Value” of CEDEAR and CEDEAR-based ETF prices traded on ByMA, using as a reference the price of the underlying ordinary share or ETF traded on the NYSE or NASDAQ. It multiplies the NYSE/NASDAQ price by the CEDEAR or ETF conversion ratio and converts the currency to ARS or Dólar MEP using the exchange rate implied by the AL30/AL30C ratio for tickers quoted in ARS (e.g., AAPL) and AL30D/AL30C for tickers quoted in Dólar MEP (e.g., AAPLD).
If the CEDEAR or ETF quote is higher than Fair Value, it highlights the difference in red; if it is lower, it highlights it in green. If any of the markets is closed or in an auction period, it notifies the user and changes the background color.
By default, the CEDEAR or ETF quote used is the last price, but the user may choose to use the BID or OFFER instead. This allows CEDEAR and ETF buyers to compare Fair Value against the OFFER, while sellers may prefer to measure Fair Value against the BID of the local instrument.
BCBA:AAPL
BCBA:AAPLD
NASDAQ:AAPL
BCBA:SPY
BCBA:TSLA
BCBA:TSLAD
CEDEARS
ETFs
ByMA
CEDEARDataLibrary "CEDEARData"
getUnderlying(cedearTicker)
Parameters:
cedearTicker (simple string)
getRatio(cedearTicker)
Parameters:
cedearTicker (simple string)
getCurrency(cedearTicker)
Parameters:
cedearTicker (simple string)
isValidCedear(cedearTicker)
Parameters:
cedearTicker (simple string)
Swing Data - ADR% / RVol / PVol / Float % / Avg $ Vol (Mod)Modified from this source code:
I have added the current bar DR so i can compare to ADR of the current bar to see if it is worth taking the trade for my bar-by-bar practice.
Quick too instead of having to measure it each time
Kurtosis with Skew Crossover Focused OscillatorDescription:
This indicator highlights Skewness/Kurtosis crossovers for short-term trading:
Green upward arrows: Skew crosses above Kurtosis → potential long signal.
Red downward arrows: Skew crosses below Kurtosis → potential short signal.
Yellow upward arrows: Extreme negative skew (skew ≤ -1.7) → potential oversold/reversal opportunity.
Oscillator Pane:
Orange = Skewness (smoothed)
Blue = Kurtosis (adjusted, smoothed)
Zero line = visual reference
Usage:
Primarily for 2–5 minute charts, highlighting statistical anomalies and potential short-term reversals that can be used in conjunction with OBV and/or CVD
Arrows signal potential entries based on skew/kurt dynamics.
Potential ideas???????
---------------------------------------
Add Supporting Market Context
---------------------------------------
Currently, signals are purely based on skew/kurt crossovers. Adding supporting indicators could improve reliability:
Volume / CVD: Identify when crossovers occur with real buying/selling pressure.
Wick Imbalance: Detect forced moves in price structure.
Volatility Regime (Parkinson / ATR): Filter signals during high volatility spikes or compressions.
Experimentation: Try weighting these supporting signals to dynamically confirm or filter skew/kurt crossovers and see if false signals decrease on 2–5 minute charts.
--------------------------------------
Dynamic Thresholds & Scaling
--------------------------------------
Right now, the extreme skew signal is triggered at a fixed level (skew ≤ -1.7). Future improvements could include:
Adaptive thresholds: Scale extreme skew levels based on recent standard deviation or intraday volatility.
Kurtosis thresholds: Introduce a cutoff for kurtosis to identify “fat-tail” events.
Experimentation: Backtest different adaptive thresholds for both skew and kurt, and see how it affects the precision vs. frequency of signals.
--------------------------------------------------
Multi-Timeframe or Combined Oscillator
--------------------------------------------------
Skew/kurt signals could be combined across multiple intraday timeframes (e.g., 1-min, 3-min, 5-min) to improve confirmation.
Create a composite oscillator that blends short-term and slightly longer-term skew/kurt values to reduce noise.
Experimentation: Compare a single timeframe approach vs multi-timeframe composite, and measure signal reliability and lag.
I'm leaving this open so anyone can experiment with it as this project may be on the backburner, but these are my thoughts so far
Percent Change Histogram + MACandle Percent Move Columns with Optional Moving Average
Description:
This indicator calculates the percentage move of each candle over a specified number of bars and displays it as upward-facing columns, regardless of the candle direction. Each column is color-coded based on the candle’s direction—green for bullish, red for bearish. An optional moving average can be overlaid on the percentage values to help visualize trends and smooth out volatility.
Features:
Shows each candle’s percentage move as a column facing upward.
Columns are colored according to candle direction.
Adjustable input for the number of bars used in calculation.
Optional moving average overlay that can be added or removed.
Helps quickly assess volatility and trend strength in percentage terms.
Use Case:
Ideal for traders who want a clear visual representation of individual candle movements in percentage terms, making it easier to spot trends, pullbacks, and volatility patterns across different timeframes.
Fabio-Style Order Flow SystemFabio-Style Order Flow System — LVN • Delta • Big Trades • FVG • Order Blocks • Liquidity • Volume Profile
This indicator brings together all major components of Fabio Valentino’s order-flow strategy in one unified tool. It visualizes where smart money is active, where inefficiencies form, and where price is likely to react next.
🔍 FEATURES
1. Order Flow & Delta
Smoothed delta to show true market imbalance
Background color shifts to bullish/bearish delta dominance
Alerts for delta spikes & order-flow flips
2. Big Trade Detection
Highlights Big Buy and Big Sell prints (relative to average volume)
Helps identify institutional aggression on both sides
3. Low Volume Nodes (LVNs)
Automatically detects low-volume zones
Flags retests of LVNs for high-probability reactions
Uses dynamic volume thresholds for accuracy
4. Volume Profile (Lightweight)
Bucket-based intrabar profile across user-defined lookback
Highlights volume distribution without heavy TradingView CPU load
Auto-scales bucket density & transparency
5. Fair Value Gaps (FVGs)
Detects both bullish & bearish three-bar imbalances
Marks gaps visually using colored boxes
Updates dynamically with a user-set lookback
6. Order Blocks (OBs)
Identifies valid displacement bars and their origin OB
Plots clean, minimalist rectangles around key OB zones
Uses ATR-based impulse filtering
7. Liquidity Grabs
Detects wick-based liquidity sweeps
Highlights both equal high/low and stop-run type wicks
Useful for spotting reversals & trap setups
8. Strategy Dashboard
Shows real-time order flow state
Displays delta strength, big trades, LVNs, and last directional impulse
Auto-positions in all corners
🎯 PERFECT FOR
Traders who use:
Order Flow
Smart Money Concepts (SMC)
ICT / FVG / Liquidity models
Market Structure + Volume
Fabio Valentino-style analysis
⚙️ PERFORMANCE
All elements optimized
Uses automatic box-clearing to avoid array overload
Works on all timeframes & markets (crypto, FX, indices, stocks)
Annual Lump Sum: Yearly & CompoundedAnnual Lump Sum Investment Analyzer (Yearly vs. Compounded)
Overview
This Pine Script indicator simulates a disciplined "Lump Sum" investing strategy. It calculates the performance of buying a fixed dollar amount (e.g., $10,000) on the very first trading day of every year and holding it indefinitely.
Unlike standard backtesters that only show a total percentage, this tool breaks down performance by "Vintage" (the year of purchase), allowing you to see which specific years contributed most to your wealth.
Key Features
Automated Execution: Automatically detects the first trading bar of every new year to simulate a buy.
Dual-Yield Analysis: The table provides two distinct ways to view returns:
Yearly %: How the market performed specifically during that calendar year (Jan 1 to Dec 31).
Compounded %: The total return of that specific year's investment from the moment it was bought until today.
Live Updates: For the current year, the "End Price" and "Yields" update in real-time with market movements.
Portfolio Summary: Displays your Total Invested Capital vs. Total Current Value at the top of the table.
Table Column Breakdown
The dashboard in the bottom-right corner displays the following:
Year: The vintage year of the investment.
Buy Price: The price of the asset on the first trading day of that year.
End Price: The price on the last trading day of that year (or the current price if the year is still active).
Yearly %: The isolated performance of that specific calendar year. (Green = The market ended the year higher than it started).
Compounded %: The "Diamond Hands" return. This shows how much that specific $10,000 tranche is up (or down) right now relative to the current price.
How to Use
Add the script to your chart.
Crucial: Set your chart timeframe to Daily (D). This ensures the script correctly identifies the first trading day of the year.
Open the Settings (Inputs) to adjust:
Annual Investment Amount: Default is $10,000.
Table Size: Adjust text size (Tiny, Small, Normal, Large).
Max Rows: Limit how many historical years are shown to keep the chart clean.
Use Case
This tool is perfect for investors who want to visualize the power of long-term holding. It allows you to see that even if a specific year had a bad "Yearly Yield" (e.g., buying in 2008), the "Compounded Yield" might still be massive today due to time in the market.
NeuroSwarm ETH — Crowd vs Experts Forecast TrackerEnglish:
NeuroSwarm — Crowd vs Experts Forecast Tracker (ETH)
This indicator visualizes monthly forecast data collected from two independent groups:
Crowd – a large sample of retail participants
Experts – a curated group of analysts and experienced market participants
For each month, the indicator plots the following values as horizontal levels on the price chart:
Median forecast (Crowd)
Average forecast (Crowd)
Median forecast (Experts)
Average forecast (Experts)
Shaded zones highlighting the difference between median and mean
All values are fixed for each month and stay unchanged historically.
This allows traders to analyze sentiment dynamics and compare how expectations from both groups align or diverge from actual price action.
Purpose:
This tool is intended for sentiment visualization and analytical insight — it does not generate trading signals.
Its main goal is to compare collective expectations of retail traders vs experts across time.
Data source:
All forecasts come from monthly surveys conducted within the NeuroSwarm project between the 1st and 5th day of each month.
Interface notice:
The script's UI may contain non-English labels for convenience, but a full English documentation is provided here in compliance with TradingView rules.
Русская версия:
NeuroSwarm — Мудрость Толпы vs Эксперты (ETH)
Индикатор отображает ежемесячные прогнозы двух групп:
Толпа: медиана и средняя прогнозов
Эксперты: медиана и средняя прогнозов
Значения фиксируются для каждого месяца и показываются горизонтальными уровнями.
Заливка отображает диапазон между медианой и средней, что упрощает визуальное сравнение настроений.
Это аналитический инструмент для визуализации настроений — не торговая стратегия.
Все данные берутся из ежемесячных опросов проекта NeuroSwarm.
Daily Dollar Cost Averaging (DCA) Simulator & Yearly PerformanceThis indicator simulates a "Daily Dollar Cost Averaging" strategy directly on your chart. Unlike standard backtesters that trade based on signals, this script calculates the performance of a portfolio where a fixed dollar amount is invested every single day, regardless of price action.
Key Features:
Daily Accumulation: Simulates buying a specific dollar amount (e.g., $10) at the market close every day.
Yearly Breakdown Table: A detailed dashboard displayed on the chart that breaks down performance by year. It tracks total invested, average entry price, total holdings, current value, and PnL percentage for each individual year.
Global Stats: The bottom row of the table summarizes the total performance of the entire strategy since the start date.
Breakeven Line: Plots a yellow line on the chart representing your "Global Average Price." When the current price is above this line, the total strategy is in profit.
How to Use:
Add to chart (Works best on the Daily (D) timeframe).
Open settings to adjust your Daily Investment Amount and Start Year.
The table will automatically update to show how a daily investment strategy would have performed over time.
NeuroSwarm BTC — Crowd vs Experts Forecast TrackerEnglish:
NeuroSwarm — Crowd vs Experts Forecast Tracker (BTC)
This indicator visualizes monthly forecasts collected from two independent groups:
Crowd – a large sample of retail traders
Experts – a smaller, curated group of analysts and experienced market participants
For each month, the following values are displayed as horizontal levels on the chart:
Median forecast of the Crowd
Average forecast of the Crowd
Median forecast of Experts
Average forecast of Experts
Shaded zones showing the range between median and mean
The values remain fixed throughout each month. This allows traders to compare sentiment dynamics between groups and see how expectations evolve relative to actual market movement.
Purpose:
This indicator is designed for sentiment analysis — NOT for generating trading signals.
It helps identify divergences between retail expectations and expert forecasts, which can be informative during trend transitions.
Data source:
All values come from monthly surveys conducted within the NeuroSwarm project (1–5 of every month).
Crowd and Expert groups are collected separately to avoid bias and to preserve independent aggregation.
Interface language note:
The indicator’s interface may contain non-English labels for ease of use, but full English documentation is provided here in compliance with TradingView House Rules.
Русская версия (optional, allowed only AFTER English):
NeuroSwarm — Мудрость Толпы vs Эксперты (BTC)
Индикатор показывает ежемесячные прогнозы двух групп:
Толпа: медиана и средняя прогнозов
Эксперты: медиана и средняя прогнозов
Значения фиксируются на весь месяц и отображаются на графике горизонтальными уровнями.
Заливка показывает диапазон между медианой и средней.
Цель индикатора — визуализировать настроение толпы и экспертов и сравнить его с реальным движением цены.
Это аналитический инструмент, а не торговая стратегия.
Данные берутся из ежемесячных опросов (1–5 числа), проводимых в рамках проекта NeuroSwarm.
6-9 session & levels6-9 Session & Levels - Customizable Range Analysis Indicator
Description:
This indicator provides comprehensive session-based range analysis designed for intraday traders. It calculates and displays key levels based on a customizable session period (default 6:00-9:00 AM ET).
Core Features:
Session Tracking
Monitors user-defined session times with timezone support
Displays session open, high, and low levels
Highlights session range with optional box visualization
Shows previous day RTH (Regular Trading Hours: 9:30 AM - 4:00 PM) levels
Range Levels
25%, 50%, and 75% range levels within the session
Range deviations at 0.5x, 1.0x, and 2.0x multiples
Fibonacci extension levels (customizable, default 1.33x and 1.66x)
Optional fill zones between Fibonacci levels
Time Zone Highlighting
Marks the 9:40-9:50 AM period as a potential reversal zone
Vertical lines with shading to identify key time windows
Statistical Analysis
Calculates mean and median extension levels based on historical sessions
Displays statistics table showing current range, average range, range difference, and z-score
Customizable sample size (1-100 sessions) for statistical calculations
Option to anchor extensions from either session open or high/low points
Input Settings Explained:
Session Settings
Levels Session Time: Define your session window in HHMM-HHMM format (default: 0600-0900)
Time Zone: Choose from UTC, America/New_York, America/Chicago, America/Los_Angeles, Europe/London, or Asia/Tokyo
Anchor Settings
Show Session Anchor: Toggle the session anchor line (marks session open price at 6:00 AM)
Anchor Style/Color/Width: Customize appearance (Solid/Dashed/Dotted, color, 1-4 width)
Show Anchor Label: Display price label for the anchor
Session Open Line: Similar options for the session open reference line
Range Box Settings
Show Range Box: Display a shaded rectangle highlighting the session high-to-low range
Range Box Color: Set the box background color and transparency
Range Levels (25%/50%/75%)
Show Range Levels: Toggle all three intermediate levels on/off
Individual Level Styling: Each level (25%, 50%, 75%) has its own color, style, and width settings
Show Range Level Labels: Display price labels for each level
Range Deviations
Show Range Deviations: Toggle deviation levels on/off
0.5x/1.0x/2.0x Settings: Each deviation multiplier can be customized with its own color, line style (Solid/Dashed/Dotted), and width
Show Range Deviation Labels: Display labels showing the deviation price levels
Previous Day RTH Levels
Show Previous RTH Levels: Display yesterday's regular trading hours high and low
RTH High/Low Styling: Separate color, style, and width settings for each level
Show Previous RTH Labels: Toggle price labels for RTH levels
Time Zones
Show 9:40-9:50 AM Zone: Highlight this specific time period with vertical lines and shading
Zone Color: Set the background fill color for the time zone
Zone Label Color/Text: Customize the label appearance and text
Fibonacci Extension Settings
Show Fibonacci Extensions: Toggle Fib levels on/off
Fib Extension Color/Style/Width: Customize line appearance
Show Fib Extension Labels: Display price labels
Fib Ext Level 1/2: Set custom multipliers (default 1.33 and 1.66, range 0-5 in 0.1 increments)
Show Fibonacci Fills: Display shaded zones between Fib levels
Fib Fill Color: Customize the fill color and transparency
Session High/Low Settings
Show Session High/Low Lines: Display the actual session extremes
Style/Color/Width: Customize line appearance
Show Labels: Toggle price labels for high/low levels
Extension Stats Settings
Show Statistical Levels on Chart: Display mean and median extension levels based on historical data
Extension Anchor Point: Choose whether to anchor from "Open" or "High/Low" of the session
Number of Sessions for Statistics: Set sample size (1-100, default 60) for calculating averages
Mean/Median High Extension: Separate styling for each statistical level (color, style, width)
Mean/Median Low Extension: Separate styling for downside statistical levels
Tables
Show Statistics Table: Display a summary table with current range, average range, difference, z-score, and sample size
Table Position: Choose from 9 positions (Bottom/Middle/Top + Center/Left/Right)
Table Text Size: Select from Auto, Tiny, Small, Normal, Large, or Huge
Display Settings
Projection Offset: Number of bars to extend lines forward (default 24)
Label Size: Choose from Tiny, Small, Normal, or Large
Price Decimal Precision: Set decimal places for price labels (0-6)
How It Works:
The indicator tracks the specified session period and calculates the session's open, high, low, and range. At the end of the session (9:00 AM by default), it projects all configured levels forward for the trading day. The statistical features analyze the last N sessions (you choose the number) to calculate typical extension behavior from either the session open or the session high/low points.
The z-score calculation helps identify whether the current session's range is normal, expanded, or contracted compared to recent history, allowing traders to adjust expectations for the rest of the day.
Use Case:
This indicator helps traders identify key support and resistance levels based on early session price action, understand current range context relative to historical averages, and spot potential reversal zones during specific time periods.
Note: This indicator is for informational purposes only and does not constitute investment advice. Always perform your own analysis before making trading decisions.
Dual Account Position Size CalculatorA quick and easy to use position sizing calculator for use on the daily TF only. inputs for two different account sizes and risk %. Calculates risk to low of day (plus a small buffer which can be changed based on ATR). Shows # of shares to buy, stop loss, portfolio %.
Will show on smaller timeframes , but be aware that the stop level will no longer be low of day, so it will not calculate properly. Always use on the daily.
Monthly DCA & Last 10 YearsThis Pine Script indicator simulates a Monthly Dollar Cost Averaging (DCA) strategy to help long-term investors visualize historical performance. Instead of complex timing, the script automatically executes a hypothetical fixed-dollar purchase (e.g., $100) on the first trading day of every month. It visually marks entry points with green "B" labels and plots a dynamic yellow line representing your Global Break-Even Price, allowing you to instantly see if the current price is above or below your average cost basis. To provide deep insight, it generates a detailed performance table in the bottom-right corner that breaks down metrics year-by-year—including total capital invested, shares/coins accumulated, and Profit/Loss percentage—along with a grand total summary of the entire investment period.
Pair Correlation Master [Macro]The Main Idea
Trading represents a constant battle between Systemic Flows (the whole market moving together) and Idiosyncratic Moves (one specific asset moving on its own).
This tool allows you to monitor a "basket" of 4 assets simultaneously (e.g., the major USD pairs). It answers the most important question in forex and multi-asset trading: "Is this move happening because the Dollar is weak, or because the Euro is strong?"
It separates the "Signal" (the unique move) from the "Noise" (the herd movement).
1. The Chart Lines: The "Race" (Macro Trend)
Think of the lines on your chart as a long-distance race. They visualize the performance of all 4 assets over the last 200 candles (adjustable).
- Bunched Together: If all lines are moving in the same direction, the market is highly correlated. (e.g., "The Dollar is selling off everywhere").
- Fanning Out: If the lines are spreading apart, specific currencies are outperforming others.
- The Zero Line: This is the starting line.
--- Above 0: The pair is in a macro uptrend.
--- Below 0: The pair is in a macro downtrend.
2. The Dashboard: The "Health Check" (Micro Data)
The table in the top right gives you the immediate statistics for right now.
- A. The Z-Score (The Rubber Band)
This measures how "stretched" price is compared to its normal behavior.
- White (< 2.0): Normal trading activity.
- Orange (> 2.0): The price is stretching. Warning sign.
- Red (> 3.0): Critical Stretch. The rubber band is pulled to its limit. Statistically, a pullback or pause is highly likely.
B. The Star (★)
The script automatically calculates the average behavior of your group. If one asset is behaving completely differently from the rest, it marks it with a Star (★).
- Example: EURUSD, GBPUSD, and NZDUSD are flat, but AUDUSD is rallying hard. AUDUSD gets the ★. This is where the unique opportunity lies.
🎯 Best Uses: 4H & Daily Timeframes
This indicator is tuned for "Macro" analysis. It works best on the "4-Hour" and "Daily" charts to filter out intraday noise and capture swing trading moves.
- Strategy 1: The "Rubber Band" Snap (Mean Reversion)
- Setup: Look for a Z-Score in the RED (> 3.0) on the Daily timeframe.
- Action: This indicates an unsustainable move. Look for reversals or exhaustion patterns to trade against the trend back toward the mean.
- Strategy 2: The "Lone Wolf" (Trend Following)
- Setup: Look for the asset with the Star (★).
- Action: If the whole basket is flat (Balanced), but the Star asset is breaking out, that creates a high-quality trend trade because that specific currency has its own catalyst (News/Earnings).
- Strategy 3: Systemic Flows (Basket Trading)
- Setup: The dashboard footer says "⚠️ SYSTEMIC MOVE."
- Action: This means everything is moving together (e.g., a massive USD crash). Don't look for unique setups; just join the trend on the strongest pair.
Dashboard Footer Key
The bottom of the table summarizes the current state of the market for you:
- Balanced / Rangebound: The market is quiet. Good for range trading.
- Focus: : Trade this specific pair. It is moving independently.
- Systemic Move: The whole basket is moving violently. Trade the momentum.
p.s. Suggestion - apply and use on the chart rather than an oscillator.
Self-Organized Criticality - Avalanche DistributionHere's all you need to know: This indicator applies Self-Organized Criticality (SOC) theory to financial markets, measuring the power-law exponent (alpha) of price drawdown distributions. It identifies whether markets are in stable Gaussian regimes or critical states where large cascading moves become more probable.
Self-Organized Criticality
SOC theory, introduced by Per Bak, Tang, and Wiesenfeld (1987), describes how complex systems naturally evolve toward critical (fragile) states. An example is a sand pile: adding grains creates avalanches whose sizes follow a power-law distribution rather than a normal distribution.
Financial markets exhibit similar behavior. Price movements aren't purely random walks—they display:
Fat-tailed distributions (more extreme events than Gaussian models predict)
Scale invariance (no characteristic avalanche size)
Intermittent dynamics (periods of calm punctuated by large cascades)
Power-Law Distributions
When a system is in a critical state, the probability of an avalanche of size s follows:
P(s) ∝ s^(-α)
Where:
α (alpha) is the power-law exponent
Higher α → distribution resembles Gaussian (large events rare)
Lower α → heavy tails dominate (large events common)
This indicator estimates α from the empirical distribution of price drawdowns.
Mathematical Method
1. Avalanche Detection
The indicator identifies local price peaks (highest point in a lookback window), then measures the percentage drawdown to the next trough. A dynamic ATR-based threshold filters out noise—small drops in calm markets count, but the bar rises in volatile periods.
2. Logarithmic Binning
Avalanche sizes are sorted into logarithmically-spaced bins (e.g., 1-2%, 2-4%, 4-8%) rather than linear bins. This captures power-law behavior across multiple scales - a 2% drop and 20% crash both matter. The indicator creates 12 adaptive bins spanning from your smallest to largest observed avalanche.
3. Bin-to-Bin Ratio Estimation
For each pair of adjacent bins, we calculate:
α ≈ log(N₁/N₂) / log(s₂/s₁)
Where N₁ and N₂ are avalanche counts, s₁ and s₂ are bin sizes.
Example: If 2% drops happen 4× more often than 4% drops, then α ≈ log(4)/log(2) ≈ 2.0.
We get 8-11 independent estimates and average them. This is more robust than fitting one line through all points—outliers can't dominate.
4. Rolling Window Analysis
Alpha recalculates using only recent avalanches (default: last 500 bars). Old data drops out as new avalanches occur, so the indicator tracks regime shifts in real-time.
Regime Classification
🟢 Gaussian α ≥ 2.8 Normal distribution behavior; large moves are rare outliers
🟡 Transitional 1.8 ≤ α < 2.8 Moderate fat tails; system approaching criticality
🟠 Critical 1.0 ≤ α < 1.8 Heavy tails; large avalanches increasingly common
🔴 Super-Critical α < 1.0 Extreme tail risk; system prone to cascading failures
What Alpha Tells You
Declining alpha → Market moving toward criticality; tail risk increasing
Rising alpha → Market stabilizing; returns to normal distribution
Persistent low alpha → Sustained fragility; heightened crash probability
Supporting Metrics
Heavy Tail %: Concentration of total drawdown in largest 10% of events
Populated Bins: Data coverage quality (11-12 out of 12 is ideal)
Avalanche Count: Sample size for statistical reliability
Limitations
This is a distributional measure, not a timing indicator. Low alpha indicates increased systemic risk but doesn't predict when a cascade will occur. Only that the probability distribution has shifted toward larger events.
How This Differs from the Per Bak Fragility Index
The SOC Avalanche Distribution calculates the power-law exponent (alpha) directly from price drawdown distributions - a pure mathematical analysis requiring only price data. The Per Bak Fragility Index aggregates external stress indicators (VIX, SKEW, credit spreads, put/call ratios) into a weighted composite score.
Technical Notes
Default settings optimized for daily and weekly timeframes on major indices
Requires minimum 200 bars of history for stable estimates
ATR-based dynamic sizing prevents scale-dependent bias
Alerts available for regime transitions and super-critical entry
References
Bak, P., Tang, C., & Wiesenfeld, K. (1987). Self-organized criticality: An explanation of the 1/f noise. Physical Review Letters.
Sornette, D. (2003). Why Stock Markets Crash: Critical Events in Complex Financial Systems. Princeton University Press.
Jenkins OscillatorAn oscillator designed to capture price movement relative to recent intra-candle volatility. Z-score normalization is applied to smoothed price and therefore should be read in terms of standard deviation AND direction.
Position Size Tool [Riley]Automatically determine number of shares for an entry. Quantity based on a stop set at the low of day for long positions or a stop set at the high of the day for short positions. As well as inputs like account balance risk per trade. Also includes a user-defined maximum for percentage of daily dollar volume to consume with entry.
Watermark | Bar Time | Average Daily RangeMulti Info Panel & Watermark
Multi Info Panel & Watermark is a utility indicator that displays several pieces of chart information in a single, customizable panel. It is designed to support intraday and swing analysis by making key data—such as symbol details, date, and average daily range—easy to see at a glance, as well as providing simple tools for notes and backtesting.
Features
Watermark / Custom Note
Optional text overlay that can be used as a watermark or personal note.
Can display a strategy name, reminder, or any other user-defined label on the chart.
Ticker Info
Shows information about the currently active symbol on the chart (for example, symbol name and other basic details depending on the inputs).
Helps keep track of which market or pair is being analyzed, especially when using multiple charts.
Current Date
Displays the current date directly on the chart.
Useful for screenshots, journaling, and documenting analysis.
Average Daily Range (ADR)
Calculates the average daily range of the active symbol over a user-defined number of recent days.
Helps visualize how much price typically moves in a day, which can support position sizing, target setting, or volatility awareness within your own trading approach.
Open Bar Time Marker
Marks the open time of a selected bar (for example, a session open or a specific reference bar).
Primarily intended as a visual aid for manual backtesting and reviewing historical price action.
Usage
Use the watermark and ticker info to keep your charts labeled and organized.
Refer to the ADR readout to understand typical daily volatility of the instrument you are studying.
Use the date and open bar time marker when creating screenshots, trade journals, or when replaying historical sessions for review.
This script does not generate trading signals and does not guarantee any performance or results. It is provided solely as an informational and visualization tool. Always combine it with your own analysis, risk management, and decision-making. Nothing in this indicator or description should be considered financial advice.
Probability Cone█ Overview:
Probability Cone is based on the Expected Move . While Expected Move only shows the historical value band on every bar, probability panel extend the period in the future and plot a cone or curve shape of the probable range. It plots the range from bar 1 all the way to bar 31.
In this model, we assume asset price follows a log-normal distribution and the log return follows a normal distribution.
Note: Normal distribution is just an assumption; it's not the real distribution of return.
The area of probability range is based on an inverse normal cumulative distribution function. The inverse cumulative distribution gives the range of price for given input probability. People can adjust the range by adjusting the standard deviation in the settings. The probability of the entered standard deviation will be shown at the edges of the probability cone.
The shown 68% and 95% probabilities correspond to the full range between the two blue lines of the cone (68%) and the two purple lines of the cone (95%). The probabilities suggest the % of outcomes or data that are expected to lie within this range. It does not suggest the probability of reaching those price levels.
Note: All these probabilities are based on the normal distribution assumption for returns. It's the estimated probability, not the actual probability.
█ Volatility Models :
Sample SD : traditional sample standard deviation, most commonly used, use (n-1) period to adjust the bias
Parkinson : Uses High/ Low to estimate volatility, assumes continuous no gap, zero mean no drift, 5 times more efficient than Close to Close
Garman Klass : Uses OHLC volatility, zero drift, no jumps, about 7 times more efficient
Yangzhang Garman Klass Extension : Added jump calculation in Garman Klass, has the same value as Garman Klass on markets with no gaps.
about 8 x efficient
Rogers : Uses OHLC, Assume non-zero mean volatility, handles drift, does not handle jump 8 x efficient.
EWMA : Exponentially Weighted Volatility. Weight recently volatility more, more reactive volatility better in taking account of volatility autocorrelation and cluster.
YangZhang : Uses OHLC, combines Rogers and Garmand Klass, handles both drift and jump, 14 times efficient, alpha is the constant to weight rogers volatility to minimize variance.
Median absolute deviation : It's a more direct way of measuring volatility. It measures volatility without using Standard deviation. The MAD used here is adjusted to be an unbiased estimator.
You can learn more about each of the volatility models in out Historical Volatility Estimators indicator.
█ How to use
Volatility Period is the sample size for variance estimation. A longer period makes the estimation range more stable less reactive to recent price. Distribution is more significant on larger sample size. A short period makes the range more responsive to recent price. Might be better for high volatility clusters.
People usually assume the mean of returns to be zero. To be more accurate, we can consider the drift in price from calculating the geometric mean of returns. Drift happens in the long run, so short lookback periods are not recommended.
The shape of the cone will be skewed and have a directional bias when the length of mean is short. It might be more adaptive to the current price or trend, but more accurate estimation should use a longer period for the mean.
Using a short look back for mean will make the cone having a directional bias.
When we are estimating the future range for time > 1, we typically assume constant volatility and the returns to be independent and identically distributed. We scale the volatility in term of time to get future range. However, when there's autocorrelation in returns( when returns are not independent), the assumption fails to take account of this effect. Volatility scaled with autocorrelation is required when returns are not iid. We use an AR(1) model to scale the first-order autocorrelation to adjust the effect. Returns typically don't have significant autocorrelation. Adjustment for autocorrelation is not usually needed. A long length is recommended in Autocorrelation calculation.
Note: The significance of autocorrelation can be checked on an ACF indicator.
ACF
Time back settings shift the estimation period back by the input number. It's the origin of when the probability cone start to estimation it's range.
E.g., When time back = 5, the probability cone start its prediction interval estimation from 5 bars ago. So for time back = 5 , it estimates the probability range from 5 bars ago to X number of bars in the future, specified by the Forecast Period (max 1000).
█ Warnings:
People should not blindly trust the probability. They should be aware of the risk evolves by using the normal distribution assumption. The real return has skewness and high kurtosis. While skewness is not very significant, the high kurtosis should be noticed. The Real returns have much fatter tails than the normal distribution, which also makes the peak higher. This property makes the tail ranges such as range more than 2SD highly underestimate the actual range and the body such as 1 SD slightly overestimate the actual range. For ranges more than 2SD, people shouldn't trust them. They should beware of extreme events in the tails.
The uncertainty in future bars makes the range wider. The overestimate effect of the body is partly neutralized when it's extended to future bars. We encourage people who use this indicator to further investigate the Historical Volatility Estimators , Fast Autocorrelation Estimator , Expected Move and especially the Linear Moments Indicator .
The probability is only for the closing price, not wicks. It only estimates the probability of the price closing at this level, not in between.
EMA + Sessions + RSI Strategy v1.0A professional trading strategy that combines multiple technical indicators for high-probability entries. This system uses EMA crossovers, RSI zone filtering, and trend confirmation to identify optimal trading opportunities while managing risk with advanced position management tools.
Key Features:
✅ Dual Entry Signals (EMA21 + EMA100 crossover conditions)
✅ Trend Filter EMA750 (trade only with the major trend)
✅ Complete Risk Management (SL 1%, TP 3% default)
✅ Trailing Stop & Breakeven (maximize profits, protect capital)
✅ Compact Statistics Table (real-time performance metrics)
✅ RSI & Session Filters (avoid low-probability setups)
✅ Optional Pyramiding (scale into winning positions)
Perfect for swing trading and trend-following on any timeframe. Fully customizable to match your trading style.






















