VR1 DEMA - Liquidity IdentifierThis custom Pine Script indicator, titled "VR1 DEMA - Liquidity Identifier", is designed to help traders identify periods of significant resistance to price movement, often indicating high liquidity areas where the market may encounter difficulty moving in one direction. The indicator analyzes the relationship between volume and price range, combined with bar volume conditions, to provide enhanced signals of potential liquidity buildup.
Key Features:
Customizable EMA Lengths:
Users can define the lengths of both the fast and slow Exponential Moving Averages (EMAs), with default values of 5 for the fast EMA and 13 for the slow EMA. These EMAs are calculated from the ratio of volume to price range, smoothing the data to detect trends in liquidity.
Dynamic Fast EMA Color:
The fast EMA changes color based on its relationship to the slow EMA:
Red when the fast EMA is above the slow EMA, signaling stronger resistance or greater liquidity.
White when the fast EMA is below the slow EMA, indicating potentially weaker resistance.
Liquidity Signal with Multiplier Condition:
The background of the chart changes to white when the volume-to-price ratio exceeds 1.5 times the fast EMA. This highlights potential areas of liquidity buildup where price movement may encounter stronger resistance. The 1.5 multiplier is adjustable, allowing for sensitivity customization.
Volume Condition for Enhanced Signals:
A new condition is added that requires the actual bar volume to exceed 1.2 times the 5-period EMA of average bar volume. This ensures that the background color only changes when there is not only increased liquidity but also significantly higher trading volume. The 1.2 multiplier is user-adjustable for further refinement.
Combined Liquidity and Volume Filtering:
Both conditions (volume-to-price ratio and actual volume) must be met for the background color to change. This double-filtering helps traders spot moments of unusual market activity more accurately.
Optional Volume/Price Range Visualization:
An optional plot of the volume-to-price ratio is included, providing a visual representation of how volume interacts with price movement in real-time. This can be enabled or disabled based on user preference.
User-Friendly Customization:
The script includes inputs for adjusting the fast and slow EMA lengths, as well as the multipliers for the volume-to-price ratio and actual volume conditions. These customizable parameters allow traders to tailor the indicator to their specific market strategies.
Use Case:
This indicator is particularly useful for identifying periods of high liquidity and resistance in the market, where price movement may stall or reverse. By combining volume-to-price ratio analysis with actual volume conditions, the indicator provides more reliable signals for detecting potential breakouts, reversals, or consolidation periods. The color-coded fast EMA and background shading make it easy to spot key moments of increased market activity and liquidity.
Ease of Movement indicator (EOM)
Liquidity SpotterIndicator Setup:
The script sets up a TradingView indicator titled "Liquidity Spotter" with a short title "PWWTC LS". It's designed to overlay on the price chart (overlay=true).
Input Variables:
The script defines input variables that allow users to customize the behavior of the indicator:
atr_length: Length of the Average True Range (ATR) used in calculations.
volume_multiplier: Multiplier used to compare the volume of the current bar with the average volume.
range_multiplier: Multiplier used to calculate the range condition.
highlight_color: Color used to highlight bars when conditions are met.
Calculations:
The script calculates the ATR and average volume using the ta.atr and ta.sma functions provided by TradingView's Pine Script.
It sets the avg_range to the value of the ATR, essentially making it the same as atr_value.
Conditions:
The script checks several conditions based on the calculated values:
range_condition: Compares the range (high - low) of the current bar with the average range multiplied by the range multiplier.
volume_condition: Compares the volume of the current bar with the average volume multiplied by the volume multiplier.
range_volume_condition: Compares the ratio of range to volume with the ratio of average range to average volume.
Plotting:
Based on the conditions being met or not, the script sets the color of the price bars. If all conditions are met, the color of the bars will be set to highlight_color, otherwise, it will remain unchanged (na).
Overall, this script visually highlights price bars on the chart where specific conditions related to range, volume, and their ratio are met, potentially indicating trading opportunities.
Moving Average of Volume for Up and Down ClosesThis indicator is intended to provide market bias information at a glance. Depending on the number of periods selected it can help identify changes in buying and selling sentiment or overall market bias. The two lines indicate increases and decreases in volumes for the selected number of periods. I recommend using this indicator with a minimum of clear support and resistance lines and a standard volume indicator. It does provided useful information as a stand-alone indicator. I don't use any indicators except volume, so this was meant to be my own personal volume analysis tool, however I feel that it can be very useful for other traders who may not have a deep understanding of volume analysis.
GKD-C Ease of Movement [Loxx]Giga Kaleidoscope Ease of Movement is a Confirmation module included in Loxx's "Giga Kaleidoscope Modularized Trading System".
█ Giga Kaleidoscope Modularized Trading System
What is Loxx's "Giga Kaleidoscope Modularized Trading System"?
The Giga Kaleidoscope Modularized Trading System is a trading system built on the philosophy of the NNFX (No Nonsense Forex) algorithmic trading.
What is an NNFX algorithmic trading strategy?
The NNFX algorithm is built on the principles of trend, momentum, and volatility. There are six core components in the NNFX trading algorithm:
1. Volatility - price volatility; e.g., Average True Range, True Range Double, Close-to-Close, etc.
2. Baseline - a moving average to identify price trend
3. Confirmation 1 - a technical indicator used to identify trends
4. Confirmation 2 - a technical indicator used to identify trends
5. Continuation - a technical indicator used to identify trends
6. Volatility/Volume - a technical indicator used to identify volatility/volume breakouts/breakdown
7. Exit - a technical indicator used to determine when a trend is exhausted
How does Loxx's GKD (Giga Kaleidoscope Modularized Trading System) implement the NNFX algorithm outlined above?
Loxx's GKD v1.0 system has five types of modules (indicators/strategies). These modules are:
1. GKD-BT - Backtesting module (Volatility, Number 1 in the NNFX algorithm)
2. GKD-B - Baseline module (Baseline and Volatility/Volume, Numbers 1 and 2 in the NNFX algorithm)
3. GKD-C - Confirmation 1/2 and Continuation module (Confirmation 1/2 and Continuation, Numbers 3, 4, and 5 in the NNFX algorithm)
4. GKD-V - Volatility/Volume module (Confirmation 1/2, Number 6 in the NNFX algorithm)
5. GKD-E - Exit module (Exit, Number 7 in the NNFX algorithm)
(additional module types will added in future releases)
Each module interacts with every module by passing data between modules. Data is passed between each module as described below:
GKD-B => GKD-V => GKD-C(1) => GKD-C(2) => GKD-C(Continuation) => GKD-E => GKD-BT
That is, the Baseline indicator passes its data to Volatility/Volume. The Volatility/Volume indicator passes its values to the Confirmation 1 indicator. The Confirmation 1 indicator passes its values to the Confirmation 2 indicator. The Confirmation 2 indicator passes its values to the Continuation indicator. The Continuation indicator passes its values to the Exit indicator, and finally, the Exit indicator passes its values to the Backtest strategy.
This chaining of indicators requires that each module conform to Loxx's GKD protocol, therefore allowing for the testing of every possible combination of technical indicators that make up the six components of the NNFX algorithm.
What does the application of the GKD trading system look like?
Example trading system:
Backtest: Strategy with 1-3 take profits, trailing stop loss, multiple types of PnL volatility, and 2 backtesting styles
Baseline: Hull Moving Average as shown on the chart above
Volatility/Volume: Volatility Ratio as shown on the chart above
Confirmation 1: Ease of Movement as shown on the chart above
Confirmation 2: Williams Percent Range
Continuation: Fisher Transform
Exit: Rex Oscillator
Each GKD indicator is denoted with a module identifier of either: GKD-BT, GKD-B, GKD-C, GKD-V, or GKD-E. This allows traders to understand to which module each indicator belongs and where each indicator fits into the GKD protocol chain.
Giga Kaleidoscope Modularized Trading System Signals (based on the NNFX algorithm)
Standard Entry
1. GKD-C Confirmation 1 Signal
2. GKD-B Baseline agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume agrees
Baseline Entry
1. GKD-B Baseline signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume agrees
6. GKD-C Confirmation 1 signal was less than 7 candles prior
Continuation Entry
1. Standard Entry, Baseline Entry, or Pullback; entry triggered previously
2. GKD-B Baseline hasn't crossed since entry signal trigger
3. GKD-C Confirmation Continuation Indicator signals
4. GKD-C Confirmation 1 agrees
5. GKD-B Baseline agrees
6. GKD-C Confirmation 2 agrees
1-Candle Rule Standard Entry
1. GKD-C Confirmation 1 signal
2. GKD-B Baseline agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
Next Candle:
1. Price retraced (Long: close < close or Short: close > close )
2. GKD-B Baseline agrees
3. GKD-C Confirmation 1 agrees
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume agrees
1-Candle Rule Baseline Entry
1. GKD-B Baseline signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 1 signal was less than 7 candles prior
Next Candle:
1. Price retraced (Long: close < close or Short: close > close )
2. GKD-B Baseline agrees
3. GKD-C Confirmation 1 agrees
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume Agrees
PullBack Entry
1. GKD-B Baseline signal
2. GKD-C Confirmation 1 agrees
3. Price is beyond 1.0x Volatility of Baseline
Next Candle:
1. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
3. GKD-C Confirmation 1 agrees
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume Agrees
█ Ease of Movement
What is Ease of Movement?
The Ease of Movement indicator is a volume based oscillator. It is designed to measure the relationship between price and volume and display that relationship as an oscillator that fluctuates between positive and negative values. The EOM fluctuates above and below a Zero Line. This is done in order to quantify the "ease" of price movements. A basic understanding is that when the EOM is in positive territory, prices are advancing with relative ease. When the EOM is negative, prices are declining with relative ease.
Requirements
Inputs
Confirmation 1 and Solo Confirmation: GKD-V Volatility / Volume indicator
Confirmation 2: GKD-C Confirmation indicator
Outputs
Confirmation 2 and Solo Confirmation: GKD-E Exit indicator
Confirmation 1: GKD-C Confirmation indicator
Continuation: GKD-E Exit indicator
Additional features will be added in future releases.
DC Time KeeperBefore anything, take notes of the script limitations :
1) This script doesn't give trading information on itself.
It is intended has additional value to my other script named : Time Dilated Donchian Channel
Blue line = Normal time of the day
Orange line = Observed time of the day
Red line = What if time travel was allowed... Which time would I observe?
More information about this script :
2) The script has the setting : "Max_bars_back" set to 390. This is required to use dynamic length and an "internal clock"
*390 is the normal number of bars in a typical stock trading day.
3) The script requires volume data to work correctly
* I use a way to represent volatility that requires ( volume + price movement + time, no sma , no stdev)
Why ? Because:
HIGH-LOW = Fail to get gap information, fail to get volume information
TR /ATR = Fail to get volume information
STDEV = Not very good with dynamic length as it use SMA and fails when length <2
SMA = SMA give very strange results when using non-integer numbers.
So a good idea is to use the 1 minute timeframe for this indicator.
Conclusion: this script is basically limited to stock trading.
If I could set Max_bars_back to 23 400 this would even work better with a 1 second time frame as more data would be entered in the system.
The idea behind the script is that volatility exists in two different formats depending on how you observe the situation.
Remember your physics class? Light can be a wave or a particle depending of the situation.
Volatility seems to share a strange similar property.
If volatility share similarities with light, then time dilation effect could be applied to stock movement.
Time Dilation formula
Time observed = (Last time - First time) / sqrt(1-(pow(v,2)/pow(c,2))
I've tried a lot of ways to use this formula as is.
Problem is : C.
C is the speed of light and I haven't found the equivalent stock market constant yet.
In order to keep the law of physics like they actually work, when a new time is set, I had to "Protect its value".
protected_new_time = highest_(observed time , normal time)
No time travel is allowed. *yet.
For more information about time dilation:
en.wikipedia.org
Open Interest Exponential Ease of MovementModified Ease of Movement :
* Open Interests used on Futures instead of Volume (Includes Bitcoin)
* Exponential Moving Average used instead of Simple Moving Average
* Division Number cancelled. (Division Number gives wrong signals inside strong trends.)
NOTE : This code is open source under the MIT License. If you have any improvements or corrections to suggest, please send me a pull request via the github repository github.com
Stay tuned. Best regards !
Ease of Movement WatcherHere’s a handy Ease of Movement(EMV) Indicator. I tried to include detailed comments so that anyone that’s learning pine can follow along.
The Ease of Movement Indicator is a volume based oscillator that is designed to measure the ease (or movability) of price movement for a security. The EMV is a centered oscillator, meaning that values can fluctuate above and below zero.
To understand how to use and interpret the EMV Indicator, its crucial to first understand its two main calculations :
Distance Moved = ((high + low) / 2) - ((high + low ) / 2)
-This is the difference between the current period’s midpoint and the previous period’s
midpoint.
Box Ratio = (volume / 100,000) / (high - low)
-When calculating the Box Ratio, it is common to divide the volume by 100,000 for a clearer visualization of the data. However, users can choose
to modify this value with the ‘volumeDiv’ input.
The Ease of Movement Value is then pretty simple to calculate:
EMV = (Distance Moved / Box Ratio)
The indicator then plots a SMA of the previous 24 EMV Values.
Looking at the formula, we know that combining low volume with a large {high, low} range will result in a relatively small box ratio value. Thus, we know that the EMV value for that period will be higher since EMV is found by dividing the Distance Moved by the Box Ratio.
Here’s a simple guide to interpreting the EMV:
- If (EMV > 0)
then price is increasing with relative ease.
-If (EMV < 0)
then price is decreasing with relative ease.
- If high-low range is large and volume is low
then ease of movement is high.
-If high-low range is small and volume is high
then ease of movement is low.
The Chart:
-The histogram represents the Simple Moving Average of EMV Values. The default length is 24, but users can adjust this value at the inputs menu(I've
found 24 works best).
-The teal and pink dotted lines represent the standard deviation of the SMA of EMV values multiplied by 2.5.
-The histogram turns dark green when the EMV SMA is greater than the top teal dotted standard deviations line.
-The histogram turns maroon when the EMV SMA falls below the bottom pink standard deviation line.
How To Use:
Enter a long position when the most recent EMV SMA value was below the lower pink stand. dev. line and the current EMV SMA value rises above that
same pink line. That means the previous bar was maroon and the current bar is not.
If the user enables the option to show entry points, a green dot will be plotted when it is time to enter a long position.
Exit the long position when the most recent EMV SMA value was above the upper green standard deviation line and the current EMV SMA value falls
below that same line. If this is true, then the previous bar will be dark green, and the current will be light green.
If the ‘showExits’ option is enabled, then a red dot will be plotted when it is time to exit the long position.
Input Options:
- 'volumeDiv' : Integer. Used in the calculation of Box Ratio.
- 'lenSMA' : Integer. The length of the Simple Moving Average of Ease of Movement Values.
- 'showStDev' : Bool. If true, dotted green and red lines will be shown at values equal to 2.5 * standard deviation of emvSMA and -2.5 * standard deviation of
emvSMA.
- 'showEntries' and 'showExits' : Bool. If true, a green circle will be plotted at long entry points and a red circle will be plotted at long exit points.
- 'changeBgColor': Bool. If true, the background color will change to green when it is time to enter a long position and red when it is time to exit.
Alerts:
- When it is time to enter a long position, an alert with the message "EMV Tracker - Enter Long" is sent.
- When it is time to exit a long position, an alert with the message "EMV Tracker - Exit Long" is sent.
NOTE:
- I usually use this indicator to confirm signals from other indicators rather than relying on it solely.
- Most accurate signals are generated on 30 minutes with the default input values I've set in the script.
Shoot me a message if you have any ideas for modifications or questions.
~ Happy Trading ~
Ultimate Volume (UV) Supply/Demand Absorption [cI8DH]This is a variant of my ADV indicator which adds low/high volume trend, supply/demand absorption detection and separate buy/sell volume moving averages. When aggregation is set to cumulative, it can replicate my ADL indicator as well. It shows both regular volume bars and the accumulated/distributed (A/D) portions of volume.
Green line shows buy volume/accumulation and red line shows sell volume/distribution. This can help with assessing buy/sell pressure (read "why invent a new indicator" for more info about why this is more accurate than CMF , MFI, OBV and Williams AD for this purpose).
Volume trend shows high and low volume periods in blue and yellow respectively. This could help with avoiding over-trading during low market activity periods.
Supply/demand absorption is shown at the top (below volume trend). It shows that market is resisting the trend which could most often lead to sideways or minor/major trend change. Darker colors show stronger resistance. This feature is configured with two parameters that might require tuning depending on the asset and time frame.
The equation to calculate accumulation/distribution (A/D) is elegant and intuitive. It calculates candle body to candle height ratio and multiplies it by volume: volume*(close-open)/(high-low). This is the building block of my three other indicators ADMF , ADP and ADL ( UMF includes all these three indicators). The volume bars has two shades of green and red. The dark shade shows amount of A/D and the light shade shows total volume (what you see on a regular volume indicator).
When money volume is enabled, volume is multiplied by price. As you can see in the chart below, trade volume in terms of USD was growing over the past years while it has not made a new ATH in terms of the instrument (BTC).
Notes
- Uncheck "Money Volume" for Bitmex or any other exchange that shows volume in terms of money.
- Smooth MA length N = EMA length 2*N-1
- Combined tickers, e.g. (COINBASE:BTCUSD+BITSTAMP:BTCUSD+KRAKEN:XBTUSD)/3, can mitigate inconsistency issues between different exchanges (I recommend not mixing USD and USDT pairs together)
Here is a TL;DR list of my indicators to save you some time from looking at my obsolete indicators.
Price Volume ActionReal price movement vs. expectation based on volume. Useful for evaluating price/volume relationship and drawing insight.
The blue line is real % price movement. The background columns represent the expected % price movement based on the volume of that candle.
Similar to Ease of Movement in concept, but more appropriate for studying price action bar by bar.
The blue line (with default colors) being higher than it's gray column denotes ease of movement; a disproportionate amount of price movement compared to it's volume, basically a lack of resistance. The blue line being lower than the gray column implies higher resistance than expected.
In combination with the candles and volume this allows a deeper insight into the market action in context.
Options to switch between High/Low values and Open/Close values. Optional colorblind friendly color schemes.
Ease of Movement with Colors v1A slightly enhanced Ease of Movement indicator:
Draws a line at 0
Colors the line based on ratio of current to the highest for the last 150 bars (changeable)
Ease of Movement (EOM) This indicator gauges the magnitude of price and volume movement.
The indicator returns both positive and negative values where a
positive value means the market has moved up from yesterday's value
and a negative value means the market has moved down. A large positive
or large negative value indicates a large move in price and/or lighter
volume. A small positive or small negative value indicates a small move
in price and/or heavier volume.
A positive or negative numeric value. A positive value means the market
has moved up from yesterday's value, whereas, a negative value means the
market has moved down.