Quarterly & Monday Levelsit shows following thing
QUARTER: open, high ,low
Last Quarter: high , low
Monday: High, low , midrange
Indicators and strategies
iLoggerLibrary "iLogger"
Logger Library based on types and methods.
method init(this)
init will initialize logger table and log stream array
Namespace types: Logger
Parameters:
this (Logger) : Logger object
Returns: void
method getLogger(level)
Namespace types: series LogLevel
Parameters:
level (series LogLevel)
method setPage(this, pageNumber)
setPage will set current page number of logs to display
Namespace types: Logger
Parameters:
this (Logger) : Logger object
pageNumber (int) : - Page number of logs to display
Returns: void
method nextPage(this)
nextPage will incremement page number to display on screen
Namespace types: Logger
Parameters:
this (Logger) : Logger object
Returns: void
method previousPage(this)
previousPage will decrement page number to display on screen
Namespace types: Logger
Parameters:
this (Logger) : Logger object
Returns: void
method log(this, level, message)
log will record message to be logged and repopulate logs displayed
Namespace types: Logger
Parameters:
this (Logger) : Logger object
level (series LogLevel) : logging level. Can be `TRACE`, `DEBUG`, `INFO`, `WARN`, `ERROR`, `FATAL`, `CRITICAL`. Logs only if log level is higher than Loggers minimul log level set
message (string) : log message to be recorded
Returns: void
method trace(this, message)
trace will record message to be logged with level 'TRACE'
Namespace types: Logger
Parameters:
this (Logger) : Logger object
message (string) : log message to be recorded
Returns: void
method debug(this, message)
debug will record message to be logged with level 'DEBUG'
Namespace types: Logger
Parameters:
this (Logger) : Logger object
message (string) : log message to be recorded
Returns: void
method info(this, message)
info will record message to be logged with level 'INFO'
Namespace types: Logger
Parameters:
this (Logger) : Logger object
message (string) : log message to be recorded
Returns: void
method warn(this, message)
warn will record message to be logged with level 'WARN'
Namespace types: Logger
Parameters:
this (Logger) : Logger object
message (string) : log message to be recorded
Returns: void
method error(this, message)
error will record message to be logged with level 'ERROR'
Namespace types: Logger
Parameters:
this (Logger) : Logger object
message (string) : log message to be recorded
Returns: void
method fatal(this, message)
fatal will record message to be logged with level 'FATAL'
Namespace types: Logger
Parameters:
this (Logger) : Logger object
message (string) : log message to be recorded
Returns: void
Log
Log Object holding log entry
Fields:
level (series LogLevel) : Logging level
message (series string) : Logging message
bartime (series int) : bar time at which log is recorded
bar (series int) : bar index at which log is recorded
Logger
Logger object which can be used for logging purposes
Fields:
position (series string) : position on chart where logs can be shown. Valid values are table position values. Make sure that the script does not have any other table at this position
pageSize (series int) : size of each page of logs which can be shown on UI. Default is 10
maxEntries (series int) : max size logs to be stored
pageNumber (series int) : current page number of logs to display on chart
textSize (series string) : size of text on debug table to be shown. default is size.small. Other options - size.tiny, size.normal, size.large, size.huge, size.auto
textColor (series color) : text color of debug messages. Default is color.white
showOnlyLast (series bool) : If set, shows the logs derived only from last bar. Default is true
minimumLevel (series LogLevel) : Minimum level of logs to be considered for logging.
realTime (series bool) : Print logs based on real time bar. This should be set to true for debugging indicators and false for debugging strategies.
debugTable (series table) : table containing debug messages. It will be set in init method. Hence no need to pass this in constructor
logs (array) : Array of Log containing logging messages. It will be set in init method. Hence no need to pass this in constructor
Neon HMANeon-HMA with Gradient Heat-Map
A simple, visually-rich trend ribbon that mixes a smooth Hull Moving Average with a fast “heat-map” colour-scale.
Perfect when you want to keep one clean line on the chart, but still see lower-time-frame momentum flashes.
[blackcat] L1 Bollinger Bands Width WatcherOVERVIEW
The Bollinger Bands Width Watcher is an advanced tool designed to monitor the width of Bollinger Bands, providing insights into market volatility and potential trend reversals. This indicator calculates both absolute and relative widths of the bands, plotting them on the chart for easy visualization. It also generates buy and sell signals based on crossover events, helping traders make informed decisions 📊✅.
Today, this article introduces the final member of the Bollinger Bands trio—Bollinger Bands Width (BBW). Derived from the renowned Bollinger Bands, this indicator measures price volatility and identifies trading signals. First, let’s delve into what Bollinger Bands are. They consist of three lines associated with the price of a security:
The middle line is typically a 20-day Simple Moving Average (SMA).
The upper and lower bands represent two standard deviations above and below the middle band.
The Bollinger Bands Width measures the distance between these upper and lower bands.
Bollinger Bands Width = (Upper Band - Lower Band) / Middle Band
Calculating BBW involves subtracting the lower band from the upper band and dividing by the middle band to obtain the BBW value. However, interpreting BBW values alone isn't enough to determine if they're narrow or wide. Different instruments or timeframes might define narrowness differently. To gauge the significance of band narrowing accurately, analyzing past BBW fluctuations alongside price movements is essential.
One prominent theory involving Bollinger Bands is the "squeeze." A squeeze setup comprises two phases:
Low volatility, where bands narrow, and prices move sideways.
Increased volatility, where prices breach either the upper or lower band, initiating a new trend.
During a bullish squeeze, BBW diminishes, and breaking above the upper band signals a new uptrend. Conversely, in a bearish squeeze, BBW declines, and falling below the lower band indicates a new downtrend.
While BBW excels at spotting squeezes, traders must exercise caution. Even with a squeeze setup, a robust market trend might not materialize. Validating breakouts necessitates personal judgment and additional confirmation techniques.
Now, let's explore key parameters and settings:
Length: Defines the period for computing the base SMA, defaulting to 20 days.
Source: Specifies the data source per candle, defaulting to the closing price.
Standard Deviation: Sets the number of standard deviations from the SMA for the upper and lower bands, defaulting to 2.
FEATURES
Calculates Bollinger Bands Width using customizable parameters:
Smoothing Length: Number of bars used for calculating the moving average and standard deviation.
Source Price: Defaults to closing prices but can be adjusted.
Standard Deviation Multiplier: Controls the width of the bands.
Plots two types of Bollinger Bands Width:
Absolute width relative to the basis (Yellow Line).
Relative width compared to the close price (Fuchsia Line).
Fills the area between the two plotted lines for better visual context 🌈
Generates buy ('Buy') and sell ('Sell') labels based on crossover events 🏷️
Provides alerts for crossover signals to notify users of potential trade opportunities 🔔
HOW TO USE
Add the indicator to your TradingView chart by selecting it from the indicators list.
Adjust the Smoothing Length, Source Price, and Standard Deviation Multiplier as needed ⚙️.
Observe the plotted Bollinger Bands Width lines and filled areas for insights into market volatility.
Monitor the chart for buy and sell labels indicating potential trade opportunities.
Set up alerts based on the generated signals to receive notifications when conditions are met 📲.
LIMITATIONS
The indicator may generate false signals in highly volatile or ranging markets 🌪️.
Users should combine this indicator with other forms of analysis for more reliable trading decisions.
The effectiveness of the indicator may vary depending on the asset and timeframe being analyzed.
NOTES
Ensure that you have sufficient historical data available for accurate calculations.
Test the indicator thoroughly on demo accounts before applying it to live trading 🔍.
Customize the appearance and parameters as needed to fit your trading strategy.
Silver BulletSilver Bullet — A Strategic Approach
The Silver Bullet indicator simplifies trading by focusing on three core elements: Time Frame, Price Levels, and Optimal Trade Entries.
Time Frame
Silver Bullet targets a precise intraday window to capture key market moves. By zeroing in on specific time frames, it aligns trade setups with real-time momentum and dynamic price action.
Price Levels
Using Fibonacci-based levels, Fair Value Gaps (FVGs), and Volume Imbalances (VIs), Silver Bullet highlights high-probability zones for entries and exits.
Optimal Trade Entry
By combining strategic time windows with precise price zones, Silver Bullet pinpoints ideal trade moments — maximizing potential while keeping risk tightly controlled.
Included in the Silver Bullet TradingView Indicator
• Macro Time Highlight (09:50 - 10:10 EST)
• Fibonacci Levels
• Fair Value Gaps (FVGs)
• Volume Imbalances (VIs)
• Tweezer Candlestick Reversal Detection
⸻
Live Support & More
For live support, updates, and access to premium features, visit silverbullet.trade .
August Pump PredictorAugust Pump Predictor is an indicator designed to forecast massive price movements.
Gabriel's Adaptive MA📜 Gabriel's Adaptive MA — Indicator Description
Gabriel's Adaptive Moving Average (GAMA) is a dynamic trend-following indicator that intelligently adjusts its smoothing based on both trend strength and market volatility.
It is designed to provide faster responsiveness during strong moves while maintaining stability during choppy or consolidating periods.
🧠 What it does:
This indicator plots a custom-built, highly dynamic Moving Average that adapts itself intelligently based on:
Trend Strength (via Perry Kaufman's Efficiency Ratio)
Market Volatility (via Tushar Chande's Volatility Ratio)
It reacts faster when the market is trending strongly and/or highly volatile,
and it smooths out and slows down when the market is choppy or calm.
🔍 How it works (step-by-step):
1. User Inputs:
length: (default 14)
How many bars to look back for calculations.
fastSC: Fastest possible smoothing constant (hardcoded as 2 / (2+1))
slowSC: Slowest possible smoothing constant (hardcoded as 2 / (30+1))
(These are used to control how fast/slow the KAMA can react.)
2. Calculate Trendiness — Kaufman Efficiency Ratio (ER):
Net Change = Absolute difference between current close and close from length bars ago.
Sum of Absolute Changes = Sum of absolute price changes between every bar inside the length window.
Efficiency Ratio (ER) = Net Change divided by Sum of Changes.
✅ If ER is close to 1 → Smooth, trending market.
✅ If ER is close to 0 → Choppy, sideways market.
3. Calculate Bumpiness — Volatility Ratio (VR):
Short-Term Volatility = Standard deviation of close over length.
Long-Term Volatility = Standard deviation of close over length * 2.
Volatility Ratio (VR) = Short-Term Volatility divided by Long-Term Volatility.
✅ If VR is >1 → Market is becoming more volatile recently.
✅ If VR is <1 → Market is calming down.
4. Create the Hybrid Alpha:
Multiply ER × VR.
Then square the result (math.pow(..., 2)).
This hybrid alpha decides how aggressive the MA should be based on both trend and volatility.
If ER and VR are both strong → big alpha → fast movement.
If ER and/or VR are weak → small alpha → slow movement.
5. Calculate the Final Adaptive Smoothing Constant (hybridSC):
hybridSC = slowSC + hybridAlpha × (fastSC - slowSC)
This smoothly interpolates between the slowest and fastest smoothing depending on market conditions.
6. Calculate and Plot the Adaptive MA:
The moving average is manually calculated:
hybridMA := na(hybridMA ) ? close : hybridMA + hybridSC * (close - hybridMA )
It behaves like an EMA but with dynamic smoothing, not a fixed alpha.
✅ If hybridSC is high → MA hugs the price closely.
✅ If hybridSC is low → MA stays smooth and resists noise.
Finally, it plots this Adaptive MA on the chart in blue color.
📊 Visual Summary
Market Type What Happens to GAMA
Trending hard + volatile Follows price quickly
Trending hard + calm Follows steadily but carefully
Sideways + volatile Reacts carefully (won't chase noise)
Sideways + calm Smooths heavily (avoids fakeouts)
✨ Main Strengths:
Adapts automatically without you tuning settings manually every time market changes.
Responds smartly to both trend quality (ER) and market energy (VR).
Reduces lag during real moves.
Filters out false signals during choppy mess.
🧪 Key Innovation compared to normal MAs:
Traditional MA Gabriel's Adaptive MA
Same smoothing every bar Dynamic smoothing every bar
Slow during fast moves Adapts fast during real moves
No understanding of volatility or trendiness Full market sensitivity
⚡ **Simple One-Line Description:**
"Gabriel's Adaptive MA is a dynamic, trend-and-volatility-sensitive moving average that intelligently adjusts its speed to match market conditions."
Iconic Traders SessionsIconicTraders Sessions. D.D. indicatior, markiert die highs and lows (Asia & London Session)
TUF_LOGICTUF_LOGIC: Three-Value Logic for Pine Script v6
The TUF_LOGIC library implements a robust three-valued logic system (trilean logic) for Pine Script v6, providing a formal framework for reasoning about uncertain or incomplete information in financial markets. By extending beyond binary True/False states to include an explicit "Uncertain" state, this library enables more nuanced algorithmic decision-making, particularly valuable in environments characterized by imperfect information.
Core Architecture
TUF_LOGIC offers two complementary interfaces for working with trilean values:
Enum-Based API (Recommended): Leverages Pine Script v6's enum capabilities with Trilean.True , Trilean.Uncertain , and Trilean.False for improved type safety and performance.
Integer-Based API (Legacy Support): Maintains compatibility with existing code using integer values 1 (True), 0 (Uncertain), and -1 (False).
Fundamental Operations
The library provides type conversion methods for seamless interaction between integer representation and enum types ( to_trilean() , to_int() ), along with validation functions to maintain trilean invariants.
Logical Operators
TUF_LOGIC extends traditional boolean operators to the trilean domain with NOT , AND , OR , XOR , and EQUALITY functions that properly handle the Uncertain state according to the principles of three-valued logic.
The library implements three different implication operators providing flexibility for different logical requirements: IMP_K (Kleene's approach), IMP_L (Łukasiewicz's approach), and IMP_RM3 (Relevant implication under RM3 logic).
Inspired by Tarski-Łukasiewicz's modal logic formulations, TUF_LOGIC includes modal operators: MA (Modal Assertion) evaluates whether a state is possibly true; LA (Logical Assertion) determines if a state is necessarily true; and IA (Indeterminacy Assertion) identifies explicitly uncertain states.
The UNANIMOUS operator evaluates trilean values for complete agreement, returning the consensus value if one exists or Uncertain otherwise. This function is available for both pairs of values and arrays of trilean values.
Practical Applications
TUF_LOGIC excels in financial market scenarios where decision-making must account for uncertainty. It enables technical indicator consensus by combining signals with different confidence levels, supports multi-timeframe analysis by reconciling potentially contradictory signals, enhances risk management by explicitly modeling uncertainty, and handles partial information systems where some data sources may be unreliable.
By providing a mathematically sound framework for reasoning about uncertainty, TUF_LOGIC elevates trading system design beyond simplistic binary logic, allowing for more sophisticated decision-making that better reflects real-world market complexity.
Library "TUF_LOGIC"
Three-Value Logic (TUF: True, Uncertain, False) implementation for Pine Script.
This library provides a comprehensive set of logical operations supporting trilean logic systems,
including Kleene, Łukasiewicz, and RM3 implications. Compatible with Pine v6 enums.
method validate(self)
Ensures a valid trilean integer value by clamping to the appropriate range .
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The integer value to validate.
Returns: An integer value guaranteed to be within the valid trilean range.
method to_trilean(self)
Converts an integer value to a Trilean enum value.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The integer to convert (typically -1, 0, or 1).
Returns: A Trilean enum value: True (1), Uncertain (0), or False (-1).
method to_int(self)
Converts a Trilean enum value to its corresponding integer representation.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The Trilean enum value to convert.
Returns: Integer value: 1 (True), 0 (Uncertain), or -1 (False).
method NOT(self)
Negates a trilean integer value (NOT operation).
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The integer value to negate.
Returns: Negated integer value: 1 -> -1, 0 -> 0, -1 -> 1.
method NOT(self)
Negates a Trilean enum value (NOT operation).
Namespace types: series Trilean
Parameters:
self (series Trilean) : The Trilean enum value to negate.
Returns: Negated Trilean: True -> False, Uncertain -> Uncertain, False -> True.
method AND(self, comparator)
Logical AND operation for trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The first integer value.
comparator (int) : The second integer value to compare with.
Returns: Integer result of the AND operation (minimum value).
method AND(self, comparator)
Logical AND operation for Trilean enum values following three-valued logic.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The first Trilean enum value.
comparator (series Trilean) : The second Trilean enum value to compare with.
Returns: Trilean result of the AND operation.
method OR(self, comparator)
Logical OR operation for trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The first integer value.
comparator (int) : The second integer value to compare with.
Returns: Integer result of the OR operation (maximum value).
method OR(self, comparator)
Logical OR operation for Trilean enum values following three-valued logic.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The first Trilean enum value.
comparator (series Trilean) : The second Trilean enum value to compare with.
Returns: Trilean result of the OR operation.
method EQUALITY(self, comparator)
Logical EQUALITY operation for trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The first integer value.
comparator (int) : The second integer value to compare with.
Returns: Integer representation (1/-1) indicating if values are equal.
method EQUALITY(self, comparator)
Logical EQUALITY operation for Trilean enum values.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The first Trilean enum value.
comparator (series Trilean) : The second Trilean enum value to compare with.
Returns: Trilean.True if both values are equal, Trilean.False otherwise.
method XOR(self, comparator)
Logical XOR (Exclusive OR) operation for trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The first integer value.
comparator (int) : The second integer value to compare with.
Returns: Integer result of the XOR operation.
method XOR(self, comparator)
Logical XOR (Exclusive OR) operation for Trilean enum values.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The first Trilean enum value.
comparator (series Trilean) : The second Trilean enum value to compare with.
Returns: Trilean result of the XOR operation.
method IMP_K(self, comparator)
Material implication using Kleene's logic for trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The antecedent integer value.
comparator (int) : The consequent integer value.
Returns: Integer result of Kleene's implication operation.
method IMP_K(self, comparator)
Material implication using Kleene's logic for Trilean enum values.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The antecedent Trilean enum value.
comparator (series Trilean) : The consequent Trilean enum value.
Returns: Trilean result of Kleene's implication operation.
method IMP_L(self, comparator)
Logical implication using Łukasiewicz's logic for trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The antecedent integer value.
comparator (int) : The consequent integer value.
Returns: Integer result of Łukasiewicz's implication operation.
method IMP_L(self, comparator)
Logical implication using Łukasiewicz's logic for Trilean enum values.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The antecedent Trilean enum value.
comparator (series Trilean) : The consequent Trilean enum value.
Returns: Trilean result of Łukasiewicz's implication operation.
method IMP_RM3(self, comparator)
Logical implication using RM3 logic for trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The antecedent integer value.
comparator (int) : The consequent integer value.
Returns: Integer result of the RM3 implication operation.
method IMP_RM3(self, comparator)
Logical implication using RM3 logic for Trilean enum values.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The antecedent Trilean enum value.
comparator (series Trilean) : The consequent Trilean enum value.
Returns: Trilean result of the RM3 implication operation.
method MA(self)
Modal Assertion (MA) operation for trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The integer value to evaluate.
Returns: 1 if the value is 1 or 0, -1 if the value is -1.
method MA(self)
Modal Assertion (MA) operation for Trilean enum values.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The Trilean enum value to evaluate.
Returns: Trilean.True if value is True or Uncertain, Trilean.False if value is False.
method LA(self)
Logical Assertion (LA) operation for trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The integer value to evaluate.
Returns: 1 if the value is 1, -1 otherwise.
method LA(self)
Logical Assertion (LA) operation for Trilean enum values.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The Trilean enum value to evaluate.
Returns: Trilean.True if value is True, Trilean.False otherwise.
method IA(self)
Indeterminacy Assertion (IA) operation for trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The integer value to evaluate.
Returns: 1 if the value is 0, -1 otherwise.
method IA(self)
Indeterminacy Assertion (IA) operation for Trilean enum values.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The Trilean enum value to evaluate.
Returns: Trilean.True if value is Uncertain, Trilean.False otherwise.
method UNANIMOUS(self, comparator)
Evaluates the unanimity between two trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The first integer value.
comparator (int) : The second integer value.
Returns: Integer value of self if both values are equal, 0 (Uncertain) otherwise.
method UNANIMOUS(self, comparator)
Evaluates the unanimity between two Trilean enum values.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The first Trilean enum value.
comparator (series Trilean) : The second Trilean enum value.
Returns: Value of self if both values are equal, Trilean.Uncertain otherwise.
method UNANIMOUS(self)
Evaluates the unanimity among an array of trilean integer values.
Namespace types: array
Parameters:
self (array) : The array of integer values.
Returns: First value if all values are identical, 0 (Uncertain) otherwise.
method UNANIMOUS(self)
Evaluates the unanimity among an array of Trilean enum values.
Namespace types: array
Parameters:
self (array) : The array of Trilean enum values.
Returns: First value if all values are identical, Trilean.Uncertain otherwise.
Accurate Global M2 (Top10 GDP, FX-Stabilized)This script was created to solve the serious distortions found in other circulating "Global M2" indicators.
Many previous versions used noisy daily FX rates, unweighted country data, mixed liquidity categories (e.g., RRP, TGA), or aggregated low-quality sources, causing exaggerated or misleading charts.
This version fixes those problems by:
Using Top 10 global economies only (based on GDP).
GDP-weighting each country's M2 contribution.
Fetching monthly-averaged M2 data.
Applying monthly FX conversions to eliminate daily volatility noise.
Forward-shifting the M2 line (default 90 days) to study potential Bitcoin correlations.
Keeping the math clean, without mixing central bank liquidity tools with broad M2 aggregates.
As a result, this script provides a more realistic and stable representation of global M2 expansion in USD terms, more suitable for serious macroeconomic analysis and Bitcoin market correlation studies.
Scalping Strategy with Fixed CooldownThis is a sample scalping strategy is designed for short-term trading on lower timeframes.
Entry Signals: Utilizes Hull Moving Average (HullMA) crossovers to generate buy and sell signals.
Filters:
-Bollinger Bands and RSI to avoid overbought or oversold conditions.
-VWAP to confirm trend direction, ensuring trades align with momentum.
Cooldown Mechanism: Implements a bar-based cooldown period to prevent immediate re-entries after trade closures, reducing the risk of overtrading.
Kalman Filtered RSI | [DeV]The Kalman Filtered RSI indicator is an advanced tool designed for traders who want precise, noise-free market insights. By enhancing the classic Relative Strength Index (RSI) with a Kalman filter, this indicator delivers a smoother, more reliable view of market momentum, helping you identify trends, reversals, and overbought/oversold conditions with greater accuracy. It’s an ideal choice for traders seeking clear signals amidst market volatility, giving you a competitive edge across any trading environment.
The RSI measures momentum by analyzing price movements over a set period, typically 14 bars. It calculates the average of price gains on up days and the average of price losses on down days, then compares these to produce a value between 0 and 100. An RSI above 70 often indicates an overbought market that may reverse downward, while below 30 suggests an oversold market that could reverse upward. RSI is great for spotting momentum shifts, potential reversals, and trend strength, but it can be noisy in choppy markets, leading to misleading signals.
That's where the Kalman filter comes in; it enhances the RSI by applying a sophisticated smoothing process that predicts the RSI’s next value based on its historical trend, then updates this prediction with the actual RSI reading. It operates in two phases: prediction and correction. In the prediction phase, it uses the previous filtered RSI and adds uncertainty from process noise (Q), which is derived from the historical variance of RSI changes, reflecting how much the RSI might unexpectedly shift. In the correction phase, it calculates a Kalman gain based on the ratio of prediction uncertainty to measurement noise (R), which is determined from the variance between raw RSI and a smoothed version, indicating the raw data’s noisiness. This gain weights how much the filter trusts the new RSI versus the prediction, blending them to produce a smoothed RSI that reduces noise while staying responsive to real trends, outperforming simpler methods like moving averages that often lag or oversmooth.
With the Kalman Filtered RSI, you get a refined view of momentum, making it easier to spot trends and reversals with clarity. This indicator’s ability to dynamically adapt to market changes delivers timely, reliable signals, making it a powerful addition to your trading strategy for any market or timeframe.
Trend Degree Dashboard (Table)📈 Trend Degree Dashboard (Table) — v1.0
This indicator calculates and displays the trend angle (in degrees) based on the linear regression of the selected source (default: close) over a user-defined lookback period (default: 21 bars).
The trend angle gives a quick visual reference of the current market slope — positive (uptrend) or negative (downtrend).
A dashboard table shows the trend angle directly on the chart, with a background color:
🟩 Green background for positive angles (uptrend)
🟥 Red background for negative angles (downtrend)
🔧 Features:
Customizable Lookback Period: Set the number of candles to consider for trend calculation.
Source Selection: Apply the analysis to close, open, high, low, or any other price series.
Dashboard Positioning: Choose where the dashboard appears (Top Left, Top Right, Bottom Left, Bottom Right).
Clean Table Design: Minimalistic and easy-to-read dashboard with automatic background color highlighting based on trend direction.
⚙️ How It Works:
It uses Linear Regression to measure the slope between two consecutive points.
Converts the slope into degrees using the arctangent function (atan) for a geometric interpretation of trend strength and direction.
Updates the dashboard table live with the latest angle value.
✅ Script Highlights:
Non-repainting: Once a bar closes, its value is fixed.
Efficient performance: Lightweight table visualization with no heavy calculations.
Clear trading signals: Positive angles suggest bullish momentum, negative angles suggest bearish momentum.
⚠️ Disclaimer:
This script is a technical analysis tool designed to assist in decision-making but does not guarantee results.
Please use it alongside other tools and practice proper risk management. Always test any indicator on demo accounts before applying it to live trading.
NR4/NR7 + 2BarNR/3BarNR + Trend + Refined MACD + VWAP📜 Description:
NR4, NR7, 2-Bar NR, and 3-Bar NR Compression Scanner with Trend & Momentum Filters
This script identifies extreme price compressions (NR4, NR7, 2-Bar NR, 3-Bar NR) combined with strict trend and momentum conditions for higher-probability setups.
It’s not just about spotting contraction — it’s about ensuring the right environment for expansion.
The scanner conditions are:
NR4 and NR7 patterns: Today's range must be the narrowest compared to the last 4 or 7 days.
2-Bar and 3-Bar Narrow Ranges: The narrowest two or three day ranges compared to the last 20 sets of two/three days.
Trend filter:
Price must be above the 20 EMA.
The 10 EMA must be above the 20 EMA.
MACD proximity filter:
The MACD fast line must either be above the slow line or within 5% range below the slow line.
VWAP filter:
Price must be trading above VWAP.
Visuals:
Background colours highlight detected compression patterns aligned with trend.
Shape markers above or below bars for quick visual confirmation.
📈 Why Use This?
Some have said that trading is a waiting game. I won't say they're wrong.
This scanner doesn't just throw every tight-range day at you. It finds the coils in context — trending, gaining momentum, ready to spring.
If you chase trades like a fool in a brothel, you'll get taken for a ride.
If you wait for the right compression, at the right moment, with the right backing...
Well, let's just say, you might just start looking like you actually know what you're doing.
🛠️ Built for Traders Who:
Prefer strong trends over messy ranges.
Want systematic setups, not random guessing.
Like stacking probabilities rather than praying to the trading gods.
Enjoy catching breakouts when everyone else is still scratching their heads.
🚨 Oliver Velez 20 50 200 Triple Cross + Ghost Cross DeluxeThis indicator is based on Oliver Velez power setup, when price crosses the 20MA and the 50MA or the 20MA and the 200MA the candles are painted to help reduce confusion. All setups won't be as powerful as his "Boom" But you can get at least 3-4 bars from it on any time frame! Enjoy!
🌎 Modern Economic Eras - Visual Backgrounds & LabelsModern Economic Eras - Visual Backgrounds & Labels
This indicator highlights key modern economic eras with distinct background shading and floating labels, based on the structural macroeconomic periods identified by Deutsche Bank in their Long-Term Asset Return Study (2020).
🌎 First Era of Globalization (1860–1914)
A period of strong global growth, trade expansion, and low inflation, ending with World War I.
⚔️ Great Wars and the Depression (1914–1945)
The most turbulent period in modern history, marked by conflict, economic hardship, and volatile inflation.
🪙 Bretton Woods & Gold System (1945–1971)
Post-war stability driven by gold-backed currencies, strong growth, and the creation of modern welfare states.
💸 Fiat Money & High Inflation Era (1971–1980)
After the collapse of Bretton Woods, fiat currencies led to global inflation surges and economic instability.
🌍 Second Era of Globalization (1980–2020?)
A golden age of asset returns, global trade boom, China's reintegration, and falling inflation supported by demographic trends.
⚡ Age of Disorder (2020–????)
Characterized by rising geopolitical tensions (especially US-China), high debt levels, political fragmentation, demographic reversals, inequality challenges, and environmental pressures.
Each era is visually segmented and labeled above the chart for intuitive historical context.
This tool helps traders and investors understand the broader macro context behind asset price movements across different long-term regimes.
Useful for:
✅ Macro analysis
✅ Historical financial studies
✅ Long-term strategic planning
Compatible with any asset and timeframe, although it is intended primarily for use on indices like the S&P 500 (SPX).
Advance Trading StrategyStrategy Description: Advance Trading Strategy uses:
Fast (12) & Slow (21) EMAs for trend determination via crossovers.
ADX (14) with manual smoothing to confirm trend strength; threshold settable (default 20).
ATR-based stop-loss and take-profit levels (multipliers configurable).
Visual signals: BUY/SELL labels on crossover when ADX
Short Below 20 EMA with Exit Above Prior High - 15 Mintake entry on price cross below 15 min 20 ema and exit on reversal of candle close above previous 15 min candle
Moving Average Crossover by mashrur 🔵 How This Indicator Works:
Short MA (9-period Simple Moving Average)
Long MA (21-period Simple Moving Average)
Signals:
Buy when Short MA crosses above Long MA.
Sell when Short MA crosses below Long MA.
On the chart:
Green up labels = Buy signals 🚀
Red down labels = Sell signals 🔻
✍️ How to Take an Entry:
Wait for a Signal
Look for a green up label = Buy signal.
Look for a red down label = Sell signal.
Enter the Trade
If Buy signal appears → Open a Buy (Long) trade.
If Sell signal appears → Open a Sell (Short) trade.
Set Stop Loss (SL) and Take Profit (TP) (important!)
Stop Loss:
For Buy, place SL below the recent swing low.
For Sell, place SL above the recent swing high.
Take Profit:
You can use a Risk:Reward like 1:2 (risking 10 pips to make 20 pips).
Or exit when the opposite signal comes (if another crossover happens).
Optional: Add Confirmation
You could add extra filters like:
Only take Buys if the market is in an overall uptrend (higher highs, higher lows).
Only take Sells in downtrends.
🧠 Important Tips:
Don't enter late! → Try to enter right when the signal appears.
Be careful during sideways (choppy) markets! → MA crossovers can give false signals when the market is flat.
Use alerts → Your code already has alerts ready! Set them up on TradingView so you don't miss entries.
📈 Example (Visual):
Imagine the chart shows:
Price is going up.
The blue (Short MA) crosses above the red (Long MA).
A green label appears under the candle.
👉 You would enter a Buy right at that candle close.
👉 Stop Loss: just under the recent low.
👉 Take Profit: 2x your risk or at next resistance.
Quarterly Fundamentals Table by GauravThis Pine Script v3 overlay paints a compact, six‐column table in the top‐right of your chart that begins with your stock’s market capitalization and sector/industry, then lays out quarterly fundamentals—Sales, Sales QoQ%, PAT, PAT QoQ% and OPM%—across the most recent four fiscal quarters (dynamically labeled by month and year). It pulls data via request.financial(), formats large numbers into lakhs/crores, calculates quarter‐over‐quarter growth, and sizes text for clarity, giving swing traders an at‐a‐glance view of key fundamental trends alongside price action.