Power Law Correlation Indicator 2.0 The Power Law Correlation Indicator is an attempt to chart when a stock/currency/futures contract goes parabolic forming a upward or downward curve that accelerates according to power laws.
I've read about power laws from Sornette Diedler ( www.marketcalls.in ). And I think the theory is a good one.
The idea behind this indicator is that it will rise to 1.0 as the curve resembles a parabolic up or down swing. When it is below zero, the stock will flatten out.
There are many ways to use this indicator. One way I am testing it out is in trading Strangles or Straddle option trades. When this indicator goes below zero and starts to turn around, it means that it has flattened out. This is like a squeeze indicator. (see the TTM squeeze indicator).
Since this indicator goes below zero and the squeeze plays tend to be mean-reverting; then its a great time to put on a straddle/strangle.
Another way to use it is to think of it in terms of trend strength. Think of it as a kind of ADX, that measures the trend strength. When it is rising, the trend is strong; when it is dropping, the trend is weak.
Lastly I think this indicator needs some work. I tried to put the power (x^n) function into it but my coding skill is limited. I am hoping that Lazy Bear or Ricardo Santos can do it some justice.
Also I think that if we can figure out how to do other power law graphs, perhaps we can plot them together on one indicator.
So far I really like this one for finding Strangle spots. So check it out.
Peace
SpreadEagle71
Recherche dans les scripts pour "Straddle"
Volatility Cone Forecaster Lite [PhenLabs]📊 Volatility Cone Forecaster
Version: PineScript™v6
📌Description
The Volatility Cone Forecaster (VCF) is an advanced indicator designed to provide traders with a forward-looking perspective on market volatility. Instead of merely measuring past price fluctuations, the VCF analyzes historical volatility data to project a statistical “cone” that outlines a probable range for future price movements. Its core purpose is to contextualize the current market environment, helping traders to anticipate potential shifts from low to high volatility periods (and vice versa). By identifying whether volatility is expanding or contracting relative to historical norms, it solves the critical problem of preparing for significant market moves before they happen, offering a clear statistical edge in strategy development.
This indicator moves beyond lagging measures by employing percentile analysis to rank the current volatility state. This allows traders to understand not just what volatility is, but how significant it is compared to the recent past. The VCF is built for discretionary traders, system developers, and options strategists who need a sophisticated understanding of market dynamics to manage risk and identify high-probability opportunities.
🚀Points of Innovation
Forward-Looking Volatility Projection: Unlike standard indicators that only show historical data, the VCF projects a statistical cone of future volatility.
Percentile-Based Regime Analysis: Ranks current volatility against historical data (e.g., 90th, 75th percentiles) to provide objective context.
Automated Regime Detection: Automatically identifies and labels the market as being in a ‘High’, ‘Low’, or ‘Normal’ volatility regime.
Expansion & Contraction Signals: Clearly indicates whether volatility is currently increasing or decreasing, signaling shifts in market energy.
Integrated ATR Comparison: Plots an ATR-equivalent volatility measure to offer a familiar point of reference against the statistical model.
Dynamic Visual Modeling: The cone visualization directly on the price chart provides an intuitive guide for future expected price ranges.
🔧Core Components
Realized Volatility Engine: Calculates historical volatility using log returns over multiple user-defined lookback periods (short, medium, long) for a comprehensive view.
Percentile Analysis Module: A custom function calculates the 10th, 25th, 50th, 75th, and 90th percentiles of volatility over a long-term lookback (e.g., 252 days).
Forward Projection Calculator: Uses the calculated volatility percentiles to mathematically derive and draw the upper and lower bounds of the future volatility cone.
Volatility Regime Classifier: A logic-based system that compares current volatility to the historical percentile bands to classify the market state.
🔥Key Features
Customizable Lookback Periods: Adjust short, medium, and long-term lookbacks to fine-tune the indicator’s sensitivity to different market cycles.
Configurable Forward Projection: Set the number of days for the forward cone projection to align with your specific trading horizon.
Interactive Display Options: Toggle visibility for percentile labels, ATR levels, and regime coloring to customize the chart display.
Data-Rich Information Table: A clean, on-screen table displays all key metrics, including current volatility, percentile rank, regime, and trend.
Built-in Alert Conditions: Set alerts for critical events like volatility crossing the 90th percentile, dropping below the 10th, or switching between expansion and contraction.
🎨Visualization
Volatility Cone: Shaded bands projected onto the future price axis, representing the probable price range at different statistical confidence levels (e.g., 75th-90th percentile).
Color-Coded Volatility Line: The primary volatility plot dynamically changes color (e.g., red for high, green for low) to reflect the current volatility regime, providing instant context.
Historical Percentile Bands: Horizontal lines plotted across the indicator pane mark the key percentile levels, showing how current volatility compares to the past.
On-Chart Labels: Clear labels automatically display the current volatility reading, its percentile rank, the detected regime, and trend (Expanding/Contracting).
📖Usage Guidelines
Setting Categories
Short-term Lookback: Default: 10, Range: 5-50. Controls the most sensitive volatility calculation.
Medium-term Lookback: Default: 21, Range: 10-100. The primary input for the current volatility reading.
Long-term Lookback: Default: 63, Range: 30-252. Provides a baseline for long-term market character.
Percentile Lookback Period: Default: 252, Range: 100-1000. Defines the period for historical ranking; 252 represents one trading year.
Forward Projection Days: Default: 21, Range: 5-63. Determines how many bars into the future the cone is projected.
✅Best Use Cases
Breakout Trading: Identify periods of deep consolidation when volatility falls to low percentile ranks (e.g., below 25th) and begins to expand, signaling a potential breakout.
Mean Reversion Strategies: Target trades when volatility reaches extreme high percentile ranks (e.g., above 90th), as these periods are often unsustainable and lead to contraction.
Options Strategy: Use the cone’s projected upper and lower bounds to help select strike prices for strategies like iron condors or straddles.
Risk Management: Widen stop-losses and reduce position sizes when the indicator signals a transition into a ‘High’ volatility regime.
⚠️Limitations
Probabilistic, Not Predictive: The cone represents a statistical probability, not a guarantee of future price action. Extreme, unpredictable news events can drive prices outside the cone.
Lagging by Nature: All calculations are based on historical price data, meaning the indicator will always react to, not pre-empt, market changes.
Non-Directional: The indicator forecasts the *magnitude* of future moves, not the *direction*. It should be paired with a directional analysis tool.
💡What Makes This Unique
Forward Projection: Its primary distinction is projecting a data-driven, statistical forecast of future volatility, which standard oscillators do not do.
Contextual Analysis: It doesn’t just provide a number; it tells you what that number means through percentile ranking and automated regime classification.
🔬How It Works
1. Data Calculation:
The indicator first calculates the logarithmic returns of the asset’s price. It then computes the annualized standard deviation of these returns over short, medium, and long-term lookback periods to generate realized volatility readings.
2. Percentile Ranking:
Using a 252-day lookback, it analyzes the history of the medium-term volatility and determines the values that correspond to the 10th, 25th, 50th, 75th, and 90th percentiles. This builds a statistical map of the asset’s volatility behavior.
3. Cone Projection:
Finally, it takes these historical percentile values and projects them forward in time, calculating the potential upper and lower price bounds based on what would happen if volatility were to run at those levels over the next 21 days.
💡Note:
The Volatility Cone Forecaster is most effective on daily and weekly charts where statistical volatility models are more reliable. For lower timeframes, consider shortening the lookback periods. Always use this indicator as part of a comprehensive trading plan that includes other forms of analysis.
India Vix based Strangle StrikesA clean Nifty–VIX dashboard that converts India VIX into expected daily moves, price ranges, and suggested strangle strikes. Includes VIX %, expanded 1.2× range, and smart rounded strike levels for options trading.
This script provides a professional on-chart dashboard that converts India VIX into actionable trading levels for Nifty. It calculates the VIX-based expected daily move, projected price ranges, expanded 1.2× ranges, and suggested strangle strike prices. Includes clean formatting, color-coded sections, and real-time updates.
Ideal for traders using straddles, strangles, intraday volatility models, range-bound setups, and options-based risk management.
1.2x expanded range is better success probability, may keep 20% of strangle value as stop loss.
The vix based system is intended to give approx. 70%+ success rate.
Iron Condor Pro v6 – Full EngineIronCondor Engine v6.6 is a multi-mode options strategy tool for planning and managing iron condors, straddles, strangles, and butterflies. It supports both setup planning and live trade tracking with modeled delta, risk-based strike selection, IV rank estimation, and visual breach alerts.
Use Setup Mode to preview strike structures based on IV proxy, ATR, delta targeting, and risk tier (High/Mid/Low/Delta). Use Live Mode to track real trades, enter strike/premium data, and monitor live P&L, delta drift, and range status.
This script does not connect to live option chains. Volatility and delta are modeled using price history. All strikes and premiums must be confirmed using your broker before placing trades. Best used with strong support/resistance levels and high IV rank (30%+).
For educational purposes only.
Workflow Guide
Use this flow whether you're setting up on Sunday night or any day before placing a trade.
Step 0: Pre-Script Preparation
Before using the script:
Identify major support and resistance zones on your chart. Define the expected range or consolidation area. Use this context to help evaluate strike placement
1. Setup Phase (Pre-Trade Planning)
Step 1 – Load the Script
Add: IronCondor Engine v6.6 – Full Risk/Decay Edition to your chart
Step 2 – Set Mode = Setup
This enables planning mode, where the engine calculates strike combinations based on:
Your selected risk profile (High, Mid, Low, or Delta)
Historical volatility (20-day log return)
ATR (Average True Range)
Target short delta (adjustable)
Step 3 – Review Setup Table
Enable Show Setup Table to view calculated strikes and width by risk tier.
Adjust any of the following as needed:
Target Short Delta
Strike Interval ($)
Width multipliers (High/Mid/Low)
Risk tier under Auto-Feed Choice
Step 4 – Evaluate the Setup
Is the net credit at least 1.5–2.0x your max risk?
Are the short strikes clearly outside support/resistance zones?
Are the short deltas between 0.15 and 0.30?
Is the range wide enough to handle normal price movement?
Step 5 – Prep for Execution
Enable Auto-Feed Setup → Live to carry Setup strikes into Live mode
Or disable it if you prefer to manually enter strikes later
2. Trade Execution (Live Tracking Mode)
Step 1 – Place the Trade with Your Broker
Use your brokerage (TOS, Tasty, IBKR, etc.) to place the iron condor or other structure
Step 2 – Set Mode = Live
In Live mode:
If Auto-Feed is ON, the Setup strikes auto-populate
If Auto-Feed is OFF, manually enter:
Short and long strikes (Call and Put)
Premiums collected/paid per leg
Total net credit (Entry Credit)
Optional: Input current mid prices for each leg in the "Live Chain" section to track live mark-to-market P&L
Once all required fields are valid, the script activates:
Real-time profit/loss tracking
Max risk estimate
Delta monitoring on short legs
IV Rank estimate
Breach detection system
Chart visuals (if enabled)
3. Trade Management (During the Week)
While the trade is active, use the dashboard and visuals to monitor:
Key Metrics:
Unrealized P/L %
Mark-to-market value vs entry credit
Daily decay (theta)
Days until expiration
Breach status:
In Range
Near Breach
Breached
Alerts:
Price near short strike → suggests roll
Price breaches long strike → breach alert
50% or 75% profit → optional exit signal
Delta exceeds threshold → exposure may need adjustment
Management Tips:
At 50–75% profit: consider closing early
If price nears a short leg: roll, hedge, or manage
If nearing expiry: decide whether to hold or close
If IV collapses: may accelerate time decay or reduce exit value
4. End-of-Week or Expiration Management
If Profit Target Hit
Close early to reduce risk and lock gains
If Still Open Near Expiry
Close the position or
Hold through expiration only if you're fully prepared for pinning/gamma/assignment scenarios
Avoid holding open spreads over the weekend unless part of a defined strategy
Reference Notes
Strike Width
Defined as:
Width = Distance between Short and Long strike
Used for calculating max loss and breach visuals
Delta Guidelines
0.15–0.20 = safer, wider range, lower credit
0.25–0.30 = more aggressive, tighter range, higher credit
Use Target Short Delta input to adjust auto-selected strikes accordingly
Credit Example
Sell Call: $1.04
Sell Put: $0.23
Buy Call + Put wings: $0.14
Net Credit = $1.13 = $113 per contract (max profit)
This is the max profit if price stays between short strikes through expiration
IV Rank (Estimated)
This script does not use options chain IV data.
Instead, it calculates a volatility proxy:
ivRaw = ta.stdev(log returns, 20) * sqrt(252)
IV Rank is then calculated as the percentile of this value within the last 252 bars.
High IV Rank (30%–100%) → better premium-selling conditions
Low IV Rank (<30%) → lower edge for condors
Ideal to sell premium when IV Rank is above 30–50%
Disclosures and Limitations
This script is for educational use only
It does not connect to live option chains
All strikes, deltas, and premiums must be validated through your broker
Always confirm real-time IV, delta, and pricing before placing a trade
IV Rank (tasty-style) — VIXFix / HV ProxyIV Rank (tasty-style) — VIXFix / HV Proxy
Overview
This indicator replicates tastytrade’s IV Rank calculation—but built entirely inside TradingView.
Because TradingView does not expose live option-chain implied volatility, the script lets you choose between two widely used price-based IV proxies:
VIXFix (Williams VIX Fix): a fast-reacting volatility estimate derived from price extremes.
HV(30): 30-day annualized historical volatility of daily log returns.
The goal is to approximate the “rich vs. cheap” option volatility environment that traders use to decide whether to sell or buy premium.
Formula
IV Rank answers the question: Where is current implied volatility relative to its own 1-year range?
𝐼
𝑉
𝑅
=
𝐼
𝑉
𝑐
𝑢
𝑟
𝑟
𝑒
𝑛
𝑡
−
𝐼
𝑉
1
𝑦
𝐿
𝑜
𝑤
𝐼
𝑉
1
𝑦
𝐻
𝑖
𝑔
ℎ
−
𝐼
𝑉
1
𝑦
𝐿
𝑜
𝑤
×
100
IVR=
IV
1yHigh
−IV
1yLow
IV
current
−IV
1yLow
×100
IVcurrent: Current value of the chosen IV proxy.
IV1yHigh/Low: Highest and lowest proxy values over the user-defined lookback (default 252 trading days ≈ 1 year).
IVR = 0 → Current IV equals its 1-year low
IVR = 100 → Current IV equals its 1-year high
IVR ≈ 50 → Current IV sits mid-range
How to Use
High IV Rank (≥50–60%)
Options are relatively expensive → short-premium strategies (credit spreads, iron condors, straddles) may be more attractive.
Low IV Rank (≤20%)
Options are relatively cheap → long-premium strategies (debit spreads, calendars, diagonals) may offer better risk/reward.
Combine with your own analysis, liquidity checks, and risk management.
Inputs & Customization
IV Source: Choose “VIXFix” or “HV(30)” as the volatility proxy.
IVR Lookback: Rolling window for 1-year high/low (default 252 trading days).
VIXFix Parameters: Length and stdev multiplier to fine-tune sensitivity.
Info Label: Optional on-chart label displays current IV proxy, 1-year high/low, and IV Rank.
Alerts: Optional alerts when IVR crosses 50, falls below 20, or rises above 80.
Notes & Limitations
This indicator does not pull real option-chain IV.
It provides a close structural analogue to tastytrade’s IV Rank using price-derived proxies for markets where options data is not directly available.
For live option IV, use broker platforms or third-party data feeds alongside this script.
Tags: IV Rank, Implied Volatility, Tastytrade, VIXFix, Historical Volatility, Options, Premium Selling, Debit Spreads, Market Volatility
Volume Profile + Pivot Levels [ChartPrime]⯁ OVERVIEW
Volume Profile + Pivot Levels combines a rolling volume profile with price pivots to surface the most meaningful levels in your selected lookback window. It builds a left-side profile from traded volume, highlights the session’s Point of Control (PoC) , and then filters pivot highs/lows so only those aligned with significant profile volume are promoted to chart levels. Each promoted level extends forward until price retests it—so your chart stays focused on levels that actually matter.
⯁ KEY FEATURES
Rolling Volume Profile (Period & Resolution)
Calculates a profile over the last Period bars (default 200). The profile is discretized into Volume Profile Resolution bins (default 50) between the highest high and lowest low inside the window. Each bin accumulates traded volume and is drawn as a smooth left-side polyline for compact, lightweight rendering.
HL = array.new()
// collect highs/lows over 'start' bars to define profile range
for i = 0 to start - 1
HL.push(high ), HL.push(low )
H = HL.max(), L = HL.min()
bin_size = (H - L) / bins
// accumulate per-bin volume
for i = 0 to bins - 1
for j = 0 to start - 1
if close >= (L + bin_sizei) - bin_size and close < (L + bin_size*(i+1)) + bin_size
Bins += volume
Delta-Aware Coloring
The script tracks up-minus-down volume across all period to compute a net Delta . The profile, PoC line, and PoC label adopt a teal tone when net positive, and maroon when net negative—an immediate read on buyer/seller dominance inside the window.
Point of Control (PoC) + Volume Label
Automatically marks the highest-volume bin as the PoC . A horizontal PoC line extends to the last bar, and a label shows the absolute volume at the PoC. Toggle visibility via PoC input.
Pivot Detection with Volume Filter
Identifies raw pivots using Length (default 10) on both sides of the bar. Each candidate pivot is then validated against the profile: only pivots that land within their bin and meet or exceed the Filter % threshold (percentage of PoC volume) are promoted to chart levels. This removes weak, low-participation pivots.
// pivot promotion when volume% >= pivotFilter
if abs(mid - p.value) <= bin_size and volPercent >= pivotFilter
// draw labeled pivot level
line.new(p.index - pivotLength, p.value, p.index + pivotLength, p.value, width = 2)
Forward-Extending, Self-Stopping Levels
Promoted pivot levels extend forward as dotted rays. As soon as price intersects a level (high/low straddles it), that level stops extending—so your chart doesn’t clutter with stale zones.
Concise Level Labels (Volume + %)
Each promoted pivot prints a compact label at the pivot bar with its bin’s absolute volume and percentage of PoC volume (ordering flips for highs vs. lows for quick read).
Lightweight Visuals
The volume profile is rendered as a smooth polyline rather than dozens of boxes, keeping charts responsive even at higher resolutions.
⯁ SETTINGS
Volume Profile → Period : Lookback window used to compute the profile (max 500).
Volume Profile → Resolution : Number of bins; higher = finer structure.
Volume Profile → PoC : Toggle PoC line and volume label.
Pivots → Display : Show/hide volume-validated pivot levels.
Pivots → Length : Pivot detection left/right bars.
Pivots → Filter % 0–100 : Minimum bin strength (as % of PoC) required to promote a pivot level.
⯁ USAGE
Read PoC direction/color for a quick net-flow bias within your window.
Prioritize promoted pivot levels —they’re backed by meaningful participation.
Watch for first retests of promoted levels; the line will stop extending once tested.
Adjust Period / Resolution to match your timeframe (scalps → higher resolution, shorter period; swings → lower resolution, longer period).
Tighten or loosen Filter % to control how selective the level promotion is.
⯁ WHY IT’S UNIQUE
Instead of plotting every pivot or every profile bar, this tool cross-checks pivots against the profile’s internal volume weighting . You only see levels where price structure and liquidity overlap—clean, data-driven levels that self-retire after interaction, so you can focus on what the market actually defends.
IV PercentileIV Percentile Indicator - Brief Description
What It Does
The IV Percentile Indicator measures where current implied volatility ranks compared to the past year, showing what percentage of time volatility was lower than today's level.
How It Works
Data Collection:
Tracks implied volatility (or historical volatility as proxy) for each trading day
Stores the last 252 days (1 year) of volatility readings
Uses VIX data for SPY/SPX, historical volatility for other stocks
Calculation:
IV Percentile = (Days with IV below current level) ÷ (Total days) × 100
Example: If IV Percentile = 75%, it means current volatility is higher than 75% of the past year's readings.
Visual Output
Main Display:
Blue line showing percentile (0-100%)
Reference lines at key levels (20%, 30%, 50%, 70%, 80%)
Color-coded backgrounds for quick identification
Info table with current readings
Key Levels:
80%+ (Red): Very high IV → Sell premium
70-79% (Orange): High IV → Consider selling
30-20% (Green): Low IV → Consider buying
<20% (Bright Green): Very low IV → Buy premium
Trading Application
When IV Percentile is HIGH (70%+):
Options are expensive relative to recent history
Good time to sell premium (iron condors, credit spreads)
Expect volatility to decrease toward normal levels
When IV Percentile is LOW (30%-):
Options are cheap relative to recent history
Good time to buy premium (straddles, long options)
Expect volatility to increase from compressed levels
Core Logic
The indicator helps answer: "Is this a good time to buy or sell options based on how expensive/cheap they are compared to recent history?" It removes the guesswork from volatility timing by providing historical context for current option prices.
Options Volatility Strategy Analyzer [TradeDots]The Options Volatility Strategy Analyzer is a specialized tool designed to help traders assess market conditions through a detailed examination of historical volatility, market benchmarks, and percentile-based thresholds. By integrating multiple volatility metrics (including VIX and VIX9D) with color-coded regime detection, the script provides users with clear, actionable insights for selecting appropriate options strategies.
📝 HOW IT WORKS
1. Historical Volatility & Percentile Calculations
Annualized Historical Volatility (HV): The script automatically computes the asset’s historical volatility using log returns over a user-defined period. It then annualizes these values based on the chart’s timeframe, helping you understand the asset’s typical volatility profile.
Dynamic Percentile Ranks: To gauge where the current volatility level stands relative to past behavior, historical volatility values are compared against short, medium, and long lookback periods. Tracking these percentile ranks allows you to quickly see if volatility is high or low compared to historical norms.
2. Multi-Market Benchmark Comparison
VIX and VIX9D Integration: The script tracks market volatility through the VIX and VIX9D indices, comparing them to the asset’s historical volatility. This reveals whether the asset’s volatility is outpacing, lagging, or remaining in sync with broader market volatility conditions.
Market Context Analysis: A built-in term-structure check can detect market stress or relative calm by measuring how VIX compares to shorter-dated volatility (VIX9D). This helps you decide if the present environment is risk-prone or relatively stable.
3. Volatility Regime Detection
Color-Coded Background: The analyzer assigns a volatility regime (e.g., “High Asset Vol,” “Low Asset Vol,” “Outpacing Market,” etc.) based on current historical volatility percentile levels and asset vs. market ratios. A color-coded background highlights the regime, enabling traders to quickly interpret the market’s mood.
Alerts on Regime Changes & Spikes: Automated alerts warn you about any significant expansions or contractions in volatility, allowing you to react swiftly in changing conditions.
4. Strategy Forecast Table
Real-Time Strategy Suggestions: At the close of each bar, an on-chart table generates suggested options strategies (e.g., selling premium in high volatility or buying premium in low volatility). These suggestions provide a quick summary of potential tactics suited to the current regime.
Contextual Market Data: The table also displays key statistics, such as VIX levels, asset historical volatility percentile, or ratio comparisons, helping you confirm whether volatility conditions warrant more conservative or more aggressive strategies.
🛠️ HOW TO USE
1. Select Your Timeframe: The script supports multiple timeframes. For short-term trading, intraday charts often reveal faster shifts in volatility. For swing or position trading, daily or weekly charts may be more stable and produce fewer false signals.
2. Check the Volatility Regime: Observe the background color and on-chart labels to identify the current regime (e.g., “HIGH ASSET VOL,” “LOW VOL + LAGGING,” etc.).
3. Review the Forecast Table: The table suggests strategy ideas (e.g., iron condors, long straddles, ratio spreads) depending on whether volatility is elevated, subdued, or spiking. Use these as a starting point for designing trades that match your risk tolerance.
4. Combine with Additional Analysis: For optimal results, confirm signals with your broader trading plan, technical tools (moving averages, price action), and fundamental research. This script is most effective when viewed as one component in a comprehensive decision-making process.
❗️LIMITATIONS
Directional Neutrality: This indicator analyzes volatility environments but does not predict price direction (up/down). Traders must combine with directional analysis for complete strategy selection.
Late or Missed Signals: Since all calculations require a bar to close, sharp intrabar volatility moves may not appear in real-time.
False Positives in Choppy Markets: Rapid changes in percentile ranks or VIX movements can generate conflicting or premature regime shifts.
Data Sensitivity: Accuracy depends on the availability and stability of volatility data. Significant gaps or unusual market conditions may skew results.
Market Correlation Assumptions: The system assumes assets generally correlate with S&P 500 volatility patterns. May be less effective for:
Small-cap stocks with unique volatility drivers
International stocks with different market dynamics
Sector-specific events disconnected from broad market
Cryptocurrency-related assets with independent volatility patterns
RISK DISCLAIMER
Options trading involves substantial risk and is not suitable for all investors. Options strategies can result in significant losses, including the total loss of premium paid. The complexity of options strategies requires thorough understanding of the risks involved.
This indicator provides volatility analysis for educational and informational purposes only and should not be considered as investment advice. Past volatility patterns do not guarantee future performance. Market conditions can change rapidly, and volatility regimes may shift without warning.
No trading system can guarantee profits, and all trading involves the risk of loss. The indicator's regime classifications and strategy suggestions should be used as part of a comprehensive trading plan that includes proper risk management, directional analysis, and consideration of broader market conditions.
Percentage Calculator by Akshay GaurThis indicator calculates and displays percentage levels above and below the current price. It allows you to easily identify any percentage levels which can be used in many things like creating strangles and straddles and make informed trading decisions. The indicator automatically adjusts and redraws the lines and labels on the latest bar to reflect real-time market conditions.
Key Features:
• Calculates percentage levels above and below the current price
• Displays percentage levels on big labels with the horizontal lines on the chart
• Allows you to adjust the percentage value and every details.
• Allows you to see Fluctuation line on the chart.
How to Use:
1. Set the percentage value to the desired level (e.g. 1%, 2%, etc.)
2. If you want to see Fluctuation lines also then turn on it from Input settings.
3. Use the displayed levels to identify desired percentage levels.
4. Make informed trading decisions based on the calculated levels
Dynamic Volatility Heatmap (ATR)How the Script Works
Dynamic Thresholds:
atrLow and atrHigh are calculated as percentiles (20% and 80% by default) of ATR values over the last double the ATR period (28 days if ATR is 14).
This creates thresholds that adapt to recent market conditions.
Background Heatmap:
Green: ATR is below the low threshold, indicating calm markets (options are cheap).
Red: ATR is above the high threshold, signaling elevated volatility (options are expensive).
Yellow: ATR is within the normal range, showing neutral market conditions.
Overlay Lines:
]Dynamic lines for atrLow and atrHigh help visualize thresholds on the chart.
Interpretation for Trading
Green Zone (Low ATR):
Interpretation: The market is calm, and options are likely underpriced.
Trade Setup: Favor buying options (e.g., long straddles or long calls/puts) to profit from potential volatility increases.
Red Zone (High ATR):
Interpretation: The market is volatile, and options are likely overpriced.
Trade Setup: Favor selling options (e.g., credit spreads or iron condors) to benefit from volatility decay.
Yellow Zone (Neutral ATR):
Interpretation: Volatility is within typical levels, offering no strong signal.
Trade Setup: Combine with other indicators, such as gamma levels or Bollinger Bands, for confirmation.
5. Enhancing with Other Indicators
Combine with Bollinger Bands:
Overlay Bollinger Bands to identify price extremes and align them with volatility heatmap signals.
Trading Made Easy Pressure OscillatorAs always, this is not financial advice and use at your own risk. Trading is risky and can cost you significant sums of money if you are not careful. Make sure you always have a proper entry and exit plan that includes defining your risk before you enter a trade.
Those who have looked at my other indicators know that I am a big fan of Dr. Alexander Elder and John Carter. This is relevant to my trading style and to this indicator in general. While I understand it goes against TradingView rules generally to display other indicators while describing a new one, I need the Bollinger Bands, Bollinger Bands Width, and a secondary directional indicator to explain the full power of this indicator. In short, if this is strongly against the rules, I will edit the post as needed.
Those of you who are aware of John Carter are going to know this already, but for those who don’t, an explanation is necessary. John Carter is a relatively famous retail-turned-institutional (sort of) trader. He is the founder of TradetheMarkets, that later turned into SimplerTrading. Him and his company have a series of YouTube videos, he has made appearances on the MoneyShow, TastyTrade, and has authored a couple of books about trading. However, he is probably most famous for his “Squeeze” indicator that was originally launched on Thinkorswim and through his website but has now been incorporated into several trading platforms and even has a few open-source versions available here. In short, the Squeeze indicator looks to identify periods of consolidation and marry that with a momentum oscillator so you can position yourself in a quiet period before a large move. This in my opinion, is one of the best indicators an option trader can have, since options are priced both on time and volatility. To do this, the Squeeze identifies when the Bollinger Bands, a measure of price standard deviation, have contracted inside the Keltner Channels (a measure of the average range of a stock). This highlights something known as “the Squeeze”, when the 2x standard deviations (95% of all likely price movement using data from the past 20 periods) is less than the 1.5x average true range (ATR) of the stock over the same number of periods. These periods are when a stock is resting and in a period of consolidation and is generally followed by another large move once it has rested long enough. The momentum oscillator is used to determine the direction of this next move.
While I think this is one of the best indicators ever made, it is not without its pitfalls. I find that the “Squeeze” periods sometimes take too long to setup (something that was addressed by John and released in a new indicator, the Squeeze Pro, but even that is still slowish) and that the momentum oscillator was also a bit slow. They used a linear regression formula to track momentum, which can lag considerably at times. Collectively, this meant that getting into moves a few candles late was not uncommon or someone solely trading squeeze setups could have missed very good trade opportunities.
To improve on this, I present, the Trading Made Easy Pressure Oscillator. This more accurately identifies when volatility is reducing and the trading range is likely to contract, increasing the “pressure” on the price. This is often marked several candles before a “Squeeze” has started. To identify these ranges, I applied a 21-period exponential moving average to the Bollinger Bands Width indicator (BBW). As mentioned above, the Bollinger Bands measure the 2x standard deviation of price, typically based on a 20-period SMA. When the BBs expand, it marks periods of high volatility, when they contract, conversely, periods of low volatility. Therefore, applying an EMA to the BBW indicator allows us to confidently mark when volatility has slowed down earlier than traditional methods. The second improvement I made was using the Absolute Price oscillator instead of a linear regression-style oscillator. The APO is very similar to a MACD, it measures the difference between two exponential moving averages, here the 8 and 21 (Fibonacci EMAs). However, I find the APO to be smoother than the MACD, yet more reactive than the linear regression-style oscillators to get you into moves earlier.
Uses:
1) Buying before a bigger than expected move. This is especially relevant for options traders since theta decay will often eat away much of our profits while we wait for a large enough price move to offset the time decay. Here, we buy a call option/shares when the momentum oscillator matches the longer-term trend (i.e. the APO crosses over the zero line when price is above the 200-day EMA, and vice versa for puts/shorting the stock). This coincides with Dr. Elder’s Triple Screen Trading System, that we are aligning ourselves with the path of least resistance. We want to do this when price is currently in an increasing pressure situation (i.e. volatility is contracting) to make sure we are buying an option when premium and Implied Volatility is low so we can get a better price and have a better risk to reward ratio. Low volatility is denoted by a purple dot, high volatility a blue dot along the midline of the indicator. A scalper or short-term swing trader may look to exit when the blue dots turn purple signalling a likely end to a move. A longer-term trend trader can look to other exit scenarios, such as a cross of the oscillator below the zero line, signalling to go short, or using a moving average as a trailing stop.
2) Sell premium after a larger than expected move has finished. After a larger than expected move has completed (a series of blue dots is followed by a purple dot), use this time to sell theta-driven options strategies such as straddles, strangles, iron condors, calendar spreads, or iron butterflies, anything that benefits from contracting volatility and stagnating prices. This is useful here since reducing volatility typically means a contraction of prices and the reduced likelihood of a move outside of the normal range.
3) Divergences. This indicator is sensitive enough to highlight divergences. I personally don’t use it as such as I prefer to trend trade vs. reversion trade. Use at your own risk, but they are there.
In summary, this indicator improves upon the famous Squeeze indicator by increasing the speed at which periods of consolidation are marked and trend identification. I hope you enjoy it.
Chop Shop Indicator for Options TradersAs always, this is not financial advice and use at your own risk. Trading is risky and can cost you significant sums of money if you are not careful. Make sure you always have a proper entry and exit plan that includes defining your risk before you enter a trade.
This is for all of you options traders out there who choose to write options and collect premium. Since we seem to be a neglected bunch when it comes to indicators, I figured I would write a script that helps identify when underlyings are in a range and a good time to sell some premium when we are waiting for the next directional setup. This is the choppiness index modified to include a 21-period exponential moving average as a trigger, which I am calling the Chop Shop. The choppiness index , at its most basic, takes a log-scaled version of the summed Average True Range (ATR --- a volatility measurement) and converts it into an oscillator. The higher the oscillator value, the higher level of "chop" the stock is experiencing. This is often referred to as the stock is trading in a range. Most traders are advised to stay out of range trading because it is difficult. However, for an options trader this is an opportune time to collect some premium using bracketed short strike trades such as strangles, straddles, iron condors, or iron butterflies that are profitable when the stock stays rangebound and realizes a drop in volatility .
The indicator is extremely basic. You should look to collect premium and write these types of bracketed trades when Chop Shop crosses over its 21-period EMA . You should look to avoid writing bracketed trades when the Chop Shop trades below its 21-period EMA as this is when a stock is seeing a strong directional movement and can be considered trending. These are usually times when you want to get out of the way of the runaway train and make sure you are on the correct side of the trade or you can quickly get smoked. Use a combination of other indicators to help assist you define the most likely continued direction of the trend and you can then write directional premium trades such as credit spreads, directional Iron Condors, and butterflies to capture this and avoid stepping in front of that moving train.
Multiple Rate Of ChangeConvergence of Multiple period Rates of Change near the Zero line shows contraction in volatility.
Soon we can expect expansion in volatility.
Ideal strategy would be to buy ATM Straddles when different period ROCs converge near Zero line.
(Also check implied volatility of options before going for this strategy)
Deviation Back Tester (Great for Credit Spreads)!Error with math fixed in this one. Please use this one.
This is great for credit spreads! Lets say you wanted to know if you had sold a 15% OTM Bull Put vertical 2 months out, how often would you win? This Turns green if you would have been correct with your credit spread had it expired on that date, or red if you would've been wrong. Great for Back testing!
This could also be used for ATM debit spreads credit spreads etc. Example, how often does SPY deviate outside a 10% range relative to two months, 5% (if your doing straddles perhaps) etc.
This Can be used with any stock.
PLEASE KEEP IN MIND THAT IT TESTS DEVIATION IN BOTH DIRECTIONS. THEREFORE IT WILL HIGHLIGHT RED ON BOTH THE UPSIDE AND DOWNSIDE. WHEN BACKTESTING BE SURE TO CHECK WHETHER IT IS RED BECAUSE OF DOWNSIDE OR UPSIDE.
Historical VolatilityHistorical Volatility Indicator with Custom Trading Sessions
Overview
This indicator calculates **annualized Historical Volatility (HV)** using logarithmic returns and standard deviation. Unlike standard HV indicators, this version allows you to **customize trading sessions and holidays** for different markets, ensuring accurate volatility calculations for options pricing and risk management.
Key Features
✅ Custom Trading Sessions - Define multiple trading sessions per day with precise start/end times
✅ Multiple Markets Support - Pre-configured for US, Russian, European, and crypto markets
✅ Clearing Periods Handling - Account for intraday clearing breaks
✅ Flexible Calendar - Set trading days per year for different countries
✅ All Timeframes - Works correctly on intraday, daily, weekly, and monthly charts
✅ Info Table - Optional display showing calculation parameters
How It Works
The indicator uses the classical volatility formula:
σ_annual = σ_period × √(periods per year)
Where:
- σ_period = Standard deviation of logarithmic returns over the specified period
- Periods per year = Calculated based on actual trading time (not calendar time)
Calculation Method
1. Computes log returns: ln(close / close )
2. Calculates standard deviation over the lookback period
3. Annualizes using the square root rule with accurate period count
4. Displays as percentage
Settings
Calculation
- Period (default: 10) - Lookback period for volatility calculation
Trading Schedule
- Trading Days Per Year (default: 252) - Number of actual trading days
- USA: 252
- Russia: 247-250
- Europe: 250-253
- Crypto (24/7): 365
- Trading Sessions - Define trading hours in format: `hh:mm:ss-hh:mm:ss, hh:mm:ss-hh:mm:ss`
Display
- Show Info Table - Shows calculation parameters in real-time
Market Presets
United States (NYSE/NASDAQ)
Trading Sessions: 09:30:00-16:00:00
Trading Days Per Year: 252
Trading Minutes Per Day: 390
Russia (MOEX)
Trading Sessions: 10:00:00-14:00:00, 14:05:00-18:40:00
Trading Days Per Year: 248
Trading Minutes Per Day: 515
Europe (LSE)
Trading Sessions: 08:00:00-16:30:00
Trading Days Per Year: 252
Trading Minutes Per Day: 510
Germany (XETRA)
Trading Sessions: 09:00:00-17:30:00
Trading Days Per Year: 252
Trading Minutes Per Day: 510
Cryptocurrency (24/7)
Trading Sessions: 00:00:00-23:59:59
Trading Days Per Year: 365
Trading Minutes Per Day: 1440
Use Cases
Options Trading
- Compare HV vs IV - Historical volatility compared to implied volatility helps identify mispriced options
- Volatility mean reversion - Identify when volatility is unusually high or low
- Straddle/strangle selection - Choose optimal strikes based on historical movement
Risk Management
- Position sizing - Adjust position size based on current volatility
- Stop-loss placement - Set stops based on expected price movement
- Portfolio volatility - Monitor individual asset volatility contribution
Market Analysis
- Regime identification - Detect transitions between low and high volatility environments
- Cross-market comparison - Compare volatility across different assets and markets
Why Accurate Trading Hours Matter
Standard HV indicators assume 24-hour trading or use simplified day counts, leading to significant errors in annualized volatility:
- 5-minute chart error : Can be off by 50%+ if using wrong period count
- Options pricing impact : Even 2-3% HV error affects option values substantially
- Intraday vs overnight : Correctly excludes non-trading periods
This indicator ensures your HV calculations match the methodology used in professional options pricing models.
Technical Notes
- Uses actual trading minutes, not calendar days
- Handles multiple clearing periods within a single trading day
- Properly scales volatility across all timeframes
- Logarithmic returns for more accurate volatility measurement
- Compatible with Pine Script v6
Author Notes: This indicator was designed specifically for options traders who need precise volatility measurements across different global markets. The customizable trading sessions ensure your HV calculations align with actual market hours and industry-standard options pricing models.
ATR Future Movement Range Projection
The "ATR Future Movement Range Projection" is a custom TradingView Pine Script indicator designed to forecast potential price ranges for a stock (or any asset) over short-term (1-month) and medium-term (3-month) horizons. It leverages the Average True Range (ATR) as a measure of volatility to estimate how far the price might move, while incorporating recent momentum bias based on the proportion of bullish (green) vs. bearish (red) candles. This creates asymmetric projections: in bullish periods, the upside range is larger than the downside, and vice versa.
The indicator is overlaid on the chart, plotting horizontal lines for the projected high and low prices for both timeframes. Additionally, it displays a small table in the top-right corner summarizing the projected prices and the percentage change required from the current close to reach them. This makes it useful for traders assessing potential targets, risk-reward ratios, or option strategies, as it combines volatility forecasting with directional sentiment.
Key features:
- **Volatility Basis**: Uses weekly ATR to derive a stable daily volatility estimate, avoiding noise from shorter timeframes.
- **Momentum Adjustment**: Analyzes recent candle colors to tilt projections toward the prevailing trend (e.g., more upside if more green candles).
- **Time Horizons**: Fixed at 1 month (21 trading days) and 3 months (63 trading days), assuming ~21 trading days per month (excluding weekends/holidays).
- **User Adjustable**: The ATR length/lookback (default 50) can be tweaked via inputs.
- **Visuals**: Green/lime lines for highs, red/orange for lows; a semi-transparent table for quick reference.
- **Limitations**: This is a probabilistic projection based on historical volatility and momentum—it doesn't predict direction with certainty and assumes volatility persists. It ignores external factors like news, earnings, or market regimes. Best used on daily charts for stocks/ETFs.
The indicator doesn't generate buy/sell signals but helps visualize "expected" ranges, similar to how implied volatility informs option pricing.
### How It Works Step-by-Step
The script executes on each bar update (typically daily timeframe) and follows this logic:
1. **Input Configuration**:
- ATR Length (Lookback): Default 50 bars. This controls both the ATR calculation period and the candle count window. You can adjust it in the indicator settings.
2. **Calculate Weekly ATR**:
- Fetches the ATR from the weekly timeframe using `request.security` with a length of 50 weeks.
- ATR measures average price range (high-low, adjusted for gaps), representing volatility.
3. **Derive Daily ATR**:
- Divides the weekly ATR by 5 (approximating 5 trading days per week) to get an equivalent daily volatility estimate.
- Example: If weekly ATR is $5, daily ATR ≈ $1.
4. **Define Projection Periods**:
- 1 Month: 21 trading days.
- 3 Months: 63 trading days (21 × 3).
- These are hardcoded but based on standard trading calendar assumptions.
5. **Compute Base Projections**:
- Base projection = Daily ATR × Days in period.
- This gives the total expected movement (range) without direction: e.g., for 3 months, $1 daily ATR × 63 = $63 total range.
6. **Analyze Candle Momentum (Win Rate)**:
- Counts green candles (close > open) and red candles (close < open) over the last 50 bars (ignores dojis where close == open).
- Total colored candles = green + red.
- Win rate = green / total colored (as a fraction, e.g., 0.7 for 70%). Defaults to 0.5 if no colored candles.
- This acts as a simple momentum proxy: higher win rate implies bullish bias.
7. **Adjust Projections Asymmetrically**:
- Upside projection = Base projection × Win rate.
- Downside projection = Base projection × (1 - Win rate).
- This skews the range: e.g., 70% win rate means 70% of the total range allocated to upside, 30% to downside.
8. **Calculate Projected Prices**:
- High = Current close + Upside projection.
- Low = Current close - Downside projection.
- Done separately for 1M and 3M.
9. **Plot Lines**:
- 3M High: Solid green line.
- 3M Low: Solid red line.
- 1M High: Dashed lime line.
- 1M Low: Dashed orange line.
- Lines extend horizontally from the current bar onward.
10. **Display Table**:
- A 3-column table (Projection, Price, % Change) in the top-right.
- Rows for 1M High/Low and 3M High/Low, color-coded.
- % Change = ((Projected price - Close) / Close) × 100.
- Updates dynamically with new data.
The entire process repeats on each new bar, so projections evolve as volatility and momentum change.
### Examples
Here are two hypothetical examples using the indicator on a daily chart. Assume it's applied to a stock like AAPL, but with made-up data for illustration. (In TradingView, you'd add the script to see real outputs.)
#### Example 1: Bullish Scenario (High Win Rate)
- Current Close: $150.
- Weekly ATR (50 periods): $10 → Daily ATR: $10 / 5 = $2.
- Last 50 Candles: 35 green, 15 red → Total colored: 50 → Win Rate: 35/50 = 0.7 (70%).
- Base Projections:
- 1M: $2 × 21 = $42.
- 3M: $2 × 63 = $126.
- Adjusted Projections:
- 1M Upside: $42 × 0.7 = $29.4 → High: $150 + $29.4 = $179.4 (+19.6%).
- 1M Downside: $42 × 0.3 = $12.6 → Low: $150 - $12.6 = $137.4 (-8.4%).
- 3M Upside: $126 × 0.7 = $88.2 → High: $150 + $88.2 = $238.2 (+58.8%).
- 3M Downside: $126 × 0.3 = $37.8 → Low: $150 - $37.8 = $112.2 (-25.2%).
- On the Chart: Green/lime lines skewed higher; table shows bullish % changes (e.g., +58.8% for 3M high).
- Interpretation: Suggests stronger potential upside due to recent bullish momentum; useful for call options or long positions.
#### Example 2: Bearish Scenario (Low Win Rate)
- Current Close: $50.
- Weekly ATR (50 periods): $3 → Daily ATR: $3 / 5 = $0.6.
- Last 50 Candles: 20 green, 30 red → Total colored: 50 → Win Rate: 20/50 = 0.4 (40%).
- Base Projections:
- 1M: $0.6 × 21 = $12.6.
- 3M: $0.6 × 63 = $37.8.
- Adjusted Projections:
- 1M Upside: $12.6 × 0.4 = $5.04 → High: $50 + $5.04 = $55.04 (+10.1%).
- 1M Downside: $12.6 × 0.6 = $7.56 → Low: $50 - $7.56 = $42.44 (-15.1%).
- 3M Upside: $37.8 × 0.4 = $15.12 → High: $50 + $15.12 = $65.12 (+30.2%).
- 3M Downside: $37.8 × 0.6 = $22.68 → Low: $50 - $22.68 = $27.32 (-45.4%).
- On the Chart: Red/orange lines skewed lower; table highlights larger downside % (e.g., -45.4% for 3M low).
- Interpretation: Indicates bearish risk; might prompt protective puts or short strategies.
#### Example 3: Neutral Scenario (Balanced Win Rate)
- Current Close: $100.
- Weekly ATR: $5 → Daily ATR: $1.
- Last 50 Candles: 25 green, 25 red → Win Rate: 0.5 (50%).
- Projections become symmetric:
- 1M: Base $21 → Upside/Downside $10.5 each → High $110.5 (+10.5%), Low $89.5 (-10.5%).
- 3M: Base $63 → Upside/Downside $31.5 each → High $131.5 (+31.5%), Low $68.5 (-31.5%).
- Interpretation: Pure volatility-based range, no directional bias—ideal for straddle options or range trading.
In real use, test on historical data: e.g., if past projections captured actual moves ~68% of the time (1 standard deviation for ATR), it validates the volatility assumption. Adjust the lookback for different assets (shorter for volatile cryptos, longer for stable blue-chips).
SPX Weekly Expected Moves# SPX Weekly Expected Moves Indicator
A professional Pine Script indicator for TradingView that displays weekly expected move levels for SPX based on real options data, with integrated Fibonacci retracement analysis and intelligent alerting system.
## Overview
This indicator helps options and equity traders visualize weekly expected move ranges for the S&P 500 Index (SPX) by plotting historical and current week expected move boundaries derived from weekly options pricing. Unlike theoretical volatility calculations, this indicator uses actual market-based expected move data that you provide from options platforms.
## Key Features
### 📈 **Expected Move Visualization**
- **Historical Lines**: Display past weeks' expected moves with configurable history (10, 26, or 52 weeks)
- **Current Week Focus**: Highlighted current week with extended lines to present time
- **Friday Close Reference**: Orange baseline showing the previous Friday's close price
- **Timeframe Independent**: Works consistently across all chart timeframes (1m to 1D)
### 🎯 **Fibonacci Integration**
- **Five Fibonacci Levels**: 23.6%, 38.2%, 50%, 61.8%, 76.4% between Friday close and expected move boundaries
- **Color-Coded Levels**:
- Red: 23.6% & 76.4% (outer levels)
- Blue: 38.2% & 61.8% (golden ratio levels)
- Black: 50% (midpoint - most critical level)
- **Current Week Only**: Fibonacci levels shown only for active trading week to reduce clutter
### 📊 **Real-Time Information Table**
- **Current SPX Price**: Live market price
- **Expected Move**: ±EM value for current week
- **Previous Close**: Friday close price (baseline for calculations)
- **100% EM Levels**: Exact upper and lower boundary prices
- **Current Location**: Real-time position within the EM structure (e.g., "Above 38.2% Fib (upper zone)")
### 🚨 **Intelligent Alert System**
- **Zone-Aware Alerts**: Separate alerts for upper and lower zones
- **Key Level Breaches**: Alerts for 23.6% and 76.4% Fibonacci level crossings
- **Bar Close Based**: Alerts trigger on confirmed bar closes, not tick-by-tick
- **Customizable**: Enable/disable alerts through settings
## How It Works
### Data Input Method
The indicator uses a **manual data entry approach** where you input actual expected move values obtained from options platforms:
```pinescript
// Add entries using the options expiration Friday date
map.put(expected_moves, 20250613, 91.244) // Week ending June 13, 2025
map.put(expected_moves, 20250620, 95.150) // Week ending June 20, 2025
```
### Weekly Structure
- **Monday 9:30 AM ET**: Week begins
- **Friday 4:00 PM ET**: Week ends
- **Lines Extend**: From Monday open to Friday close (historical) or current time + 5 bars (current week)
- **Timezone Handling**: Uses "America/New_York" for proper DST handling
### Calculation Logic
1. **Base Price**: Previous Friday's SPX close price
2. **Expected Move**: Market-derived ±EM value from weekly options
3. **Upper Boundary**: Friday Close + Expected Move
4. **Lower Boundary**: Friday Close - Expected Move
5. **Fibonacci Levels**: Proportional levels between Friday close and EM boundaries
## Setup Instructions
### 1. Data Collection
Obtain weekly expected move values from options platforms such as:
- **ThinkOrSwim**: Use thinkBack feature to look up weekly expected moves
- **Tastyworks**: Check weekly options expected move data
- **CBOE**: Reference SPX weekly options data
- **Manual Calculation**: (ATM Call Premium + ATM Put Premium) × 0.85
### 2. Data Entry
After each Friday close, update the indicator with the next week's expected move:
```pinescript
// Example: On Friday June 7, 2025, add data for week ending June 13
map.put(expected_moves, 20250613, 91.244) // Actual EM value from your platform
```
### 3. Configuration
Customize the indicator through the settings panel:
#### Visual Settings
- **Show Current Week EM**: Toggle current week display
- **Show Past Weeks**: Toggle historical weeks display
- **Max Weeks History**: Choose 10, 26, or 52 weeks of history
- **Show Fibonacci Levels**: Toggle Fibonacci retracement levels
- **Label Controls**: Customize which labels to display
#### Colors
- **Current Week EM**: Default yellow for active week
- **Past Weeks EM**: Default gray for historical weeks
- **Friday Close**: Default orange for baseline
- **Fibonacci Levels**: Customizable colors for each level type
#### Alerts
- **Enable EM Breach Alerts**: Master toggle for all alerts
- **Specific Alerts**: Four alert types for Fibonacci level breaches
## Trading Applications
### Options Trading
- **Straddle/Strangle Positioning**: Visualize breakeven levels for neutral strategies
- **Directional Plays**: Assess probability of reaching target levels
- **Earnings Plays**: Compare actual vs. expected move outcomes
### Equity Trading
- **Support/Resistance**: Use EM boundaries and Fibonacci levels as key levels
- **Breakout Trading**: Monitor for moves beyond expected ranges
- **Mean Reversion**: Look for reversals at extreme Fibonacci levels
### Risk Management
- **Position Sizing**: Gauge likely price ranges for the week
- **Stop Placement**: Use Fibonacci levels for logical stop locations
- **Profit Targets**: Set targets based on EM structure probabilities
## Technical Implementation
### Performance Features
- **Memory Managed**: Configurable history limits prevent memory issues
- **Timeframe Independent**: Uses timestamp-based calculations for consistency
- **Object Management**: Automatic cleanup of drawing objects prevents duplicates
- **Error Handling**: Robust bounds checking and NA value handling
### Pine Script Best Practices
- **v6 Compliance**: Uses latest Pine Script version features
- **User Defined Types**: Structured data management with WeeklyEM type
- **Efficient Drawing**: Smart line/label creation and deletion
- **Professional Standards**: Clean code organization and comprehensive documentation
## Customization Guide
### Adding New Weeks
```pinescript
// Add after market close each Friday
map.put(expected_moves, YYYYMMDD, EM_VALUE)
```
### Color Schemes
Customize colors for different trading styles:
- **Dark Theme**: Use bright colors for visibility
- **Light Theme**: Use contrasting dark colors
- **Minimalist**: Use single color with transparency
### Label Management
Control label density:
- **Show Current Week Labels Only**: Reduce clutter for active trading
- **Show All Labels**: Full information for analysis
- **Selective Display**: Choose specific label types
## Troubleshooting
### Common Issues
1. **No Lines Appearing**: Check that expected move data is entered for current/recent weeks
2. **Wrong Time Display**: Ensure "America/New_York" timezone is properly handled
3. **Duplicate Lines**: Restart indicator if drawing objects appear duplicated
4. **Missing Fibonacci Levels**: Verify "Show Fibonacci Levels" is enabled
### Data Validation
- **Expected Move Format**: Use positive numbers (e.g., 91.244, not ±91.244)
- **Date Format**: Use YYYYMMDD format (e.g., 20250613)
- **Reasonable Values**: Verify EM values are realistic (typically 50-200 for SPX)
## Version History
### Current Version
- **Pine Script v6**: Latest version compatibility
- **Fibonacci Integration**: Five-level retracement analysis
- **Zone-Aware Alerts**: Upper/lower zone differentiation
- **Dynamic Line Management**: Smart current week extension
- **Professional UI**: Comprehensive information table
### Future Enhancements
- **Multiple Symbols**: Extend beyond SPX to other indices
- **Automated Data**: Integration with options data APIs
- **Statistical Analysis**: Success rate tracking for EM predictions
- **Additional Levels**: Custom percentage levels beyond Fibonacci
## License & Usage
This indicator is designed for educational and trading purposes. Users are responsible for:
- **Data Accuracy**: Ensuring correct expected move values
- **Risk Management**: Proper position sizing and risk controls
- **Market Understanding**: Comprehending options-based expected move concepts
## Support
For questions, issues, or feature requests related to this indicator, please refer to the code comments and documentation within the Pine Script file.
---
**Disclaimer**: This indicator is for informational purposes only. Trading involves substantial risk of loss and is not suitable for all investors. Past performance does not guarantee future results.
Volume-Price PercentileDescription:
The "Volume-Price Percentile Live" indicator is designed to provide real-time analysis of the relationship between volume percentiles and price percentiles on any given timeframe. This tool helps traders assess market activity by comparing how current volume levels rank relative to historical volume data and how current price movements (specifically high-low ranges) rank relative to historical price data. The indicator visualizes the ratio of volume percentile to price percentile as a histogram, allowing traders to gauge the relative strength of volume against price movements in real time.
Functionality:
Volume Percentile: Calculates the percentile rank of the current volume within a user-defined rolling period (default is 30 bars). This percentile indicates where the current volume stands in comparison to historical volumes over the specified period.
Price Percentile: Calculates the percentile rank of the current candle's high-low difference within a user-defined rolling period (default is 30 bars). This percentile reflects the current price movement's strength relative to past movements over the specified period.
Percentile Ratio (VP Ratio): The indicator plots the ratio of the volume percentile to the price percentile. This ratio helps identify periods when volume is significantly higher or lower relative to price movement, providing insights into potential market imbalances or strength.
Real-Time Data: By fetching data from a lower timeframe (e.g., 1-minute), the indicator updates continuously within the current timeframe, offering live, intra-candle updates. This ensures that traders can see the histogram change in real-time as new data becomes available, without waiting for the current candle to close.
How to Use:
Adding the Indicator: To use this indicator, add it to your chart on TradingView by selecting it from the Indicators list once it is published publicly.
Setting Parameters:
Volume Period Length: This input sets the rolling window length for calculating the volume percentile (default is 30). You can adjust it based on the desired sensitivity or historical period relevance.
Candle Period Length: This input sets the rolling window length for calculating the price percentile based on the high-low difference of candles (default is 30). Adjust this to match your trading style or analysis period.
Interpreting the Histogram:
The histogram represents the volume percentile divided by the price percentile.
Above 1: A value greater than 1 indicates that volume is relatively strong compared to price movement, which may suggest high activity or potential accumulation/distribution phases.
Below 1: A value less than 1 suggests that price movement is relatively stronger than volume, indicating potential weakness in volume relative to price moves.
Near 1: Values close to 1 suggest a balanced relationship between volume and price movement.
Application: Use this indicator to identify potential breakout or breakdown scenarios, assess the strength of price movements, and confirm trends. When volume percentile consistently leads price percentile, it might signal sustained interest and support for the current price trend. Conversely, if volume percentile lags significantly, it might warn of potential trend weakness.
Best Practices:
Multiple Timeframe Analysis: While the indicator provides real-time updates on any timeframe, consider using it alongside higher timeframe analysis to confirm trends and volume behavior across different periods.
Customization: Adjust the period lengths based on the asset’s typical volume and price behavior, as well as your trading strategy (e.g., short-term scalping vs. long-term trend following).
Complement with Other Indicators: Use this indicator in conjunction with other volume-based tools, trend indicators, or momentum oscillators to gain a comprehensive view of market dynamics.
Psychological Lines
**The Option Chain Shows Strike Price Levels per Index Option**
- **Bank Nifty Index:** 100-point difference or gap between two strike prices.
- **Nifty 50 Index:** 50-point difference or gap between two strike prices.
- **FinNifty 50 Index:** 50-point difference or gap between two strike prices.
**Importance of These Levels:**
- When prices trade at these levels, the option premium either increases or decreases.
- Round numbers always affect option prices.
- Psychological round numbers have a significant impact and act as support and resistance.
- More strangle or straddle positions are created at these levels.
- More call writers or put writers trade at these levels.
**Benefits of Plotting Levels on Charts:**
- Having levels to plot on the chart is always helpful while trading and aids in taking trade positions accordingly.
**Indicator Features:**
- Helps users with various functionalities.
- Allows users to plot lines as needed and adjust the gap between lines as per requirements or option strikes.
- User input to show the number of lines on the chart.
- Tooltip on each level, indicating the current price (LTP) and the difference in points from the LTP.
- Simple to use.
- User-friendly.
- Enhances trading experience with the help of lines.
---
These adjustments should make the text clearer and more professional. If you need any further changes, feel free to ask!
Earnings Option Play HelperThanks to Dead_Hunter to the base code which I modified.
This code will now use the last 21 daily candles of the earnings cycle to calculate the average percent price move.
Then using Dead_Hunters code looking at the past 8 earnings cycles, the final average percent price move is calculated.
This is the Average value which is displayed and used to calculate the Price Increase and Price Decrease on the up Earning date.
this script can be useful for planning Strangle and Straddle options trades.
Implied Correlation Divergence OscillatorImplied Correlation Divergence Oscillator (ICDO)
ICDO uses an SMA calculation as a low-pass filter to determine divergences from trend. This can be useful for multiple strategies, including detecting overbought or oversold trends, and finding dispersion opportunities, including zero delta straddle plays using options for indices and single assets within the S&P 500 Index.
The aim of the oscillator is to provide a unique perspective on the existing signals provided by the CBOE (Chicago Board Options Exchange)
First choose from a variety of Implied Correlation symbols including: COR1M, COR3M, COR6M, COR9M, COR1Y, COR10D, COR30D, COR70D, COR90D
Then once an IC signal is chosen, configure the moving average (MA) as a customized low-pass filter that will determine the sensitivity of the divergence signal.
The resulting signal is an oscillator around the zero bound, which is color coded for bullish (green), or (bearish) signals.
VIX RangeThis indicator shows the daily expected trading range of the instrument.
An upper and lower line denotes the range. It is calulated based on the volatility index selected (NSE:India VIX is used by default). Also it shows developing upper and lower line for the next trading day.
Non-directional option strategies (like straddle, strangle) can be performed based on the expected trading range.
0_dteUSAGE
This script guages the probability of an underlying moving a certain amount on expiration day, to aid the popular "0 dte" strategy. The script counts how many next-day moves exceeded a given magnitude in the past, under similar conditions. The inputs are:
mark_mode:
- "open": measures the magnitude as "open to close"--a true 0 dte.
- "previous close": for lazy people who don't want to wake up early. measures magnitude from the previous day's close.
move_mode:
- "percent": measures moves that exceed a given percentage.
- "absolute": measures moves that exceed a point value.
move-dir: measure only up moves, down moves, or both.
vol_model: the model for realized volatility. (may add more later).
min_vol: only measure moves when realized vol is above this value.
max_vol: only measure moves when realized vol is below this value.
precision: number of digits printed in the output table.
EXAMPLE:
- mark_mode: "previous close"
- move_mode: "percent"
- move_dir: "up"
- move_mag: 0.07
- vol_model: hv30
- min_vol: 0.2
- max_vol: 0.5
These settings will count the number of trading days that closed 7% higher than the previous day's close, when the previous day's realized volatility (annualized) was between 20% and 50%. The outputs are:
- current vol: green plot. Today's realized vol. Shown for convenience.
- max and min vol: red plots. Also shown for convenience.
- count: the number of days that exceeded the chosen magnitude, when the previous day's realized volatility was within the chosen bounds.
- total: the total number of days where realized volatility was within the chosen bounds
- probability: count / total. the percentage of days that exceeded the move when volatility was within the bounds.
- move: plotted as a purple line. purple "X" labels are plotted above
- bars where the move exceeded the magnitude threshold and volatility was in-bounds. a "hit".
CONCLUSION
This script is based on the idea that realized volatility has some bearing on future volatility. By seeing what happened in the past when volatility was close to its current value, we may be able to assess the probability that our short put will be in the money, tomorrow, and our account devastated.
NOTE: Unlike many of my other scripts, all percentages--both inputs and outputs--are given in fractional form. E.g., 0.01 means 1%.






















