Call-Put Cross Strike Match [Pro]📊 Call-Put Cross Strike Match - Professional Options Trading Indicator
Advanced NSE Options Analysis with AI-Powered Trading Signals & Dynamic Display
🎯 Overview
The Call-Put Cross Strike Match is an institutional-grade options analysis tool designed exclusively for NSE NIFTY and BANKNIFTY traders. Built on Pine Script v6, this indicator combines sophisticated cross-strike matching algorithms with intelligent trading signal generation to identify optimal options trading opportunities in real-time.
What makes it unique:
Analyzes 25 call-put combinations simultaneously
Generates actionable BUY/SELL signals using professional strategies
Fully customizable display with 9 table positions and 6 size options
Simplified setup with semi-automatic ATM detection
Clean, clutter-free interface with only essential information
Perfect for intraday scalpers, premium sellers, and positional options traders.
✨ Key Features
1. 🔍 Advanced Cross-Strike Matching Algorithm
The indicator calculates price differences for all 25 combinations (5 call strikes × 5 put strikes) and identifies the best matches based on put-call parity.
How it works:
Compares each call option price with every put option price
Calculates absolute difference: |Call - Put |
Ranks all 25 combinations from lowest to highest difference
Highlights top 3 or top 5 matches with visual checkmarks
Visual indicators:
✓✓ (Double check) = Best match (lowest price difference)
✓ (Single check) = Good matches (top 3 or top 5)
Empty cells = No match (significant price difference)
Why this matters:
When Call ≈ Put at same strike, it indicates fair pricing and synthetic position opportunities. The indicator automatically finds these opportunities across different strike combinations.
2. 🎯 Intelligent Trading Signals (Last Column)
The indicator generates professional trading recommendations based on Call-Put price difference analysis:
Signal Types:
BUY CE - Long call opportunity (bullish)
SELL CE - Short call opportunity (premium selling)
BUY PE - Long put opportunity (bearish/hedge)
SELL PE - Short put opportunity (premium selling)
BULL - Moderate bullish bias
BEAR - Moderate bearish bias
ATM - Neutral market (near parity)
NEUTRAL - No clear bias
Color-Coded for Quick Decisions:
🟩 Green = Long opportunities (BUY CE, BULL)
🟥 Red = Short call opportunities (SELL CE)
🟧 Orange = Long put opportunities (BUY PE)
🟫 Maroon = Short put opportunities (SELL PE)
⬛ Gray = Neutral zones (ATM, NEUTRAL)
3. 🤖 Three Professional Signal Modes
SMART Mode (Recommended) 🎯
Context-aware institutional strategy that considers strike position relative to spot price.
Signal Logic:
text
OTM Call Expensive (C-P > threshold, Strike > Spot):
→ SELL CE (Premium selling opportunity)
ITM Call Underpriced (C-P > threshold, Strike < Spot):
→ BUY CE (Synthetic long opportunity)
OTM Put Expensive (C-P < -threshold, Strike < Spot):
→ SELL PE (Premium selling opportunity)
ITM Put Underpriced (C-P < -threshold, Strike > Spot):
→ BUY PE (Protection or synthetic short)
Near Parity (|C-P| < threshold/4):
→ ATM (Neutral market, straddle/strangle zone)
Moderate Imbalance:
→ BULL or BEAR (Directional bias without extreme pricing)
Best for: Professional traders, option writers, synthetic position builders
MOMENTUM Mode 📈
Trend-following strategy that rides market momentum.
Signal Logic:
text
Calls Expensive (C-P > threshold):
→ BUY CE (Follow bullish momentum)
Puts Expensive (C-P < -threshold):
→ BUY PE (Follow bearish momentum)
Near Parity:
→ NEUTRAL (No clear trend)
Best for: Intraday scalpers, directional traders, swing traders
MEAN REVERSION Mode 🔄
Counter-trend strategy focused on premium selling.
Signal Logic:
text
Calls Overpriced (C-P > threshold):
→ SELL CE (Collect inflated premium)
Puts Overpriced (C-P < -threshold):
→ SELL PE (Collect inflated premium)
Near Parity:
→ ATM (Fair value, no edge)
Best for: Option writers, theta decay strategies, credit spread traders
4. 🎨 Fully Customizable Display
Dynamic Table Positioning (9 Options):
Top: left, center, right
Middle: left, center, right
Bottom: left, center, right
Choose position based on your chart layout and other indicators.
Dynamic Table Sizing (6 Options):
Auto - Adapts to content
Tiny - Minimal space (for cluttered charts)
Small - Default, best balance
Normal - Medium size (1080p monitors)
Large - Big text (4K monitors)
Huge - Maximum size (presentations)
Text scales intelligently:
Headers, data, and checkmarks adjust proportionally
Checkmarks remain visible even in tiny mode
Info row stays readable at all sizes
5. ⚙️ Simplified Input System
Auto Mode (Recommended):
Enter just 5 strikes once at market open - used for both calls and puts.
Example for NIFTY at 25,900:
text
Strike 1: 25850 (ATM - 100)
Strike 2: 25900 (ATM - 50)
Strike 3: 25950 (ATM)
Strike 4: 26000 (ATM + 50)
Strike 5: 26050 (ATM + 100)
Manual Mode (Advanced):
Enter separate call and put strikes for cross-strike arbitrage analysis.
Why this matters:
50% fewer inputs compared to traditional indicators
One-time setup at market open
Rarely needs updating (only if market moves 100+ points)
6. 🎛️ Semi-Automatic ATM Detection
The indicator automatically:
Detects current NIFTY/BANKNIFTY spot price
Calculates ATM strike (rounded to nearest 50 or 100)
Marks ATM strikes with *ATM in the table
Displays ATM and spot price in info box
No manual recalculation needed!
7. 📊 Clean Information Display
Main Table (Top/Middle/Bottom):
CE \ PE matrix showing all strike combinations
Checkmarks (✓✓ and ✓) highlighting best matches
SIGNAL column with color-coded trading recommendations
Best Match footer showing optimal combination
Info row displaying symbol, signal mode, and spot price
Info Box (Bottom Left):
Symbol (NIFTY/BANKNIFTY)
Signal Mode (Smart/Momentum/Mean Reversion)
Current Spot Price
Detected ATM Strike
Best Matched Call Strike
Best Matched Put Strike
Match Difference
C-P value for best match
📋 Quick Setup Guide (3 Steps)
Step 1: Add Indicator
Open NIFTY or BANKNIFTY chart on TradingView
Add "Call-Put Cross Strike Match " from indicators
Step 2: Configure Basic Settings
text
Symbol Detection: Auto (reads from chart)
Expiry Date: 251219 (format: YYMMDD for 19-Dec-2025)
Strike Mode: Auto
Strike Interval: 50 (for NIFTY) or 100 (for BANKNIFTY)
Step 3: Enter Strikes
At market open (9:15 AM), check current price and enter 5 strikes:
text
Example: NIFTY at 25,937
Strike 1: 25850 (ATM - 100)
Strike 2: 25900 (ATM - 50)
Strike 3: 25950 (ATM) ← Rounded to nearest 50
Strike 4: 26000 (ATM + 50)
Strike 5: 26050 (ATM + 100)
That's it! The indicator handles everything else automatically.
💡 Real-World Use Cases
1. 📉 Premium Selling (Mean Reversion Mode)
Scenario: Looking for overpriced options to write
How to use:
Set Signal Mode to "Mean Reversion"
Set Threshold: 30 (NIFTY) or 75 (BANKNIFTY)
Look for SELL CE or SELL PE signals with ✓ or ✓✓
Sell naked options or credit spreads at those strikes
Target 30-50% profit or 3-5 days theta decay
Perfect for: Credit spreads, iron condors, covered calls, naked puts
2. 📈 Directional Trading (Momentum Mode)
Scenario: Scalping intraday moves
How to use:
Set Signal Mode to "Momentum"
Set Threshold: 15 (aggressive) or 25 (conservative)
BUY CE signal + ✓✓ = Long call entry
Enter with tight stop (20% of premium)
Target 30-50% gain within 1-2 hours
Perfect for: Intraday scalping, swing trading, trend following
3. 🔄 Synthetic Positions (Smart Mode)
Scenario: Building synthetic long/short with defined risk
How to use:
Set Signal Mode to "Smart"
Look for BUY CE at ITM strike + SELL PE at OTM strike
Both should have ✓ indicator (good parity)
Creates synthetic long position
Lower capital than buying futures
Perfect for: Professional traders, arbitrage, capital efficiency
4. ⚖️ ATM Strategy Optimization (Smart Mode)
Scenario: Finding optimal strikes for straddle/strangle
How to use:
Identify strike marked *ATM
Check if signal shows ATM (balanced market)
If BULL/BEAR → Market has directional bias, adjust accordingly
✓✓ indicates best matched strike for neutral strategies
Perfect for: Volatility trading, earnings plays, event trading
5. 🛡️ Hedging Optimization (Smart Mode)
Scenario: Protecting long equity positions
How to use:
Look for BUY PE signals (protection signals)
Avoid strikes with SELL PE (expensive hedges)
✓✓ shows best value for hedge entry
Optimize hedge timing and strike selection
Perfect for: Portfolio hedging, risk management, protective puts
⚙️ Settings Guide
Symbol Settings
Symbol Detection: Auto (recommended) or Manual
Manual Symbol: NIFTY or BANKNIFTY
Expiry Date: Format YYMMDD (e.g., 251219 = 19-Dec-2025)
Update every Thursday after 3:30 PM for next week's expiry
Strike Settings
Strike Mode: Auto (recommended) or Manual
Strike Interval:
50 for NIFTY
100 for BANKNIFTY
Trading Signals
Signal Mode: Smart / Momentum / Mean Reversion
Smart: Professional institutional strategy (default)
Momentum: Trend-following for scalpers
Mean Reversion: Premium selling for writers
Signal Threshold: Sensitivity in points
NIFTY Recommendations:
Conservative: 30-40 points (fewer, higher quality signals)
Balanced: 20-25 points (default)
Aggressive: 10-15 points (more signals, more noise)
BANKNIFTY Recommendations:
Conservative: 75-100 points
Balanced: 50-60 points (default)
Aggressive: 30-40 points
Algorithm Settings
Matching Mode:
Top 3: Shows 3 best matches (cleaner display)
Top 5: Shows 5 best matches (more opportunities)
Display Settings
Show Matching Table: Enable/disable main table
Table Position: Choose from 9 positions
top_right (default) - Doesn't block price action
middle_right - Centered vertical view
bottom_right - If top is crowded
Table Size: Choose from 6 sizes
small (default) - Best for most users
normal - For 1080p/4K monitors
tiny - If you have many indicators
📊 Understanding The Table
Table Layout Example:
text
CE \ PE | 25950 | 25900 | 25850 | 26000 | 26050 | SIGNAL
---------|-------|-------|-------|-------|-------|--------
25850 | | | | | | SELL PE
25900*ATM| | ✓ | | | | ATM
25950 | ✓✓ | | | | | BULL
26000 | | | | ✓ | | BUY CE
26050 | | | | | | SELL CE
---------|-------|-------|-------|-------|-------|--------
Best Match: 25950 / 25950 (0.25)
Info: NIFTY | Smart | Spot:25881.9
Reading the Table:
Rows (Left): Call option strike prices
Columns (Top): Put option strike prices
Cells: Checkmarks where Call ≈ Put
✓✓: Best match (minimum price difference)
✓: Good matches (top 3 or 5)
Empty: Prices too different (no match)
*ATM: Automatically detected at-the-money strike
SIGNAL Column: Actionable trading recommendation for each call strike
Info Box Metrics:
Symbol: Currently analyzed index
Signal Mode: Active strategy
Spot: Current underlying price
ATM: Calculated at-the-money strike
Best Call: Matched call strike
Best Put: Matched put strike
Match Diff: Price difference (lower = better)
C-P (Best): Call minus Put for best match
📈 Best Practices
Strike Selection & Maintenance
At Market Open (9:15 AM):
Check current price (e.g., NIFTY at 25,937)
Round to nearest interval (25,950 for 50 interval)
Enter 5 strikes: -100, -50, 0, +50, +100 from ATM
Update Frequency:
Usually no update needed entire day
Update only if market moves 100+ points from initial ATM
Typically 0-2 updates per trading session
Signal Interpretation by Confidence Level
High Confidence (✓✓ + Signal):
Best match indicator present
Strongest signal quality
Highest probability setup
Medium Confidence (✓ + Signal):
Good match present
Reliable signal
Acceptable risk/reward
Low Confidence (Signal without ✓):
No match indicator
Strike far from parity
Requires additional confirmation
Risk Management Rules
Never trade signals blindly. Always:
✅ Confirm with price action and support/resistance
✅ Check overall market trend (NIFTY/BANKNIFTY direction)
✅ Consider time decay (theta) for your position
✅ Monitor IV changes (implied volatility)
✅ Use proper position sizing (1-2% risk per trade)
✅ Set stop losses (20-30% of premium for longs)
✅ Have profit targets (30-50% for scalps)
Timeframe Selection
Intraday Trading:
Use 5-minute or 15-minute chart
Momentum or Smart mode
Lower threshold (aggressive)
Quick entries and exits
Positional Trading:
Use hourly or daily chart
Smart or Mean Reversion mode
Higher threshold (conservative)
Swing trade positions
Combining with Other Tools
Recommended complements:
Support/resistance levels (horizontal lines)
Trend indicators (EMA 20/50, SuperTrend)
Volume analysis (confirm breakouts)
India VIX (volatility context)
Option chain data (open interest)
🎓 Strategy Examples
Strategy 1: Professional Premium Selling
text
Mode: Mean Reversion
Threshold: 30 (NIFTY) / 75 (BANKNIFTY)
Timeframe: Daily
Rules:
1. Wait for SELL CE or SELL PE signal
2. Verify strike has ✓ or ✓✓ (good parity)
3. Check if OTM (Strike away from spot)
4. Sell option or create credit spread
5. Target: 30-50% profit or 3-5 days theta
6. Stop: If signal changes to BUY
Position: Naked short or credit spreads
Risk: Define with spreads or capital allocation
Strategy 2: Intraday Momentum Scalping
text
Mode: Momentum
Threshold: 15 (aggressive)
Timeframe: 5-minute
Rules:
1. Wait for BUY CE signal + ✓✓
2. Enter long call immediately
3. Stop loss: 20% of premium paid
4. Target 1: 30% gain (partial exit)
5. Target 2: 50% gain (full exit)
6. Exit if signal changes or 2 hours pass
Position: Long calls or long puts only
Risk: 1-2% of capital per trade
Strategy 3: Synthetic Long Position
text
Mode: Smart
Threshold: 25 (NIFTY) / 60 (BANKNIFTY)
Timeframe: Hourly
Rules:
1. Identify BUY CE signal at ITM strike
2. Identify SELL PE signal at OTM strike
3. Both should have ✓ indicator
4. Buy ITM call + Sell OTM put = Synthetic Long
5. Lower capital than futures
6. Defined risk (width of strikes)
Position: Call debit + Put credit
Risk: Net debit paid (defined risk)
Strategy 4: ATM Straddle Entry
text
Mode: Smart
Threshold: 20 (default)
Timeframe: Daily
Rules:
1. Find strike marked *ATM
2. Check signal shows "ATM" (neutral)
3. Verify ✓✓ at that strike
4. Sell ATM call + Sell ATM put
5. Collect maximum premium
6. Exit at 30% profit or before expiry
Position: Short straddle or iron condor
Risk: Use defined risk (iron condor recommended)
🔔 Important Notes
Data Accuracy
Indicator uses TradingView's NSE options data feed
Always verify prices independently before trading
Ensure market is open (9:15 AM - 3:30 PM IST)
Check for "-" in cells indicating missing data
Expiry Management
Update expiry date every week on Thursday post-closing
Format: YYMMDD (6 digits)
Weekly expiry: Every Thursday
Monthly expiry: Last Thursday of month
Strike Format
NIFTY: Multiples of 50 (25850, 25900, 25950...)
BANKNIFTY: Multiples of 100 (51800, 51900, 52000...)
Wrong strikes = No data in table
Performance Optimization
Indicator updates every bar close
No lag or performance issues
Works on all timeframes (1m to 1D)
Maximum 5 calls + 5 puts = 10 security calls (within limits)
⚠️ Disclaimer
Trading options involves substantial risk of loss and is not suitable for all investors. This indicator is provided for educational and informational purposes only. It does not constitute financial advice, investment advice, or trading advice.
Important disclaimers:
Options can expire worthless, resulting in 100% loss
Past performance of signals is not indicative of future results
Accuracy depends on TradingView's NSE data feed
Signals are mathematical analysis, not predictions
You are solely responsible for your trading decisions
The developer is not liable for any trading losses incurred while using this indicator.
Before trading, ensure you understand:
Options Greeks (Delta, Gamma, Theta, Vega, Rho)
Implied volatility and its impact
Time decay and expiration risks
Assignment risk for short positions
Liquidity and slippage considerations
Margin requirements and capital needs
Always:
Use proper risk management (1-2% per trade)
Trade with capital you can afford to lose
Paper trade before live trading
Consult with a licensed financial advisor
Start with small position sizes
Never risk more than you can afford to lose
📊 Technical Specifications
Platform: TradingView Pine Script v6
Exchanges: NSE (National Stock Exchange of India)
Instruments: NIFTY, BANKNIFTY options
Timeframes: All (1m, 5m, 15m, 1h, 1D)
Strikes Analyzed: 5 calls × 5 puts = 25 combinations
Security Calls: 10 (5 calls + 5 puts)
Table Positions: 9 (all corners and centers)
Table Sizes: 6 (auto to huge)
Signal Modes: 3 (Smart, Momentum, Mean Reversion)
Performance: Optimized, minimal lag
🎯 Who Should Use This?
✅ Perfect For:
Options Traders: Intraday and positional
Premium Sellers: Option writers and theta strategists
Arbitrage Traders: Synthetic position builders
Straddle/Strangle Traders: ATM strategy traders
Professional Traders: Institutional-grade analysis
Volatility Traders: IV imbalance exploiters
Scalpers: Quick intraday moves
❌ Not Suitable For:
Stock options traders (NSE index-specific)
Equity-only traders (requires options knowledge)
International markets (NSE format only)
Complete beginners (requires basic options understanding)
💬 FAQ
Q: Why manual strike entry? Why not fully automatic?
A: Pine Script's type system limits fully automatic strike generation from live data. However, setup takes just 30 seconds once at market open, and the indicator handles all analysis automatically throughout the day.
Q: How often should I update strikes?
A: Rarely! Only when market moves 100+ points from initial ATM. Usually 0-2 times per day, even in volatile markets.
Q: Which Signal Mode is best?
A: Smart mode (default) for professional trading. Use Momentum for intraday scalping, Mean Reversion for premium selling.
Q: Can I use this for stock options?
A: No. The indicator is designed specifically for NSE index options (NIFTY and BANKNIFTY) with NSE format.
Q: Does it work on mobile?
A: Yes, but table display is optimized for desktop/tablet screens. Use "tiny" or "small" size on mobile.
Q: What if I see "-" in cells?
A: Check expiry format (YYMMDD), verify strikes match NSE strikes, and ensure market is open.
Q: What's the difference between ✓✓ and ✓?
A: ✓✓ = Best match (lowest price difference), highest quality. ✓ = Good matches (top 3-5), reliable quality.
Q: Can I backtest this indicator?
A: The indicator shows live analysis. For backtesting options strategies, you'll need historical options data and separate backtesting tools.
Q: What does the info box show?
A: Bottom-left box shows key metrics: symbol, signal mode, spot price, ATM strike, best matched strikes, match difference, and C-P value.
Q: Why no chart plotting?
A: v1.0 focuses on clean table display with maximum information density. Chart plotting may be added in future versions based on user feedback.
🙏 Credits
Developed by a professional options trader for the Indian trading community. Inspired by institutional trading desks and market makers who use call-put parity for daily trading decisions.
Found This Helpful?
⭐ Rate 5 stars if it improved your trading
💬 Comment with your strategy results
🔔 Follow for updates and new indicators
📢 Share with fellow options traders
Feature Requests
Continuous improvement based on trader feedback. Suggest features in comments!
Planned Features (v2.0):
Multi-expiry comparison
Greeks display (Delta, Theta, Vega)
Historical signal performance stats
Custom signal formulas
Export to CSV functionality
🏷️ Tags for Search
#Options #OptionsTrading #NIFTY #BANKNIFTY #NSE #India #OptionChain #CallPut #PutCallParity #Straddle #Strangle #ATM #TradingSignals #OptionsStrategy #PremiumSelling #OptionsScanner #Derivatives #IntradayTrading #VolatilityTrading #Arbitrage #SyntheticPosition #OptionsGreeks #OptionsSelling #OptionsWriting #IndianStockMarket #NSEOptions #OptionsAnalysis #TechnicalAnalysis #AlgoTrading #QuantTrading #ProfessionalTrading #TradingIndicator #PineScript #TradingView
📝 Version History
v1.0 (Current - Dec 2025)
Pine Script v6 implementation
Cross-strike matching (5×5 matrix, 25 combinations)
Three signal modes (Smart, Momentum, Mean Reversion)
Trading signal generation with color coding
Dynamic table positioning (9 positions)
Dynamic table sizing (6 sizes)
Intelligent text scaling
Semi-automatic ATM detection
Auto symbol detection
Simplified input system (50% fewer inputs in Auto mode)
Clean information display
Info box with key metrics
NSE NIFTY & BANKNIFTY support
Start trading smarter with institutional-grade options analysis! 📈💰🚀
Disclaimer: Options trading is subject to market risk. Please read all scheme-related documents carefully before investing.
Statistics
UT Bilgi Paneli (Ugur TUFAN) English Description
UT Info Panel (Advanced Performance & Correlation Dashboard)
UT Info Panel is a comprehensive dashboard designed to help traders analyze the performance of an asset over multiple timeframes and compare it instantly with other assets or benchmark indices.
This tool overlays on the main chart, providing critical data in a clean, organized table located at the top-right corner without cluttering your workspace.
Key Features:
Detailed Performance Analysis:
Displays percentage returns for Daily, Weekly, Monthly, 3-Month, 6-Month, and 1-Year periods.
High & Low Distance Metrics:
Calculates the percentage distance to the 52-week (1 Year) High and Low levels.
Shows the distance to the All-Time High (ATH), helping to visualize potential recovery or growth margins.
Smart Dual Mode:
Mode 1 (Index Harmony): If no comparison symbols are entered, it compares the current asset with a benchmark index (e.g., XU100). It visually indicates directional correlation (Harmony) with checkmarks (✔) or crosses (✖).
Mode 2 (Multi-Asset Comparison): By adding up to 5 different symbols in the settings, the table automatically expands to show a side-by-side performance comparison of all selected assets.
Localized Visualization:
Data is presented with clear color coding (Green for positive, Red for negative) for easy reading.
How to Use:
When added, it defaults to the harmony mode with the benchmark index.
Open settings to input up to 5 different symbols you wish to compare.
The table automatically adjusts its size and positions itself at the top right.
Day of WeekDay of Week is an indicator that runs in a separate panel and colors the panel background according to the day of the week.
Main Features
Colors the background of the lower panel based on the day of the week
Includes all days, from Monday to Sunday
Customizable colors
Time Offset Correction
TradingView calculates the day of the week using the exchange’s timezone, which can cause visual inconsistencies on certain symbols.
To address this, the indicator includes a configurable time offset that allows the user to synchronize the calculated day with the day displayed on the chart.
By simply adjusting the Time Offset (hours) parameter, the background will align correctly with the visible chart calendar.
Momentum Table View (Bar-Based)// NOTE:
// This script uses bar-based lookbacks instead of calendar months.
// Approximate conversions for daily charts:
// - 21 bars ≈ 1 month
// - 63 bars ≈ 3 months
// - 252 bars ≈ 1 year
// For other timeframes, adjust accordingly for different time periods and needs.
// For hourly I have it set at 24*5, 24*5*4 and then finally 24*5*4 to give the same,
// daily, weekly and monthly aggregate returns but on the hourly scale.
// Of course you can split it anyway you like as well depends on the expected needs you have.
Running idea so there will likely be revisions to the z scoring to possibly a different method and the atan angle represented in the code will also likely be changed at some point as to maybe a regression method. These changes will take time as this is only a secondary platform for me not the main source of data. In saying that the table has the data representing the log returns of an asset of n bars which I decided on over the original more accurate daily, weekly and monthly close points which the user can always specify using this method if wanting to be more accurate with the standard method of momentum returns factor.
EMA Slope Angle V2 Auto Threshold# EMA Slope Angle Indicator
## Overview
The EMA Slope Angle Indicator visualizes the Exponential Moving Average (EMA) slope as an angle in degrees, providing traders with a clear, quantitative measure of trend strength and direction. The indicator features **automatic threshold calculation based on Gaussian distribution**, making it adaptive to any market and timeframe.
## Key Features
### 🎯 **Automatic Threshold Calculation (NEW!)**
- **Gaussian Distribution-Based**: Automatically calculates optimal thresholds from the 50% interquartile range (IQR) of historical angle data
- **Asset-Adaptive**: Thresholds adjust to each instrument's unique volatility and price characteristics
- **No Manual Tuning Required**: Simply enable "Use Auto Thresholds" and let the indicator optimize itself
### 📊 **Dynamic EMA Coloring**
- **Color Intensity**: EMA line color intensity reflects slope strength
- **Visual Feedback**:
- Green shades for uptrends (darker = stronger)
- Red shades for downtrends (darker = stronger)
- Gray for flat/neutral conditions
### 📈 **Regime Detection**
- **Three Regimes**: RISING, FALLING, and FLAT
- **Smart Classification**: Based on statistical distribution of angles
- **Non-Repainting**: All calculations use confirmed bars only
### 🔔 **Trend-Shift Signals**
- **Visual Arrows**: Automatic signals when transitioning from FLAT to RISING/FALLING
- **Configurable**: Enable/disable signals as needed
- **Reliable**: Only triggers on significant regime changes
### 📋 **KPI Dashboard**
- **Real-Time Metrics**: Current angle, regime, and last signal
- **Auto-Threshold Display**: Shows calculated thresholds when auto-mode is active
- **Statistics**: Optional angle distribution statistics
- **Clean Layout**: Top-right corner, non-intrusive
### 📊 **Angle Statistics (Optional)**
- **Distribution Analysis**: Histogram of angle ranges
- **Dynamic Buckets**: Automatically adjusts to data distribution when auto-mode is enabled
- **Percentage Breakdown**: See how often each angle range occurs
## Settings
### Main Settings
- **EMA Length**: Period for the Exponential Moving Average (default: 50)
- **Slope Lookback Bars**: Number of bars to calculate slope over (default: 5)
### Angle Settings
- **Use Auto Thresholds**: Enable automatic threshold calculation (recommended!)
- **Analysis Period**: Number of bars to analyze for distribution (default: 500)
- **Manual Thresholds**: Flat, Rising, and Falling triggers (used when auto-mode is off)
- **Max Angle for Color Saturation**: Maximum angle for color intensity scaling
### Display Options
- **Colors**: Customize uptrend, downtrend, and flat colors
- **Show Signals**: Enable/disable trend-shift arrows
- **Show Statistics**: Display angle distribution table
- **Show Dashboard**: Toggle KPI dashboard visibility
## How It Works
### Angle Calculation
The indicator calculates the angle between the current EMA value and the EMA value N bars ago:
```
Angle = arctan((EMA_now - EMA_then) / lookback) × 180° / π
```
### Auto-Threshold Calculation
When enabled, the indicator:
1. Analyzes historical angle data over the specified period
2. Calculates mean and standard deviation
3. Determines thresholds based on the 50% interquartile range (IQR):
- **Flat Threshold**: ±0.674σ (middle 50% of data)
- **Rising Trigger**: 75th percentile (mean + 0.674σ)
- **Falling Trigger**: 25th percentile (mean - 0.674σ)
### Regime Classification
- **FLAT**: Angle within ±Flat Threshold
- **RISING**: Angle ≥ Rising Trigger
- **FALLING**: Angle ≤ Falling Trigger
## Use Cases
### Trend Following
- Identify strong trends (high angle values)
- Spot trend reversals (regime changes)
- Filter trades based on trend strength
### Range Trading
- Detect flat/consolidation periods
- Avoid trading during choppy markets
- Enter when regime shifts from FLAT to RISING/FALLING
### Multi-Timeframe Analysis
- Apply to different timeframes for confirmation
- Use higher timeframe for trend direction
- Use lower timeframe for entry timing
## Tips for Best Results
1. **Enable Auto-Thresholds**: Let the indicator adapt to your instrument
2. **Adjust Analysis Period**: Use more bars for stable markets, fewer for volatile ones
3. **Combine with Price Action**: Use regime changes as confirmation, not standalone signals
4. **Multi-Timeframe**: Check higher timeframes for trend context
5. **Backtest First**: Test settings on historical data before live trading
## Technical Details
- **Non-Repainting**: All calculations use `barstate.isconfirmed`
- **Pine Script v6**: Latest version for optimal performance
- **Efficient**: Minimal computational overhead
- **Customizable**: Extensive settings for fine-tuning
## Version History
**v2.0** (Current)
- Added automatic threshold calculation based on Gaussian distribution
- Dynamic bucket adjustment for statistics
- Enhanced dashboard with auto-threshold display
- Improved regime detection using IQR method
**v1.0**
- Initial release with manual thresholds
- Basic EMA coloring
- Trend-shift signals
- KPI dashboard
## Support
For questions, suggestions, or bug reports, please leave a comment or contact the author.
---
**Disclaimer**: This indicator is for educational purposes only. Past performance does not guarantee future results. Always use proper risk management and never risk more than you can afford to lose.
**Keywords**: EMA, slope, angle, trend, automatic thresholds, Gaussian distribution, regime detection, non-repainting, adaptive
EM Levelsstdv levels for you using VIX and VXN for ES and NQ so hopefully it helps you try it out and have fun
Session HeatmapIntraday Seasonality
Overview
Analyzes historical patterns by time of day. Identifies when volatility, volume, and open interest changes tend to be highest or lowest.
Features
Multiple Metrics: TR (volatility), Volume, and Open Interest changes
Flexible Grouping: View patterns by weekday or month to spot day-of-week or seasonal effects
Heatmap Visualization: Blue (low) to Red (high) color scale for quick pattern recognition
Percentile Mode: Reduces outlier impact by using 5th-95th percentile range
Timezone Support: Display in UTC alongside your local time
Metrics Explained
TR: Volatility - when markets move most
Volume: Liquidity - when participation is highest
OI Increase: When new positions are opened
OI Decrease: When positions are closed
OI Net: Net open interest change
Usage
Set your timezone and preferred slot size (30min/1H)
Choose a date range (relative or custom)
Select a metric to analyze
Use "Group By" to see weekday or monthly patterns
Switch to Percentile color scale if outliers dominate
Notes
Chart timeframe should be equal to or smaller than Slot Size
OI metrics require Binance Perpetual symbols
DST is not automatically adjusted; consider seasonal shifts for US/EU sessions
Probability-Based Adaptive Detection🙏🏻 PBAD (Probability-Based Adaptive Detection) : adaptive control tool for outliers || novelty detection, made for worst case data & processes, for the highest time complexity O(n^2) compared with the alternatives (would be explained in a sec). Thresholds are completely data driven and axiomatic, no need in provided hyperparameters, are not learned or optimized. The method accepts multiple weights, e.g. both temporal and volatility weights.
Method briefly explained (I can go deeper if any1 asks explicitly):
Performs weighted KDE on initial input data, finds KDE global maximum (mode), creates new “residuals” dataset by centering initial data around this value;
Performs weighted KDE on residuals, uses sigmoid based probability mass targets with increasing probability coverage to construct a set of non-disjoint High Density Intervals (also called HDR, HPD in Bayesian terms);
Uses these intervals to calculate analogs of centralized & standardized moments;
Uses these ^^ moments to construct a set of control thresholds. The scheme used in PBAD is not only based on a central threshold, or on neighboring ones, it utilizes all previous thresholds, gaining more information.
...
The most important part is to understand whether you really need PBAD. Because even tho it seems to be the best one given highest algocomplexity, irl it would work worse in cases when it’s not required by your data.
Here’s the menu (aka taxonomy omg) of methods you can use that would let you make the right choice:
Moment-Based Adaptive Detection (MBAD) :
Norm: L2
Time complexity: original O(n), successfully reduced to O(1) in online version
Use case: default, general purpose
Based on: method of moments (powers of residuals from mean)
Thresholds architecture: centralized
Quantile-Based Adaptive Detection (QBAD):
Norm: L1
Time complexity: O(nlogn)
Use case: either bad data Or process instability
Based on: quantile moments (dyadic percentiles of residuals from median)
Thresholds architecture: chained/recursive/sequential
Probability-Based Adaptive Detection (PBAD):
Norm: L0
Time complexity: O(n^2)
Use case: both bad data And process instability
Based on: probability moments (target probability masses of residuals from KDE mode)
Thresholds architecture: decentralized (for lack of a better name xd, the idea is that these thresholds gain information from the all other threshold and are Not exclusively based on the central or neighboring thresholds)
...
Examples of true use cases:
^^ an appropriate financial instrument to use PBAD
^^ and another one
...
Additional details about how to use it:
Keep the student5 kernel, it’s the best you can do. I added others mostly for comparisons and if you want to use the tool Not for its primary purpose (on a fine data)
“Calculate for N bars” and “Starting at bar N” options allow to reduce calculation period only on the N number of last bars or next bars from a chosen one. It's vital, because calculations here are heavy
Keep plotting offset at 1 (allows to visually compare current bar with the previous threshold values). This is the way it should be done on price data.
HLC3 is the optimal source input, unless you want to use your own better one point estimate of each datapoint (in the best case done by using PBAD itself on OHLC+ values).
In essence it should be used just like MBAD or QBAD, fade/push extensions and limit, fade/push/skip deviations & basis, or other strategies of your. Again, the only reason for 3 methods to exist is to be chosen for according data characteristics.
Btw:
This is the initial version, I don’t consider it perfected tbh, even tho it works as expected, however this method is very situational anyways.
In this script KDE function is modified to ensure the outcoming probabilities Do sum up to 1. I didn’t do this normalization in Weighted KDE Mode script , but there it’s not required since we just need a KDE global max.
see ya
∞
Student Wyckoff Relative StrengthSTUDENT WYCKOFF Relative Strength compares one instrument against another and plots their relative performance as a single line.
Instead of asking “is this chart going up or down?”, the script answers a more practical question: “is THIS asset doing better or worse than my benchmark?”
━━━━━━━━━━
1. Concept
━━━━━━━━━━
The indicator builds a classic relative strength (RS) line:
• Main symbol = the chart you attach the script to.
• Benchmark symbol = any symbol you choose in the settings (index, ETF, sector, another coin, etc.).
RS is calculated as:
RS = Price(main symbol) / Price(benchmark)
If RS is rising, your symbol outperforms the benchmark.
If RS is falling, your symbol underperforms the benchmark.
You can optionally normalize RS from the first bar (start at 1 or 100) to clearly see how many times the asset has outperformed or lagged behind over the visible history.
This is not a “buy/sell” indicator. It is a **context tool** for rotation, selection and Wyckoff-style comparative analysis.
━━━━━━━━━━
2. How the RS line is built
━━━━━━━━━━
Inputs:
• Source of main symbol – default is close, but you can choose any OHLC/HL2/typical price etc.
• Benchmark symbol – ticker used as reference (index, sector, futures, Bitcoin, stablecoin pair, etc.).
• Benchmark timeframe – by default the current chart timeframe is used, or you can force a different TF.
The script uses `request.security()` with `lookahead_off` and `gaps_off` to pull benchmark prices **without look-ahead**.
A small epsilon is used internally to avoid division by zero when the benchmark price is very close to 0.
Normalization options:
• Normalize RS from first bar – if enabled, the very first valid RS value becomes “1” (or 100), and all further values are expressed relative to this starting point.
• Multiply RS by 100 – purely cosmetic; makes it easier to read RS as a “percentage-like” scale.
━━━━━━━━━━
3. Smoothing and color logic
━━━━━━━━━━
To help read the trend of relative strength, the script calculates a simple moving average of the RS line:
• RS MA length – period of smoothing over the RS values.
• Show RS moving average – toggle to display or hide this line.
Color logic:
• When RS is above its own MA → the line is drawn with the “stronger” color.
• When RS is below its MA → the line uses the “weaker” color.
• When RS is close to its MA → neutral color.
Optional background shading:
• When RS > RS MA → background can be tinted softly green (phase of relative strength).
• When RS < RS MA → background can be tinted softly red (phase of relative weakness).
This makes it easy to read the **trend of strength** at a glance, without measuring every small swing.
━━━━━━━━━━
4. How to interpret it
━━━━━━━━━━
Basic reading rules:
• Rising RS line
– The main symbol is outperforming the benchmark.
– In Wyckoff terms, this can indicate a leader within its group, or a sign of accumulation relative to the market.
• Falling RS line
– The main symbol is underperforming the benchmark.
– Can point to laggards, distribution, or simply an asset that is “dead money” compared to alternatives.
• Flat or choppy RS line
– No clear edge versus the benchmark; performance is similar or rotating back and forth.
With normalization on:
• RS > 1 (or > 100) – the asset has grown more than the benchmark since the starting point.
• RS < 1 (or < 100) – it has grown less (or fallen more) than the benchmark over the same period.
The RS moving average and colored background highlight whether this outperformance/underperformance is a **temporary fluctuation** or a more sustained phase.
━━━━━━━━━━
5. Practical uses
━━━━━━━━━━
This indicator is useful for:
• **Selecting stronger assets inside a group**
– Compare individual stocks vs an index, sector, or industry ETF.
– Compare altcoins vs BTC, ETH, or a crypto index.
– Prefer charts where RS is in a sustained uptrend rather than just price going “up on its own”.
• **Monitoring sector and rotation flows**
– Attach the script to sector ETFs or major coins and switch the benchmark to a broad market index.
– See where capital is rotating: which areas are gaining or losing strength over time.
• **Supporting Wyckoff-style analysis**
– Use RS together with volume, structure, phases and trading ranges.
– A breakout or SOS with rising RS vs the market tells a different story than the same pattern with falling RS.
• **Portfolio review and risk decisions**
– When an asset shows a long period of relative weakness, it may be a candidate to reduce or replace.
– When RS turns up from a long weak phase, it can signal the start of potential leadership (not an entry by itself, but a reason to study the chart deeper).
━━━━━━━━━━
6. Notes and disclaimer
━━━━━━━━━━
• Works on any symbol and timeframe available on TradingView.
• The last bar can change in real time as new prices arrive; this is normal behaviour for all indicators that depend on current close.
• There are no built-in alerts or trading signals – this tool is meant to support your own analysis and trading plan.
This script is published for educational and analytical purposes only.
It does not constitute financial or investment advice and does not guarantee any performance. Always test your ideas, understand the logic of your tools and use proper risk management.
Session ATR Progression Tracker📊 Session ATR Progression Tracker - SIYL Regression Trading Tool
Track how much of your instrument's 7-day Average True Range (ATR) has been covered during the current trading session. This indicator is specifically designed for regression traders who follow the "Stay In Your Lane" (SIYL) methodology, helping you identify when the probability of mean reversion significantly increases. If you are interested in more on that check out Rod Casselli and tradersdevgroup.com.
🎯 Key Features:
• Real-time ATR Coverage Percentage - See at a glance what percentage of the 7-day ATR has been covered in the current session
• SIYL-Optimized Thresholds - See at a glance when the instrument has achieved 80% and 100% ATR coverage, the proven thresholds where mean reversion probability increases (customizable)
• Flexible Session Modes:
- Daily: Resets at calendar day change
- Session: Uses exchange-defined trading sessions
- Custom Session: Set your exact session start/end times (perfect for futures traders and international markets)
• Visual Alerts - Color-coded display (gray → orange → red) and optional background highlighting
• Repositionable Display - Choose from 9 screen positions to avoid chart clutter
• Session Markers - Green triangles mark the start of each new session
• Detailed Stats - View current range, ATR value, session high/low, and session status
💡 Why Use This Indicator?
This tool is built around a proven concept: regression trading becomes significantly more effective once a session has achieved at least 80% of its 7-day ATR. At this threshold, the probability of price reverting to mean increases substantially, creating higher-probability trade setups for SIYL practitioners.
Benefits for regression traders:
- Identify optimal entry points when mean reversion probability is highest (≥80% ATR coverage)
- Avoid premature regression entries before adequate range has been established
- Recognize when daily moves have "earned their range" and are ripe for reversal
- Time fade-the-move and counter-trend strategies with statistical backing
- Improve win rates by trading only after proven probability thresholds are met
⚙️ Setup Instructions:
1. Add the indicator to your chart
2. Select your preferred "Reset Mode" (recommend "Custom Session" for futures/international markets)
3. If using Custom Session, enter your session times in 24-hour format (e.g., 0930-1600 for US stocks, 1700-1600 for CME futures)
4. Adjust alert thresholds if desired (default: 80% and 100% - proven SIYL thresholds)
5. Position the display where it's most visible on your chart
📈 Works Across All Markets:
Stocks • Futures • Forex • Indices • Crypto • Commodities
Perfect for regression traders, mean reversion specialists, and SIYL practitioners who want to trade with probability on their side by entering only after the session has "earned its range."
---
Tip: For futures contracts with overnight sessions that span calendar days (like MES, MNQ, MYM), use "Custom Session" mode with your exchange's official session times for accurate tracking.
Expectativa de Juros (Fed)An indicator that measures future expectations for US interest rates, measured by the difference between the Fed's interest rate and pricing on the CME.
Unmitigated Liquidity ZonesUnmitigated Liquidity Zones
Description:
Unmitigated Liquidity Zones is a professional-grade Smart Money Concepts (SMC) tool designed to visualize potential "draws on liquidity" automatically.
Unlike standard Support & Resistance indicators, this script focuses exclusively on unmitigated price levels — Swing Highs and Swing Lows that price has not yet revisited. These levels often harbor resting liquidity (Stop Losses, Buy/Sell Stops) and act as magnets for market makers.
How it works:
Detection: The script identifies significant Pivot Points based on your customizable length settings.
Visualization: It draws a line extending forward from the pivot, labeled with the exact Price and the Volume generated at that specific swing.
Mitigation Logic: The moment price "sweeps" or touches a level, the script treats the liquidity as "collected" and automatically removes the line and label from the chart. This keeps your workspace clean and focused only on active targets.
Key Features:
Dynamic Cleanup: Old levels are removed instantly upon testing. No chart clutter.
Volume Context: Displays the volume (formatted as K/M/B) of the pivot candle. This helps you distinguish between weak structure and strong institutional levels.
High Visibility: customizable bold lines and clear labels with backgrounds, designed to be visible on any chart theme.
Performance: Optimized using Pine Script v6 arrays to handle hundreds of levels without lag.
How to trade with this:
Targets: Use the opposing liquidity pools (Green lines for shorts, Red lines for longs) as high-probability Take Profit levels.
Reversals (Turtle Soup): Wait for price to sweep a bold liquidity line. If price aggressively reverses after taking the line, it indicates a "Liquidity Grab" setup.
Magnets: Price tends to gravitate toward "old" unmitigated levels.
Settings:
Pivot Length: Sensitivity of the swing detection (default: 20). Higher values find more significant/long-term levels.
Limit: Maximum number of active lines to prevent memory overload.
Visuals: Toggle Price/Volume labels, adjust line thickness and text size.
EAP Trader NY BreakoutMy own profitable NY Breakout Playbook - backtested with statistics
by
EAP Trader
Index Construction Tool🙏🏻 The most natural mathematical way to construct an index || portfolio, based on contraharmonic mean || contraharmonic weighting. If you currently traded assets do not satisfy you, why not make your own ones?
Contraharmonic mean is literally a weighted mean where each value is weighted by itself.
...
Now let me explain to you why contraharmonic weighting is really so fundamental in two ways: observation how the industry (prolly unknowably) converged to this method, and the real mathematical explanation why things are this way.
How it works in the industry.
In indexes like TVC:SPX or TVC:DJI the individual components (stocks) are weighted by market capitalization. This market cap is made of two components: number of shares outstanding and the actual price of the stock. While the number of shares holds the same over really long periods of time and changes rarely by corporate actions , the prices change all the time, so market cap is in fact almost purely based on prices itself. So when they weight index legs by market cap, it really means they weight it by stock prices. That’s the observation: even tho I never dem saying they do contraharmonic weighting, that’s what happens in reality.
Natural explanation
Now the main part: how the universe works. If you build a logical sequence of how information ‘gradually’ combines, you have this:
Suppose you have the one last datapoint of each of 4 different assets;
The next logical step is to combine these datapoints somehow in pairs. Pairs are created only as ratios , this reveals relationships between components, this is the only step where these fundamental operations are meaningful, they lose meaning with 3+ components. This way we will have 16 pairs: 4 of them would be 1s, 6 real ratios, and 6 more inverted ratios of these;
Then the next logical step is to combine all the pairs (not the initial single assets) all together. Naturally this is done via matrices, by constructing a 4x4 design matrix where each cell will be one of these 16 pairs. That matrix will have ones in the main diagonal (because these would be smth like ES/ES, NQ/NQ etc). Other cells will be actual ratios, like ES/NQ, RTY/YM etc;
Then the native way to compress and summarize all this structure is to do eigendecomposition . The only eigenvector that would be meaningful in this case is the principal eigenvector, and its loadings would be what we were hunting for. We can multiply each asset datapoint by corresponding loading, sum them up and have one single index value, what we were aiming for;
Now the main catch: turns out using these principal eigenvector loadings mathematically is Exactly the same as simply calculating contraharmonic weights of those 4 initial assets. We’re done here.
For the sceptics, no other way of constructing the design matrix other than with ratios would result in another type of a defined mean. Filling that design matrix with ratios Is the only way to obtain a meaningful defined mean, that would also work with negative numbers. I’m skipping a couple of details there tbh, but they don’t really matter (we don’t need log-space, and anyways the idea holds even then). But the core idea is this: only contraharmonic mean emerges there, no other mean ever does.
Finally, how to use the thing:
Good news we don't use contraharmonic mean itself because we need an internals of it: actual weights of components that make this contraharmonic mean, (so we can follow it with our position sizes). This actually allows us to also use these weights but not for addition, but for subtraction. So, the script has 2 modes (examples would follow):
Addition: the main one, allows you to make indexes, portfolios, baskets, groups, whatever you call it. The script will simply sum the weighted legs;
Subtraction: allows you to make spreads, residual spreads etc. Important: the script will subtract all the symbols From the first one. So if the first we have 3 symbols: YM, ES, RTY, the script will do YM - ES - RTY, weights would be applied to each.
At the top tight corner of the script you will see a lil table with symbols and corresponding weights you wanna trade: these are ‘already’ adjusted for point value of each leg, you don’t need to do anything, only scale them all together to meet your risk profile.
Symbols have to be added the way the default ones are added, one line : one symbol.
Pls explore the script’s Style setting:
You can pick a visualization method you like ! including overlays on the main chart pane !
Script also outputs inferred volume delta, inferred volume and inferred tick count calculated with the same method. You can use them in further calculations.
...
Examples of how you can use it
^^ Purple dotted line: overlay from ICT script, turned on in Style settings, the contraharmonic mean itself calculated from the same assets that are on the chart: CME_MINI:RTY1! , CME_MINI:ES1! , CME_MINI:NQ1! , CBOT_MINI:YM1!
^^ precious metals residual spread ( COMEX:GC1! COMEX:SI1! NYMEX:PL1! )
^^ CBOT:ZC1! vs CBOT:ZW1! grain spread
^^ BDI (Bid Dope Index), constructed from: NYSE:MO , NYSE:TPB , NYSE:DGX , NASDAQ:JAZZ , NYSE:IIPR , NASDAQ:CRON , OTC:CURLF , OTC:TCNNF
^^ NYMEX:CL1! & ICEEUR:BRN1! basket
^^ resulting index price, inferred volume delta, inferred volume and inferred tick count of CME_MINI:NQ1! vs CME_MINI:ES1! spread
...
Synthetic assets is the whole new Universe you can jump into and never look back, if this is your way
...
∞
Seasonality Scanner by thedatalayers.comThe Seasonality Scanner automatically detects seasonal patterns by scanning a user-defined number of past years (e.g., the last 10 years).
Based on this historical window, the indicator identifies the strongest seasonal tendency for the currently selected date range.
The scanner evaluates all valid seasonal windows using two filters:
• Hit Rate - the percentage of profitable years
• Average Return - the highest mean performance across the analyzed period
The best-scoring seasonal setup is displayed directly on the chart, including the exact start and end dates of the identified pattern for the chosen time range.
Users can define the period they want to analyze, and the indicator will automatically determine which seasonal window performed best over the selected history.
Recommended Settings (Standard Use)
For optimal and consistent results, the following settings are recommended:
• Search Window: 20-30
• Minimum Length: 5
• Time Period: from 2015 onward
• US Election Cycle: All Years
These settings provide a balanced and reliable baseline to detect meaningful seasonal tendencies across markets.
This indicator helps traders understand when recurring seasonal patterns typically occur and how they may align with ongoing market conditions.
This indicator is intended to be used exclusively on the daily timeframe, as all calculations are based on daily candles.
Using it on lower timeframes may result in inaccurate or misleading seasonal readings.
Seasonality Calculation Tool by thedatalayers.comThe Seasonality Calculation Tool is designed to analyze and evaluate the strength of any seasonal pattern detected by the Seasonality Indicator.
While the Seasonality Indicator displays the historical seasonal curve, this tool goes one step further by examining how reliable and consistent that curve truly is.
The tool checks whether a seasonal pattern is strong, distorted by a few outlier years, or statistically meaningful. It calculates the average return within the selected seasonal window and highlights how accurate or robust the pattern has been over the evaluated period.
To support manual confirmation and deeper analysis, the tool also visualizes the seasonal windows directly on the chart. This allows traders to review past occurrences and backtest the pattern themselves to validate the quality of the signal.
The Seasonality Calculation Tool is an ideal complement to the main Seasonality Indicator, helping traders identify high-quality, data-driven seasonal tendencies and avoid misleading or weak seasonal patterns.
This script is intended to be used exclusively on the daily timeframe, as all calculations rely on daily candle data.
The settings are intuitive and easy to adjust, allowing users to quickly evaluate any seasonal window displayed by the Seasonality Indicator.
Seasonality by thedatalayers.comThe Seasonality Indicator calculates the average historical performance of the currently selected asset by analyzing a user-defined number of past years (e.g., the last 10 years).
The number of years included in the calculation can be adjusted directly in the settings panel.
Based on this historical window, the indicator creates an average seasonal curve, which represents how the market typically behaved during each part of the year.
This averaged curve acts as a forecast for the upcoming months, highlighting periods where the market has shown a consistent tendency in the past.
Traders can use this seasonal projection to identify times of higher statistical likelihood for upward or downward movement.
The indicator works especially well when combined with the Seasonality Analysis Tool, which helps identify specific historical windows and strengthens overall seasonal decision-making.
This indicator must be used exclusively on the daily timeframe, as all calculations are based on daily candle data.
Other timeframes will not display accurate seasonal structures.
The Seasonality Indicator provides a clear, data-driven view of recurring annual patterns and allows traders to better understand when historical tendencies may influence future price action.
Vertical Time LinesVertical Time Lines is an indicator that draws vertical lines at specific times of each day on the price chart.
⚙️ Main Features
Up to 5 independent time lines
Precise hour and minute editing (HH:MM)
Individual enable/disable option per line
Customizable line color and style
Works on any asset and any timeframe
📝 Note
Due to Pine Script limitations, the lines are drawn using UTC time, not the time zone configured on the chart.
Lines are generated only when a candle exists exactly at the configured minute. If candles for the specified hours and minutes are not visible on the chart, the lines will not be displayed.
Z-Score & StatsThis is an advanced indicator that measures price deviation from its mean using statistical z-scores, combined with multiple analytical features for trading signals.
Core Functionality-
Z-Score Calculation Engine:
The indicator uses a custom standardization function that calculates how many standard deviations the current price is from its rolling mean. Unlike simple moving averages, this provides a normalized view of price extremes. The calculation maintains a sliding window of data points, efficiently updating mean and variance values as new data arrives while removing old data points. This approach handles missing values gracefully and uses sample variance (rather than population variance) for more accurate statistical measurements.
Statistical Zones & Visual Framework:
The indicator creates a visual representation of statistical probability zones:
±1 Standard Deviation: Encompasses about 68% of normal price behavior (green zone)
±2 Standard Deviations: Covers approximately 95% of price movements (orange zone)
±3 Standard Deviations: Represents 99.7% probability range (red zone)
±3.5 and ±4 Thresholds: Extreme outlier levels that trigger special alerts
The z-score line changes color dynamically based on which zone it occupies, making it easy to identify the current market extremity at a glance.
Advanced Features:
Volume Contraction Analysis
The script monitors volume patterns to identify periods of reduced trading activity. It compares current volume against a moving average and flags when volume drops below a specified threshold (default 70%). Volume contraction often precedes significant price moves and is factored into the optimal entry detection system.
Momentum-Based Direction Model:
Rather than just showing current z-score levels, the indicator projects where the z-score is likely to move based on recent momentum. It calculates the rate of change in the z-score and extrapolates forward for a specified number of bars. This creates a directional arrow that indicates whether conditions are bullish (negative z-score with upward momentum) or bearish (positive z-score with downward momentum).
Divergence Detection System:
The script automatically identifies four types of divergences between price action and z-score behavior :-
Regular Bullish Divergence: Price makes lower lows while z-score makes higher lows, suggesting weakening downward pressure
Regular Bearish Divergence: Price makes higher highs while z-score makes lower highs, indicating exhaustion in the uptrend
Hidden Bullish Divergence: Price makes higher lows while z-score makes lower lows, confirming trend continuation in an uptrend
Hidden Bearish Divergence: Price makes lower highs while z-score makes higher highs, confirming downtrend continuation
The system uses pivot detection with configurable lookback periods and distance requirements, then draws connecting lines and labels directly on the chart when divergences occur.
Yearly Statistics Tracking:
The indicator maintains historical records of maximum z-score deviations over yearly periods (configurable bar count). This provides context by showing whether current extremes are unusual compared to typical annual ranges. The average yearly maximum helps traders understand if the current market is exhibiting normal volatility or exceptional conditions.
Mean Reversion Probability:
Based on the current z-score magnitude, the indicator calculates and displays the statistical probability that price will revert toward the mean. Higher absolute z-scores indicate stronger mean reversion probabilities, ranging from 38% at ±0.5 standard deviations to 99.7% at ±3 standard deviations.
Comprehensive Statistics Table:
A customizable on-chart table displays real-time statistics including:
Current z-score value with directional indicator
Predicted z-score based on momentum
Current year's maximum absolute z-score
Historical average yearly maximum
Mean reversion probability percentage
Zone status classification (Normal, Moderate, High, Extreme)
Directional bias (Bullish, Bearish, Neutral)
Active divergence status
Volume contraction status with ratio
Optimal setup detection (combining extreme z-scores with volume contraction)
Optimal Entry Setup Detection:
The most sophisticated feature identifies high-probability trading setups by combining multiple factors. An "Optimal Long" signal triggers when z-score reaches -3.5 or below AND volume is contracted. An "Optimal Short" signal appears when z-score exceeds +3.5 AND volume is contracted. This combination suggests extreme price deviation occurring on low volume, often preceding strong reversals.
Alert System:
The script includes a unified alert mechanism that triggers when z-score crosses specific thresholds:
Crossing above/below ±3.5 standard deviations (extreme levels)
Crossing above/below ±4 standard deviations (critical levels)
Alerts fire once per bar with confirmation (previous bar must be on opposite side of threshold) to avoid false signals.
Practical Application:
This indicator is designed for mean reversion traders who seek statistically significant price extremes. The combination of z-score measurement, volume analysis, momentum projection, and divergence detection creates a multi-layered confirmation system. Traders can use extreme z-scores as potential reversal zones, while the direction model and divergence signals help time entries more precisely. The volume contraction filter adds an additional layer of confluence, identifying moments when reduced participation may precede explosive moves back toward the mean.
Chart Attached: NSE GMR Airports, EoD 12/12/25
DISCLAIMER: This information is provided for educational purposes only and should not be considered financial, investment, or trading advice.Happy Trading
Session Trader - Optimal Hours📊 Overview
Never miss the best trading hours again! This indicator provides a comprehensive, real-time session tracker that shows you EXACTLY when to trade crypto and when to stay out of the market. Automatically converts all times to your local timezone, highlights the current active session, and shows what's coming next.
Perfect for crypto traders who want to maximize profits by trading during high-liquidity, high-volume sessions while avoiding choppy, low-liquidity periods that lead to losses.
✨ Key Features
🎯 Real-Time Session Tracking
LIVE indicator shows which session is currently active with bright highlighting
NEXT UP feature highlights the upcoming session when between trading periods
Smart header displays current status at a glance
Real-time countdown timers for every session (opens/closes)
📍 6 Critical Trading Sessions Covered
✅ BEST TRADING SESSIONS (Green):
London Open (07:00-09:00 UTC) - High volatility kickoff, institutional orders
London-NY Overlap (13:30-15:30 UTC) - THE BEST period! Maximum liquidity & volume
NY Momentum (15:30-18:00 UTC) - Strong trending moves, continuation plays
❌ AVOID TRADING SESSIONS (Red):
4. Pre-Asia Quiet (21:00-00:00 UTC) - Low liquidity, erratic moves, wide spreads
5. Asia Lunch (03:30-05:00 UTC) - Choppy markets, whipsaws, unreliable patterns
6. Post-US Drift (20:00-21:00 UTC) - Market slows, unpredictable behavior
🌍 Automatic Timezone Conversion
Times display in YOUR chart timezone - no manual conversion needed!
Works in Berlin, New York, Tokyo, Sydney, or anywhere in the world
Switch between 12-hour and 24-hour formats
🎨 Visual Clarity
Active TRADE sessions = Bright green background, impossible to miss
Active AVOID sessions = Bright red background, clear warning
NEXT UP session = Orange highlight when between sessions
Inactive sessions = Faded gray, stays out of your way
Color-coded status column with clear ✓ TRADE or ✗ AVOID indicators
⚙️ Fully Customizable
9 table positions (top-left, top-right, bottom-center, etc.)
6 text sizes (tiny to huge) for any screen size
Toggle individual sessions on/off
Show/hide descriptions for cleaner view
Custom colors for each session type
Countdown timer toggle
🔔 Built-In Alerts
Automatic alerts when TRADE sessions start
Alerts when AVOID sessions begin (so you don't enter bad conditions)
Customizable per session
📖 How To Use
Basic Setup:
Add indicator to any crypto chart (BTC, ETH, etc.)
Times automatically convert to your chart's timezone
Watch the header - shows current session or next upcoming
Look for bright colors:
🟢 Bright green = TRADE NOW
🔴 Bright red = AVOID NOW
🟠 Orange = NEXT UP (coming soon)
Trading Strategy:
Focus on GREEN sessions (London Open, London-NY Overlap, NY Momentum)
Avoid RED sessions (Pre-Asia Quiet, Asia Lunch, Post-US Drift)
Prepare for ORANGE sessions (next up - get ready!)
Use countdown timers to plan entries/exits perfectly
Pro Tips:
London-NY Overlap is the BEST - highest volume, tightest spreads, cleanest trends
First 30 minutes of London can have quick reversals - use caution
NY Momentum is perfect for riding trends with trailing stops
NEVER trade during Asia Lunch - choppy, unpredictable, costs you money
Post-US Drift looks tempting but often leads to whipsaws
🔧 Indicator Settings
Display Options:
Table Position: Choose from 9 positions on your chart
Text Size: Auto, Tiny, Small, Normal, Large, Huge
Time Format: 12-hour (AM/PM) or 24-hour format
Show Countdown: Toggle real-time countdown timers
Show Description: Toggle detailed session descriptions
Highlight Next Session: Orange highlight for upcoming session
Session Toggles:
Enable/disable any of the 6 sessions individually:
London Open
London-NY Overlap
NY Momentum
Pre-Asia Quiet
Asia Lunch
Post-US Drift
Color Customization:
Active TRADE session color (default: bright green)
Active AVOID session color (default: bright red)
NEXT UP session color (default: orange)
Inactive session color (default: faded gray)
Alerts:
Individual alert toggles for each session
Alerts fire when sessions start (not every bar)
Includes context in alert message
📊 Session Details
🟢 London Open (07:00-09:00 UTC)
Status: TRADE ✓
Characteristics:
London opens with high volatility as European traders enter
Major institutional orders create significant price movements
Perfect for breakout and trend-following strategies
Watch for quick reversals in first 30 minutes
Good liquidity and volume
🟢 London-NY Overlap (13:30-15:30 UTC)
Status: TRADE ✓
THE BEST TRADING PERIOD!
Maximum liquidity as London & NY markets overlap
Institutional volume peaks, creating clean trends
Reliable technical setups, tightest spreads
Best execution quality
Focus on momentum and breakout trades
🟢 NY Momentum (15:30-18:00 UTC)
Status: TRADE ✓
Characteristics:
Strong directional moves as US market dominates
Trending behavior ideal for position trades
Continuation patterns highly reliable
Major news impact is highest during this period
Use trailing stops to ride trends effectively
🔴 Pre-Asia Quiet (21:00-00:00 UTC)
Status: AVOID ✗
WARNING:
Pre-Asian session with minimal liquidity
Thin order books cause erratic price action
Fake breakouts and stop-hunting common
Wide spreads increase trading costs
High risk, low reward - wait for better conditions
🔴 Asia Lunch (03:30-05:00 UTC)
Status: AVOID ✗
WARNING:
Asian lunch break creates choppy, directionless markets
Low volume leads to whipsaws and false signals
Market makers widen spreads significantly
Technical patterns unreliable
Not worth the risk - take a break!
🔴 Post-US Drift (20:00-21:00 UTC)
Status: AVOID ✗
WARNING:
Post-US session as major markets close
Liquidity dries up, causing unpredictable moves
High slippage risk
Market enters consolidation before Asian open
Better to wait for next quality session
🎯 Who Is This For?
Perfect for:
✅ Crypto day traders who want to maximize profits by timing the markets
✅ Scalpers who need high liquidity and tight spreads
✅ Swing traders who want to enter during optimal conditions
✅ Beginners who need clear guidance on when to trade
✅ Anyone tired of choppy sessions that eat away profits
Ideal Markets:
Bitcoin (BTC/USD, BTC/USDT)
Ethereum (ETH/USD, ETH/USDT)
Major altcoins (SOL, XRP, ADA, etc.)
Any 24/7 crypto market
💡 Why Session Timing Matters
Trading crypto during low-liquidity sessions is one of the biggest mistakes traders make:
❌ Trading during bad sessions causes:
Wider spreads (higher costs per trade)
Choppy, unpredictable price action
Fake breakouts and stop-hunting
Poor trade execution and slippage
Emotional frustration and overtrading
✅ Trading during optimal sessions gives you:
Tight spreads (lower costs)
Clean, trending price action
Reliable technical patterns
Better execution quality
Higher win rates and confidence
The difference between a profitable trader and a losing trader is often WHEN they trade, not HOW they trade.
🚀 Technical Details
Version: Pine Script v6
Type: Overlay indicator (table display)
Repainting: Non-repainting (all times are fixed to session schedules)
Updates: Real-time on every bar
Performance: Lightweight, no lag
Compatibility: Works on any timeframe (1m to 1D+)
📈 Best Practices
Plan your trading schedule around GREEN sessions
Set alerts for session starts so you never miss opportunities
Use the countdown to prepare entries/exits in advance
Combine with your strategy - this indicator tells you WHEN, your strategy tells you WHAT
Respect the RED sessions - discipline is profit
Keep descriptions ON when learning, turn OFF for cleaner charts later
🔄 Updates & Support
This indicator is actively maintained. Future updates may include:
Session volume statistics
Historical session performance tracking
Additional regional sessions
More customization options
Lot Size Panel Lite Multi (@JP7FX)Lot Size Panel Lite Multi is a fast, no-nonsense risk and position sizing tool built for active traders who need answers immediately.
This indicator removes all chart clutter and focuses on one thing only. Correct lot size based on your stop loss and risk.
It is designed for scalpers, day traders, and funded account traders who do not want complex menus or slow workflows.
What it does
Calculates precise lot size from stop loss and risk
Supports percentage risk or fixed cash risk
Works across Forex, Gold, Crypto, Index/CFD, and Stocks
Displays results in a clean on-chart panel
Supports multiple accounts at once
Key features
Risk first layout. Stop loss and risk inputs are at the top
Multi account support with A1 enabled by default
Per account currency handling with automatic FX conversion
Manual FX fallback option when TradingView rates are unavailable
Customisable panel colours and layout
Movable panel with multiple screen positions
How to use
Select your Asset Type
Enter your Stop Loss in pips
Choose Risk mode
Percent uses account balance
Cash risks a fixed amount
Set your account balance and currency
Read the calculated lot size instantly
Index and CFD users
For Index and Stock instruments, set the “value per pip per 1 lot” to match your broker.
Example:
If 1 lot equals $10 per point, enter 10
Who this is for
Traders who execute fast and want zero friction
Prop firm traders managing multiple accounts
Traders who want correct risk every trade without thinking
This is the Lite version of the JP7FX lot sizing tools.
It strips everything back to speed, clarity, and accuracy.
Trade smart.
JP7FX
RO H1 Signal CandleMarks specific H1 signal candles based on Bucharest (RO) time.
Designed for clean backtesting and time-based analysis.
Displays a small marker on selected hourly candles only.






















