Pips Breakout CandlePips Breakout Candle measures price changes in pips. This indicator can be used to identify major price moves! The indicator comes with a sentiment line which is the sum of the Up versus Down price changes. It gives a good understanding of the current trend and identifies divergences.
Set alerts for major price moves!
Identify the trend!
Identify divergence!
Cari dalam skrip untuk "Divergence"
LBR 3-10 OscillatorThis is a variation of MACD popularised by Linda Bradford Raschke. Instead of the regular MACD settings, the this indicator uses simple moving averages, not exponential moving averages, and a setting of 3 for the fast MA, 10 for the slow MA and 16 for the signal line.
The signal line (red) acts as a trend indicator, with crossings of the zero line indicating trend changes, while the MACD line (blue) acts as a short term momentum indicator.
Setups:
- First cross: This is basically selling or buying at the first pullback after a trend change. Buy or sell after the signal line has crossed the zero line and the MACD crosses the signal line for the first time after the trend change. Use price action to time the entry after the pullback — you don't need to wait for the MACD to cross the signal line again.
- Pullback in a trend: The MACD crosses the signal line in the opposite direction of the trend irregardless of when the trend change occurred. Use price action to time the entry.
- Divergence: The MACD line shows a pattern diverging form price (e.g. makes higher lows whereas price makes lower lows). This can be an indication of trend reversal or waning.
In the indicator's input panel there is an option for showing standard deviation bands (turned off by default). MACD line crossing the standard deviation bands can indicate oversold and overbought conditions.
The indicator comes with the following alerts:
- First cross downtrend
- First cross uptrend
- Pullback in downtrend
- Pullback in uptrend
- Trend change down
- Trend change up
Sources:
lindaraschke.net
www.netpicks.com
Cumulative Delta VolumeHello Traders,
This is Cumulative Delta Volume script. Delta refers to the difference between buying and selling volume at each price level. Cumulative Delta builds upon this concept by recording a cumulative tally of these differences in buying vs selling volume. The Cumulative Delta indicator plots as candlesticks or line. One of the main uses of Cumulative Delta is to confirm or deny market trends. you may need to search it for yourself ;)
You have option to see it as Candles or a Line. also there are options to show 2 SMAs and 2 EMAs with different Lengths, you can set the lengths as you wish.
By default it shows CDV as Heikin Ashi Candles, it can also show it as normal candles:
It can show CDV as a line:
Also you may need to check divergence:
Enjoy!
Stoch X, an Indicator of Indicators by DGTStochastic refers to a randomly determined process and financial markets use stochastic models to represent the seemingly random behaviour of assets and then used by quantitative analysts to value options on asset prices
The stochastic oscillator, developed by George Lane, presents the location of the closing price of a stock in relation to the high and low range of the price of a stock over a period of time. Lane has said that the stochastic oscillator does not follow price or volume or anything similar. He indicates that the oscillator follows the speed or momentum of price.
Traditionally, readings over 80 are considered in the overbought range, and readings under 20 are considered oversold. Please note that, very strong trends can maintain overbought or oversold conditions for an extended period and traders should look to changes in the stochastic oscillator for clues about future trend shifts. It is advised to check the higher timeframe of your trading timeframe and see where you are in the “big picture”
Signal crosses , intersection of stochastic and its signal line is considered to be a signal that a reversal may be in the works
Divergence between the stochastic oscillator and trending price action is also seen as an important reversal signal
Lane also reveals in interviews that, as a rule, the momentum or speed of the price of a stock changes before the price changes itself . In this way, the stochastic oscillator can be used to foreshadow reversals when the indicator reveals bullish or bearish divergences. This signal is the first, and arguably the most important, trading signal Lane identified.
What is Stochastic X ?
Stochastic X , is essentially an indicator of an indicator, providing stochastic calculation to some of well known indicators, such as RSI, MFI, OBV, etc. This means that it is a measure of selected specific indicator relative to its own high/low range over a user defined period of time.
Features of Stoch X
1- Displays Stoch of and indicator plus a companion indicator (companion display can be disabled from user dialog box)
Available options
Stoch Source plus PM A, where Source is close price and PMA refers to Price Distance to its Moving Average (for further details you may check my study of Price Distance to its MA by DGT, and different application of distance concept available with “MACD-X, More Than MACD" And “P-MACD”)
Stoch RSI plus RSI , Stoch RSI, developed by Tushar Chande and Stanley Kroll, is a build-in indicator available on Trading View, where Stoch X adds RSI as a companion indicator to Stoch RSI
Stoch MFI and MFI , where MFI is Money Flow Index, measures buying and selling pressure through analyzing both price and volume
Stoch OBV + VO , Where OBV is On Balance Volume, is a momentum indicator that measures positive and negative volume flow. VO stands for Volume Oscillator which aims to confirm a market turnaround or trend reversal
Stoch EWO + EWO , EWO stands for Elliott Wave Oscillator
By default the threshold levels are indicated and are displayed differently for the regular Stoch or Stoch RSI. Overbought band (70-80), oversold band (20-30) and middle line (0) are emphasized
Warning : Centered Oscillators base line is moved from 0 to 50 to better suit with Stoch X, which is applied to PMA, VO and EWO
2- Can be plotted along with Stoch in the same window using the same scaling
To avoid misinterpreting the area between Stoch X and its Signal Line is highlighted automatically in case Stoch is selected to be plotted
3- Squeeze Indicator added as Add-on in the bottom of the Stoch X
During volatile market conditions the stochastic oscillator has been known to produce false signals. One way to help with this is to take the price trend as a filter, or basic chart pattern analysis can help to identify major, underlying trends and increase the Stoch X's accuracy.
This study implements Squeeze Indicator to help and add additional insight for filtering false signals. Blue diamond shapes indicates the squeeze release, that is volatility increased and according to momentum direction the buy/sell possibility can be considered. Orange ones displays consolidation periods, that is low volatility and the market is assumed to be in squeeze and no trade is recommended. in this phase.
Disclaimer: Trading success is all about following your trading strategy and the indicators should fit within your trading strategy, and not to be traded upon solely
The script is for informational and educational purposes only. Use of the script does not constitutes professional and/or financial advice. You alone the sole responsibility of evaluating the script output and risks associated with the use of the script. In exchange for using the script, you agree not to hold dgtrd TradingView user liable for any possible claim for damages arising from any decision you make based on use of the script
TA-Money Flow-Version4Updated for TV-Pine V4
This is the MACD of a stochastic OBV movement indicator and now the MACD of the Squeeze Momentum Indicator. It is good (right) to work with both price and volume...it is also good to utilize the most popular indicator ever in TV (Lazybear).
I've included highlighting based on price divergence, yellow is divergence of either OBV or SQZ, red is both divergence, and then I've also built in the "squeeze on - blue" highlighting to show follow through of divergence. It works great on any time frame, but you need to have volume data. Not sure where I originally got this (stoch-OBV, somewhere off Tradingview several years ago, thanks to the person who shared), Squeeze is Lazybear, links below.
Enjoy.
Version 4:
Updated OBV equation because TV-Pine V3 broke in V4
Included MACD of Squeeze for histogram
Included "squeeze on" highlighting
TA-Money-Flow-Version3
TA-Money-Flow-Version2
Squeeze-Momentum-Indicator-LazyBear
Percentage Price OscillatorThe Percentage Price Oscillator (PPO) is a momentum oscillator that measures the difference between two moving averages as a percentage of the larger moving average. As with its cousin, MACD, the Percentage Price Oscillator is shown with a signal line, a histogram and a center line. Signals are generated with signal line crossovers, center line crossovers, and divergences. More info here and here .
The indicator allows you to change the type of all moving averages (Simple, Exponential, Weighted, Volume-weighted, Triple EMA or a moving average that uses RSI ). The indicator also allows you to volume weight it(turned on by default), which will turn it into an indicator very similar to the Volume-Weighted Moving Average Convergence Divergence (VW-MACD) first used by Buff Pelz Dormeier in 2002 and described in detail in his book "Investing with Volume Analysis: Identify, Follow, and Profit from Trends". If you want to weight the oscillator against the true range instead of volume this is also possible. By default, this will be done automatically for assets that do not support volume. By checking the box "MACD" you can also turn this indicator into a standard MACD indicator.
Percentage Price Oscillator (PPO)The Percentage Price Oscillator (PPO) is a momentum oscillator that measures the difference between two moving averages as a percentage of the larger moving average. As with its cousin, MACD, the Percentage Price Oscillator is shown with a signal line, a histogram and a centerline. Signals are generated with signal line crossovers, centerline crossovers, and divergences. First, PPO readings are not subject to the price level of the security. Second, PPO readings for different securities can be compared, even when there are large differences in the price.
Calculations
PPO: {(12-day EMA - 26-day EMA)/26-day EMA} x 100
Signal Line: 9-day EMA of PPO
PPO Histogram: PPO - Signal Line
While MACD measures the absolute difference between two moving averages, PPO makes this a relative value by dividing the difference by the slower moving average (26-day EMA). PPO is simply the MACD value divided by the longer moving average. The result is multiplied by 100 to move the decimal place two spots.
Interpretation
As with MACD, the PPO reflects the convergence and divergence of two moving averages. PPO is positive when the shorter moving average is above the longer moving average. The indicator moves further into positive territory as the shorter moving average distances itself from the longer moving average. This reflects strong upside momentum. The PPO is negative when the shorter moving average is below the longer moving average. Negative readings grow when the shorter moving average distances itself from the longer moving average (goes further negative). This reflects strong downside momentum. The histogram represents the difference between PPO and its 9-day EMA, the signal line. The histogram is positive when PPO is above its 9-day EMA and negative when PPO is below its 9-day EMA. The PPO-Histogram can be used to anticipate signal line crossovers in the PPO.
MACD, PPO and Price
MACD levels are affected by the price of a security. A high-priced security will have higher or lower MACD values than a low-priced security, even if volatility is basically equal. This is because MACD is based on the absolute difference in the two moving averages. Because MACD is based on absolute levels, large price changes can affect MACD levels over an extended period of time. If a stock advances from 20 to 100, its MACD levels will be considerably smaller around 20 than around 100. The PPO solves this problem by showing MACD values in percentage terms.
Conclusions
The Percentage Price Oscillator (PPO) generates the same signals as the MACD, but provides an added dimension as a percentage version of MACD. The PPO levels of the Dow Industrials (price > 20K) can be compared against the PPO levels of IBM (price < 200) because the PPO “levels” the playing field. In addition, PPO levels in one security can be compared over extended periods of time, even if the price has doubled or tripled. This is not the case for the MACD.
Limitations
Despite its advantages, the PPO is still not the best oscillator to identify overbought or oversold conditions because movements are unlimited (in theory). Levels for RSI and the Stochastic Oscillator are limited and this makes them better suited to identify overbought and oversold levels.
Source: Stockcharts
Mirrored MACD [LazyBear]This is a famous indicator I have seen used by many Forex traders in MT4 platform. This indicator uses the difference between EMA of "close" and EMA of "open" to form the oscillator lines (not just a convergence/divergence calculation between EMA of "close")
Current market state is determined by which histogram is above zero line. For more confirmation, wait for it to cross above Signal line too. Crossing down the signal or zeroline should be the exit condition. Also, look for divergences.
Use plot labels BullHisto/BearHisto/BearLine/BullLine/ZeroLine/Signal for setting up alerts.
Complete list of my indicators:
-----------------------------
docs.google.com
Indicator: Vervoort Smoothed Oscillator [LazyBear]This is Mr. Sylvian Vervoort's take on improving some well-known indicators (%B and Stoch) using smoothing techniques. A combination of TEMA and WMA does a nice job smoothing out %B, derived from zero-lag “Rainbow” data series. The same Rainbow series, averaged with the typical price, smooth the Stochastic K oscillator to produce slowStoch.
Vervroot's strategy for this oscillator (detailed explanation in the reference material below):
- It must be bullish for a buy signal and bearish for a sell signal. This means that both the oscillators must be moving up or down.
- Use the oscillators for detecting divergences. Divergence even in one is still valid.
- Stoch crossing 50 is a good confirmation signal. Momentum usually is an excellent leading indicator, so keep an eye on Stoch.
More info:
www.traders.com
www.scribd.com
Complete list of my indicators (Check the comments, I keep the list updated there):
[blackcat] L3 Dark Horse OscillatorOVERVIEW
The L3 Dark Horse Oscillator is a sophisticated technical indicator meticulously crafted to offer traders deep insights into market momentum. By leveraging advanced calculations involving Relative Strength Value (RSV) and proprietary oscillatory techniques, this script provides clear and actionable signals for identifying potential buying and selling opportunities. Its distinctive feature—a vibrant gradient color scheme—enhances readability and makes it easier to visualize trends and reversals on the chart 📈↗️.
FEATURES
Advanced Calculation Methods: Utilizes complex algorithms to compute the Relative Strength Value (RSV) over specific periods, providing a nuanced view of price movements.
Default Period: 27 bars for initial RSV calculation.
Additional Period: 36 bars for extended RSV analysis.
Dual-Oscillator Components:
Component A: Derived using multiple layers of Simple Moving Averages (SMAs) applied to the RSV, offering a smoothed representation of short-term momentum.
Component B: Employs a unique averaging method tailored to capture medium-term trends effectively.
Dynamic Gradient Color Scheme: Enhances visualization through a spectrum of colors that change dynamically based on the calculated values, making trend identification intuitive and engaging 🌈.
Customizable Horizontal Reference Lines: Key levels are marked at 0, 10, 50, and 90 to serve as benchmarks for assessing the oscillator's readings, helping traders make informed decisions quickly.
Comprehensive Visual Representation: Combines the strengths of both components into a single, gradient-colored candlestick plot, providing a holistic view of market sentiment and momentum shifts 📊.
HOW TO USE
Adding the Indicator: Start by adding the L3 Dark Horse Oscillator to your TradingView chart via the indicators menu. This will overlay the necessary plots directly onto your price chart.
Interpreting the Components: Familiarize yourself with the two primary components represented by yellow and fuchsia lines. These lines indicate the underlying momentum derived from the RSV calculations.
Monitoring Momentum Shifts: Pay close attention to the gradient-colored candlesticks, which reflect the combined strength of both components. Notice how these candles transition through various shades, signaling changes in market dynamics.
Utilizing Reference Levels: Leverage the horizontal lines at 0, 10, 50, and 90 as critical thresholds. For instance, values above 50 might suggest bullish conditions, while those below could hint at bearish tendencies.
Combining with Other Tools: To enhance reliability, integrate this indicator with complementary technical analyses such as moving averages, volume profiles, or other oscillators like RSI or MACD.
LIMITATIONS
Market Volatility: In extremely volatile or sideways-trending markets, the indicator might produce false signals due to erratic price movements. Always cross-reference with broader market contexts.
Testing Required: Before deploying the indicator in real-time trading, conduct thorough backtesting across diverse assets and timeframes to understand its performance characteristics fully.
Asset-Specific Performance: The efficacy of the L3 Dark Horse Oscillator can differ significantly across various financial instruments and market conditions. Tailor your strategies accordingly.
NOTES
Historical Data: Ensure ample historical data availability to facilitate precise calculations and avoid inaccuracies stemming from insufficient data points.
Parameter Adjustments: Experiment with adjusting the default periods (27 and 36 bars) if you find them unsuitable for your specific trading style or market conditions.
Visual Customization: Modify the appearance settings, including line styles and gradient colors, to better suit personal preferences without compromising functionality.
Risk Management: While the indicator offers valuable insights, always adhere to robust risk management practices to safeguard against unexpected market fluctuations.
EXAMPLE STRATEGIES
Trend Following: Use the oscillator to confirm existing trends. When Component A crosses above Component B, consider entering long positions; conversely, look for short entries during downward crossovers.
Mean Reversion: Identify extreme readings near the upper (90) or lower (10) bands where prices might revert to mean levels, presenting potential reversal opportunities.
Divergence Analysis: Compare the oscillator's behavior with price action to spot divergences, which often precede trend reversals. Bullish divergence occurs when prices make lower lows but the oscillator shows higher lows, suggesting upward momentum.
RSI and CCICombined RSI and CCI Indicator for MetaTrader
The Combined RSI and CCI Indicator is a powerful hybrid momentum oscillator designed to merge the strengths of two popular indicators—the Relative Strength Index (RSI) and the Commodity Channel Index (CCI)—into a single, visually intuitive chart window. This tool enhances traders’ ability to identify overbought and oversold conditions, divergences, trend strength, and potential reversal zones with improved precision.
Purpose
By integrating RSI and CCI, this indicator helps filter out false signals that often occur when using each tool independently. It is especially useful for swing trading, trend confirmation, and spotting high-probability entry/exit zones. This dual-oscillator approach combines RSI’s relative momentum insights with CCI’s deviation-based analysis to produce a more reliable signal structure.
Key Features
Dual Oscillator Display: Plots both RSI and CCI on the same subwindow for easy comparison and correlation analysis.
Customizable Parameters:
RSI Period and Level (default: 14)
CCI Period and Typical Price Type (default: 20, TP)
Overbought/Oversold Levels for both indicators
Color-Coded Zones:
Background highlights when both RSI and CCI enter overbought/oversold territory, signaling high potential reversal zones.
Combined Signal Logic (Optional Feature):
Buy Signal: RSI < 30 and CCI < -100
Sell Signal: RSI > 70 and CCI > 100
These can be visualized as arrows or plotted as signal markers.
Trend Filter Overlay (Optional):
Can be combined with a moving average or price action filter to confirm trend direction before accepting signals.
Divergence Detection (Advanced Option):
Optional plotting of bullish or bearish divergence where both indicators diverge from price action.
Multi-Timeframe Compatibility:
Allows the use of higher timeframe RSI/CCI values to confirm signals on lower timeframes.
Benefits
Improved Signal Accuracy: Using both RSI and CCI together helps avoid false breakouts and whipsaws.
More Informed Decision-Making: Correlating momentum (RSI) with deviation (CCI) provides a well-rounded picture of market behavior.
Efficient Charting: Saves screen space and cognitive load by combining two indicators into one clean panel.
Scalable Strategy Integration: Can be used in discretionary trading or coded into automated strategies/alerts.
Use Case Example
In a ranging market, the indicator highlights zones where both RSI and CCI are oversold, alerting traders to potential bounce opportunities.
In trending markets, it confirms trend strength when RSI and CCI are both aligned with trend direction.
When RSI is diverging from price but CCI isn’t, it can be a clue of weakening momentum, helping traders scale out or avoid traps.
This combined indicator offers a versatile, high-performance toolset for traders looking to elevate their technical analysis by leveraging multiple momentum perspectives simultaneously.
real_time_candlesIntroduction
The Real-Time Candles Library provides comprehensive tools for creating, manipulating, and visualizing custom timeframe candles in Pine Script. Unlike standard indicators that only update at bar close, this library enables real-time visualization of price action and indicators within the current bar, offering traders unprecedented insight into market dynamics as they unfold.
This library addresses a fundamental limitation in traditional technical analysis: the inability to see how indicators evolve between bar closes. By implementing sophisticated real-time data processing techniques, traders can now observe indicator movements, divergences, and trend changes as they develop, potentially identifying trading opportunities much earlier than with conventional approaches.
Key Features
The library supports two primary candle generation approaches:
Chart-Time Candles: Generate real-time OHLC data for any variable (like RSI, MACD, etc.) while maintaining synchronization with chart bars.
Custom Timeframe (CTF) Candles: Create candles with custom time intervals or tick counts completely independent of the chart's native timeframe.
Both approaches support traditional candlestick and Heikin-Ashi visualization styles, with options for moving average overlays to smooth the data.
Configuration Requirements
For optimal performance with this library:
Set max_bars_back = 5000 in your script settings
When using CTF drawing functions, set max_lines_count = 500, max_boxes_count = 500, and max_labels_count = 500
These settings ensure that you will be able to draw correctly and will avoid any runtime errors.
Usage Examples
Basic Chart-Time Candle Visualization
// Create real-time candles for RSI
float rsi = ta.rsi(close, 14)
Candle rsi_candle = candle_series(rsi, CandleType.candlestick)
// Plot the candles using Pine's built-in function
plotcandle(rsi_candle.Open, rsi_candle.High, rsi_candle.Low, rsi_candle.Close,
"RSI Candles", rsi_candle.candle_color, rsi_candle.candle_color)
Multiple Access Patterns
The library provides three ways to access candle data, accommodating different programming styles:
// 1. Array-based access for collection operations
Candle candles = candle_array(source)
// 2. Object-oriented access for single entity manipulation
Candle candle = candle_series(source)
float value = candle.source(Source.HLC3)
// 3. Tuple-based access for functional programming styles
= candle_tuple(source)
Custom Timeframe Examples
// Create 20-second candles with EMA overlay
plot_ctf_candles(
source = close,
candle_type = CandleType.candlestick,
sample_type = SampleType.Time,
number_of_seconds = 20,
timezone = -5,
tied_open = true,
ema_period = 9,
enable_ema = true
)
// Create tick-based candles (new candle every 15 ticks)
plot_ctf_tick_candles(
source = close,
candle_type = CandleType.heikin_ashi,
number_of_ticks = 15,
timezone = -5,
tied_open = true
)
Advanced Usage with Custom Visualization
// Get custom timeframe candles without automatic plotting
CandleCTF my_candles = ctf_candles_array(
source = close,
candle_type = CandleType.candlestick,
sample_type = SampleType.Time,
number_of_seconds = 30
)
// Apply custom logic to the candles
float ema_values = my_candles.ctf_ema(14)
// Draw candles and EMA using time-based coordinates
my_candles.draw_ctf_candles_time()
ema_values.draw_ctf_line_time(line_color = #FF6D00)
Library Components
Data Types
Candle: Structure representing chart-time candles with OHLC, polarity, and visualization properties
CandleCTF: Extended candle structure with additional time metadata for custom timeframes
TickData: Structure for individual price updates with time deltas
Enumerations
CandleType: Specifies visualization style (candlestick or Heikin-Ashi)
Source: Defines price components for calculations (Open, High, Low, Close, HL2, etc.)
SampleType: Sets sampling method (Time-based or Tick-based)
Core Functions
get_tick(): Captures current price as a tick data point
candle_array(): Creates an array of candles from price updates
candle_series(): Provides a single candle based on latest data
candle_tuple(): Returns OHLC values as a tuple
ctf_candles_array(): Creates custom timeframe candles without rendering
Visualization Functions
source(): Extracts specific price components from candles
candle_ctf_to_float(): Converts candle data to float arrays
ctf_ema(): Calculates exponential moving averages for candle arrays
draw_ctf_candles_time(): Renders candles using time coordinates
draw_ctf_candles_index(): Renders candles using bar index coordinates
draw_ctf_line_time(): Renders lines using time coordinates
draw_ctf_line_index(): Renders lines using bar index coordinates
Technical Implementation Notes
This library leverages Pine Script's varip variables for state management, creating a sophisticated real-time data processing system. The implementation includes:
Efficient tick capturing: Samples price at every execution, maintaining temporal tracking with time deltas
Smart state management: Uses a hybrid approach with mutable updates at index 0 and historical preservation at index 1+
Temporal synchronization: Manages two time domains (chart time and custom timeframe)
The tooltip implementation provides crucial temporal context for custom timeframe visualizations, allowing users to understand exactly when each candle formed regardless of chart timeframe.
Limitations
Custom timeframe candles cannot be backtested due to Pine Script's limitations with historical tick data
Real-time visualization is only available during live chart updates
Maximum history is constrained by Pine Script's array size limits
Applications
Indicator visualization: See how RSI, MACD, or other indicators evolve in real-time
Volume analysis: Create custom volume profiles independent of chart timeframe
Scalping strategies: Identify short-term patterns with precisely defined time windows
Volatility measurement: Track price movement characteristics within bars
Custom signal generation: Create entry/exit signals based on custom timeframe patterns
Conclusion
The Real-Time Candles Library bridges the gap between traditional technical analysis (based on discrete OHLC bars) and the continuous nature of market movement. By making indicators more responsive to real-time price action, it gives traders a significant edge in timing and decision-making, particularly in fast-moving markets where waiting for bar close could mean missing important opportunities.
Whether you're building custom indicators, researching price patterns, or developing trading strategies, this library provides the foundation for sophisticated real-time analysis in Pine Script.
Implementation Details & Advanced Guide
Core Implementation Concepts
The Real-Time Candles Library implements a sophisticated event-driven architecture within Pine Script's constraints. At its heart, the library creates what's essentially a reactive programming framework handling continuous data streams.
Tick Processing System
The foundation of the library is the get_tick() function, which captures price updates as they occur:
export get_tick(series float source = close, series float na_replace = na)=>
varip float price = na
varip int series_index = -1
varip int old_time = 0
varip int new_time = na
varip float time_delta = 0
// ...
This function:
Samples the current price
Calculates time elapsed since last update
Maintains a sequential index to track updates
The resulting TickData structure serves as the fundamental building block for all candle generation.
State Management Architecture
The library employs a sophisticated state management system using varip variables, which persist across executions within the same bar. This creates a hybrid programming paradigm that's different from standard Pine Script's bar-by-bar model.
For chart-time candles, the core state transition logic is:
// Real-time update of current candle
candle_data := Candle.new(Open, High, Low, Close, polarity, series_index, candle_color)
candles.set(0, candle_data)
// When a new bar starts, preserve the previous candle
if clear_state
candles.insert(1, candle_data)
price.clear()
// Reset state for new candle
Open := Close
price.push(Open)
series_index += 1
This pattern of updating index 0 in real-time while inserting completed candles at index 1 creates an elegant solution for maintaining both current state and historical data.
Custom Timeframe Implementation
The custom timeframe system manages its own time boundaries independent of chart bars:
bool clear_state = switch settings.sample_type
SampleType.Ticks => cumulative_series_idx >= settings.number_of_ticks
SampleType.Time => cumulative_time_delta >= settings.number_of_seconds
This dual-clock system synchronizes two time domains:
Pine's execution clock (bar-by-bar processing)
The custom timeframe clock (tick or time-based)
The library carefully handles temporal discontinuities, ensuring candle formation remains accurate despite irregular tick arrival or market gaps.
Advanced Usage Techniques
1. Creating Custom Indicators with Real-Time Candles
To develop indicators that process real-time data within the current bar:
// Get real-time candles for your data
Candle rsi_candles = candle_array(ta.rsi(close, 14))
// Calculate indicator values based on candle properties
float signal = ta.ema(rsi_candles.first().source(Source.Close), 9)
// Detect patterns that occur within the bar
bool divergence = close > close and rsi_candles.first().Close < rsi_candles.get(1).Close
2. Working with Custom Timeframes and Plotting
For maximum flexibility when visualizing custom timeframe data:
// Create custom timeframe candles
CandleCTF volume_candles = ctf_candles_array(
source = volume,
candle_type = CandleType.candlestick,
sample_type = SampleType.Time,
number_of_seconds = 60
)
// Convert specific candle properties to float arrays
float volume_closes = volume_candles.candle_ctf_to_float(Source.Close)
// Calculate derived values
float volume_ema = volume_candles.ctf_ema(14)
// Create custom visualization
volume_candles.draw_ctf_candles_time()
volume_ema.draw_ctf_line_time(line_color = color.orange)
3. Creating Hybrid Timeframe Analysis
One powerful application is comparing indicators across multiple timeframes:
// Standard chart timeframe RSI
float chart_rsi = ta.rsi(close, 14)
// Custom 5-second timeframe RSI
CandleCTF ctf_candles = ctf_candles_array(
source = close,
candle_type = CandleType.candlestick,
sample_type = SampleType.Time,
number_of_seconds = 5
)
float fast_rsi_array = ctf_candles.candle_ctf_to_float(Source.Close)
float fast_rsi = fast_rsi_array.first()
// Generate signals based on divergence between timeframes
bool entry_signal = chart_rsi < 30 and fast_rsi > fast_rsi_array.get(1)
Final Notes
This library represents an advanced implementation of real-time data processing within Pine Script's constraints. By creating a reactive programming framework for handling continuous data streams, it enables sophisticated analysis typically only available in dedicated trading platforms.
The design principles employed—including state management, temporal processing, and object-oriented architecture—can serve as patterns for other advanced Pine Script development beyond this specific application.
------------------------
Library "real_time_candles"
A comprehensive library for creating real-time candles with customizable timeframes and sampling methods.
Supports both chart-time and custom-time candles with options for candlestick and Heikin-Ashi visualization.
Allows for tick-based or time-based sampling with moving average overlay capabilities.
get_tick(source, na_replace)
Captures the current price as a tick data point
Parameters:
source (float) : Optional - Price source to sample (defaults to close)
na_replace (float) : Optional - Value to use when source is na
Returns: TickData structure containing price, time since last update, and sequential index
candle_array(source, candle_type, sync_start, bullish_color, bearish_color)
Creates an array of candles based on price updates
Parameters:
source (float) : Optional - Price source to sample (defaults to close)
candle_type (simple CandleType) : Optional - Type of candle chart to create (candlestick or Heikin-Ashi)
sync_start (simple bool) : Optional - Whether to synchronize with the start of a new bar
bullish_color (color) : Optional - Color for bullish candles
bearish_color (color) : Optional - Color for bearish candles
Returns: Array of Candle objects ordered with most recent at index 0
candle_series(source, candle_type, wait_for_sync, bullish_color, bearish_color)
Provides a single candle based on the latest price data
Parameters:
source (float) : Optional - Price source to sample (defaults to close)
candle_type (simple CandleType) : Optional - Type of candle chart to create (candlestick or Heikin-Ashi)
wait_for_sync (simple bool) : Optional - Whether to wait for a new bar before starting
bullish_color (color) : Optional - Color for bullish candles
bearish_color (color) : Optional - Color for bearish candles
Returns: A single Candle object representing the current state
candle_tuple(source, candle_type, wait_for_sync, bullish_color, bearish_color)
Provides candle data as a tuple of OHLC values
Parameters:
source (float) : Optional - Price source to sample (defaults to close)
candle_type (simple CandleType) : Optional - Type of candle chart to create (candlestick or Heikin-Ashi)
wait_for_sync (simple bool) : Optional - Whether to wait for a new bar before starting
bullish_color (color) : Optional - Color for bullish candles
bearish_color (color) : Optional - Color for bearish candles
Returns: Tuple representing current candle values
method source(self, source, na_replace)
Extracts a specific price component from a Candle
Namespace types: Candle
Parameters:
self (Candle)
source (series Source) : Type of price data to extract (Open, High, Low, Close, or composite values)
na_replace (float) : Optional - Value to use when source value is na
Returns: The requested price value from the candle
method source(self, source)
Extracts a specific price component from a CandleCTF
Namespace types: CandleCTF
Parameters:
self (CandleCTF)
source (simple Source) : Type of price data to extract (Open, High, Low, Close, or composite values)
Returns: The requested price value from the candle as a varip
method candle_ctf_to_float(self, source)
Converts a specific price component from each CandleCTF to a float array
Namespace types: array
Parameters:
self (array)
source (simple Source) : Optional - Type of price data to extract (defaults to Close)
Returns: Array of float values extracted from the candles, ordered with most recent at index 0
method ctf_ema(self, ema_period)
Calculates an Exponential Moving Average for a CandleCTF array
Namespace types: array
Parameters:
self (array)
ema_period (simple float) : Period for the EMA calculation
Returns: Array of float values representing the EMA of the candle data, ordered with most recent at index 0
method draw_ctf_candles_time(self, sample_type, number_of_ticks, number_of_seconds, timezone)
Renders custom timeframe candles using bar time coordinates
Namespace types: array
Parameters:
self (array)
sample_type (simple SampleType) : Optional - Method for sampling data (Time or Ticks), used for tooltips
number_of_ticks (simple int) : Optional - Number of ticks per candle (used when sample_type is Ticks), used for tooltips
number_of_seconds (simple float) : Optional - Time duration per candle in seconds (used when sample_type is Time), used for tooltips
timezone (simple int) : Optional - Timezone offset from UTC (-12 to +12), used for tooltips
Returns: void - Renders candles on the chart using time-based x-coordinates
method draw_ctf_candles_index(self, sample_type, number_of_ticks, number_of_seconds, timezone)
Renders custom timeframe candles using bar index coordinates
Namespace types: array
Parameters:
self (array)
sample_type (simple SampleType) : Optional - Method for sampling data (Time or Ticks), used for tooltips
number_of_ticks (simple int) : Optional - Number of ticks per candle (used when sample_type is Ticks), used for tooltips
number_of_seconds (simple float) : Optional - Time duration per candle in seconds (used when sample_type is Time), used for tooltips
timezone (simple int) : Optional - Timezone offset from UTC (-12 to +12), used for tooltips
Returns: void - Renders candles on the chart using index-based x-coordinates
method draw_ctf_line_time(self, source, line_size, line_color)
Renders a line representing a price component from the candles using time coordinates
Namespace types: array
Parameters:
self (array)
source (simple Source) : Optional - Type of price data to extract (defaults to Close)
line_size (simple int) : Optional - Width of the line
line_color (simple color) : Optional - Color of the line
Returns: void - Renders a connected line on the chart using time-based x-coordinates
method draw_ctf_line_time(self, line_size, line_color)
Renders a line from a varip float array using time coordinates
Namespace types: array
Parameters:
self (array)
line_size (simple int) : Optional - Width of the line, defaults to 2
line_color (simple color) : Optional - Color of the line
Returns: void - Renders a connected line on the chart using time-based x-coordinates
method draw_ctf_line_index(self, source, line_size, line_color)
Renders a line representing a price component from the candles using index coordinates
Namespace types: array
Parameters:
self (array)
source (simple Source) : Optional - Type of price data to extract (defaults to Close)
line_size (simple int) : Optional - Width of the line
line_color (simple color) : Optional - Color of the line
Returns: void - Renders a connected line on the chart using index-based x-coordinates
method draw_ctf_line_index(self, line_size, line_color)
Renders a line from a varip float array using index coordinates
Namespace types: array
Parameters:
self (array)
line_size (simple int) : Optional - Width of the line, defaults to 2
line_color (simple color) : Optional - Color of the line
Returns: void - Renders a connected line on the chart using index-based x-coordinates
plot_ctf_tick_candles(source, candle_type, number_of_ticks, timezone, tied_open, ema_period, bullish_color, bearish_color, line_width, ema_color, use_time_indexing)
Plots tick-based candles with moving average
Parameters:
source (float) : Input price source to sample
candle_type (simple CandleType) : Type of candle chart to display
number_of_ticks (simple int) : Number of ticks per candle
timezone (simple int) : Timezone offset from UTC (-12 to +12)
tied_open (simple bool) : Whether to tie open price to close of previous candle
ema_period (simple float) : Period for the exponential moving average
bullish_color (color) : Optional - Color for bullish candles
bearish_color (color) : Optional - Color for bearish candles
line_width (simple int) : Optional - Width of the moving average line, defaults to 2
ema_color (color) : Optional - Color of the moving average line
use_time_indexing (simple bool) : Optional - When true the function will plot with xloc.time, when false it will plot using xloc.bar_index
Returns: void - Creates visual candle chart with EMA overlay
plot_ctf_tick_candles(source, candle_type, number_of_ticks, timezone, tied_open, bullish_color, bearish_color, use_time_indexing)
Plots tick-based candles without moving average
Parameters:
source (float) : Input price source to sample
candle_type (simple CandleType) : Type of candle chart to display
number_of_ticks (simple int) : Number of ticks per candle
timezone (simple int) : Timezone offset from UTC (-12 to +12)
tied_open (simple bool) : Whether to tie open price to close of previous candle
bullish_color (color) : Optional - Color for bullish candles
bearish_color (color) : Optional - Color for bearish candles
use_time_indexing (simple bool) : Optional - When true the function will plot with xloc.time, when false it will plot using xloc.bar_index
Returns: void - Creates visual candle chart without moving average
plot_ctf_time_candles(source, candle_type, number_of_seconds, timezone, tied_open, ema_period, bullish_color, bearish_color, line_width, ema_color, use_time_indexing)
Plots time-based candles with moving average
Parameters:
source (float) : Input price source to sample
candle_type (simple CandleType) : Type of candle chart to display
number_of_seconds (simple float) : Time duration per candle in seconds
timezone (simple int) : Timezone offset from UTC (-12 to +12)
tied_open (simple bool) : Whether to tie open price to close of previous candle
ema_period (simple float) : Period for the exponential moving average
bullish_color (color) : Optional - Color for bullish candles
bearish_color (color) : Optional - Color for bearish candles
line_width (simple int) : Optional - Width of the moving average line, defaults to 2
ema_color (color) : Optional - Color of the moving average line
use_time_indexing (simple bool) : Optional - When true the function will plot with xloc.time, when false it will plot using xloc.bar_index
Returns: void - Creates visual candle chart with EMA overlay
plot_ctf_time_candles(source, candle_type, number_of_seconds, timezone, tied_open, bullish_color, bearish_color, use_time_indexing)
Plots time-based candles without moving average
Parameters:
source (float) : Input price source to sample
candle_type (simple CandleType) : Type of candle chart to display
number_of_seconds (simple float) : Time duration per candle in seconds
timezone (simple int) : Timezone offset from UTC (-12 to +12)
tied_open (simple bool) : Whether to tie open price to close of previous candle
bullish_color (color) : Optional - Color for bullish candles
bearish_color (color) : Optional - Color for bearish candles
use_time_indexing (simple bool) : Optional - When true the function will plot with xloc.time, when false it will plot using xloc.bar_index
Returns: void - Creates visual candle chart without moving average
plot_ctf_candles(source, candle_type, sample_type, number_of_ticks, number_of_seconds, timezone, tied_open, ema_period, bullish_color, bearish_color, enable_ema, line_width, ema_color, use_time_indexing)
Unified function for plotting candles with comprehensive options
Parameters:
source (float) : Input price source to sample
candle_type (simple CandleType) : Optional - Type of candle chart to display
sample_type (simple SampleType) : Optional - Method for sampling data (Time or Ticks)
number_of_ticks (simple int) : Optional - Number of ticks per candle (used when sample_type is Ticks)
number_of_seconds (simple float) : Optional - Time duration per candle in seconds (used when sample_type is Time)
timezone (simple int) : Optional - Timezone offset from UTC (-12 to +12)
tied_open (simple bool) : Optional - Whether to tie open price to close of previous candle
ema_period (simple float) : Optional - Period for the exponential moving average
bullish_color (color) : Optional - Color for bullish candles
bearish_color (color) : Optional - Color for bearish candles
enable_ema (bool) : Optional - Whether to display the EMA overlay
line_width (simple int) : Optional - Width of the moving average line, defaults to 2
ema_color (color) : Optional - Color of the moving average line
use_time_indexing (simple bool) : Optional - When true the function will plot with xloc.time, when false it will plot using xloc.bar_index
Returns: void - Creates visual candle chart with optional EMA overlay
ctf_candles_array(source, candle_type, sample_type, number_of_ticks, number_of_seconds, tied_open, bullish_color, bearish_color)
Creates an array of custom timeframe candles without rendering them
Parameters:
source (float) : Input price source to sample
candle_type (simple CandleType) : Type of candle chart to create (candlestick or Heikin-Ashi)
sample_type (simple SampleType) : Method for sampling data (Time or Ticks)
number_of_ticks (simple int) : Optional - Number of ticks per candle (used when sample_type is Ticks)
number_of_seconds (simple float) : Optional - Time duration per candle in seconds (used when sample_type is Time)
tied_open (simple bool) : Optional - Whether to tie open price to close of previous candle
bullish_color (color) : Optional - Color for bullish candles
bearish_color (color) : Optional - Color for bearish candles
Returns: Array of CandleCTF objects ordered with most recent at index 0
Candle
Structure representing a complete candle with price data and display properties
Fields:
Open (series float) : Opening price of the candle
High (series float) : Highest price of the candle
Low (series float) : Lowest price of the candle
Close (series float) : Closing price of the candle
polarity (series bool) : Boolean indicating if candle is bullish (true) or bearish (false)
series_index (series int) : Sequential index identifying the candle in the series
candle_color (series color) : Color to use when rendering the candle
ready (series bool) : Boolean indicating if candle data is valid and ready for use
TickData
Structure for storing individual price updates
Fields:
price (series float) : The price value at this tick
time_delta (series float) : Time elapsed since the previous tick in milliseconds
series_index (series int) : Sequential index identifying this tick
CandleCTF
Structure representing a custom timeframe candle with additional time metadata
Fields:
Open (series float) : Opening price of the candle
High (series float) : Highest price of the candle
Low (series float) : Lowest price of the candle
Close (series float) : Closing price of the candle
polarity (series bool) : Boolean indicating if candle is bullish (true) or bearish (false)
series_index (series int) : Sequential index identifying the candle in the series
open_time (series int) : Timestamp marking when the candle was opened (in Unix time)
time_delta (series float) : Duration of the candle in milliseconds
candle_color (series color) : Color to use when rendering the candle
Dynamic Volatility Differential Model (DVDM)The Dynamic Volatility Differential Model (DVDM) is a quantitative trading strategy designed to exploit the spread between implied volatility (IV) and historical (realized) volatility (HV). This strategy identifies trading opportunities by dynamically adjusting thresholds based on the standard deviation of the volatility spread. The DVDM is versatile and applicable across various markets, including equity indices, commodities, and derivatives such as the FDAX (DAX Futures).
Key Components of the DVDM:
1. Implied Volatility (IV):
The IV is derived from options markets and reflects the market’s expectation of future price volatility. For instance, the strategy uses volatility indices such as the VIX (S&P 500), VXN (Nasdaq 100), or RVX (Russell 2000), depending on the target market. These indices serve as proxies for market sentiment and risk perception (Whaley, 2000).
2. Historical Volatility (HV):
The HV is computed from the log returns of the underlying asset’s price. It represents the actual volatility observed in the market over a defined lookback period, adjusted to annualized levels using a multiplier of \sqrt{252} for daily data (Hull, 2012).
3. Volatility Spread:
The difference between IV and HV forms the volatility spread, which is a measure of divergence between market expectations and actual market behavior.
4. Dynamic Thresholds:
Unlike static thresholds, the DVDM employs dynamic thresholds derived from the standard deviation of the volatility spread. The thresholds are scaled by a user-defined multiplier, ensuring adaptability to market conditions and volatility regimes (Christoffersen & Jacobs, 2004).
Trading Logic:
1. Long Entry:
A long position is initiated when the volatility spread exceeds the upper dynamic threshold, signaling that implied volatility is significantly higher than realized volatility. This condition suggests potential mean reversion, as markets may correct inflated risk premiums.
2. Short Entry:
A short position is initiated when the volatility spread falls below the lower dynamic threshold, indicating that implied volatility is significantly undervalued relative to realized volatility. This signals the possibility of increased market uncertainty.
3. Exit Conditions:
Positions are closed when the volatility spread crosses the zero line, signifying a normalization of the divergence.
Advantages of the DVDM:
1. Adaptability:
Dynamic thresholds allow the strategy to adjust to changing market conditions, making it suitable for both low-volatility and high-volatility environments.
2. Quantitative Precision:
The use of standard deviation-based thresholds enhances statistical reliability and reduces subjectivity in decision-making.
3. Market Versatility:
The strategy’s reliance on volatility metrics makes it universally applicable across asset classes and markets, ensuring robust performance.
Scientific Relevance:
The strategy builds on empirical research into the predictive power of implied volatility over realized volatility (Poon & Granger, 2003). By leveraging the divergence between these measures, the DVDM aligns with findings that IV often overestimates future volatility, creating opportunities for mean-reversion trades. Furthermore, the inclusion of dynamic thresholds aligns with risk management best practices by adapting to volatility clustering, a well-documented phenomenon in financial markets (Engle, 1982).
References:
1. Christoffersen, P., & Jacobs, K. (2004). The importance of the volatility risk premium for volatility forecasting. Journal of Financial and Quantitative Analysis, 39(2), 375-397.
2. Engle, R. F. (1982). Autoregressive conditional heteroskedasticity with estimates of the variance of United Kingdom inflation. Econometrica, 50(4), 987-1007.
3. Hull, J. C. (2012). Options, Futures, and Other Derivatives. Pearson Education.
4. Poon, S. H., & Granger, C. W. J. (2003). Forecasting volatility in financial markets: A review. Journal of Economic Literature, 41(2), 478-539.
5. Whaley, R. E. (2000). The investor fear gauge. Journal of Portfolio Management, 26(3), 12-17.
This strategy leverages quantitative techniques and statistical rigor to provide a systematic approach to volatility trading, making it a valuable tool for professional traders and quantitative analysts.
Jackson Volume breaker Indication# Jackson Volume Breaker Beta
### Advanced Volume Analysis Indicator
## Description
The Jackson Volume Breaker Beta is a sophisticated volume analysis tool that helps traders identify buying and selling pressure by analyzing price action and volume distribution. This indicator separates and visualizes buying and selling volume based on where the price closes within each candle's range, providing clear insights into market participation and potential trend strength.
## Key Features
1. **Smart Volume Distribution**
- Automatically separates buying and selling volume
- Color-coded volume bars (Green for buying, Red for selling)
- Winning volume always displayed on top for quick visual reference
2. **Real-time Volume Analysis**
- Shows current candle's buy/sell ratio
- Displays total volume with smart number formatting (K, M, B)
- Percentage-based volume distribution
3. **Technical Overlays**
- 20-period Volume Moving Average
- Dynamic scaling relative to price action
- Clean, uncluttered visual design
## How to Use
### Installation
1. Add the indicator to your chart
2. Adjust the Volume Scale input based on your preference (default: 0.08)
3. Toggle the Moving Average display if desired
### Reading the Indicator
#### Volume Bars
- **Green Bars**: Represent buying volume
- **Red Bars**: Represent selling volume
- **Stacking**: The larger volume (winning side) is always displayed on top
- **Height**: Relative to the actual volume, scaled for chart visibility
#### Information Table
The top-right table shows three key pieces of information:
1. **Left Percentage**: Winning side's volume percentage
2. **Middle Percentage**: Losing side's volume percentage
3. **Right Number**: Total volume (abbreviated)
### Trading Applications
1. **Trend Confirmation**
- Strong buying volume in uptrends confirms bullish pressure
- High selling volume in downtrends confirms bearish pressure
- Volume divergence from price can signal potential reversals
2. **Support/Resistance Breaks**
- High volume on breakouts suggests stronger moves
- Low volume on breaks might indicate false breakouts
- Monitor volume distribution for break direction confirmation
3. **Reversal Identification**
- Volume shift from selling to buying can signal potential bottoms
- Shift from buying to selling can indicate potential tops
- Use with price action for better entry/exit points
## Input Parameters
1. **Volume Scale (0.01 to 1.0)**
- Controls the height of volume bars
- Default: 0.08
- Adjust based on your chart size and preference
2. **Show MA (True/False)**
- Toggles 20-period volume moving average
- Useful for identifying volume trends
- Default: True
3. **MA Length (1+)**
- Changes the moving average period
- Default: 20
- Higher values for longer-term volume trends
## Best Practices
1. **Multiple Timeframe Analysis**
- Compare volume patterns across different timeframes
- Look for volume convergence/divergence
- Use higher timeframes for major trend confirmation
2. **Combine with Other Indicators**
- Price action patterns
- Support/resistance levels
- Momentum indicators
- Trend indicators
3. **Volume Pattern Recognition**
- Monitor for unusual volume spikes
- Watch for volume climax patterns
- Identify volume dry-ups
## Tips for Optimization
1. Adjust the Volume Scale based on your chart size
2. Use smaller timeframes for detailed volume analysis
3. Compare current volume bars to historical patterns
4. Watch for volume/price divergences
5. Monitor volume distribution changes near key price levels
## Note
This indicator works best when combined with proper price action analysis and risk management strategies. It should not be used as a standalone trading system but rather as part of a comprehensive trading approach.
## Version History
- Beta Release: Initial public version
- Features buy/sell volume separation, moving average, and real-time analysis
- Optimized for both intraday and swing trading timeframes
## Credits
Developed by Jackson based on other script creators
Special thanks to the trading community for feedback and suggestions
Distance between EMA 50-100/100-150This script calculates and plots the percentage difference between the 50-period, 100-period, and 150-period Exponential Moving Averages (EMA) on a TradingView chart. The aim is to provide a clear visual representation of the market's momentum by analyzing the distance between key EMAs over time.
Key features of this script:
1. EMA Calculation : The script computes the EMA values for 50, 100, and 150 periods and calculates the percentage difference between EMA 50 and 100, and between EMA 100 and 150.
2. Custom Threshold : Users can adjust a threshold percentage to highlight significant divergences between the EMAs. A default threshold is set to 0.1%.
3. Visual Alerts : When the percentage difference exceeds the threshold, a visual marker appears on the chart:
Green Circles for bullish momentum (positive divergence),
Red Circles for bearish momentum (negative divergence),
Diamonds to indicate the first occurrence of new bullish or bearish signals, allowing users to catch fresh market trends.
4. Dynamic Plotting : The script plots two lines representing the percentage difference for each EMA pair, offering a quick and intuitive way to monitor trends.
Ideal for traders looking to gauge market direction using the relationship between multiple EMAs, this script simplifies analysis by focusing on key moving average interactions.
HTF Inversion Fair Value Gap | Flux Charts💎 GENERAL OVERVIEW
Introducing our new Higher Timeframe Inversion Fair Value Gaps (IFVG) indicator! Inversion Fair Value Gaps occur when a Fair Value Gap becomes invalidated. They reverse the role of the original Fair Value Gap, making a bullish zone bearish and vice versa. This indicator finds the latest IFVG in a higher timeframe and renders it in the current chart with it's divergence. For more information about the process, read the "HOW DOES IT WORK" section of the description.
Features of the new Higher Timeframe IFVG Indicator :
Renders The Higher Timeframe IFVG
Invalidation Borders
Variety Of Zone Detection / Sensitivity / Filtering / Invalidation Settings
High Customizability
🚩 UNIQUENESS
This indicator lets you take a look at the bigger picture by rendering the latest IFVG in a higher timeframe. You can see the current IFVG divergence to see how is the price action acting around the IFVG. You also can customize the FVG Filtering method, FVG & IFVG Zone Invalidation, Detection Sensitivity etc. according to your needs to get the best performance from the indicator.
📌 HOW DOES IT WORK ?
A Fair Value Gap generally occur when there is an imbalance in the market. They can be detected by specific formations within the chart. An Inversion Fair Value Gap is when a FVG becomes invalidated, thus reversing the direction of the FVG.
This indicator then renders the IFVG in a higher timeframe in your chart like this :
The opaque dashed lines at the top and the bottom of the IFVG indicate the bars that formed the original FVG. The middle dashed line that is semi-transparent shows the candlestick that invalidated the original FVG, thus created the current IFVG. The vertical solid top & bottom wicks indicate the current divergence of the highest & lowest points to the current IFVG.
The IFVGs can act as strong support & resistance points, depending on their creation volume and invalidation volume. Traders can use them for confirmation signals to their positions.
⚙️ SETTINGS
1. General Configuration
Higher Timeframe -> The higher timeframe to detect latest IFVG from. Keep in mind that his setting must be higher than the current timeframe.
IFVG Zone Invalidation -> Select between Wick & Close price for IFVG Zone Invalidation.
2. Fair Value Gaps
FVG Zone Invalidation -> Select between Wick & Close price for FVG Zone Invalidation.
Zone Filtering -> With "Average Range" selected, algorithm will find FVG zones in comparison with average range of last bars in the chart. With the "Volume Threshold" option, you may select a Volume Threshold % to spot FVGs with a larger total volume than average.
FVG Detection -> With the "Same Type" option, all 3 bars that formed the FVG should be the same type. (Bullish / Bearish). If the "All" option is selected, bar types may vary between Bullish / Bearish.
Detection Sensitivity -> You may select between Low, Normal or High FVG detection sensitivity. This will essentially determine the size of the spotted FVGs, with lower sensitivities resulting in spotting bigger FVGs, and higher sensitivities resulting in spotting all sizes of FVGs.
3. Dasboard
You can enable / disable the mitigation dashboard and customize it here.
4. Customization
Offset -> The number of candlesticks the IFVG will be rendered to the right of the latest bar.
Width -> The width of the rendered IFVG in candlesticks.
Super RSI: Multi-Timeframe, Multi-RSI-MA, Multi Symbol [DucTri]█ Overview
RSI is a very popular indicator that almost every trader knows about. I created this indicator with the goal of helping you use RSI more conveniently and effectively.
█ Uses
Monitor the RSI of 10 currency pairs simultaneously.
The first column shows the RSI of the current currency pair.
RSI below 30 will have a Red background, and above 70 will have a Green background.
Display multiple RSI lines with different lengths (or timeframes).
Displays 3 RSI with 3 different lengths 7, 14 and 21
Displays two RSI lines with two different timeframes. The purple line shows RSI (14) for the 1H timeframe, and the blue line shows RSI (14) for the 4H timeframe.
Display MA and Bollinger Band lines for RSI.
Shows the RSI line along with two MA lines of the RSI: EMA (9) in blue and WMA (45) in red.
Identify RSI Divergence with custom settings
█ Input
- You can have up to three RSI lines, with customizable lengths and timeframes.
- You also have up to three RSI-MA lines, where you can customize the MA type and length.
- You can track RSI for up to 10 currency pairs at the same time.
- Additionally, you can change how the top (or bottom) is determined when identifying divergence.
█ Alerts
Send alerts when two RSI lines cross. For example, when the RSI 14 crosses above the RSI 21, or the RSI on the 1H timeframe crosses above the RSI on the 4H timeframe.*
Send alerts when RSI crosses above or below the RSI-MA line.
Send alerts when two RSI-MA lines cross. For example, when the RSI-EMA (9) crosses above the RSI-WMA (45).*
Send alerts when Divergence (Convergence) appears.
Send alerts when any currency pair in the monitored list shows an Overbought or Oversold signal.
[KVA] KMACDKMACD Indicator: Advanced Market Analysis Through Central Tendency Metrics
The KMACD (KAMVIA Moving Average Convergence Divergence) indicator is an advanced, multi-dimensional tool designed to provide traders and analysts with a deeper understanding of market dynamics. By integrating the classical MACD framework with statistical measures of central tendency, KMACD offers a sophisticated approach to identifying trends, reversals, and potential trading opportunities.
Key Features of the KMACD Indicator:
1. Enhanced MACD Calculation :
- The KMACD employs dual moving averages (fast and slow) of user-defined types (SMA, EMA, WMA) to calculate the MACD line, which represents the difference between these moving averages. This traditional approach is further enhanced by customizable signal smoothing, allowing users to fine-tune the sensitivity of the indicator.
2. Central Tendency Metrics :
- The indicator integrates additional statistical measures, such as Mean, Median, Mode, Standard Deviation, and Variance, calculated over a rolling window. These metrics provide insights into the central tendencies of the MACD values, helping traders understand the overall trend direction and the dispersion of price movements around the trend.
3. RSI-Like Oscillator :
- A unique RSI-like value derived from the MACD line is included to highlight overbought and oversold conditions. This offers a dual-layered perspective, combining the power of MACD and RSI methodologies, to signal potential market extremes with greater precision.
4. Customizable Visual Elements :
- KMACD allows users to toggle the visibility of the MACD line, Signal line, and Histogram, providing flexibility in how the data is presented. The histogram dynamically changes color—green when above zero, indicating bullish momentum, and red when below zero, indicating bearish momentum.
5. Horizontal Line Customization :
- The indicator includes customizable horizontal lines for the zero level, overbought, and oversold thresholds. These lines serve as visual cues to identify key price levels and market conditions.
6. Adaptive to Various Market Conditions :
- KMACD's comprehensive features make it adaptable to various market conditions, from trending markets to sideways consolidations. Whether you're looking to capture momentum shifts or identify potential reversal points, KMACD provides the analytical power needed to make informed trading decisions.
How to Use KMACD:
- Trend Identification : Use the MACD line in conjunction with central tendency measures (Mean, Median, Mode) to gauge the overall market trend and its strength. A rising MACD line, supported by higher mean and median values, typically indicates an uptrend.
- Momentum Analysis : The histogram and RSI-like value help in identifying the momentum behind price movements. Positive histogram bars suggest increasing bullish momentum, while negative bars suggest increasing bearish momentum.
- Overbought/Oversold Conditions : Monitor the RSI-like oscillator and the overbought/oversold levels to detect when the market may be poised for a reversal.
- Divergence Detection : Look for divergences between the MACD line and price action, supported by the central tendency measures, to spot potential reversal points.
Conclusion
The KMACD indicator is more than just a traditional MACD; it’s a comprehensive tool designed to cater to both novice and experienced traders. By incorporating central tendency metrics and customizable features, KMACD stands out as a versatile and powerful indicator that enhances market analysis and trading strategies. Whether you're navigating volatile markets or steady trends, KMACD offers the precision and depth needed to stay ahead.
RSI, STOCHASTIC RSI AND MFI COMBOCombining the Relative Strength Index (RSI), Stochastic RSI (StochRSI), and Money Flow Index (MFI) can provide traders with a comprehensive approach to analyze market momentum, overbought/oversold conditions, and money flow. Each indicator offers unique insights, and their combination can help confirm trading signals and filter out false signals. Let's delve into each indicator and then discuss how they can be used together:
Relative Strength Index (RSI) 14: DA BLUE LINE
The RSI is a momentum oscillator that measures the speed and change of price movements. It oscillates between 0 and 100 and is typically used to identify overbought (>70) and oversold (<30) conditions. A reading above 70 may indicate that an asset is overbought and could be due for a pullback, while a reading below 30 may suggest that an asset is oversold and could be due for a bounce.
Stochastic RSI (StochRSI) 14: DA RED LINE
The StochRSI is an oscillator that combines the features of both the Stochastic Oscillator and RSI. It measures the relative position of the RSI within its range over a specific period (e.g., 14 periods). Like the RSI, the StochRSI oscillates between 0 and 100 and is used to identify overbought and oversold conditions. Typically:
A StochRSI above 0.8 may suggest overbought conditions.
A StochRSI below 0.2 may indicate oversold conditions.
Money Flow Index (MFI) 14: DA PURPLE LINE
The MFI is a momentum oscillator that measures the inflow and outflow of money into an asset over a specific period (e.g., 14 periods). It oscillates between 0 and 100 and is used to identify overbought and oversold conditions based on both price and volume. Generally:
An MFI above 80 may indicate overbought conditions.
An MFI below 20 may suggest oversold conditions.
Combining RSI, StochRSI, and MFI:
When combining RSI, StochRSI, and MFI, traders can use the following approach to analyze the market:
Identify Overbought/Oversold Conditions:
Look for confluence between RSI, StochRSI, and MFI readings to identify overbought and oversold conditions.
For example, if RSI > 70, StochRSI > 0.8, and MFI > 80, it may suggest a strong overbought condition, potentially indicating a reversal or pullback.
Confirm Trend Strength:
Use the RSI, StochRSI, and MFI to confirm the strength of a trend.
A rising trend with RSI, StochRSI, and MFI above 50 may suggest strong bullish momentum, while a falling trend with readings below 50 may indicate strong bearish momentum.
Divergence Analysis:
Look for divergences between price and RSI, StochRSI, or MFI to identify potential trend reversals.
For example, if the price makes a higher high, but RSI, StochRSI, or MFI makes a lower high (bearish divergence), it may suggest weakening bullish momentum and potential downside.
Combining RSI, StochRSI, and MFI can offer traders a more holistic view of market momentum, overbought/oversold conditions, and money flow. Backtest it let me know your success.
Dynamic Price Oscillator (Zeiierman)█ Overview
The Dynamic Price Oscillator (DPO) by Zeiierman is designed to gauge the momentum and volatility of asset prices in trading markets. By integrating elements of traditional oscillators with volatility adjustments and Bollinger Bands, the DPO offers a unique approach to understanding market dynamics. This indicator is particularly useful for identifying overbought and oversold conditions, capturing price trends, and detecting potential reversal points.
█ How It Works
The DPO operates by calculating the difference between the current closing price and a moving average of the closing price, adjusted for volatility using the True Range method. This difference is then smoothed over a user-defined period to create the oscillator. Additionally, Bollinger Bands are applied to the oscillator itself, providing visual cues for volatility and potential breakout signals.
█ How to Use
⚪ Trend Confirmation
The DPO can serve as a confirmation tool for existing trends. Traders might look for the oscillator to maintain above or below its mean line to confirm bullish or bearish trends, respectively. A consistent direction in the oscillator's movement alongside price trend can provide additional confidence in the strength and sustainability of the trend.
⚪ Overbought/Oversold Conditions
With the application of Bollinger Bands directly on the oscillator, the DPO can highlight overbought or oversold conditions in a unique manner. When the oscillator moves outside the Bollinger Bands, it signifies an extreme condition.
⚪ Volatility Breakouts
The width of the Bollinger Bands on the oscillator reflects market volatility. Sudden expansions in the bands can indicate a breakout from a consolidation phase, which traders can use to enter trades in the direction of the breakout. Conversely, a contraction suggests a quieter market, which might be a signal for traders to wait or to look for range-bound strategies.
⚪ Momentum Trading
Momentum traders can use the DPO to spot moments when the market momentum is picking up. A sharp move of the oscillator towards either direction, especially when crossing the Bollinger Bands, can indicate the start of a strong price movement.
⚪ Mean Reversion
The DPO is also useful for mean reversion strategies, especially considering its volatility adjustment feature. When the oscillator touches or breaches the Bollinger Bands, it indicates a deviation from the normal price range. Traders might look for opportunities to enter trades anticipating a reversion to the mean.
⚪ Divergence Trading
Divergences between the oscillator and price action can be a powerful signal for reversals. For instance, if the price makes a new high but the oscillator fails to make a corresponding high, it may indicate weakening momentum and a potential reversal. Traders can use these divergence signals to initiate counter-trend moves.
█ Settings
Length: Determines the lookback period for the oscillator and Bollinger Bands calculation. Increasing this value smooths the oscillator and widens the Bollinger Bands, leading to fewer, more significant signals. Decreasing this value makes the oscillator more sensitive to recent price changes, offering more frequent signals but with increased noise.
Smoothing Factor: Adjusts the degree of smoothing applied to the oscillator's calculation. A higher smoothing factor reduces noise, offering clearer trend identification at the cost of signal timeliness. Conversely, a lower smoothing factor increases the oscillator's responsiveness to price movements, which may be useful for short-term trading but at the risk of false signals.
-----------------
Disclaimer
The information contained in my Scripts/Indicators/Ideas/Algos/Systems does not constitute financial advice or a solicitation to buy or sell any securities of any type. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
My Scripts/Indicators/Ideas/Algos/Systems are only for educational purposes!
Inverted EMAThe concept of an inverted Exponential Moving Average (EMA) isn't commonly used in traditional technical analysis or trading strategies. Inverting the EMA essentially means taking the reciprocal of the EMA values. While it may not have widespread use or recognition, here are some potential considerations or interpretations for the inverted EMA:
1. **Inverse Trend Indicator:**
- Inverting the EMA might be considered as an alternative approach to trend analysis. When the inverted EMA is rising, it could suggest a potential bearish trend, and when it is falling, it might indicate a bullish trend. Traders might explore using this as a contrarian or unconventional trend indicator.
2. **Volatility Indicator:**
- The inverted EMA might be used as a measure of volatility. When the values are fluctuating rapidly, it could imply increased volatility in the underlying asset. This could be useful for traders who are interested in gauging market dynamics.
3. **Divergence Analysis:**
- Traders may explore divergences between price and the inverted EMA. For instance, if prices are making new highs, but the inverted EMA is not, it could signal potential weakness or divergence in the bullish trend.
4. **Inverse Moving Average Crossovers:**
- In the context of moving average crossovers, traders usually look for crossovers between shorter and longer EMAs as potential signals. Inverting this concept, crossovers between inverted short-term and long-term EMAs might be explored for unconventional trading signals.
5. **Systematic Exploration:**
- Traders and researchers sometimes experiment with unconventional indicators to discover new patterns or behaviors in the market. The inverted EMA could be part of systematic exploration to uncover unique insights that traditional indicators might not reveal.
It's important to note that the interpretation and use of the inverted EMA depend on the trader's strategy, risk tolerance, and specific market conditions. Traders should thoroughly backtest any strategy involving unconventional indicators and use them cautiously in live trading. Additionally, the effectiveness of the inverted EMA may vary across different financial instruments and timeframes.
True Range Moving Average Deviation🔶 Overview
The True Range Moving Average Deviation Indicator (TRMAD) is a technical analysis tool that combines elements of price deviation, volatility, and overbought/oversold conditions.
🔶 Key Components
Current price (Close) : most recent closing price of the asset.
Moving Average (MA) : represents a smoothed trendline of the asset's closing prices over a specified period. By default, TRMAD uses the Simple Moving Average (SMA) with a 20-period setting.
Average True Range (ATR) : reflects the average price range between the high and low over a given time frame. By default, TRMAD uses a 14-period ATR setting with a Simple Moving Average (SMA) calculation. ATR quantifies the historical price volatility of the asset, which is crucial for normalizing the price deviation.
🔶 Calculation
(Close - MA) / ATR
🔶 Interpretation
When TRMAD is above +3 ATR , it is often considered an indication that the asset may be overbought, suggesting a potential reversal or correction to the downside.
When TRMAD is below -3 ATR , it is often considered an indication that the asset may be oversold, suggesting a potential reversal or bounce to the upside.
TRMAD values around 0 ATR may indicate a balanced market condition.
🔶 Usage
🔹 Overbought and Oversold Conditions:
TRMAD can help identify overbought and oversold conditions. When TRMAD reaches or exceeds certain user-defined thresholds (e.g., +3 ATR or -3 ATR), it can signal that the asset is in an extreme condition.
Traders can use these extreme conditions to adjust their positions or look for potential reversal opportunities.
🔹 Divergence Analysis:
Traders often analyze divergences between the TRMAD indicator and price movements. For example, if the price is making higher highs while TRMAD is making lower highs (bearish divergence), it could indicate a potential trend reversal.
🔹 Trend Confirmation:
TRMAD can be used in conjunction with other technical indicators to confirm trends. For example, if TRMAD is consistently positive during an uptrend, it can provide confirmation of the trend's strength.
Positive TRMAD : When TRMAD is positive but hasn't reached the overbought threshold (e.g., +3 ATR), it suggests that there is some bullish momentum, but traders may exercise caution and look for other confirming signals before considering a long position.
Negative TRMAD : When TRMAD is negative but hasn't reached the oversold threshold (e.g., -3 ATR), it suggests some bearish sentiment, but traders may want to seek additional confirmation before considering a short position.
🔹 Risk Management:
Traders can use TRMAD as part of their risk management strategy. For instance, if TRMAD suggests that an asset is overbought, a trader might consider tightening their stop-loss orders to manage potential downside risk.
🔶 Credits
The idea about this indicator came from Fabio Figueiredo (Vlad)
Composite RSIOne issue with the famouse RSI indicator is that it is too sensitive in some cases and thus, might give false signals if we are eager to use those signals.
If we increase the length of the RSI, it might give too few signals which is not ideal as well.
This Composite RSI indicator was created to utilize the RSI strength, using 3 RSIs (with different length) in combination to give less signal than the original one.
You can use it like a normal RSI indicator:
- Try to find the entry when the RSI is in the overbought (RSI >= 70) and oversold (RSI <= 30) areas
- Use bullish divergence and bearish divergence on the RSI itself to signal your trade
In the example chart, I included a built-in RSI as well so you that you can compare the original one and the Composite RSI indicator.
Some extra features:
- Simple bullish and bearish divergences detection.
- Mark the RSI with green circle(s) when it is extremely overbought (over 80) and oversold (under 20)