BTC Event Contract Signal Indicator# BTC Event Contract Signal Indicator
**Version**: V1.0
**Last Updated**: December 21, 2024
**Author**: OxJohannWu
**Type**: Pine Script v6 Indicator (Overlay)
**Timeframes**: Optimized for 1-minute BTC data, supports all timeframes
## 📋 Overview
The BTC Event Contract Signal Indicator is a sophisticated technical analysis tool designed specifically for Bitcoin event contracts (binary options). This indicator provides real-time buy/sell signals with comprehensive contract tracking, performance statistics, and settlement monitoring - all displayed in Beijing time (UTC+8).
### Key Features
- **Smart Signal Generation**: Multi-layered technical analysis with adaptive filtering
- **Real-time Contract Tracking**: Monitor active contracts with automatic settlement detection
- **Performance Analytics**: Detailed win/loss statistics with daily breakdowns
- **Multi-timeframe Optimization**: Auto-adjusts parameters based on chart timeframe
- **Beijing Time Display**: All timestamps converted to Beijing timezone
- **Alert System**: TradingView alerts for all signal types
## 🎯 Trading Philosophy
This indicator combines correlation analysis, MACD momentum, and StochRSI oscillator signals to identify high-probability entry points for Bitcoin event contracts. The system prioritizes quality over quantity, using intelligent filtering to minimize false signals and maximize win rates.
## ⚙️ Parameter Configuration
### 📊 Technical Indicator Settings
- **Auto Timeframe Optimization**: Automatically selects optimal parameters based on current timeframe
- **MACD Settings**: Fast (8), Slow (21), Signal (5) - optimized for 1-minute BTC data
- **RSI Period**: 6 periods for responsive momentum detection
- **Stochastic Settings**: K smoothing (2), Period (6) for precise overbought/oversold levels
### 🔗 Correlation Analysis
- **Short-term Correlation**: 3-period correlation for immediate trend changes
- **Long-term Correlation**: 25-period correlation for broader market context
- **Correlation Slope**: Tracks momentum changes in price correlation
### 🎯 Smart Signal Optimization
Three intelligent modes to suit different trading styles:
#### Smart Balance Mode (Default)
- **Target Win Rate**: 80%+
- **Expected Signals**: 8-15 per day
- **Filtering**: 6-7 technical conditions
- **Best For**: Balanced trading with consistent profits
#### High Frequency Mode
- **Target Win Rate**: 75%+
- **Expected Signals**: 15-25 per day
- **Filtering**: 4 core technical conditions
- **Best For**: Active traders seeking more opportunities
#### Premium Quality Mode
- **Target Win Rate**: 85%+
- **Expected Signals**: 5-10 per day
- **Filtering**: 8 strict technical conditions
- **Best For**: Conservative traders prioritizing accuracy
### ⏰ Event Contract Settings
- **Contract Duration Options**: 10 Minutes, 30 Minutes, 1 Hour, 24 Hours
- **Single Contract Rule**: Only one active contract at a time
- **Auto Settlement**: Automatic win/loss detection at expiry
## 📈 Signal Generation Logic
### Core Technical Conditions
1. **Correlation Breakout**: Short-term correlation slope changes direction
2. **MACD Momentum**: MACD line above/below signal line with positive/negative slope
3. **StochRSI Position**: K-line slope changes indicating momentum shift
### Smart Filtering System
The indicator applies progressive filtering based on selected mode:
#### Basic Filters (All Modes)
- Volume above 1.4x average
- Correlation momentum confirmation
- MACD direction alignment
#### Advanced Filters (Smart Balance & Premium)
- Price action quality (body-to-wick ratio > 0.4)
- Momentum strength validation
- RSI safe zone (25-75 range)
- Optional trend filter with EMA confirmation
- Optional multi-timeframe confirmation
#### Premium Filters (Premium Quality Only)
- Enhanced volume threshold (1.8x average)
- Stricter correlation momentum (>1.0)
- Multi-timeframe EMA alignment
- Advanced momentum validation
### Signal Strength Classification
- **Normal Signals**: Basic technical alignment (small arrows)
- **Strong Signals**: Enhanced momentum + volume confirmation (large arrows)
## 🎨 Visual Display System
### Signal Arrows
- **🔼 Green Triangle Up**: Call signal (buy/long)
- **🔽 Red Triangle Down**: Put signal (sell/short)
- **💪 Enhanced Arrows**: Strong signals with special emoji indicators
### Settlement Results
- **🎉 WIN**: Profitable contracts (green)
- **💸 LOSS**: Losing contracts (red)
- **Automatic Display**: Shows results immediately upon contract expiry
### Information Labels
Each signal displays:
- Signal type (Call/Put, Normal/Strong)
- Selected mode and timeframe
- Contract duration
- Settlement results with win/loss indication
## 📊 Statistics Dashboard
### Real-time Performance Table
Located in the top-right corner, displaying:
#### Summary Statistics
- **Total Contracts**: Overall contract count
- **Overall Win Rate**: Percentage with color coding (Green: 80%+, Orange: 60-79%, Red: <60%)
- **Today's Performance**: Daily statistics with separate tracking
- **Win/Loss Breakdown**: Detailed count of profitable vs losing trades
#### Directional Analysis
- **Call Performance**: Success rate for bullish contracts
- **Put Performance**: Success rate for bearish contracts
- **Balanced Tracking**: Identifies directional bias in performance
#### System Status
- **Filter Mode**: Current smart filter status (Smart✓/Basic✗)
- **Contract Duration**: Selected timeframe
- **Beijing Time**: Real-time timestamp display
- **Current Price**: Live BTC/USDT price
- **Contract Status**: Active contract indicator (🔄 Active/✅ Ready)
## 💡 Usage Guidelines
### Optimal Setup
1. **Recommended Timeframe**: 1-minute for maximum signal frequency
2. **Symbol**: BTCUSDT or BTCUSD perpetual futures
3. **Mode Selection**: Start with "Smart Balance" for consistent performance
4. **Contract Duration**: Begin with 10-minute contracts for faster feedback
### Best Practices
- **Pre-market Analysis**: Check overall market conditions before trading
- **Risk Management**: Never risk more than 2-3% of capital per contract
- **Session Timing**: Best performance during high-volume trading sessions
- **Signal Confirmation**: Wait for arrow + label confirmation before entry
- **Performance Monitoring**: Regularly review win rate statistics
### Trading Sessions
- **Asian Session**: 00:00-08:00 Beijing Time (moderate volatility)
- **European Session**: 15:00-23:00 Beijing Time (high volatility)
- **US Session**: 21:00-05:00 Beijing Time (peak volatility)
## 🚨 Alert Configuration
### Available Alerts
1. **BTC Call Signal**: Basic bullish signal alerts
2. **BTC Put Signal**: Basic bearish signal alerts
3. **BTC Strong Call Signal**: High-quality bullish signals
4. **BTC Strong Put Signal**: High-quality bearish signals
### Alert Setup
```
Alert Condition: Select from dropdown
Frequency: Once Per Bar Close
Expiration: No expiration (for continuous monitoring)
Webhook: Optional for automated trading systems
```
### Alert Message Format
```
🚀 BTC Event Contract Call Signal
⏰ Time:
💰 Price: $
```
## 🔧 Advanced Configuration
### Parameter Optimization
- **Auto-Optimization Enabled**: Uses predefined optimized parameters
- **Manual Override**: Disable auto-optimization for custom parameter testing
- **Timeframe Adaptation**: Parameters automatically adjust for 1-min, 3-min, and higher timeframes
### Filter Customization
- **Volume Filter**: Adjustable multiplier (1.1-2.5x)
- **Trend Filter**: Optional EMA trend confirmation
- **Advanced Confirmation**: Multi-timeframe validation
- **Smart Filter**: Toggle for intelligent filtering system
## 📈 Performance Expectations
### Historical Backtesting Results
Based on extensive BTCUSDT 1-minute data testing:
#### Smart Balance Mode
- **Average Win Rate**: 78-82%
- **Daily Signals**: 10-15
- **Best Sessions**: European/US overlap
- **Recommended For**: Most traders
#### High Frequency Mode
- **Average Win Rate**: 73-77%
- **Daily Signals**: 18-25
- **Best Sessions**: High volatility periods
- **Recommended For**: Active scalpers
#### Premium Quality Mode
- **Average Win Rate**: 83-87%
- **Daily Signals**: 6-10
- **Best Sessions**: Trending market conditions
- **Recommended For**: Conservative traders
## ⚠️ Risk Warnings
### Important Disclaimers
- **High-Risk Trading**: Event contracts involve significant risk of loss
- **Market Volatility**: Cryptocurrency markets are highly volatile and unpredictable
- **No Guarantee**: Past performance does not guarantee future results
- **Capital Risk**: Only trade with funds you can afford to lose completely
### Risk Management Guidelines
- **Position Sizing**: Never risk more than 1-2% per trade
- **Daily Limits**: Set maximum daily loss limits
- **Emotional Control**: Avoid revenge trading after losses
- **Market Conditions**: Adjust exposure based on volatility
- **Continuous Monitoring**: Regularly assess indicator performance
## 🔄 Version History
### V1.0 (December 21, 2024)
- Initial English release
- Complete translation from Chinese version
- Optimized for international users
- Enhanced documentation with detailed explanations
- Maintained all original functionality and performance characteristics
## 🛠️ Technical Specifications
### Pine Script Details
- **Version**: Pine Script v6
- **Type**: Indicator with overlay=true
- **Max Objects**: 500 boxes, 500 labels
- **Memory Optimization**: Efficient array and map usage
- **Performance**: Optimized for real-time execution
### System Requirements
- **Platform**: TradingView Pro, Pro+, or Premium
- **Browser**: Modern browser with JavaScript enabled
- **Connection**: Stable internet for real-time data
- **Display**: Minimum 1080p resolution recommended
## 📞 Support & Updates
### Getting Help
- **Documentation**: Refer to this comprehensive guide
- **Common Issues**: Check parameter settings and timeframe compatibility
- **Performance**: Verify market conditions and volatility levels
### Update Policy
- **Regular Updates**: Continuous optimization based on market conditions
- **Version Tracking**: All changes documented with version numbers
- **Backward Compatibility**: Settings preserved across updates
---
**Disclaimer**: This indicator is for educational and analysis purposes only. Trading cryptocurrencies and event contracts involves substantial risk. Always conduct your own research and consider your risk tolerance before trading. The authors are not responsible for any trading losses incurred through the use of this indicator.
אינדיקטורים ואסטרטגיות
Multi MA 10 Lines PRO (Custom Label + Crossover Icon)Multi MA 10 Lines PRO – 10 Custom MAs, Dynamic Labels & Persistent Crossover Symbols
The ultimate professional Moving Average indicator — plot up to 10 fully customizable MAs (type, timeframe, color, width, style), display live price labels (value, % distance, or custom text), plus advanced ATR cross markers on every crossover (MA1/MA2).
NEW: All MA crossovers are marked with persistent symbols (choose icon, color, size) — instantly spot every golden/death cross in your backtest! Complete flexibility for scalpers, swing traders, and serious strategists.
Momentum Trend Bands (MTB)📌 What Is the Momentum Trend Bands (MTB) Indicator?
The Momentum Trend Bands (MTB) is a custom-built trend detection indicator that blends momentum and volatility into a dynamic, visual system. Its core goal is to help traders identify the beginning and strength of a trend earlier than traditional tools like moving averages, while filtering out market noise.
🧠 What Is It Built On?
The indicator is built on two foundational concepts:
1. Rate of Change (ROC): This measures the speed at which the price is moving. We use a fast and a slow version of ROC and then calculate their difference. This difference gives us a momentum signal — it shows whether the price is gaining upward or downward strength.
2. Standard Deviation (Volatility): This shows how much the price fluctuates. By calculating it over a certain period, we can measure market noise and filter out weak, insignificant moves that might otherwise cause false signals.
Together, momentum shows direction, and volatility shows confidence.
🛠️ How Does It Work?
• The core of the indicator is a smoothed momentum signal, representing the net difference between fast and slow momentum.
• Around this signal, we build upper and lower bands — these are dynamic boundaries that expand or contract based on volatility.
• When the momentum breaks above or below these bands, it signals a strong directional move — suggesting the start or continuation of a trend.
The bands also serve a visual filter:
• If momentum stays within the bands, it implies the market is consolidating or ranging.
• When it exits the bands decisively, it implies strength in that direction.
📈 How to Use It?
1. Trend Entry:
o When the momentum signal rises above the upper band, it suggests a strong bullish trend may be starting.
o When the signal drops below the lower band, it indicates a bearish trend.
2. Stay Out of Chop:
o If the signal moves sideways within the bands, it’s best to avoid trading — the market is likely consolidating or ranging.
3. Visual Confirmation:
o The background color changes with the trend: green for bullish, red for bearish, gray for neutral. This makes it quick to read visually.
4. Signal Arrows:
o Small up or down arrows appear when trends begin, serving as early entry points.
⚙️ What Kind of Market Does It Work Best In?
• Trending Markets: MTB shines in markets with strong directional movement — whether up or down. It's designed to pick up momentum early and hold through trend continuation.
• Volatile Instruments: The built-in volatility filter helps in markets like crypto or commodities where price action is fast and erratic.
• Avoid Flat or Low-Volume Conditions: In sideways markets, MTB may stay gray or flip often — these are not ideal times to trade using this indicator alone.
💎 Why Is It Unique?
Unlike many indicators that react slowly (like moving averages) or trigger too often (like raw momentum), MTB balances early detection with reliability. Its unique combination of:
• ROC difference for directional intent,
• Smoothing for signal clarity,
• Bands scaled by volatility for robustness,
…makes it stand apart from commonly available indicators on platforms like TradingView.
21EMA Pullback (Simple)✅ Simplified 21EMA Pullback Screener (with Alert + Screener Output)
Criteria:
9EMA > 21EMA
21EMA > 50SMA
Price has either:
Touched the 21EMA (i.e., price's low ≤ 21EMA ≤ high), OR
Pierced and reclaimed (low < 21EMA and close > 21EMA)
VWAP + ADX Trend FilterVWAP + ADX Trend Identifier (Intraday)”
🔹 Description:
Write a short, clear summary like:
“This script combines VWAP and ADX to help identify intraday trend trades. Buy and sell signals appear when price crosses VWAP with ADX strength above a threshold, confirming directional bias.”
You can also include:
Best suited for NIFTY / BNIFTY
Ideal timeframe: 5–15 min
For educational or personal use
🔹 Visibility:
Public: Anyone can find it on TradingView. Must follow Pine Script Publishing Rules.
Invite-only: Useful if you want to share with selected people (like clients or premium users).
Private: Only you can see and use it.
📌 Important Tips for Publishing:
JK's Inside DayEvaluates today’s candle only after it's closed
Keeps screener alignment and alerting accurate for daily after-hours workflows
Clean Support/Resistance Rejection (Strict Filtering)Best buy and Sell signal based on support and resistance levels.
You can edit how many candle rejections you want after rejection on each level.
Enjoy!
MA20 / MA40 / MA100 / MA200LAchi1911@ MA20_MA100
Medias moviles en todos los periodos pra identificar tendencias
Breakout Strategy with EMA & VolumeA breakout strategy combined with EMA and Volume data to give you the best results.
Indicator includes:
EMA 20 and EMA 50
Volume indicator
RSI (14)
SDCALibraryMy Valuation Library for mostly crypto currency use, but some can be applied to other assets.
There are technical and on-chain indicator functions for use.
Technical Indicators:
1. **drawdown_zscore**
- **Summary**: Calculates the z-score of drawdowns over a specified lookback period.
- **Inputs**:
- `lookback_length` (int): Period for drawdown calculation.
- `zScoreLen` (int): Length for z-score calculation.
2. **sharpe_zscore**
- **Summary**: Computes the z-score of the Sharpe ratio using returns over a period and a smoothing length.
- **Inputs**:
- `length` (int): Period for returns calculation.
- `smalen` (int): Smoothing length for returns.
- `zScoreLen` (int): Length for z-score calculation.
3. **rsi_zscore**
- **Summary**: Calculates the z-score of the Relative Strength Index (RSI) with smoothing.
- **Inputs**:
- `length` (int): Period for RSI calculation.
- `smalen` (int): Smoothing length for RSI.
- `zScoreLen` (int): Length for z-score calculation.
4. **DFATH_zscore**
- **Summary**: Computes the z-score for a specific DFATH metric (details not specified).
- **Inputs**:
- `zScoreLen` (int): Length for z-score calculation.
5. **RTI_zscore**
- **Summary**: Calculates the z-score of a trend indicator based on data count and sensitivity.
- **Inputs**:
- `trend_data_count` (int): Number of data points for trend analysis.
- `trend_sensitivity_percentage` (int): Sensitivity threshold for trend detection.
- `zScoreLen` (int): Length for z-score calculation.
On-Chain (Crypto only, mostly BTC, ETH)
6. **SOPR_zscore**
- **Summary**: Computes the z-score of Spent Output Profit Ratio (SOPR) for a specific coin.
- **Inputs**:
- `zScoreLen` (int): Length for z-score calculation.
- `coin_sopr` (string): SOPR data for the specified coin.
7. **thermocap_zscore**
- **Summary**: Calculates the z-score of the Thermocap metric using moving average and coin-specific data.
- **Inputs**:
- `ma_len` (int): Length of the moving average.
- `ma_type` (string): Type of moving average.
- `zScoreLen` (int): Length for z-score calculation.
- `coin_index` (string): Coin index data.
- `coin_blocks_mined` (string): Data on blocks mined for the coin.
8. **MVRV_zscore**
- **Summary**: Computes the z-score of the Market Value to Realized Value (MVRV) ratio.
- **Inputs**:
- `zScoreLen` (int): Length for z-score calculation.
- `coin_MC` (string): Market capitalization data.
- `coin_MC_real` (string): Realized market capitalization data.
9. **supplyinprofit_zscore**
- **Summary**: Calculates the z-score of the percentage of coin supply in profit or loss, optionally adjusted for alpha decay.
- **Inputs**:
- `isAlphaDecayAdjusted` (bool): Whether to apply alpha decay adjustment.
- `zScoreLen` (int): Length for z-score calculation.
- `coin_profit_address_percent` (string): Percentage of addresses in profit.
- `coin_loss_address_percent` (string): Percentage of addresses in loss.
10. **realized_price_zscore**
- **Summary**: Computes the z-score of the realized price based on realized market cap and supply.
- **Inputs**:
- `zScoreLen` (int): Length for z-score calculation.
- `coin_MC_real` (string): Realized market capitalization data.
- `coin_supply` (string): Coin supply data.
11. **CVVD_zscore**
- **Summary**: Calculates the z-score of Cumulative Value Days Destroyed (CVVD) metric.
- **Inputs**:
- `zScoreLen` (int): Length for z-score calculation.
- `coin_MC_real` (string): Realized market capitalization data.
- `coin_total_volume` (string): Total volume data for the coin.
12. **NUPL_zscore**
- **Summary**: Computes the z-score of Net Unrealized Profit and Loss (NUPL) metric.
- **Inputs**:
- `zScoreLen` (int): Length for z-score calculation.
- `coin_MC` (string): Market capitalization data.
- `coin_MC_real` (string): Realized market capitalization data.
Moving AveragesThis indicator allows you to seamlessly apply one or multiple moving averages simultaneously on your chart. You can easily select from predefined periods: 10, 20, 50, 100, and 200.
It is pre-configured to use Exponential Moving Averages (EMA) by default, so there’s no need to input or adjust the type manually—just enable the ones you need and you're ready to go.
Ideal for traders who rely on dynamic trend analysis and want a quick, clutter-free setup for multiple EMAs
Quad Rotation - StochasticThis Indicator is a step up from the Triad Rotation Indicator previously made, as it has 4 Stochastic signals rather then 3.
It can be used mainly to identify potential reversal periods. If the Instrument becomes overbought, or oversold with all 4 stochastics a horizontal highlight will appear, either green or red. Green indicates the instrument is oversold, and may reverse soon, meaning you should take a buying positions, and red indicates an overbought position, where you may want to sell due to a reversal downward.
Additionally, you can set an alarm if all 4 stochastic indicators signal overbought or oversold. This will help reduce your need to watch each instrument, and reduce the likelihood of overtrading.
If you have comments regarding this indicator, if you found it helpful, or would like other improvements feel free to email me. If you are looking for other custom indicators, also feel free to email me. Email: thejak77@aol.com. This is an email rarely monitored, so please be patient, thank you!
All the best, and stay profitable!
Average True Range (50%)This script is used to calculate and display the Average True Range (ATR) scaled down to 50% of its original value. ATR is a volatility indicator that measures how much the price of an asset moves within a certain period. This script allows users to choose a smoothing method to calculate the ATR, including RMA, SMA, EMA, or WMA.
Simple Position CalculatorThis indicator provides a real-time position sizing calculator designed for fast momentum trading. It instantly calculates optimal trade size based on your risk parameters, entry/exit prices, and exchange conditions (fees/slippage). Perfect for high-speed entries during candle closes and breakouts.
Double Inside Bar Alert (1-1 Only)Double Inside Bar Alert Indicator
Stay ahead of breakout opportunities with our Double Inside Bar Alert Indicator. This tool automatically scans your watchlist and notifies you in real-time whenever a double inside bar pattern appears—an advanced price action setup known for signaling strong potential breakouts or reversals.
Whether you’re a day trader or swing trader, this indicator helps you:
Spot consolidation zones early before major price moves
Receive instant alerts across your entire watchlist
Filter noise and focus on high-probability chart setups
Perfect for traders who rely on price action and want to catch momentum shifts as they form.
Choppiness ZONE OverlayPurpose
This script overlays choppiness zones directly onto the price chart to help traders identify whether the market is trending or ranging. It is designed to filter out low-probability trades during high choppiness conditions.
How It Works
Calculates the Choppiness Index over a user-defined period using ATR and price range.
Divides choppiness into four zones:
30 to 40: Low choppiness, possible trend initiation, shown in yellow.
40 to 50: Moderate choppiness, transition zone, shown in orange.
50 to 60: High choppiness, weakening momentum, shown in red.
60 and above: Extreme choppiness, avoid trading, shown in purple.
Highlights each zone with customizable color fills between the high and low of the selected range.
Triggers a real-time alert when choppiness exceeds 60.
Features
Customizable choppiness zones and color settings.
Real-time alert when market becomes extremely choppy (choppiness ≥ 60).
Visual zone overlay on the price chart.
Compatible with all timeframes.
Lightweight and responsive for scalping, intraday, or swing trading.
Tip
Use this tool as a volatility or trend filter. Combine it with momentum or trend-following indicators to improve trade selection.
MA Cross MTF Alert (Miu)This script extends the classic moving average crossover strategy with support for up to 8 user-defined symbols across 4 custom timeframes, combined with a visual and alert system designed for traders who monitor multiple assets simultaneously.
Unlike traditional MA crossover tools, this script enables traders to receive real-time alerts for crossovers across multiple assets and timeframes, even when the script is not actively displayed on the chart — ideal for passive monitoring in multi-asset strategies.
What it does:
This script calculates two customizable moving averages (SMA or EMA) for each selected symbol and timeframe.
It then tracks crossover events:
- Bullish crossover when the fast MA crosses above the slow MA
- Bearish crossunder when the fast MA crosses below the slow MA
On the chart, it also displays the crossover signals for the current symbol and timeframe using color-coded cross icons.
Key features:
- Select SMA or EMA type for both moving averages
- Customize MA lengths and colors
- Works with any asset and timeframe
- Alerts include symbol and timeframe info for easy identification
How to use:
1) Add the indicator to your chart.
2) Choose the moving average type and lengths.
3) Enable/disable any of the 8 symbols and 4 timeframes.
4) Set up TradingView alerts by clicking “Create Alert” and selecting one of the alert() calls.
5) You will receive a message like:
BTC (1h) | MA Crossover ▲ or ETH (15m) | MA Crossunder ▼
Technical note:
This script uses request.security() to retrieve moving average values from up to 8 different symbols and 4 different timeframes in real time.
Feel free to leave your feedback or suggestions in the comments section below.
Enjoy!
Avions Ultimate indicator70% wr backtest it yourself. works best on bitcoin 30m timeframe works the best for me
Momentum Contour Pulse [ApexLegion]🌊 Momentum Contour Pulse
*Advanced Multi-Layer Momentum Visualization with High-Precision Trend Reversal Detection*
📖 **OVERVIEW**
The **Momentum Contour Pulse** is a sophisticated momentum analysis tool that combines topographic-style visualization with precision trend reversal signals. This indicator creates dynamic "contour maps" of market momentum, similar to elevation maps, where color intensity and gradient effects reveal the strength and direction of underlying market forces.
**Key Innovation:** Unlike traditional momentum indicators that show simple lines or histograms, this system renders momentum as flowing, gradient-based bands that expand and contract with market volatility, providing an intuitive visual representation of market energy.
✨ **KEY FEATURES**
🎨 **Dynamic Contour Visualization**
- **20-Level Gradient System**: Creates smooth topographic-style momentum bands
- **Adaptive Color Intensity**: Glow effects strengthen with momentum conviction
- **Dual-Color Zones**: Cyan for bullish momentum, Purple for bearish momentum
- **Fade Effects**: Smooth visual transitions during momentum changes
⚡ **Precision Pulse Signals**
- **🟢 Bull Pulse**: Triggered at trend reversal to upward momentum + maximum intensity
- **🔴 Bear Pulse**: Triggered at trend reversal to downward momentum + maximum intensity
- **Professional Glow Effects**: Multi-layer plotshape rendering for premium visual quality
- **ATR-Based Positioning**: Signals placed at precise reversal points with volatility-adjusted spacing
🔧 **Advanced Technical Engine**
- **ATG Filter System**: Proprietary dual-timeframe EMA flow analysis with angular separation
- **Adaptive Volatility Bands**: Dynamic expansion/contraction based on market conditions
- **Multi-Condition Confirmation**: Combines trend detection, breakout analysis, and momentum strength
- **Intensity Filtering**: Only top 25% intensity signals qualify for pulse alerts
🚀 **HOW TO USE**
### **For Visual Analysis:**
1. **Contour Reading**: Brighter bands = stronger momentum, darker bands = weaker momentum
2. **Direction Assessment**: Cyan glow = bullish bias, Purple glow = bearish bias
3. **Momentum Tracking**: Watch band intensity changes to gauge momentum shifts
**For Flow Analysis:**
1. **🟢 Bull Pulse**: Monitor for upside pressure when pulse appears at support levels
2. **🔴 Bear Pulse**: Observe downside flow when pulse appears at resistance levels
3. **Confirmation**: Validate momentum expansion with other technical analysis for optimal engagement zones
**For Educational Purpose:**
1. Enable **"Show Debug Table"** to see all internal calculations
2. Enable **"Show Debug Lines"** to visualize trend zones and breakout levels
3. Study how momentum intensity correlates with price movements
⚙️ **CONFIGURATION GUIDE**
**ATG Filter Settings** 🎯
- **Short-Term Flow Length (21)**: Controls fast EMA sensitivity
- **Long-Term Flow Length (55)**: Controls slow EMA baseline
- **Volatility Expansion Multiplier (1.75)**: Adjusts breakout zone sensitivity
- **Trend Angle Threshold (25°)**: Sets minimum slope requirement for trend detection
**Visual Customization** 🎨
- **Upper Band Color**: Customize bullish momentum color (default: Cyan)
- **Lower Band Color**: Customize bearish momentum color (default: Purple)
- **Base Glow Intensity (3.0)**: Controls overall visual brightness
- **Momentum Boost Multiplier (1.3)**: Amplifies visual response to strong moves
**Learning Tools** 🔧
- **Show Debug Table**: Reveals all calculation steps and decision logic
- **Show Debug Lines**: Displays trend zones and breakout thresholds
- **Intensity Smoothing Period (8)**: Controls signal responsiveness vs stability
📚 **EDUCATIONAL VALUE**
This indicator serves as an excellent learning tool for understanding:
**Momentum Analysis Concepts:**
- How dual-timeframe EMA analysis reveals trend structure
- The relationship between volatility and trend confirmation
- Angular measurement techniques for trend strength assessment
**Advanced Pine Script Techniques:**
- Multi-level gradient rendering using fill() functions
- Dynamic color saturation based on calculated intensity
- Sophisticated fade effect systems using historical arrays
- Professional signal visualization with multi-layer plotshape
**Market Psychology:**
- How momentum builds and dissipates in trending markets
- Visual representation of market conviction through color intensity
- The relationship between breakout patterns and momentum confirmation
⚠️ **IMPORTANT NOTES**
**Analysis Guidelines:**
- Use on multiple timeframes for comprehensive momentum assessment
- Combine with support/resistance levels for enhanced flow initiation accuracy
- Consider overall market context when interpreting directional moves
**Important Notes:**
- Disable debug features for optimal chart performance
- Default settings are optimized for most market conditions
**Signal Interpretation:**
- Pulse signals indicate potential flow reversal points, not guaranteed outcomes
- Higher intensity signals generally show better momentum expansion reliability
- Always practice proper risk management regardless of directional move strength
⚠️ **Limitations**
1. **Backtesting Limitations**
This indicator is not a strategy and cannot perform official backtesting on TradingView's engine.
Pulse signals are visual cues only, not verified historical trades.
2. **Regression Band and ATG Filter Inherent Lag**
Linear regression bands are calculated from past data, creating natural lag.
The dual-timeframe EMA analysis (21/55) also requires sufficient data for trend establishment.
3. **High Intensity Threshold May Miss Signals**
The 75% intensity requirement filters for premium signals but may miss moderate opportunities.
In low-volatility periods, pulse signals may become infrequent.
4. **Single Indicator Dependency Risk**
Momentum Contour Pulse works best when combined with support/resistance analysis.
Relying solely on pulse signals without market context may reduce effectiveness.
5. **Parameter Sensitivity**
Modifying ATG filter settings or intensity thresholds should be done carefully.
Excessive sensitivity may produce false signals; excessive filtering may miss valid setups.
🎓 **TECHNICAL METHODOLOGY**
The indicator employs a sophisticated multi-step process:
1. **Flow Analysis**: Calculates dual-timeframe EMA separation and converts to angular measurements
2. **Threshold Adaptation**: Dynamically adjusts trend strength requirements based on historical volatility
3. **Breakout Detection**: Identifies price movements beyond adaptive volatility bands
4. **Intensity Calculation**: Normalizes momentum strength to 0-1 range with smoothing
5. **Visual Rendering**: Applies 20-level gradient system with dynamic transparency
6. **Signal Generation**: Filters for trend changes meeting maximum intensity criteria
**Core Algorithm:**
flowSeparation = math.atan(flowFast_ATG - flowSlow_ATG) * 180 / math.pi
- Converts dual-timeframe EMA separation into precise angular momentum measurement, enabling topographic-style visualization of market flow intensity.
! (i.imgur.com)
🎨 **Visual Features Showcase**
**Multi-Layer Contour Visualization in Action**
**Dynamic Gradient Bands:** Watch how the 20-level gradient system creates topographic-style momentum maps. The **emerald upper contours** represent bullish flow zones, while **violet lower contours** indicate bearish pressure areas. Notice how band intensity **glows brighter** during strong momentum phases and **fades** during consolidation.
**Precision Pulse Signal:** The **🟢 green pulse** (left side) demonstrates perfect trend reversal detection at the momentum flow initiation point. The multi-layer glow effect creates professional-grade signal visualization that stands out without cluttering the chart.
**Adaptive Band Expansion:** Observe how contour bands dynamically **expand during volatility** and **contract during calm periods**, automatically adjusting to market conditions using ATR-based calculations.
📊 **What You're Seeing:**
• **Emerald Glow Zones** → Bullish momentum dominance
• **Violet Flow Areas** → Bearish pressure regions
• **Gradient Intensity** → Real-time momentum strength
• **Pulse Signals** → High-conviction reversal points
• **Smooth Transitions** → Advanced fade effect system
✅ Usage Disclaimer
Momentum Contour Pulse is a visual analytics tool designed for educational and informational purposes only.
It is not financial advice, nor should its signals be interpreted as trading recommendations.
Users are solely responsible for their own trading decisions.
Always practice appropriate risk management and consult with a licensed financial professional when necessary.
The creator of this tool assumes no liability for any financial losses resulting from its use.
DrawZigZag🟩 OVERVIEW
This library draws zigzag lines for existing pivots. It is designed to be simple to use. If your script creates pivots and you want to join them up while handling edge cases, this library does that quickly and efficiently. If you want your pivots created for you, choose one of the many other zigzag libraries that do that.
🟩 HOW TO USE
Pine Script libraries contain reusable code for importing into indicators. You do not need to copy any code out of here. Just import the library and call the function you want.
For example, for version 1 of this library, import it like this:
import SimpleCryptoLife/DrawZigZag/1
See the EXAMPLE USAGE sections within the library for examples of calling the functions.
For more information on libraries and incorporating them into your scripts, see the Libraries section of the Pine Script User Manual.
🟩 WHAT IT DOES
I looked at every zigzag library on TradingView, after finishing this one. They all seemed to fall into two groups in terms of functionality:
• Create the pivots themselves, using a combination of Williams-style pivots and sometimes price distance.
• Require an array of pivot information, often in a format that uses user-defined types.
My library takes a completely different approach.
Firstly, it only does the drawing. It doesn't calculate the pivots for you. This isn't laziness. There are so many ways to define pivots and that should be up to you. If you've followed my work on market structure you know what I think of Williams pivots.
Secondly, when you pass information about your pivots to the library function, you only need the minimum of pivot information -- whether it's a High or Low pivot, the price, and the bar index. Pass these as normal variables -- bools, ints, and floats -- on the fly as your pivots confirm. It is completely agnostic as to how you derive your pivots. If they are confirmed an arbitrary number of bars after they happen, that's fine.
So why even bother using it if all it does it draw some lines?
Turns out there is quite some logic needed in order to connect highs and lows in the right way, and to handle edge cases. This is the kind of thing one can happily outsource.
🟩 THE RULES
• Zigs and zags must alternate between Highs and Lows. We never connect a High to a High or a Low to a Low.
• If a candle has both a High and Low pivot confirmed on it, the first line is drawn to the end of the candle that is the opposite to the previous pivot. Then the next line goes vertically through the candle to the other end, and then after that continues normally.
• If we draw a line up from a Low to a High pivot, and another High pivot comes in higher, we *extend* the line up, and the same for lines down. Yes this is a form of repainting. It is in my opinion the only way to end up with a correct structure.
• We ignore lower highs on the way up and higher lows on the way down.
🟩 WHAT'S COOL ABOUT THIS LIBRARY
• It's simple and lightweight: no exported user-defined types, no helper methods, no matrices.
• It's really fast. In my profiling it runs at about ~50ms, and changing the options (e.g., trimming the array) doesn't make very much difference.
• You only need to call one function, which does all the calculations and draws all lines.
• There are two variations of this function though -- one simple function that just draws lines, and one slightly more advanced method that modifies an array containing the lines. If you don't know which one you want, use the simpler one.
🟩 GEEK STUFF
• There are no dependencies on other libraries.
• I tried to make the logic as clear as I could and comment it appropriately.
• In the `f_drawZigZags` function, the line variable is declared using the `var` keyword *inside* the function, for simplicity. For this reason, it persists between function calls *only* if the function is called from the global scope or a local if block. In general, if a function is called from inside a loop , or multiple times from different contexts, persistent variables inside that function are re-initialised on each call. In this case, this re-initialisation would mean that the function loses track of the previous line, resulting in incorrect drawings. This is why you cannot call the `f_drawZigZags` function from a loop (not that there's any reason to). The `m_drawZigZagsArray` does not use any internal `var` variables.
• The function itself takes a Boolean parameter `_showZigZag`, which turns the drawings on and off, so there is no need to call the function conditionally. In the examples, we do call the functions from an if block, purely as an illustration of how to increase performance by restricting the amount of code that needs to be run.
🟩 BRING ON THE FUNCTIONS
f_drawZigZags(_showZigZag, _isHighPivot, _isLowPivot, _highPivotPrice, _lowPivotPrice, _pivotIndex, _zigzagWidth, _lineStyle, _upZigColour, _downZagColour)
This function creates or extends the latest zigzag line. Takes real-time information about pivots and draws lines. It does not calculate the pivots. It must be called once per script and cannot be called from a loop.
Parameters:
_showZigZag (bool) : Whether to show the zigzag lines.
_isHighPivot (bool) : Whether the current bar confirms a high pivot. Note that pivots are confirmed after the bar in which they occur.
_isLowPivot (bool) : Whether the current bar confirms a low pivot.
_highPivotPrice (float) : The price of the high pivot that was confirmed this bar. It is NOT the high price of the current bar.
_lowPivotPrice (float) : The price of the low pivot that was confirmed this bar. It is NOT the low price of the current bar.
_pivotIndex (int) : The bar index of the pivot that was confirmed this bar. This is not an offset. It's the `bar_index` value of the pivot.
_zigzagWidth (int) : The width of the zigzag lines.
_lineStyle (string) : The style of the zigzag lines.
_upZigColour (color) : The colour of the up zigzag lines.
_downZagColour (color) : The colour of the down zigzag lines.
Returns: The function has no explicit returns. As a side effect, it draws or updates zigzag lines.
method m_drawZigZagsArray(_a_zigZagLines, _showZigZag, _isHighPivot, _isLowPivot, _highPivotPrice, _lowPivotPrice, _pivotIndex, _zigzagWidth, _lineStyle, _upZigColour, _downZagColour, _trimArray)
Namespace types: array
Parameters:
_a_zigZagLines (array)
_showZigZag (bool) : Whether to show the zigzag lines.
_isHighPivot (bool) : Whether the current bar confirms a high pivot. Note that pivots are usually confirmed after the bar in which they occur.
_isLowPivot (bool) : Whether the current bar confirms a low pivot.
_highPivotPrice (float) : The price of the high pivot that was confirmed this bar. It is NOT the high price of the current bar.
_lowPivotPrice (float) : The price of the low pivot that was confirmed this bar. It is NOT the low price of the current bar.
_pivotIndex (int) : The bar index of the pivot that was confirmed this bar. This is not an offset. It's the `bar_index` value of the pivot.
_zigzagWidth (int) : The width of the zigzag lines.
_lineStyle (string) : The style of the zigzag lines.
_upZigColour (color) : The colour of the up zigzag lines.
_downZagColour (color) : The colour of the down zigzag lines.
_trimArray (bool) : If true, the array of lines is kept to a maximum size of two lines (the line elements are not deleted). If false (the default), the array is kept to a maximum of 500 lines (the maximum number of line objects a single Pine script can display).
Returns: This function has no explicit returns but it modifies a global array of zigzag lines.
ATR, ADX, RSI TableATR, ADX & RSI Dashboard (Color-Coded)
Overview
This indicator provides a clean, all-in-one dashboard that displays the current values for three of the most popular technical indicators: Average True Range (ATR), Average Directional Index (ADX), and Relative Strength Index (RSI).
To make analysis faster and more intuitive, the values in the table are dynamically color-coded based on key thresholds. This allows you to get an immediate visual summary of market volatility, trend strength, and momentum without cluttering your main chart area.
Features
The indicator displays a simple table in the bottom-right corner of your chart with the following color logic:
ATR (Volatility): Measures the average volatility of an asset.
Green: Low Volatility (ATR is less than 3% of the current price).
Orange: Moderate Volatility (ATR is between 3% and 5%).
Red: High Volatility (ATR is greater than 5%).
ADX (Trend Strength): Measures the strength of the underlying trend, regardless of its direction.
Red: Weak or Non-Trending Market (ADX is below 20).
Orange: Developing or Neutral Trend (ADX is between 20 and 25).
Green: Strong Trend (ADX is above 25).
RSI (Momentum): Measures the speed and change of price movements to identify overbought or oversold conditions.
Green: Potentially Oversold (RSI is below 40).
Orange: Neutral/Normal Conditions (RSI is between 40 and 70).
Red: Potentially Overbought (RSI is above 70).
How to Use
This tool is perfect for traders who want a quick, at-a-glance understanding of the current market state. Instead of analyzing three separate indicators, you can use this dashboard to:
Quickly confirm if a strong trend is present before entering a trade.
Assess volatility to adjust your stop-loss and take-profit levels.
Instantly spot potential overbought or oversold conditions.
Customization
All input lengths for the ATR, ADX, and RSI are fully customizable in the indicator's settings menu, allowing you to tailor the calculations to your specific trading style and timeframe.