New York Midnight Day SeparatorThis Pine Script indicator draws vertical separator lines on the chart at midnight in the New York timezone (Eastern Time). The lines mark the start of each new trading day from Monday to Friday, helping traders visually distinguish daily sessions based on New York market time. The separator lines are rendered as slightly transparent gray lines spanning the full price range of each midnight candle, providing a clean and unobtrusive visual aid for session tracking.
週期
AWR R & LR Oscillator with plots & tableHello trading viewers !
I'm glad to share with you one of my favorite indicator. It's the aggregate of many things. It is partly based on an indicator designed by gentleman goat. Many thanks to him.
1. Oscillator and Correlation Calculations
Overview and Functionality: This part of the indicator computes up to 10 Pearson correlation coefficients between a chosen source (typically the close price, though this is user-configurable) and the bar index over various periods. Starting with an initial period defined by the startPeriod parameter and increasing by a set increment (periodIncrement), each correlation coefficient is calculated using the built-in ta.correlation function over successive ranges. These coefficients are stored in an array, and the indicator calculates their average (avgPR) to provide a complete view of the market trend strength.
Display Features: Each individual coefficient, as well as the overall average, is plotted on the chart using a specific color. Horizontal lines (both dashed and solid) are drawn at levels 0, ±0.8, and ±1, serving as visual thresholds. Additionally, conditional fills in red or blue highlight when values exceed these thresholds, helping the user quickly identify potential extreme conditions (such as overbought or oversold situations).
2. Visual Signals and Automated Alerts
Graphical Signal Enhancements: To reinforce the analysis, the indicator uses graphical elements like emojis and shape markers. For example:
If all 10 curves drop below -0.79, a 🌋 emoji appears at the bottom of the chart;
When curves 2 through 10 are below -0.79, a ⛰️ emoji is displayed below the bar, potentially serving as a buy signal accompanied by an alert condition;
Likewise, symmetrical conditions for correlations exceeding 0.79 produce corresponding emojis (🤿 and 🏖️) at the top or bottom of the chart.
Alerts and Notifications: Using these visual triggers, several alertcondition statements are defined within the script. This allows users to set up TradingView alerts and receive real-time notifications whenever the market reaches these predefined critical zones identified by the multi-period analysis.
3. Regression Channel Analysis
Principles and Calculations: In addition to the oscillator, the indicator implements an analysis of regression channels. For each of the 8 configurable channels, the user can set a range of periods (for example, min1 to max1, etc.). The function calc_regression_channel iterates through the defined period range to find the optimal period that maximizes a statistical measure derived from a regression parameter calculated by the function r(p). Once this optimal period is identified, the indicator computes two key points (A and B) which define the main regression line, and then creates a channel based on the calculated deviation (an RMSE multiplied by a user-defined factor).
The regression channels are not displayed on the chart but are used to plot shapes & fullfilled a table.
Blue shapes are plotted when 6th channel or 7th channel are lower than 3 deviations
Yellow shapes are plotted when 6th channel or 7th channel are higher than 3 deviations
4. Scores, Conditions, and the Summary Table
Scoring System: The indicator goes further by assigning scores across multiple analytical categories, such as:
1. BigPear Score
What It Represents: This score is based on a longer-term moving average of the Pearson correlation values (SMA 100 of the average of the 10 curves of correlation of Pearson). The BigPear category is designed to capture where this longer-term average falls within specific ranges.
Conditions: The script defines nine boolean conditions (labeled BigPear1up through BigPear9up for the “up” direction).
Here's the rules :
BigPear1up = (bigsma_avgPR <= 0.5 and bigsma_avgPR > 0.25)
BigPear2up = (bigsma_avgPR <= 0.25 and bigsma_avgPR > 0)
BigPear3up = (bigsma_avgPR <= 0 and bigsma_avgPR > -0.25)
BigPear4up = (bigsma_avgPR <= -0.25 and bigsma_avgPR > -0.5)
BigPear5up = (bigsma_avgPR <= -0.5 and bigsma_avgPR > -0.65)
BigPear6up = (bigsma_avgPR <= -0.65 and bigsma_avgPR > -0.7)
BigPear7up = (bigsma_avgPR <= -0.7 and bigsma_avgPR > -0.75)
BigPear8up = (bigsma_avgPR <= -0.75 and bigsma_avgPR > -0.8)
BigPear9up = (bigsma_avgPR <= -0.8)
Conditions: The script defines nine boolean conditions (labeled BigPear1down through BigPear9down for the “down” direction).
BigPear1down = (bigsma_avgPR >= -0.5 and bigsma_avgPR < -0.25)
BigPear2down = (bigsma_avgPR >= -0.25 and bigsma_avgPR < 0)
BigPear3down = (bigsma_avgPR >= 0 and bigsma_avgPR < 0.25)
BigPear4down = (bigsma_avgPR >= 0.25 and bigsma_avgPR < 0.5)
BigPear5down = (bigsma_avgPR >= 0.5 and bigsma_avgPR < 0.65)
BigPear6down = (bigsma_avgPR >= 0.65 and bigsma_avgPR < 0.7)
BigPear7down = (bigsma_avgPR >= 0.7 and bigsma_avgPR < 0.75)
BigPear8down = (bigsma_avgPR >= 0.75 and bigsma_avgPR < 0.8)
BigPear9down = (bigsma_avgPR >= 0.8)
Weighting:
If BigPear1up is true, 1 point is added; if BigPear2up is true, 2 points are added; and so on up to 9 points from BigPear9up.
Total Score:
The positive score (posScoreBigPear) is the sum of these weighted conditions.
Similarly, there is a negative score (negScoreBigPear) that is calculated using a mirrored set of conditions (named BigPear1down to BigPear9down), each contributing a negative weight (from -1 to -9).
In essence, the BigPear score tells you—in a weighted cumulative way—where the longer-term correlation average falls relative to predefined thresholds.
2. Pear Score
What It Represents: This category uses the immediate average of the Pearson correlations (avgPR) rather than a longer-term smoothed version. It reflects a more current picture of the market’s correlation behavior.
How It’s Calculated:
Conditions: There are nine conditions defined for the “up” scenario (named Pear1up through Pear9up), which partition the range of avgPR into intervals. For instance:
Pear1up = (avgPR > -0.2 and avgPR <= 0)
Pear2up = (avgPR > -0.4 and avgPR <= -0.2)
Pear3up = (avgPR > -0.5 and avgPR <= -0.4)
Pear4up = (avgPR > -0.6 and avgPR <= -0.5)
Pear5up = (avgPR > -0.65 and avgPR <= -0.6)
Pear6up = (avgPR > -0.7 and avgPR <= -0.65)
Pear7up = (avgPR > -0.75 and avgPR <= -0.7)
Pear8up = (avgPR > -0.8 and avgPR <= -0.75)
Pear9up = (avgPR > -1 and avgPR <= -0.8)
There are nine conditions defined for the “down” scenario (named Pear1down through Pear9down), which partition the range of avgPR into intervals. For instance:
Pear1down = (avgPR >= 0 and avgPR < 0.2)
Pear2down = (avgPR >= 0.2 and avgPR < 0.4)
Pear3down = (avgPR >= 0.4 and avgPR < 0.5)
Pear4down = (avgPR >= 0.5 and avgPR < 0.6)
Pear5down = (avgPR >= 0.6 and avgPR < 0.65)
Pear6down = (avgPR >= 0.65 and avgPR < 0.7)
Pear7down = (avgPR >= 0.7 and avgPR < 0.75)
Pear8down = (avgPR >= 0.75 and avgPR < 0.8)
Pear9down = (avgPR >= 0.8 and avgPR <= 1)
Weighting:
Each condition has an associated weight, such as 0.9 for Pear1up, 1.9 for Pear2up, and so on, up to 9 for Pear9up.
Sum up :
Pear1up = 0.9
Pear2up = 1.9
Pear3up = 2.9
Pear4up = 3.9
Pear5up = 4.99
Pear6up = 6
Pear7up = 7
Pear8up = 8
Pear9up = 9
Total Score:
The positive score (posScorePear) is the sum of these values for each condition that returns true.
A corresponding negative score (negScorePear) is calculated using conditions for when avgPR falls on the positive side, with similar weights in the negative direction.
This score quantifies the current correlation reading by translating its relative level into a numeric score through a weighted sum.
3. Trendpear Score
What It Represents: The Trendpear score is more dynamic as it compares the current avgPR with its short-term moving average (sma_avgPR / 14 periods ) and also considers its relationship with an even longer moving average (bigsma_avgPR / 100 periods). It is meant to capture the trend or momentum in the correlation behavior.
How It’s Calculated:
Conditions: Nine conditions (from Trendpear1up to Trendpear9up) are defined to check:
Whether avgPR is below, equal to, or above sma_avgPR by different margins;
Whether it is trending upward (i.e., it is higher than its previous value).
Here are the rules
Trendpear1up = (avgPR <= sma_avgPR -0.2) and (avgPR >= avgPR )
Trendpear2up = (avgPR > sma_avgPR -0.2) and (avgPR <= sma_avgPR -0.07) and (avgPR >= avgPR )
Trendpear3up = (avgPR > sma_avgPR -0.07) and (avgPR <= sma_avgPR -0.03) and (avgPR >= avgPR )
Trendpear4up = (avgPR > sma_avgPR -0.03) and (avgPR <= sma_avgPR -0.02) and (avgPR >= avgPR )
Trendpear5up = (avgPR > sma_avgPR -0.02) and (avgPR <= sma_avgPR -0.01) and (avgPR >= avgPR )
Trendpear6up = (avgPR > sma_avgPR -0.01) and (avgPR <= sma_avgPR -0.001) and (avgPR >= avgPR )
Trendpear7up = (avgPR >= sma_avgPR) and (avgPR >= avgPR ) and (avgPR <= bigsma_avgPR)
Trendpear8up = (avgPR >= sma_avgPR) and (avgPR >= avgPR ) and (avgPR >= bigsma_avgPR -0.03)
Trendpear9up = (avgPR >= sma_avgPR) and (avgPR >= avgPR ) and (avgPR >= bigsma_avgPR)
Weighting:
The weights here are not linear. For example, the lightest condition may add 0.1 point, whereas the most extreme condition (e.g., when avgPR is not only above the moving average but also reaches a high proportion relative to bigsma_avgPR) might add as much as 90 points.
Trendpear1up = 0.1
Trendpear2up = 0.2
Trendpear3up = 0.3
Trendpear4up = 0.4
Trendpear5up = 0.5
Trendpear6up = 0.69
Trendpear7up = 7
Trendpear8up = 8.9
Trendpear9up = 90
Total Score:
The positive score (posScoreTrendpear) is the sum of the weights from all conditions that are satisfied.
A negative counterpart (negScoreTrendpear) exists similarly for when the trend indicates a downward bias.
Trendpear integrates both the level and the direction of change in the correlations, giving a strong numeric indication when the market starts to diverge from its short-term average.
4. Deviation Score
What It Represents: The “Écart” score quantifies how far the asset’s price deviates from the boundaries defined by the regression channels. This metric can indicate if the price is excessively deviating—which might signal an eventual reversion—or confirming a breakout.
How It’s Calculated:
Conditions: For each channel (with at least seven channels contributing to the scoring from the provided code), there are three levels of deviation:
First tier (EcartXup): Checks if the price is below the upper boundary but above a second boundary.
Second tier (EcartXup2): Checks if the price has dropped further, between a lower and a more extreme boundary.
Third tier (EcartXup3): Checks if the price is below the most extreme limit.
Weighting:
Each tier within a channel has a very small weight for the lowest severities (for example, 0.0001 for the first tier, 0.0002 for the second, 0.0003 for the third) with weights increasing with the channel index.
First channel : 0.0001 to 0.0003 (very short term)
Second channel : 0.001 to 0.003 (short term)
Third channel : 0.01 to 0.03 (short mid term)
4th channel : 0.1 to 0.3 ( mid term)
5th channel: 1 to 3 (long mid term)
6th channel : 10 to 30 (long term)
7th channel : 100 to 300 (very long term)
Total Score:
The overall positive score (posScoreEcart) is the sum of all the weights for conditions met among the first, second, and third tiers.
The corresponding negative score (negScoreEcart) is calculated similarly (using conditions when the price is above the channel boundaries), with the weights being the same in magnitude but negative in sign.
This layered scoring method allows the indicator to reflect both minor and major deviations in a gradated and cumulative manner.
Example :
Score + = 321.0001
Score - = -0.111
The asset price is really overextended in long term view, not for mid term & short term expect the in the very short term.
Score + = 0.0033
Score - = -1.11
The asset price is really extended in short term view, not for mid term (even a bit underextended) & long term is neutral
5. Slope Score
What It Represents: The Slope score captures the trend direction and steepness of the regression channels. It reflects whether the regression line (and hence the underlying trend) is sloping upward or downward.
How It’s Calculated:
Conditions:
if the slope has a uptrend = 1
if the slope has a downtrend = -1
Weighting:
First channel : 0.0001 to 0.0003 (very short term)
Second channel : 0.001 to 0.003 (short term)
Third channel : 0.01 to 0.03 (short mid term)
4th channel : 0.1 to 0.3 ( mid term)
5th channel: 1 to 3 (long mid term)
6th channel : 10 to 30 (long term)
7th channel : 100 to 300 (very long term)
The positive slope conditions incrementally add weights from 0.0001 for the smallest positive slopes to 100 for the largest among the seven checks. And negative for the downward slopes.
The positive score (posScoreSlope) is the sum of all the weights from the upward slope conditions that are met.
The negative score (negScoreSlope) sums the negative weights when downward conditions are met.
Example :
Score + = 111
Score - = -0.1111
Trend is up for longterm & down for mid & short term
The slope score therefore emphasizes both the magnitude and the direction of the trend as indicated by the regression channels, with an intentional asymmetry that flags strong downtrends more aggressively.
Summary
For each category—BigPear, Pear, Trendpear, Écart, and Slope—the indicator evaluates a defined set of conditions. Each condition is a binary test (true/false) based on different thresholds or comparisons (for example, comparing the current value to a moving average or a channel boundary). When a condition is true, its assigned weight is added to the cumulative score for that category. These individual scores, both positive and negative, are then displayed in a table, making it easy for the trader to see at a glance where the market stands according to each analytical dimension.
This comprehensive, weighted approach allows the indicator to encapsulate several layers of market information into a single set of scores, aiding in the identification of potential trading opportunities or market reversals.
5. Practical Use and Application
How to Use the Indicator:
Interpreting the Signals:
On your chart, observe the following components:
The individual correlation curves and their average, plotted with visual thresholds;
Visual markers (such as emojis and shape markers) that signal potential oversold or overbought conditions
The summary table that aggregates the scores from each category, offering a quick glance at the market’s state.
Trading Alerts and Decisions: Set your TradingView alerts through the alertcondition functions provided by the indicator. This way, you receive immediate notifications when critical conditions are met, allowing you to react as soon as the market reaches key levels. This tool is especially beneficial for advanced traders who want to combine multiple technical dimensions to optimize entry and exit points with a confluence of signals.
Conclusion and Additional Insights
In summary, this advanced indicator innovatively combines multi-scale Pearson correlation analysis (via multiple linear regressions) with robust regression channel analysis. It offers a deep and nuanced view of market dynamics by delivering clear visual signals and a comprehensive numerical summary through a built-in score table.
Combine this indicator with other tools (e.g., oscillators, moving averages, volume indicators) to enhance overall strategy robustness.
Options Risk Manager v2.2.0 - Priority 7 CompleteScript Description for TradingView Publication
Options Risk Manager v2.2.0 - Priority 7 Complete
What does this script do?
Options Risk Manager v2.2.0 is a comprehensive position management system designed specifically for options traders. The indicator calculates precise stop loss levels, risk/reward targets, and position sizing based on user-defined risk parameters. It provides real-time profit/loss tracking, options Greeks monitoring, and automated alert systems for critical price levels.
The script displays entry points, stop losses, and profit targets directly on the chart while continuously calculating position metrics including dollar risk, account exposure, and probability of success. Version 2.2.0 introduces Priority 7 advanced alerts with dynamic risk warnings and multi-condition notifications.
How does it do it?
The script performs several key calculations:
1. Risk-Based Stop Loss Calculation - Determines stop loss levels based on percentage of entry price, automatically adjusting for calls versus puts. Put positions place stops above entry, while calls place stops below.
2. Position Sizing Algorithm - Calculates optimal contract quantities using account size, risk
percentage, and stop distance to ensure consistent risk per trade regardless of underlying price.
3. Options-Specific P&L Tracking - Incorporates Delta, Gamma, Vega, and Theta to provide accurate profit/loss calculations for options positions, including time decay effects.
4. Three-Phase Trade Management - Implements systematic position management through Entry
Phase (initial risk), Profit Phase (approaching target), and Trailing Phase (EMA-based exit
management).
5. Multi-Level Alert System - Monitors price action, Greeks thresholds, time decay acceleration, and account risk levels to generate context-aware notifications.
How to use it?
Initial Setup:
1. Apply indicator to any optionable security
2. Toggle "In Position" ON when entering a trade
3. Set Direction (Call/Put) and Side (Long/Short)
4. Enter the underlying price at position entry
5. Specify number of contracts and risk percentage
Position Management:
Blue line shows entry price
Red line indicates stop loss level
Orange line displays risk/reward target
Purple EMA line activates after target hit
Monitor real-time P&L in trade panels
Alert Configuration:
Enable Advanced Alerts in settings
Set profit/loss notification thresholds
Configure Greek-based warnings
Activate time decay alerts for expiration
Risk Parameters:
Risk % determines stop distance from entry
Account Value sets position sizing limits
Contract Multiplier (standard = 100)
R:R Ratio defines profit targets
What makes it unique?
Options Risk Manager addresses the specific challenges of options trading that generic indicators miss. The script accounts for the inverse relationship in put options (profiting from price declines), incorporates Greeks for accurate P&L calculations, and provides options-specific limit orders for TradeStation integration.
The three-phase management system removes emotional decision-making by defining clear rules for position management. Phase transitions occur automatically based on price action, shifting from initial risk management to profit protection to trend-following modes.
Version 2.2.0's Priority 7 alert system provides intelligent notifications that include live metrics, risk warnings, and market context rather than simple price crosses.
Key Features Summary
Options-Specific Calculations - Proper handling of calls/puts with inverse relationships
Risk-Based Position Sizing - Consistent risk regardless of underlying price
Greeks Integration - Delta, Gamma, Vega, Theta for accurate tracking
Phase Management System - Systematic three-stage position handling
Advanced Alert System - Context-aware notifications with metrics
TradeStation Integration - Option limit orders for execution
Visual Risk Display - Clear chart overlays for all levels
Probability Calculator - Win/loss probability with expected value
Multi-Account Support - Scales from small to large accounts
Important Notes
This indicator requires manual input of option prices and Greeks (available from your broker's option chain). It functions as a risk management overlay and does not generate entry signals. The calculations assume standard options contracts of 100 shares.
Designed for TradeStation platform with full functionality. Basic features available on other platforms
without options data integration. Always verify calculations with your broker's risk system before placing
trades.
Buysell Martingale Signal - CustomBuysell Martingale Signal - Custom Indicator
Introduction:
This indicator provides a dynamic buy and sell signal system incorporating an adaptive Martingale logic. Built upon the signalLib_yashgode9/2 library, it is designed for use across various markets and timeframes.
Key Features:
Primary Buy & Sell Signals: Identifies initial buy and sell opportunities based on directional changes derived from the signalLib.
Martingale Signals:
For Short (Sell) Positions: A Martingale Sell signal is triggered when the price moves against the existing short position by a specified stepPercent from the last entry price, indicating a potential opportunity to average down or increase position size.
For Long (Buy) Positions: Similarly, a Martingale Buy signal is triggered when the price moves against the existing long position by a stepPercent from the last entry price.
On-Chart Labels: Displays clear, customizable labels on the chart for primary Buy, Sell, Martingale Buy, and Martingale Sell signals.
Customizable Colors: Allows users to set distinct colors for primary signals and Martingale signals for better visual distinction.
Adjustable Sensitivity: Features configurable parameters (DEPTH_ENGINE, DEVIATION_ENGINE, BACKSTEP_ENGINE) to fine-tune the sensitivity of the underlying signal generation.
Webhook Support (Static Message Alerts): This indicator provides alerts with static messages for both primary and Martingale buy/sell signals. These alerts can be leveraged for automation by external systems (such as trading bots or exchange-provided Webhook Signal Trading services).
Important Note: When using these alerts for automation, an external system is required to handle the complex Martingale logic and position management (e.g., tracking steps, PnL calculation, hedging, dynamic quantity sizing), as this indicator solely focuses on signal generation and sending predefined messages.
How to Use:
Add the indicator to your desired chart.
Adjust the input parameters in the indicator's settings to match your specific trading symbol and timeframe.
For automation, you can set up TradingView alerts for the Buy Signal (Main/Martingale) and Sell Signal (Main/Martingale) conditions, pointing them to your preferred Webhook URL.
Configurable Parameters:
DEPTH_ENGINE: (e.g., 30) Controls the depth of analysis for the signal algorithm.
DEVIATION_ENGINE: (e.g., 5) Defines the allowable deviation for signal generation.
BACKSTEP_ENGINE: (e.g., 5) Specifies the number of historical bars to look back.
Martingale Step Percent: (e.g., 0.5) The percentage price movement against the current position that triggers a Martingale signal.
Labels Transparency: Adjusts the transparency of the on-chart signal labels.
Buy-Color / Sell-Color: Sets the color for primary Buy and Sell signal labels.
Martingale Buy-Color / Martingale Sell-Color: Sets the color for Martingale Buy and Sell signal labels.
Label size: Controls the visual size of the labels.
Label Offset: Adjusts the vertical offset of the labels from the candlesticks.
Risk Warning:
Financial trading inherently carries significant risk. Martingale strategies are particularly high-risk and can lead to substantial losses or even complete liquidation of capital if the market moves strongly and persistently against your position. Always backtest thoroughly and practice with a demo account, fully understanding the associated risks, before engaging with real capital.
Daily Levels & Time MarkersKey Features:
Price Level Tracking:
Previous Day High/Low (PDH/PDL) - Shows yesterday's highest and lowest prices as horizontal lines
Overnight High/Low (ONH/ONL) - Tracks the highest and lowest prices during overnight sessions (4:00 PM to 9:30 AM ET)
Opening Range High/Low (ORH/ORL) - Captures the price range during the first 30 minutes of regular trading (9:30-10:00 AM ET)
Visual Elements:
Draws horizontal lines for previous day levels that extend across the chart
Creates rays (extending lines) for overnight and opening range levels that project forward from when they were established
Uses different colors and line styles for each level type (solid lines for daily levels, dashed for opening range)
Adds text labels showing the exact price values (PDH, PDL, ONH, ONL, ORH, ORL)
Time Markers:
Draws vertical dashed lines at key trading times: 10:00 AM, 11:30 AM, 1:00 PM, 2:30 PM, and 4:00 PM ET
Uses Eastern Time zone by default but allows customization
Customization Options:
Toggle each feature on/off independently
Customize colors for all line types
Adjust timezone settings
QG-Particle OscillatorThis is an advanced oscillator based on auxiliary particle filter. It separates signal from noise and uses smoothing algorithm similar to JMA.
The main oscillator line is a smoothed and detrended version of the price series similar to detrended oscillator line. The purple/aqua lines are a prediction based on an additional adaptive smoothing technique and current volatility.
The prediction is smoothed twice and is supposed to represent the true signal without any noise, thus the prediction should always be less than the raw detrend line. However, certain volatile conditions will cause the prediction to cross above/below the detrend line. When this happens the likelihood of a reversal or pullback is extremely high.
There are 3 dots on the zero line- Red, Green and Yellow. The yellow dots warn of an eminent pullback 2 bars before it actually occurs. This is a non-repainting indicator.
One can also use this indicator to trade CCI signals, similar to zero line rejection in existing trend.
The indicator has 2 settings- Period and Phase. The phase represents cycle phase and Period represents oscillator period.
Credits: This indicator has been originally published for Ninjatrader and this is conversion into pinescript.
Adjustable Vertical LinesThe script provides an indicator which will plot lines - 15 min, 30 min and 60 min. You can customize the time intervals and go to as low as one minute, but I found the 15-minute and 30-minute intervals works best for me when trying to find setups, and the lower time-frame intervals, is just pointless to use if you're not scalping on the seconds timeframe.
You can customize inputs for the line style. Line thickness, colour, etc.
I've seen this work using the OBR theory and applying it to the one-minute candle then looking for other confluences like order blocks, or breakers, FVGs, BOS/CHoC for further confirmation for scalping. It's important to backtest though and see for yourself.
Thanks for the boost.
Candle Count RSI📈 Candle Count RSI — A Dual-Perspective Momentum Engine
The Candle Count RSI is a custom-built momentum oscillator that expands on the classic Relative Strength Index (RSI) by introducing a directional-only variant that tracks the frequency of bullish or bearish closes, rather than price magnitude. It gives traders a second lens through which to evaluate momentum, trend conviction, and subtle divergences—often invisible to traditional price-based RSI.
💡 What Makes It Unique?
While the standard RSI is sensitive to the size of price changes, the Candle Count RSI is magnitude-blind. It counts candle closes above/below open over a lookback period, generating a purer signal of directional consistency. To enhance signal fidelity, it includes a streak amplifier, dynamically weighting extended runs of green or red candles to reflect intensity of market bias—without introducing artificial price sensitivity.
This dual-RSI approach allows for:
- Divergence detection between directional bias and price magnitude.
- Smoother trend confirmation in choppy markets.
- Cleaner visual cues using dynamic glow and background logic.
📐 How Standard RSI Actually Works (Not What You Think)
RSI doesn’t just check if price went up or down over a span—it checks each individual candle and tracks whether it closed higher or lower than the one before. Here's how it works under the hood:
1.) For each bar, it calculates the change from the previous close.
2.) It separates those changes into gains (upward moves) and losses (downward moves).
3.) Then it computes a smoothed average of those gains and losses (usually using an RMA).
4.) It calculates the Relative Strength (RS) as:
RS = AvgGain / AvgLoss
5.) Finally, it plugs that into the RSI formula:
RSI = 100 - (100 / (1 + RS))
⚖️ What Does the 50 Line Mean?
- The RSI scale runs from 0 to 100, but 50 is the true neutral zone:
- RSI > 50 means average gains outweigh average losses over the period.
- RSI < 50 means losses dominate.
- RSI ≈ 50? The market is balanced—momentum is indecisive, no clear trend bias.
- This makes 50 a powerful midline for trend filters, directional bias tools, and divergence detection—especially when paired with alternative RSI logic like Candle Count RSI.
🔧 Inputs and Customization
- Everything is fully modular and customizable:
🧠 Core Settings
- RSI Length: Used for both the standard RSI and Candle Count RSI.
📉 Standard RSI
- Classic RSI calculation based on price changes.
- Optional WMA smoothing to reduce noise.
- Glow effect toggle with custom intensity.
🕯 Candle Count RSI
- Computes RSI using only the count of up/down candles.
- Optional smoothing for stability.
- Amplifies streaks (e.g., multiple consecutive bullish candles increase strength).
- Glow effect toggle with adjustable strength.
🎇 Glow Visuals
- Background glow (subpane and/or main chart).
- Fades based on RSI distance from the 50 midpoint.
- Independent color settings for bull and bear bias.
🧬 Divergence Zones
- Detects when Candle RSI and Standard RSI diverge.
- Highlights:
- Bullish Divergence: Candle RSI > 50, Standard RSI < threshold.
- Bearish Divergence: Candle RSI < 50, Standard RSI > threshold.
- Background fill optionally shown in subpane and/or main chart.
📊 Directional Histogram
- MACD-style histogram showing the difference between the two RSI lines.
- Color-coded based on directional agreement:
- Both rising → green.
- Both falling → red.
- Conflict → yellow.
🧠 Under the Hood — How It Works
🔹 Standard RSI
- Classic ta.rsi() applied to close prices, optionally WMA-smoothed.
🔹 Candle Count RSI (CCR)
- Counts how many candles closed up/down over the period.
- Computes a magnitude-free RSI from these counts.
- Applies a streak-based multiplier to exaggerate trend strength during consecutive green/red runs.
- Optionally smoothed with WMA to create a clean signal line.
- This makes CCR ideal for detecting true directional bias without being faked out by volatile price spikes.
🔹 Divergence Logic
- When Candle RSI and Standard RSI disagree strongly across defined thresholds, background fills highlight early signs of momentum decay or hidden accumulation/distribution.
🔹 Glow Logic
- Glow zones are controlled by a master toggle and drawn with dynamic transparency:
- Further from 50 = stronger conviction = darker glow.
- Shows up in subpane and/or main chart depending on user preference.
📷 Suggested Use Case / Visual Setup
- Use in conjunction with your primary price action system.
- Watch for divergences between the Candle Count RSI and Standard RSI for early trend reversals.
- Use glow bias zones on the main chart to get subconscious directional cues during fast scalping.
- Histogram helps you confirm when both RSI variants agree—useful during strong trending conditions.
🛠️ Tip for Traders
- This tool isn’t trying to “predict” price. It’s designed to visualize hidden market psychology—when buyers are showing up with consistent pressure, or when momentum has a disconnect between conviction and magnitude. Use this to filter entries, spot weak rallies, or sense when a trend is about to break down.
⚠️ WARNING
- Not for use with Heikin Ashi, Renko, etc.).
🧠 Summary
Candle Count RSI is not just another mashup—it's a precision-built, dual-perspective oscillator that captures directional conviction using real candle behavior. Whether you're scalping intraday or swing trading momentum, this script helps clarify trend integrity and exposes hidden weaknesses with elegance and clarity.
—
🛠️ Built by: Sherlock_MacGyver
Feel free to share feedback or reach out if you'd like to collaborate on custom features.
NDOG & NWOG Indicatorndicator automatically identifies and displays New Day Opening Gaps (NDOG) and New Week Opening Gaps (NWOG) directly on your chart. It focuses on gaps based on specific session times in the New York (NY) timezone.
Key Features:
NDOG: Identifies the gap between the NY 4:59 PM (daily close) and the NY 6:00 PM (daily open).
NWOG: Identifies the gap between the Friday NY 4:59 PM (weekly close) and the Sunday NY 6:00 PM (weekly open).
Draws customizable lines for the high and low levels of each gap.
Option to show an additional mid-level line for each gap.
Includes options for line colors, styles, and width.
Allows filtering gaps by a minimum size.
Control the maximum number of recent NDOGs and NWOGs displayed.
Optionally shows text labels on the lines and a summary table on the chart.
This tool can help traders visualize potential areas of interest related to these specific opening gaps.
Note: Calculations are based on the "America/New_York" timezone.
Disclaimer: Trading involves risk and may not be suitable for all investors. This indicator is provided for informational and educational purposes only and does not constitute financial advice or a recommendation to trade. Use at your own risk.
Volume Strength HighlightThis simple script helps you quickly see when volume is strong or weak on the chart — it highlights the candles based on how the current volume compares to the recent average 📊
🔍 Here's what it does:
Calculates a 20-bar average volume
Marks candles green or red if volume is much higher than average (more than 1.5x)
Marks candles gray if volume is very low (less than 0.5x the average)
Normal candles stay unchanged
You can also turn on a basic volume plot in a separate panel if you want to compare visually (just toggle it in settings).
⚠️ It’s not a buy/sell signal — just a helper to see when the market is waking up or going quiet.
Not perfect but works well with other indicators! Let me know if you like it or have ideas to add more 💡
Market Sleep ZonesHey traders 👋
This script shows when the market is in a "sleeping" or low volatility phase. I call it Market Sleep Zones 😴
It looks at the average price movement over a window (default 20 bars), and if the price changes are small (under a % threshold you set), it highlights that area on the chart with a soft green background.
💡 This can help spot moments when the market is quiet — maybe before a breakout or just moving sideways.
It also places labels to mark where these zones start and end, so it's easy to track.
You can change:
The window size (how many bars to look back)
The breath depth (how much price is allowed to move before it’s "not sleeping" anymore)
Not perfect, but helpful if you want to avoid getting chopped in low-volatility zones or want to prepare for when the market "wakes up" 😄
Let me know if you find it useful or have ideas to improve it!
DECODE Global Liquidity IndexDECODE Global Liquidity Index 🌊
The DECODE Global Liquidity Index is a powerful tool designed to track and aggregate global liquidity by combining data from the world's 13 largest economies. It offers a comprehensive view of financial liquidity, providing crucial insights into the underlying currents that can influence asset prices and market trends.
The economies covered are: United States, China, European Union, Japan, India, United Kingdom, Brazil, Canada, Russia, South Korea, Australia, Mexico, and Indonesia. The European Union accounts for major individual economies within the EU like Germany, France, Italy, Spain, Netherlands, Poland, etc.
Key Features:
1. Customizable Liquidity Sources
Include Global M2: You can opt to include the M2 money supply from the 13 listed economies. M2 is a broad measure of money supply that includes cash, checking deposits, savings deposits, money market securities, mutual funds, and other time deposits. (Note: Australia uses M3 as its primary measure, which is included when M2 is selected for Australia).
Include Central Bank Balance Sheets (CBBS): Alternatively, or in addition, you can include the total assets held by the central banks of these economies. Central bank balance sheets expand or contract based on monetary policy operations like quantitative easing (QE) or tightening (QT).
Combined View: If you select both M2 and CBBS, and data is available for both, the indicator will display an average of the two aggregated values. If only one source type is selected, or if data for one type is unavailable despite both being selected, the indicator will display the single available and selected component. This provides flexibility in how you define and analyze global liquidity.
2. Lead/Lag Analysis (Forward Projection):
Lead Offset (Days): This feature allows you to project the liquidity index forward by a specified number of days.
Why it's useful: Global liquidity changes can often be a leading indicator for various asset classes, particularly those sensitive to risk appetite, like Bitcoin or growth stocks. These assets might lag shifts in liquidity. By applying a lead (e.g., 90 days), you can shift the liquidity data forward on your chart to more easily visualize potential correlations and identify if current asset price movements might be responding to past changes in liquidity.
3. Rate of Change (RoC) Oscillator:
Year-over-Year % View: Instead of viewing aggregate liquidity, you can switch to a Year-over-Year (YoY%) Rate of Change (ROC) oscillator.
Why it's useful:
Momentum Identification: The ROC highlights the speed and direction of liquidity changes. Positive values indicate liquidity is increasing compared to a year ago, while negative values show it's decreasing.
Turning Points: Oscillators make it easier to spot potential accelerations, decelerations, or reversals in liquidity trends. A cross above the zero line can signal strengthening liquidity momentum, while a cross below can signal weakening momentum.
Cycle Analysis: It helps in assessing the cyclical nature of liquidity provision and its potential impact on market cycles.
This indicator aims to provide a clear, customizable, and insightful measure of global liquidity to aid traders and investors in their market analysis.
Time HighlightHow This Works:
Time Conversion: The script converts the current time to HHMM format (e.g., 9:16 becomes 916) for easy comparison.
Timeframe Detection: It checks the current chart's timeframe:
For 1-minute charts: Exactly matches the target times
For 5-minute charts: Checks if the target time falls within the 5-minute window
For 15-minute charts: Checks if the target time falls within the 15-minute window
Highlighting: When the condition is met, it highlights the candle with a semi-transparent yellow color.
Note:
The script will work on 1-minute, 5-minute, and 15-minute timeframes only
The highlight appears on the candle that contains the specified time
The transparency is set to 70% so you can still see the candle through the highlight
You can adjust the transparency level by changing the transp parameter (0 = fully opaque, 100 = fully transparent).
make a pine script which change the color of the candle in yellow color in 1,5,15 timeframe at the time of 9:16, 9:31, 9:46
Simple Monthly SeasonalityThis script helps traders quickly visualize how an asset performs month by month over a customizable historical period.
🔍 What it does:
• Calculates average monthly returns over the past N years (default: 15).
• Highlights the current month for quick context.
• Displays results in a clean 2-column table (Month | Avg % Return).
💡 Features:
• Works on any timeframe – internally pulls monthly data.
• Color-coded performance (green for positive, red for negative).
• Dynamic highlights – the current month is softly emphasized.
• Fully customizable lookback period (1–50 years).
📈 Use cases:
• Spot seasonal market trends.
• Time entries/exits based on recurring historical strength/weakness.
• Build the foundation for more advanced seasonality or macro scripts.
Just load it on any chart and see which months historically outshine the rest.
⸻
XAU/USD Custom Levels
XAU/USD Dynamic Support & Resistance Levels
This indicator automatically draws horizontal support and resistance levels for Gold (XAU/USD) based on the current market price, eliminating the need for manual price range adjustments.
**Key Features:**
- **Dynamic Price Range**: Automatically calculates levels above and below the current price using a customizable percentage range (default 5%)
- **Multi-Tier Level System**: Four distinct level types with different visual styling:
- Major Levels (100s) - Blue, thick lines
- Sub Levels (50s) - Red, medium lines
- Sub-Sub Levels (25s) - Yellow, thin lines
- Mini Levels (12.5s) - Gray, dotted lines
- **Fully Customizable**: Adjust range percentage, step size, colors, and line history through input settings
- **Universal Compatibility**: Works at any gold price level - whether $1800, $2500, $3300 or beyond
**How It Works:**
The script centers the level grid around the current closing price and extends lines from a specified number of bars back to the right edge of the chart. The hierarchical level system helps identify key psychological price points and potential support/resistance zones commonly used in gold trading.
**Settings:**
- Price Range %: Control how far above/below current price to draw levels (1-20%)
- Level Step Size: Adjust spacing between levels (1.0-50.0)
- Bars Back: Set how far back in history to start the lines
- Color Customization: Personalize colors for each level type
Perfect for gold traders who need clean, automatically-updating support and resistance levels without manual configuration.
23/35 SR Channels (Hitchhikers Guide To Goldbach)This indicator highlights potential short-term support and resistance zones based on the 23rd and 35th minute of each hour. At each of these time points, it draws a zone from the high to the low of the candle, extending it forward for a fixed number of bars.
Key features:
🔸 Orange zones mark the 23-minute candle
🔹 Blue zones mark the 35-minute candle
📏 Zones extend for a customizable number of bars (channelLength)
🔄 Existing zones are removed if they overlap significantly with a new one
🏷️ Optional labels show when a 23 or 35 zone is created
This tool is ideal for traders looking to identify time-based micro-structures and intraday reaction zones.
Day Separator with Day LabelsAdjustable day separator that paints vertical lines through the start of day. Default set to GMT however totally customisable.
Has the day of week ladled also which is also optional in position.
there is a check box for a light chart background chart but default is dark background.
Vertical lines are customisable regarding thickness and colour.
Pretty new to it all so welcome feedback and amendment ideas.
NSE/BSE Derivative - Next Expiry Date With HolidaysNSE & BSE Expiry Tracker with Holiday Adjustments
This Pine Script is a TradingView indicator that helps traders monitor upcoming expiry dates for major Indian derivative contracts. It dynamically adjusts these expiry dates based on weekends and holidays, and highlights any expiry that falls on the current day.
⸻
Key Features
1. Tracks Expiry Dates for Major Contracts
The script calculates and displays the next expiry dates for the following instruments:
• NIFTY (weekly expiry every Thursday)
• BANKNIFTY, FINNIFTY, MIDCPNIFTY, NIFTYNXT50 (monthly expiry on the last Thursday of the month)
• SENSEX (weekly expiry every Tuesday)
• BANKEX and SENSEX 50 (monthly expiry on the last Tuesday of the month)
• Stocks in the F&O segment (monthly expiry on the last Thursday)
2. Holiday Awareness
Users can input a list of holiday dates in the format YYYY-MM-DD,YYYY-MM-DD,.... If any calculated expiry falls on one of these holidays or a weekend, the script automatically adjusts the expiry to the previous working day (Monday to Friday).
3. Customization Options
The user can:
• Choose the position of the expiry table on the chart (e.g. top right, bottom left).
• Select the font size for the expiry table.
• Enable or disable the table entirely (if implemented as an input toggle).
4. Visual Expiry Highlighting
If today is an expiry day for any instrument, the script highlights that instrument in the display. This makes it easy to spot significant expiry days, which are often associated with increased volatility and trading volume.
⸻
How It Works
• The script calculates the next expiry for each index using built-in date/time functions.
• For weekly expiries, it finds the next occurrence of the designated weekday.
• For monthly expiries, it finds the last Thursday or Tuesday of the month.
• Each expiry date is passed through a check to adjust for holidays or weekends.
• If today matches the adjusted expiry date, that row is visually emphasized.
⸻
Use Case
This script is ideal for traders who want a quick glance at which instruments are expiring soon — especially those managing options, futures, or expiry-based strategies.
Bull & Bear Power Separados📄 English Description for TradingView
Bull & Bear Power – Elder Style
This indicator displays the strength of buyers (Bull Power) and sellers (Bear Power) separately, based on Alexander Elder’s original concept.
It uses a 13-period Exponential Moving Average (EMA) as the baseline, calculating:
Bull Power = High – EMA
Bear Power = Low – EMA
✔️ Bull Power (green) shows buying pressure.
✔️ Bear Power (red) shows selling pressure.
Great for analyzing true market momentum and spotting early signs of potential trend reversals.
Can be used as confirmation together with moving averages (e.g., MMA30 and MMA50) or price action signals.
✅ On 1H gold charts (XAUUSD), it has shown solid behavior in filtering entries during clear trends.
Developed and shared for educational purposes by El Bit Criollo.
MVRV Ratio [Alpha Extract]The MVRV Ratio Indicator provides valuable insights into Bitcoin market cycles by tracking the relationship between market value and realized value. This powerful on-chain metric helps traders identify potential market tops and bottoms, offering clear buy and sell signals based on historical patterns of Bitcoin valuation.
🔶 CALCULATION The indicator processes MVRV ratio data through several analytical methods:
Raw MVRV Data: Collects MVRV data directly from INTOTHEBLOCK for Bitcoin
Optional Smoothing: Applies simple moving average (SMA) to reduce noise
Status Classification: Categorizes market conditions into four distinct states
Signal Generation: Produces trading signals based on MVRV thresholds
Price Estimation: Calculates estimated realized price (Current price / MVRV ratio)
Historical Context: Compares current values to historical extremes
Formula:
MVRV Ratio = Market Value / Realized Value
Smoothed MVRV = SMA(MVRV Ratio, Smoothing Length)
Estimated Realized Price = Current Price / MVRV Ratio
Distance to Top = ((3.5 / MVRV Ratio) - 1) * 100
Distance to Bottom = ((MVRV Ratio / 0.8) - 1) * 100
🔶 DETAILS Visual Features:
MVRV Plot: Color-coded line showing current MVRV value (red for overvalued, orange for moderately overvalued, blue for fair value, teal for undervalued)
Reference Levels: Horizontal lines indicating key MVRV thresholds (3.5, 2.5, 1.0, 0.8)
Zone Highlighting: Background color changes to highlight extreme market conditions (red for potentially overvalued, blue for potentially undervalued)
Information Table: Comprehensive dashboard showing current MVRV value, market status, trading signal, price information, and historical context
Interpretation:
MVRV ≥ 3.5: Potential market top, strong sell signal
MVRV ≥ 2.5: Overvalued market, consider selling
MVRV 1.5-2.5: Neutral market conditions
MVRV 1.0-1.5: Fair value, consider buying
MVRV < 1.0: Potential market bottom, strong buy signal
🔶 EXAMPLES
Market Top Identification: When MVRV ratio exceeds 3.5, the indicator signals potential market tops, highlighting periods where Bitcoin may be significantly overvalued.
Example: During bull market peaks, MVRV exceeding 3.5 has historically preceded major corrections, helping traders time their exits.
Bottom Detection: MVRV values below 1.0, especially approaching 0.8, have historically marked excellent buying opportunities.
Example: During bear market bottoms, MVRV falling below 1.0 has identified the most profitable entry points for long-term Bitcoin accumulation.
Tracking Market Cycles: The indicator provides a clear visualization of Bitcoin's market cycles from undervalued to overvalued states.
Example: Following the progression of MVRV from below 1.0 through fair value and eventually to overvalued territory helps traders position themselves appropriately throughout Bitcoin's market cycle.
Realized Price Support: The estimated realized price often acts as a significant
support/resistance level during market transitions.
Example: During corrections, price often finds support near the realized price level calculated by the indicator, providing potential entry points.
🔶 SETTINGS
Customization Options:
Smoothing: Toggle smoothing option and adjust smoothing length (1-50)
Table Display: Show/hide the information table
Table Position: Choose between top right, top left, bottom right, or bottom left positions
Visual Elements: All plots, lines, and background highlights can be customized for color and style
The MVRV Ratio Indicator provides traders with a powerful on-chain metric to identify potential market tops and bottoms in Bitcoin. By tracking the relationship between market value and realized value, this indicator helps identify periods of overvaluation and undervaluation, offering clear buy and sell signals based on historical patterns. The comprehensive information table delivers valuable context about current market conditions, helping traders make more informed decisions about market positioning throughout Bitcoin's cyclical patterns.
Average RSI (Daily + Weekly)📈 Average RSI (Relative Strength Index) – Beginner’s Guide
What it is:
The Average RSI is a technical indicator that combines multiple RSI values—such as daily and weekly RSI—into a single, smoothed line. This helps traders get a clearer picture of a stock’s momentum over both short- and medium-term timeframes.
Why it matters:
The RSI tells you whether a stock is potentially overbought (priced too high and due for a pullback) or oversold (priced too low and due for a bounce). Traditional RSI uses a scale from 0 to 100, with key levels at 70 (overbought) and 30 (oversold).
By averaging RSI across different timeframes, you reduce noise and get a better signal for trends and reversals.
How traders use it:
✅ Buy zone: When the average RSI dips below 40, it could signal a good entry point.
⚠️ Neutral zone: Between 40 and 60 means the trend isn’t strong—wait for more confirmation.
🚫 Sell zone: Above 60–70 may indicate the asset is overbought or due for a pullback.
Helpful for:
Spotting better entry/exit points
Filtering out false signals
Staying in trend-following trades longer
Best EMA FinderThis script, Best EMA Finder, is based on the same original logic as the Best SMA Finder I published previously. Although it was not the initial goal of the project, several users asked for an EMA version, so here it is.
The script scans a wide range of Exponential Moving Average (EMA) lengths, from 10 to 500, and identifies the one that historically delivered the most robust performance on the current chart. The choice to stop at 500 is deliberate: beyond that point, EMA curves tend to flatten and converge, adding processing time without meaningful differences in signals or outcomes.
Each EMA is evaluated using a custom robustness score:
Profit Factor × log(Number of Trades) × sqrt(Win Rate)
Only EMA lengths that exceed a user-defined minimum number of trades are considered valid. Among these, the one with the highest robustness score is selected and displayed on the chart.
A table summarizes the results:
- Best EMA length
- Total number of trades
- Profit Factor
- Win Rate
- Robustness Score
You can adjust:
- Strategy type: Long Only or Buy & Sell
- Minimum number of trades required
- Table visibility
This script is designed for analysis and optimization only. It does not execute trades or handle position sizing. Only one open trade per direction is considered at a time.
Correlation Coefficient📊 Correlation Coefficient (CC)
This indicator measures the statistical correlation between two selected securities over a defined period, scaled from -100 to +100.
It helps you quickly assess whether assets are moving:
Together (positive correlation)
Opposite (negative correlation)
Independently (zero correlation)
🔧 Features:
Select any two symbols (default: NIFTY & BANKNIFTY)
Adjustable length parameter for short-term or long-term correlation analysis
Clean, color-coded plot with horizontal levels to easily identify key correlation zones
📈 Useful For:
Pair trading setups
Hedging strategies
Detecting market regime shifts or intermarket divergences
⚠️ Disclaimer: This is not trading or investment advice.
This indicator is intended for informational purposes only and is not recommended for making
direct trading decisions.