Volume Profile Free Ultra SLI (100 Levels Value Area VWAP) - RRBVolume Profile Free Ultra SLI by RagingRocketBull 2019
Version 1.0
This indicator calculates Volume Profile for a given range and shows it as a histogram consisting of 100 horizontal bars.
This is basically the MAX SLI version with +50 more Pinescript v4 line objects added as levels.
It can also show Point of Control (POC), Developing POC, Value Area/VWAP StdDev High/Low as dynamically moving levels.
Free accounts can't access Standard TradingView Volume Profile, hence this indicator.
There are several versions: Free Pro, Free MAX SLI, Free Ultra SLI, Free History. This is the Free Ultra SLI version. The Differences are listed below:
- Free Pro: 25 levels, +Developing POC, Value Area/VWAP High/Low Levels, Above/Below Area Dimming
- Free MAX SLI: 50 levels, 2x SLI modes for Buy/Sell or even higher res 150 levels
- Free Ultra SLI: 100 levels, packed to the limit, 2x SLI modes for Buy/Sell or even higher res 300 levels
- Free History: auto highest/lowest, historic poc/va levels for each session
Features:
- High-Res Volume Profile with up to 100 levels (line implementation)
- 2x SLI modes for even higher res: 300 levels with 3x vertical SLI, 100 buy/sell levels with 2x horiz SLI
- Calculate Volume Profile on full history
- POC, Developing POC Levels
- Buy/Sell/Total volume modes
- Side Cover
- Value Area, VAH/VAL dynamic levels
- VWAP High/Low dynamic levels with Source, Length, StdDev as params
- Show/Hide all levels
- Dim Non Value Area Zones
- Custom Range with Highlighting
- 3 Anchor points for Volume Profile
- Flip Levels Horizontally
- Adjustable width, offset and spacing of levels
- Custom Color for POC/VA/VWAP levels, Transparency for buy/sell levels
WARNING:
- Compilation Time: 1 min 20 sec
Usage:
- specify max_level/min_level/spacing (required)
- select range (start_bar, range length), confirm with range highlighting
- select volume type: Buy/Sell/Total
- select mode Value Area/VWAP to show corresponding levels
- flip/select anchor point to position the buy/sell levels
- use Horiz Buy/Sell SLI mode with 100 or Vertical SLI with 300 levels if needed
- use POC/Developing POC/VA/VWAP High/Low as S/R levels. Usually daily values from 1-3 days back are used as levels for the current day.
SLI:
use SLI modes to extend the functionality of the indicator:
- Horiz Buy/Sell 2x SLI lets you view 100 Buy/Sell Levels at the same time
- Vertical Max_Vol 3x SLI lets you increase the resolution to 300 levels
- you need at least 2 instances of the indicator attached to the same chart for SLI to work
1) Enable Horiz SLI:
- attach 2 indicator instances to the chart
- make sure all instances have the same min_level/max_level/range/spacing settings
- select volume type for each instance: you can have a buy/sell or buy/total or sell/total SLI. Make sure your buy volume instance is the last attached to be displayed on top of sell/total instances without overlapping.
- set buy_sell_sli_mode to true for indicator instances with volume_type = buy/sell, for type total this is optional.
- this basically tells the script to calculate % lengths based on total volume instead of individual buy/sell volumes and use ext offset for sell levels
- Sell Offset is calculated relative to Buy Offset to stack/extend sell after buy. Buy Offset = Zero - Buy Length. Sell Offset = Buy Offset - Sell Length = Zero - Buy Length - Sell Length
- there are no master/slave instances in this mode, all indicators are equal, poc/va levels are not affected and can work independently, i.e. one instance can show va levels, another - vwap.
2) Enable Vertical SLI:
- attach the first instance and evaluate the full range to roughly determine where is the highest max_vol/poc level i.e. 0..20000, poc is in the bottom half (third, middle etc) or
- add more instances and split the full vertical range between them, i.e. set min_level/max_level of each corresponding instance to 0..10000, 10000..20000 etc
- make sure all instances have the same range/spacing settings
- an instance with a subrange containing the poc level of the full range is now your master instance (bottom half). All other instances are slaves, their levels will be calculated based on the max_vol/poc of the master instance instead of local values
- set show_max_vol_sli to true for the master instance. for slave instances this is optional and can be used to check if master/slave max_vol values match and slave can read the master's value. This simply plots the max_vol value
- you can also attach all instances and set show_max_vol_sli to true in all of them - the instance with the largest max_vol should become the master
Auto/Manual Ext Max_Vol Modes:
- for auto vertical max_vol SLI mode set max_vol_sli_src in all slave instances to the max_vol of the master indicator: "VolumeProfileFree_MAX_RRB: Max Volume for Vertical SLI Mode". It can be tricky with 2+ instances
- in case auto SLI mode doesn't work - assign max_vol_sli_ext in all slave instances the max_vol value of the master indicator manually and repeat on each change
- manual override max_vol_sli_ext has higher priority than auto max_vol_sli_src when both values are assigned, when they are 0 and close respectively - SLI is disabled
- master/slave max_vol values must match on each bar at all times to maintain proper level scale, otherwise slave's levels will look larger than they should relative to the master's levels.
- Max_vol (red) is the last param in the long list of indicator outputs
- the only true max_vol/poc in this SLI mode is the master's max_vol/poc. All poc/va levels in slaves will be irrelevant and are disabled automatically. Slaves can only show VWAP levels.
- VA Levels of the master instance in this SLI mode are calculated based on the subrange, not the whole range and may be inaccurate. Cross check with the full range.
WARNING!
- auto mode max_vol_sli_src is experimental and may not work as expected
- you can only assign auto mode max_vol_sli_src = max_vol once due to some bug with unhandled exception/buffer overflow in Tradingview. Seems that you can clear the value only by removing the indicator instance
- sometimes you may see a "study in error state" error when attempting to set it back to close. Remove indicator/Reload chart and start from scratch
- volume profile may not finish to redraw and freeze in an ugly shape after an UI parameter change when max_vol_sli_src is assigned a max_vol value. Assign it to close - VP should redraw properly, but it may not clear the assigned max_vol value
- you can't seem to be able to assign a proper auto max_vol value to the 3rd slave instance
- 2x Vertical SLI works and tested in both auto/manual, 3x SLI - only manual seems to work (you can have a mixed mode: 2nd instance - auto, 3rd - manual)
Notes:
- This code uses Pinescript v3 compatibility framework
- This code is 20x-30x faster (main for cycle is removed) especially on lower tfs with long history - only 4-5 sec load/redraw time vs 30-60 sec of the old Pro versions
- Instead of repeatedly calculating the total sum of volumes for the whole range on each bar, vol sums are now increased on each bar and passed to the next in the range making it a per range vs per bar calculation that reduces time dramatically
- 100 levels consist of 50 main plot levels and 50 line objects used as alternate levels, differences are:
- line objects are always shown on top of other objects, such as plot levels, zero line and side cover, it's not possible to cover/move them below.
- all line objects have variable lengths, use actual x,y coords and don't need side cover, while all plot levels have a fixed length of 100 bars, use offset and require cover.
- all key properties of line objects, such as x,y coords, color can be modified, objects can be moved/deleted, while this is not possible for static plot levels.
- large width values cause line objects to expand only up/down from center while their length remains the same and stays within the level's start/end points similar to an area style.
- large width values make plot levels expand in all directions (both h/v), beyond level start/end points, sometimes overlapping zero line, making them an inaccurate % length representation, as opposed to line objects/plot levels with area style.
- large width values translate into different widths on screen for line objects and plot levels.
- you can't compensate for this unwanted horiz width expansion of plot levels because width uses its own units, that don't translate into bars/pixels.
- line objects are visible only when num_levels > 50, plot levels are used otherwise
- Since line objects are lines, plot levels also use style line because other style implementations will break the symmetry/spacing between levels.
- if you don't see a volume profile check range settings: min_level/max_level and spacing, set spacing to 0 (or adjust accordingly based on the symbol's precision, i.e. 0.00001)
- you can view either of Buy/Sell/Total volumes, but you can't display Buy/Sell levels at the same time using a single instance (this would 2x reduce the number of levels). Use 2 indicator instances in horiz buy/sell sli mode for that.
- Volume Profile/Value Area are calculated for a given range and updated on each bar. Each level has a fixed length. Offsets control visible level parts. Side Cover hides the invisible parts.
- Custom Color for POC/VA/VWAP levels - UI Style color/transparency can only change shape's color and doesn't affect textcolor, hence this additional option
- Custom Width - UI Style supports only width <= 4, hence this additional option
- POC is visible in both modes. In VWAP mode Developing POC becomes VWAP, VA High and Low => VWAP High and Low correspondingly to minimize the number of plot outputs
- You can't change buy/sell level colors from input (only transparency) - this requires 2x plot outputs => 2x reduces the number of levels to fit the max 64 limit. That's why 2 additional plots are used to dim the non Value Area zones
- You can change level transparency of line objects. Due to Pinescript limitations, only discrete values are supported.
- Inverse transp correlation creates the necessary illusion of "covered" line objects, although they are shown on top of the cover all the time
- If custom lines_transp is set the illusion will break because transp range can't be skewed easily (i.e. transp 0..100 is always mapped to 100..0 and can't be mapped to 50..0)
- transparency can applied to lines dynamically but nva top zone can't be completely removed because plot/mixed type of levels are still used when num_levels < 50 and require cover
- transparency can't be applied to plot levels dynamically from script this can be done only once from UI, and you can't change plot color for the past length bars
- All buy/sell volume lengths are calculated as % of a fixed base width = 100 bars (100%). You can't set show_last from input to change it
- Range selection/Anchoring is not accurate on charts with time gaps since you can only anchor from a point in the future and measure distance in time periods, not actual bars, and there's no way of knowing the number of future gaps in advance.
- Adjust Width for Log Scale mode now also works on high precision charts with small prices (i.e. 0.00001)
- in Adjust Width for Log Scale mode Level1 width extremes can be capped using max deviation (when level1 = 0, shift = 0 width becomes infinite)
- There's no such thing as buy/sell volume, there's just volume, but for the purposes of the Volume Profile method, assume: bull candle = buy volume, bear candle = sell volume
P.S. I am your grandfather, Luke! Now, join the Dark Side in your father's steps or be destroyed! Once more the Sith will rule the Galaxy, and we shall have peace...
스크립트에서 "乌德勒支+VS+赫拉克勒斯"에 대해 찾기
Hull MA and Candle crossHull MA vs price cossover . not 2 Hull MA's crossing, and also a price vs previous price crossover :
current price higher than previous = buy
current price lower than previous = sell
Price value set to OPEN to avoid repaint during candle
Volume Profile Free MAX SLI (50 Levels Value Area VWAP) by RRBVolume Profile Free MAX SLI by RagingRocketBull 2019
Version 1.0
All available Volume Profile Free MAX SLI versions are listed below (They are very similar and I don't want to publish them as separate indicators):
ver 1.0: style columns implementation
ver 2.0: style histogram implementation
ver 3.0: style line implementation
This indicator calculates Volume Profile for a given range and shows it as a histogram consisting of 50 horizontal bars.
It can also show Point of Control (POC), Developing POC, Value Area/VWAP StdDev High/Low as dynamically moving levels.
Free accounts can't access Standard TradingView Volume Profile, hence this indicator.
There are several versions: Free Pro, Free MAX SLI, Free History. This is the Free MAX SLI version. The Differences are listed below:
- Free Pro: 25 levels, +Developing POC, Value Area/VWAP High/Low Levels, Above/Below Area Dimming
- Free MAX SLI: 50 levels, packed to the limit, 2x SLI modes for Buy/Sell or even higher res 150 levels
- Free History: auto highest/lowest, historic poc/va levels for each session
Features:
- High-Res Volume Profile with up to 50 levels (3 implementations)
- 20-30x faster than the old Pro versions especially on lower tfs with long history
- 2x SLI modes for even higher res: 150 levels with 3x vertical SLI, 50 buy/sell levels with 2x horiz SLI
- Calculate Volume Profile on full history
- POC, Developing POC Levels
- Buy/Sell/Total volume modes
- Side Cover
- Value Area, VAH/VAL dynamic levels
- VWAP High/Low dynamic levels with Source, Length, StdDev as params
- Show/Hide all levels
- Dim Non Value Area Zones
- Custom Range with Highlighting
- 3 Anchor points for Volume Profile
- Flip Levels Horizontally
- Adjustable width, offset and spacing of levels
- Custom Color for POC/VA/VWAP levels and Transparency for buy/sell levels
Usage:
- specify max_level/min_level/spacing (required)
- select range (start_bar, range length), confirm with range highlighting
- select volume type: Buy/Sell/Total
- select mode Value Area/VWAP to show corresponding levels
- flip/select anchor point to position the buy/sell levels
- use Horiz SLI mode for 50 Buy/Sell or Vertical SLI for 150 levels if needed
- use POC/Developing POC/VA/VWAP High/Low as S/R levels. Usually daily values from 1-3 days back are used as levels for the current day.
SLI:
- use SLI modes to extend the functionality of the indicator:
- Horiz Buy/Sell 2x SLI lets you view 50 Buy/Sell Levels at the same time
- Vertical Max_Vol 3x SLI lets you increase the resolution to 150 levels
- you need at least 2 instances of the indicator attached to the same chart for SLI to work
1) Enable Horiz SLI:
- attach 2 indicator instances to the chart
- make sure all instances have the same min_level/max_level/range/spacing settings
- select volume type for each instance: you can have a buy/sell or buy/total or sell/total SLI. Make sure your buy volume instance is the last attached to be displayed on top of sell/total instances without overlapping.
- set buy_sell_sli_mode to true for indicator instances with volume_type = buy/sell, for type total this is optional.
- this basically tells the script to calculate % lengths based on total volume instead of individual buy/sell volumes and use ext offset for sell levels
- Sell Offset is calculated relative to Buy Offset to stack/extend sell after buy. Buy Offset = Zero - Buy Length. Sell Offset = Buy Offset - Sell Length = Zero - Buy Length - Sell Length
- there are no master/slave instances in this mode, all indicators are equal, poc/va levels are not affected and can work independently, i.e. one instance can show va levels, another - vwap.
2) Enable Vertical SLI:
- attach the first instance and evaluate the full range to roughly determine where is the highest max_vol/poc level i.e. 0..20000, poc is in the bottom half (third, middle etc) or
- add more instances and split the full vertical range between them, i.e. set min_level/max_level of each corresponding instance to 0..10000, 10000..20000 etc
- make sure all instances have the same range/spacing settings
- an instance with a subrange containing the poc level of the full range is now your master instance (bottom half). All other instances are slaves, their levels will be calculated based on the max_vol/poc of the master instance instead of local values
- set show_max_vol_sli to true for the master instance. for slave instances this is optional and can be used to check if master/slave max_vol values match and slave can read the master's value. This simply plots the max_vol value
- you can also attach all instances and set show_max_vol_sli to true in all of them - the instance with the largest max_vol should become the master
Auto/Manual Ext Max_Vol Modes:
- for auto vertical max_vol SLI mode set max_vol_sli_src in all slave instances to the max_vol of the master indicator: "VolumeProfileFree_MAX_RRB: Max Volume for Vertical SLI Mode". It can be tricky with 2+ instances
- in case auto SLI mode doesn't work - assign max_vol_sli_ext in all slave instances the max_vol value of the master indicator manually and repeat on each change
- manual override max_vol_sli_ext has higher priority than auto max_vol_sli_src when both values are assigned, when they are 0 and close respectively - SLI is disabled
- master/slave max_vol values must match on each bar at all times to maintain proper level scale, otherwise slave's levels will look larger than they should relative to the master's levels.
- Max_vol (red) is the last param in the long list of indicator outputs
- the only true max_vol/poc in this SLI mode is the master's max_vol/poc. All poc/va levels in slaves will be irrelevant and are disabled automatically. Slaves can only show VWAP levels.
- VA Levels of the master instance in this SLI mode are calculated based on the subrange, not the whole range. Cross check with the full range.
WARNING!
- auto mode max_vol_sli_src is experimental and may not work as expected
- you can only assign auto mode max_vol_sli_src = max_vol once due to some bug with unhandled exception/buffer overflow in Tradingview. Seems that you can clear the value only by removing the indicator instance
- sometimes you may see a "study in error state" error when attempting to set it back to close. Remove indicator/Reload chart and start from scratch
- volume profile may not finish to redraw and freeze in an ugly shape after an UI parameter change when max_vol_sli_src is assigned a max_vol value. Assign it to close - VP should redraw properly, but it may not clear the assigned max_vol value
- you can't seem to be able to assign a proper auto max_vol value to the 3rd slave instance
- 2x Vertical SLI works and tested in both auto/manual, 3x SLI - only manual seems to work
Notes:
- This code is 20x-30x faster (main for cycle is removed) especially on lower tfs with long history - only 2-3 sec load/redraw time vs 30-60 sec of the old Pro versions
- Instead of repeatedly calculating the total sum of volumes for the whole range on each bar, vol sums are now increased on each bar and passed to the next in the range making it a per range vs per bar calculation that reduces time dramatically
- hist_base for levels still results is ugly redraw
- if you don't see a volume profile check range settings: min_level/max_level and spacing, set spacing to 0 (or adjust accordingly based on the symbol's precision, i.e. 0.00001)
- you can view either of Buy/Sell/Total volumes, but you can't display Buy/Sell levels at the same time using a single instance (this would 2x reduce the number of levels). Use 2 indicator instances in horiz buy/sell sli mode for that.
- Volume Profile/Value Area are calculated for a given range and updated on each bar. Each level has a fixed length. Offsets control visible level parts. Side Cover hides the invisible parts.
- Custom Color for POC/VA/VWAP levels - UI Style color/transparency can only change shape's color and doesn't affect textcolor, hence this additional option
- Custom Width - UI Style supports only width <= 4, hence this additional option
- POC is visible in both modes. In VWAP mode Developing POC becomes VWAP, VA High and Low => VWAP High and Low correspondingly to minimize the number of plot outputs
- You can't change buy/sell level colors from input (only plot transparency) - this requires 2x plot outputs => 2x reduces the number of levels to fit the max 64 limit. That's why 2 additional plots are used to dim the non Value Area zones
- All buy/sell volume lengths are calculated as % of a fixed base width = 100 bars (100%). You can't set show_last from input to change it
- There's no such thing as buy/sell volume, there's just volume, but for the purposes of the Volume Profile method, assume: bull candle = buy volume, bear candle = sell volume
P.S. Gravitonium Levels Are Increasing. Unobtainium is nowhere to be found!
Links on Volume Profile and Value Area calculation and usage:
www.tradingview.com
stockcharts.com
onlinelibrary.wiley.com
Bitfinex Margin ComparisonDisplays the RSI of Longs vs Shorts from Bitfinex for most majors ( BTC , ETH, LTC, XRP, EOS, NEO).
Displays RSI of both longs and shorts to gauge the short term momentum of both while also showing the ratio of Longs vs Shorts as the background.
Premium ComparisonScript to display futures premium/discount vs basis; uses Bitmex XBTUSD 10.99% as basis vs XBTM18 and XBTU18 futures , but these are configurable.
ST_Trend_ReversalSTRONG TREND REVERSAL INDICATOR
The code is the percentage difference between the spot price of a given financial asset and its 200-day MA of that period. My standard setup is Daily, and I think it's got very good predictive power at that timeframe.
It can be read in two ways:
1. Values extremely above or below the 200-period MA present chances of buying/selling agains the prevailing trend.
2. Values closely above or below the 200-period MA are make-or-break market periods, where a medium-term trend becomes evident. Breaks above or below the MA are associated with strong chances of directional movements. But it's not fool-proof as false breaks have become commonplace nowadays.
Other way to use it is as confirmation of breakdowns: For example, an asset that loses its 200-day MA and then can't rally above it becomes exposed to steep losses afterwards.
It's also helpful to use in volatility trading: the closer the asset goes to its MA, the lower goes implied vol, and thus better opportiunities to be long volatility on those occasions where direction is hard to predict.
STRI = close/(200dMA)
Values over 100 indicate percentage premiums of spot vs its moving average.
Values below indicate percentage discounts of spot vs its moving average.
Ersoy-intersection(Kesisme)-Update-1website: www.ersoytoptas.com
Newspaper : tr.investing.com
hi , Friends
i wanna be someone who wants to help everyone
updated my script he published some time ago.
What happened?
* intersection When ever Bar Color Yellow Be
* Alarms to be more comprehensible
* Short and Long Days Choosing a Opportunities
* Source Opportunities
All Charts Usable( Example ;15,30,60 ... vs) and ALL MARKETS ( Stocks , forex , ... vs)
i strive to improve further
Easy to get
Avg % Move Dashboard — Body and WicksTitle
Avg % Move Dashboard — Body and Wicks (w/ True Range)
Summary
Compact right-side dashboard showing the average percent move of recent candles:
Body size (absolute % from Open to Close)
Body bias (signed %, with up/down arrow and color)
Full range (High–Low %)
True range (ATR-style % relative to previous close)
Perfect for quickly gauging current market velocity and directional skew on any symbol or timeframe.
How It Works
Body % (per bar): (Close − Open) / Open × 100
Full range % (per bar): (High − Low) / Open × 100
True range % (per bar): max(High−Low, |High−PrevClose|, |Low−PrevClose|) / PrevClose × 100
Averages: Simple moving averages over the last N candles
Rounding: Values rounded to your chosen decimals
Bias row: shows signed average body percent with an ↑/↓ arrow and green/red color; near-zero values can display a neutral ⟷ based on a threshold
Settings
Candles to average (default 20): Window length for SMA calculations.
Decimals: Rounding precision for display.
Dashboard position: Top/Middle/Bottom Right.
Dashboard size: Tiny, Small, Normal, Large, Huge.
Background Color: Panel background.
Text Color (size rows): For non-bias rows.
Near-zero threshold (%): If the average body bias absolute value is below this, show neutral (⟷) instead of bullish/bearish.
What to show (toggles):
Show Body (Open→Close)
Show Full Range (High→Low)
Show True Range (ATR-style)
What You’ll See
Body size: average absolute body percent (magnitude only).
Body bias: average signed body percent with:
↑ and green if bullish
↓ and red if bearish
⟷ and gray if within the near-zero threshold
Full Range: average percent from High to Low.
True Range: average percent true range relative to previous close.
Footer: n = number of candles used.
How to Use
Add to any chart and timeframe; it overlays a table on the right-side.
Use “Body size” to assess typical candle strength.
Use “Body bias” to see directional skew:
Strong positive = persistent buying pressure.
Strong negative = persistent selling pressure.
Near-zero = balanced/sideways conditions.
Compare “Full range” vs “Body size”:
Large range but small body may indicate indecision or wicky conditions.
“True range” offers a classic ATR-style read (relative to prior close), useful for volatility-aware sizing.
Adjust “Candles to average” to your timeframe:
Short-term (scalps): 20–50
Intraday: 50–100
Swing: 100–200+
Best Practices
Pair with structure (S/R, sessions) to avoid false impressions in thin markets.
Increase length on noisy pairs/timeframes to smooth out noise.
Use the near-zero threshold to suppress micro-bias and focus on meaningful shifts.
Alerts
This dashboard is informational and doesn’t define alertconditions in the code. If you’d like, I can add optional alerts (e.g., bias flips from bearish to bullish beyond threshold, or volatility spikes on TR) — just say the word.
Limitations
This panel summarizes recent averages; it’s not a signal generator.
Values can differ across assets/timeframes; tune “Candles to average.”
True Range uses prev close normalization; that’s by design for ATR-style context.
Changelog
v1.0: Initial release — Body size, Body bias (with arrows/colors/neutral), Full Range, True Range, configurable UI.
RSI Regime: Continuation vs Reversal Indicator Description: RSI Regime (Continuation vs. Reversal)
This indicator uses the standard Relative Strength Index (RSI) to analyze market momentum and categorize it into three "regimes." Its primary goal is to help you determine if an overbought (OB) or oversold (OS) signal is likely to be a continuation of the current trend or a reversal point.
It also identifies "Fast Trend Starts," which are exceptionally fast and powerful moves from one extreme to the other.
Core Features & How to Read It
1. The Three RSI Regimes (Background Color) The script calculates a moving average (SMA) of the RSI to determine the dominant medium-term momentum. This is shown as the background color:
Bull Regime (Green Background): The RSI's average is high (e.g., above 55). The market is in a clear uptrend.
Bear Regime (Red Background): The RSI's average is low (e.g., below 45). The market is in a clear downtrend.
Range Regime (Orange Background): The RSI's average is in the middle. The market is consolidating or undecided.
2. Overbought (OB) & Oversold (OS) Signals
When the RSI line crosses into the overbought (e.g., >70) or oversold (e.g., <30) zones, the indicator generates one of two types of signals:
A) Continuation Signals (Small Triangles: ►)
These signals suggest an OB/OS reading is just a "pause" and the main trend will likely continue.
Orange ► (at the top): Appears when RSI becomes overbought while the market is already in a Bull Regime. This suggests the uptrend is strong, and this OB signal may not lead to a big drop.
Teal ► (at the bottom): Appears when RSI becomes oversold while the market is already in a Bear Regime. This suggests the downtrend is strong, and this OS signal may not lead to a big bounce.
(Note: An optional Price EMA filter can be enabled to make these signals more strict.)
B) Reversal Signals (Small Labels: "OS→>50" / "OB→<50")
These labels appear after an OB/OS signal to confirm that a reversal has actually occurred.
"OS→>50 Reversal" (Aqua Label): Appears if the RSI becomes oversold and then recovers back above the 50 midline within a set number of bars. This confirms the oversold dip was a reversal point.
"OB→<50 Reversal" (Orange Label): Appears if the RSI becomes overbought and then falls back below the 50 midline within a set number of bars. This confirms the overbought peak was a reversal point.
3. "Fast Trend Starts" (Large Labels)
This is a unique feature that identifies the fastest percentile of market moves. It measures how many bars it takes for the RSI to go from one extreme to the other and flags when a move is in the top 5% (default) of all historical moves.
"Long Pullbacks (Fast OS→BullRange)" (Large Green Label): This powerful signal appears when the RSI moves from oversold (<30) all the way up to the bull range (>60) exceptionally fast. It identifies a very strong, fast, and decisive bounce that could signal the start of a new uptrend.
"Short Pumps (Fast OB→BearRange)" (Large Red Label): This appears when the RSI moves from overbought (>70) all the way down to the bear range (<40) exceptionally fast. It identifies a very sharp, fast rejection or "pump-and-dump" that could signal the start of a new downtrend.
Key User Inputs
RSI Length (14): The lookback period for the main RSI calculation.
OB (70) / OS (30): The standard overbought and oversold levels.
Bull/Bear Range Threshold (60/40): These are the levels used to confirm the "Fast Trend Starts." They are separate from the OB/OS levels.
RSI Regime SMA Length (21): The lookback period for the moving average that determines the background regime.
Use Price EMA filter (true): If checked, the small "Continuation" triangles will only appear if the price is also above (for bulls) or below (for bears) its own 50-period EMA.
Fastest X% duration (5.0): This sets the percentile for the "Fast Trend Start" labels. 5.0 means it only flags moves that are in the fastest 5% of all recorded moves.
Cloud Matrix [CongTrader]🌥 Cloud Matrix
🔹 Short Description
A modern and enhanced Ichimoku-based system designed for Crypto, Forex, and Stock traders.
Cloud Matrix helps identify trends, momentum shifts, and Kumo breakouts with multi-timeframe EMA filters and a visual market summary table.
🧭 Full Description
Cloud Matrix is a next-generation evolution of the classic Ichimoku Cloud — optimized for the dynamic conditions of today’s markets, especially crypto and high-volatility assets.
This indicator combines the visual clarity of Ichimoku with advanced filters, adaptive presets, and built-in signal logic to help traders make more confident trend-based decisions.
⚙️ ✨ Key Features & Innovations
Preset System for Different Markets:
🕊 Traditional (9/26/52) – Standard Ichimoku setup
⚡ Crypto Fast (10/30/60) – Faster response for volatile markets
⚖️ Crypto Medium (20/60/120) – Balanced settings for swing trading
⚙️ Custom – Full manual control over Ichimoku parameters
Higher Timeframe EMA200 Filter:
Optionally apply a 200 EMA filter from a higher timeframe (e.g., 4H, 1D).
Only confirms bullish signals when the price is above the higher TF EMA, and bearish signals when below.
Dynamic Market Summary Table:
A real-time dashboard showing:
Price vs. Cloud position
Cloud twist direction (Span A vs. Span B)
Tenkan/Kijun relation
Chikou position
Higher timeframe EMA200 trend
Built-in Trade Signals & Alerts:
🔔 TK Cross (Tenkan-Kijun crossovers)
☁️ Kumo Breakouts (price breaks above/below the cloud)
Optional “alerts on candle close” to avoid fake intrabar signals.
Enhanced Visuals:
Cloud color auto-adjusts for bullish/bearish sentiment.
Adjustable opacity for better chart visibility.
Signal labels appear directly on the chart for clarity.
📘 How to Use
1️⃣ Add to chart:
Search for “Cloud Matrix ” in TradingView’s Indicators Library.
Works on all timeframes and markets.
2️⃣ Choose a preset:
Traditional – for Stocks/Forex.
Crypto Fast or Crypto Medium – for Crypto or high-volatility assets.
3️⃣ Use the Higher TF Filter:
Enable “Use HTF EMA200 Filter” → set timeframe (e.g., 4H or 1D).
Only take bullish setups when price > EMA200 on HTF, bearish setups when below.
4️⃣ Interpret the signals:
🟢 TK Cross (Bullish): Tenkan crosses above Kijun → potential early uptrend.
🔴 TK Cross (Bearish): Tenkan crosses below Kijun → potential early downtrend.
🌥 Kumo Break (Bullish): Price breaks above the cloud → strong trend confirmation.
🌩 Kumo Break (Bearish): Price breaks below the cloud → strong bearish continuation.
5️⃣ Read the Cloud Matrix Table:
Quickly view trend alignment:
Metric Green Red Gray
Price vs Cloud Above Below Inside
Cloud Twist Bullish Bearish —
Tenkan/Kijun Bullish Bearish —
Chikou Span Above Below —
HTF EMA200 Uptrend Downtrend Off
🌐 Practical Applications
Excellent for trend trading, swing setups, and dynamic support/resistance analysis.
Ideal for confirming directional bias before entering a trade.
Can be combined with RSI, MACD, or Volume indicators for stronger confluence.
Suitable for Crypto, Forex, Indices, and Stocks.
⚠️ Disclaimer
The Cloud Matrix script is provided for educational and analytical purposes only.
It is not financial advice, nor does it guarantee performance or profitability.
All trading decisions are made at your own risk.
Always verify signals with your own analysis and proper risk management.
🙏 Acknowledgments
A heartfelt thank-you to the TradingView community and all the traders who inspire continuous innovation.
Your feedback, ideas, and collaboration help make this tool possible.
If you find Cloud Matrix useful — please give it a like, comment, or share it to help others learn too. 💚
— CongTrader
📅 2025 | Version 1.0 – Open Source Educational Release
🏷️ Suggested Tags
Ichimoku, Cloud, Kumo, Trend, EMA200, Crypto, Forex, Swing, Multi-Timeframe, CongTrader, Educational, Indicator
Range breaking indicatorDescription
Bull/Bear Area Ratio (last N candles) helps identify potential end-of-range situations by analyzing the relative strength of bullish vs bearish candles over a rolling window of N bars.
Instead of simply counting up or down candles, this script measures the "area" of each candle — the absolute distance between open and close, optionally weighted by volume.
By summing these areas over the last N bars, it calculates the percentage of bullish and bearish energy within that period.
When both sides become balanced (near 50/50), it often signals range exhaustion or possible trend transition.
How it works
Calculates the bullish and bearish area of each candle (abs(close - open), optionally × volume).
Maintains rolling buffers of the last N bars to compute running totals.
Plots both Bullish % (green) and Bearish % (red).
Highlights possible range-ending zones when the bullish ratio nears 50% ± threshold.
Displays a label showing the current balance.
Includes an alert condition when equilibrium is detected.
Inputs
Number of candles (N) – Rolling window length.
Use volume weighting – Multiplies each candle’s area by its volume.
Balance threshold (%) – Sensitivity for detecting equilibrium (default: 10%).
Best use
Combine with volume or volatility indicators to confirm market compression or expansion.
Use on higher timeframes (H1, H4, D1) to detect early signs of accumulation or distribution.
Works across all asset types: crypto, forex, stocks, indices, etc.
Alerts
An alert is triggered when:
“The range of the last N candles is balanced (possible end of range).”
MTF Traffic Lights## What this script does
**MTF Traffic Lights (4H / 1H / 15m / 5m / 3m / 1m) - Realtime ** is a compact multi-timeframe dashboard that shows, in one glance, whether each timeframe is:
- Bullish (green),
- Bearish (red),
- Or in disagreement / transition (yellow),
based on a consistent combination of **EMA 9/20 trend** and optional **MACD confirmation**.
The goal is to replace cluttered stacks of indicators with one clear “traffic light” panel that updates live and is easy to interpret.
---
## Core Logic
For each timeframe (4H, 1H, 15m, 5m, 3m, 1m):
1. **Trend via EMA 9/20**
- Fast EMA (default 9) vs Slow EMA (default 20).
- `EMA fast > EMA slow` → bullish structure on that timeframe.
- `EMA fast < EMA slow` → bearish structure.
2. **Momentum via MACD (optional)**
- Standard MACD (12, 26, 9 by default).
- Uses the MACD histogram sign as a confirmation filter.
3. **Traffic-light state**
- If **MACD filter ON**:
- **Green**: EMA bullish **and** MACD histogram ≥ 0.
- **Red**: EMA bearish **and** MACD histogram ≤ 0.
- **Yellow**: EMA and MACD do not agree → caution / transition.
- If **MACD filter OFF**:
- **Green**: EMA bullish.
- **Red**: EMA bearish.
- **Yellow**: EMAs essentially flat/indecisive.
4. **Realtime MTF behavior**
- Uses `request.security()` per timeframe.
- The **Intrabar HTF (LIVE)** option:
- When disabled (default): values are based on **confirmed closes** (no repaint).
- When enabled: higher timeframe values update intrabar using lookahead-on, so you can see evolving conditions; this is intentionally labeled as **repainting** behavior.
5. **Display**
- A fixed table in the top-right corner:
- Left column: timeframe labels (4H, 1H, 15m, 5m, 3m, 1m).
- Right column: a colored dot representing that timeframe’s current state.
No additional plots, shapes, or unrelated indicators are required.
---
## How to Use It
- Read the table **top to bottom** as a quick MTF alignment check:
- Mostly green → aligned bullish conditions across timeframes.
- Mostly red → aligned bearish conditions.
- Mixed / yellow → conflicting signals; consider standing down or zooming in.
- Combine with your own entries:
- Use it as a regime/confirmation layer for trend-following, ORB, or scalping systems.
- Filter trades to those aligned with higher timeframe conditions.
- Adjust inputs as needed:
- Change EMA or MACD parameters if your system uses different values.
- Toggle MACD filter off if you only want pure EMA 9/20 structure.
---
## Originality & Compliance Notes
- This script is a **single, focused tool**:
- A structured MTF state engine using consistent EMA + MACD logic.
- Presented as a compact table instead of multiple stacked indicators.
- It does **not** simply clone an existing open-source script one-to-one.
- The description explains:
- What each color means,
- How the calculations work,
- The effect of the LIVE/repaint option.
For publishing:
- Use a **clean chart** in the published example:
- Candles + this dashboard (and only essential elements) so its output is clear.
- Title uses standard ASCII characters, as required by the House Rules.
VWAP Diario + VWAP 08:00-12:00 ventanas NYWhat it plots
Daily VWAP (main line)
Anchored to the current trading day and only visible between 19:00 and 16:50 New York (UTC-5) to prevent any “ghost” segments.
Dynamic color: turns green when price closes above (bullish bias) and red when price closes below (bearish bias).
Optional standard-deviation/percentage bands (off by default).
08:00–12:00 VWAP (morning line)
Resets at 08:00 NY and shows until 12:00 NY only.
Acts as a morning value guide for early direction and pullbacks.
Clean rendering: Both lines use strict time masks and line breaks, so nothing is drawn outside their windows. You can toggle either line on/off.
How to Read It
Daily VWAP ≈ “fair value” of the whole session; use it for directional bias and confluence.
08:00–12:00 VWAP ≈ “fair value” of the morning; helps refine entries during the open.
Alignment:
Bullish environment: price and 08–12 VWAP sit above the Daily VWAP.
Rotation/mixed: price oscillates between the two lines.
Bearish: price and 08–12 VWAP sit below the Daily VWAP.
Two Mechanical Playbooks
Recommended charts: 1-minute for entries, 5-minute for context on NQ/Nasdaq100.
Primary execution window: 09:30–12:00 NY.
A) Trend Play (Break → Pullback to VWAP)
Goal: Join the day’s impulse with value confirmation.
Rules
Bias filter before 09:30
Bullish: 08–12 VWAP ≥ Daily VWAP; Bearish: 08–12 ≤ Daily.
First push 09:30–09:45 breaks the initial range high (bull) or low (bear).
Entry (pullback into confluence)
Wait for a pullback that tags/wicks the 08–12 VWAP or the Daily VWAP in the direction of bias.
Go long on bullish rejection (close back above); short on bearish rejection.
Stop-loss
Beyond the rejection wick or the touched VWAP (e.g., 1–1.5× ATR(1m/5m)).
Take-profit
TP1 = 1R (scale 50%); TP2 = 2–3R or day extremes (HOD/LOD).
If bands are on, consider exiting on a clean tag of the opposite band.
Management
Move to breakeven at 1R; exit early if price reclaims the opposite side of Daily VWAP.
Avoid when the morning is choppy and price sits glued between the two VWAPs.
B) Mean-Reversion Play (Controlled Reversal at Daily VWAP)
Goal: Capture a return to value after an overstretch and a clean rejection.
Rules
Stretch condition
Fast move away from Daily VWAP (3–5 bars) or beyond Band #1/#2 if enabled.
Rejection signal at Daily VWAP
A bar that touches Daily VWAP and closes back on the opposite side (pin/engulfing/strong close).
Entry
Long if a selloff rejects above Daily VWAP.
Short if a rally rejects below Daily VWAP.
Stop-loss
Just beyond the rejection wick or ~1× ATR(1m).
Take-profit
TP1 = 1R or the 08–12 VWAP; TP2 = 2–3R or a prior consolidation.
Management
If price crosses and holds on the other side of Daily VWAP (2 closes), cut the idea.
Avoid during high-impact news or when the session is strongly trending (prefer Play A).
Quality Filters
Volatility: Ensure ATR(14, 1m) or the 09:30–09:45 range exceeds your minimum.
Spread/liquidity: Skip abnormal spreads at the open.
News: If a red-level release is imminent, wait 2–3 bars after the print.
Coherence: Prefer trades when 08–12 and Daily VWAP don’t conflict.
Risk & Trade Management
Risk per trade: 0.25%–0.5% account risk.
Daily cap: 2–3 trades; stop for the day at –1R to –1.5R.
No over-reentry: Don’t chase if price is sitting exactly on a VWAP; wait for separation.
Log your metrics: setup type (A/B), confluences, distance to VWAP at trigger, time, R multiple.
Quick Pre-Trade Checklist
Bias aligned? (price vs Daily and 08–12 VWAP)
Choose Trend or Mean-Reversion play
Clear confluence at the VWAP line?
Realistic stop (≤ ~1.5× ATR 1m)?
Any imminent news?
TP plan: TP1 = 1R → BE, TP2 = 2–3R.
Price Action ZigZag (Impulses & Corrections)This indicator tracks price structure by connecting significant swing highs and lows—giving a clear, actionable “ZigZag” view of market movement. It automatically maps the underlying price action as alternating impulses (trend legs) and corrections (pullbacks), directly on your chart, for any timeframe.
How does it work?
Swing Detection:
The script uses the user-selected “pivot length” to identify confirmed swing highs and lows with Pine Script’s ta.pivothigh and ta.pivotlow.
These pivots only print after full confirmation, making all lines strictly non-repainting.
ZigZag Drawing:
After pivots are captured, the indicator connects each alternating swing with lines that trace the progression of price structure.
Each line segment is mapped according to the sequence and direction of swings:
Impulse: Moves that break further away from prior swing in the same direction (continuations/uptrends/downtrends)
Correction: Moves that pull price back, but do not extend past the previous impulse (retracements/sideways action)
Impulse vs Correction Logic:
Bullish impulse: swing from a higher low to a higher high (fast upward moves after a low)
Bearish impulse: swing from a lower high to a lower low (fast downward moves after a high)
Corrections appear as smaller lines between alternating swing points not leading to new trend extension.
Labels & Colors:
Impulse lines are drawn teal (customizable), corrections in gray.
Tiny labels ("Impulse", "Correction") are shown for clarity (optional).
Most recent pivots are highlighted with yellow dots for quick visual reference.
Key Features:
User-adjustable pivot length controls sensitivity and structure size (scalp to swing).
Distinguishes between impulses and corrections instantly on the chart.
Labels and color coding for clarity—traders can spot trend continuation vs. pullback at a glance.
Non-repainting confirmed pivots and lines; never show incomplete data.
Fully customizable appearance—all colors and label display adjustable in settings.
Zero lookahead or repainting: all signals use confirmed, historical price only.
How to use:
Add to any chart and set 'Swing Length' to fit your trading style (shorter for scalping, longer for bigger structure).
Follow the ZigZag lines to see when price makes an impulse vs. correction, and use this to identify high-probability momentum or reversal zones.
Combine this script with your own analysis/strategy or other indicators for deeper context.
Adjust colors and label options for your preferred chart clarity.
Disclaimer:
This script is a visualization and analysis tool for educational purposes—it does not predict future price movement, guarantee results, or provide trading signals. Always use sound risk management and your own judgment in live trading.
Moving Average Ribbon (10x, per-MA timeframe)A flexible moving‑average ribbon that plots up to 10 MAs, each with its own type, length, source, color, and independent timeframe selector for true multi‑timeframe analysis without repainting on higher‑timeframe pulls.
What it does
Plots ten moving averages with selectable types: SMA, EMA, SMMA (RMA), WMA, and VWMA.
Allows per‑line timeframe inputs (e.g., 5, 15, 60, 1D, 1W) so you can overlay higher‑ or equal‑timeframe MAs on the current chart.
Uses a non‑repainting request pattern for higher‑timeframe series to keep lines stable in realtime.
How to use
Leave a TF field blank to keep that MA on the chart’s timeframe; type a timeframe (like 15 or 1D) to fetch it from another timeframe.
Typical trend‑following setup: fast MAs (10–21) on chart TF, mid/slow MAs (34–200) from higher TFs for bias and dynamic support/resistance.
Color‑code faster vs slower lines and optionally hide lines you don’t need to reduce clutter.
Best practices
Prefer pulling equal or higher timeframes for stability; mixing lower TFs into a higher‑TF chart can create choppy visuals.
Combine with price action and volume/volatility tools (e.g., RSI, Bollinger Bands) for confirmation rather than standalone signals.
Showcase example charts in your publish post and explain default settings so users know how to interpret the ribbon.
Inputs
Show/Hide per MA, Type (SMA/EMA/SMMA/WMA/VWMA), Source, Length, Color, Timeframe.
Defaults cover common lengths (10/20/50/100/200 etc.) and can be customized to fit intraday or swing styles.
Limitations
This is an analysis overlay, not a signal generator; it doesn’t place trades or alerts by default.
Effectiveness depends on instrument liquidity and user configuration; avoid overfitting to one market or regime.
Attribution and etiquette
Provide a brief explanation of your calculation choices and note that MA formulas are standard; credit any borrowed concepts or snippets if used.
ATR Channel (Bottom & Top)The ATR Channel (Bottom & Top) indicator dynamically visualizes market volatility zones based on the Average True Range (ATR). It automatically builds adaptive upper and lower boundaries around the current price, helping traders identify potential market extremes, volatility-driven reversals, and dynamic support/resistance levels.
This version is specifically optimized for Bitcoin (BTCUSDT) but works with any asset or timeframe.
⚙️ How It Works
The indicator calculates ATR over a user-defined period (default 200) and applies separate multipliers for the top and bottom bands (default ×1).
The Top Band = Close + (ATR × Multiplier)
The Bottom Band = Close - (ATR × Multiplier)
These two adaptive bands create a volatility envelope, allowing traders to visualize where the price may encounter potential exhaustion or reversal zones.
💡 Signal Logic
LONG Signal (Green Tab):
Triggered when the low of the candle touches or dips below the ATR bottom line — suggesting a possible oversold or volatility-based bottoming area.
The label displays the exact ATR line value (not the close), formatted for better readability (e.g. “LONG\n103 885”).
SELL Signal (Red Tab):
Triggered when the high of the candle touches or exceeds the ATR top line — signaling possible overbought conditions or an exhaustion zone.
Signal Filtering:
The script intelligently avoids duplicate signals — e.g., multiple consecutive LONGs or SELLs will not appear until the opposite signal is triggered.
This ensures cleaner visualization and reduces signal noise during consolidation periods.
🎯 Features
✅ Adaptive ATR-based volatility channel
✅ Automatic LONG/SELL signal labeling with real ATR-touch prices
✅ Customizable parameters:
✅ Intelligent filtering (one signal per phase)
✅ Works on any market and timeframe (crypto, forex, indices, stocks)
🧭 Trading Applications
Identify volatility extremes (ATR-based overbought/oversold zones)
Detect reversal points or exhaustion moves after extended trends
Use with trend filters (e.g. EMA200) to confirm trend continuation vs mean reversion setups
Combine with oscillators (RSI, Stoch) for confluence signals
📊 Summary
The ATR Channel (Bottom & Top) provides a clear, professional-grade visualization of volatility dynamics and price extremes.
It is especially useful for traders using mean-reversion, volatility breakout, or swing-trading strategies — helping them identify statistically significant reaction zones and improving trade timing precision.
VWAP – Pivot Pairs (SECONDS‑BASED RESET)VWAP – Pivot Pairs (SECONDS-BASED RESET) is a Pine Script v6 indicator for TradingView that combines pivot-based breakout detection with resettable VWAP (Volume Weighted Average Price) calculations over user-defined rolling time periods in seconds.It identifies high and low swing pivots via breakout logic, then calculates two VWAP lines per anchor:One using high/low as the price source,
One using close as the price source.
These form "pivot pairs" that reset automatically at the start of each custom-duration period (e.g., every 300 seconds), starting from a user-defined UTC time of day (default: 09:30 UTC).Visuals include:Colored VWAP lines (high pair: red, low pair: green),
Semi-transparent fill zones between each pair,
Optional toggles to show/hide high or low pairs.
Use CasesUse Case
Description
Intraday Scalping (1–15 min charts)
Use 60–300 second resets to capture micro-trends within larger sessions. VWAP pairs act as dynamic support/resistance after breakouts.
High-Frequency / Algo Validation
Backtest strategies on tick/second charts where traditional session resets fail. Align resets with exchange micro-sessions or volatility windows.
Opening Range Breakout (ORB) Enhancement
Set period_seconds = 1800 (30 min) and start time = 09:30 UTC → VWAP builds only on first 30 mins post-open, then floats. Pairs show deviation from ORB mean.
Range-Bound Market Analysis
In choppy markets, VWAP pairs converge near fair value. Divergence signals potential breakout. Fill color intensity shows conviction.
Multi-Timeframe Confluence
Overlay on 1-second chart with 300s reset → matches 5-minute structure. Use close-based VWAP for entries, high/low-based for stops.
Key Features SummaryFeature
Function
period_seconds
Rolling window length in seconds (e.g., 300 = 5 min)
period_start_time
UTC time-of-day anchor (default: 09:30)
new_period logic
Triggers full reset of pivots + VWAP on exact second boundary
breakingHigher / breakingLower
Detects confirmed breakouts (not just close above high)
Dual VWAP per anchor
ta.vwap(high) and ta.vwap(close) for range-aware mean
Fill zones
Visual value area between high/close VWAPs
Toggle visibility
Independently show/hide high or low pivot pairs
How It Works – Step-by-StepTime Engine Converts user inputs → milliseconds
Calculates current period start time using integer division from epoch
Detects exact bar when new period begins (new_period = true)
On New Period Resets both high/low anchors to current bar’s h and l
Forces VWAP recalculation from this bar forward
Breakout Detection Only triggers on strong candles (rising/falling, non-doji)
Requires open/close beyond prior pivot → avoids wicks-only breaks
VWAP Accumulation ta.vwap(source, reset_condition) restarts when anchor resets
Two sources per side → shows where volume clustered (at highs vs closes)
Plotting Four lines + two fills
Clean, customizable, overlay-friendly
Pro TipsUse on Heikin Ashi for smoother breakout signals.
Combine with volume profile to validate VWAP clusters.
For crypto, set period_start_time = 0 (00:00 UTC) for clean 4-hour resets.
Add alerts on new_period or breakingHigher for automation.
In short: This is a precision VWAP tool for time-boxed, pivot-driven mean reversion and breakout trading, ideal for scalpers, day traders, and algo developers needing sub-session granularity.
Aquantprice: Institutional Structure MatrixSETUP GUIDE
Open TradingView
Go to Indicators
Search: Aquantprice: Institutional Structure Matrix
Click Add to Chart
Customize:
Min Buy = 10, Min Sell = 7
Show only PP, R1, S1, TC, BC
Set Decimals = 5 (Forex) or 8 (Crypto)
USE CASES & TRADING STRATEGIES
1. CPR Confluence Trading (Most Popular)
Rule: Enter when ≥3 timeframes show Buy ≥10/15 or Sell ≥7/13
text Example:
Daily: 12/15 Buy
Weekly: 11/15 Buy
Monthly: 10/15 Buy
→ **STRONG LONG BIAS**
Enter on pullback to nearest **S1 or L3**
2. Hot Zone Scalping (Forex & Indices)
Rule: Trade only when price is in Hot Zone (closest 2 levels)
text Hot: S1-PP → Expect bounce or breakout
Action:
- Buy at S1 if Buy Count ↑
- Sell at PP if Sell Count ↑
3. Institutional Reversal Setup
Rule: Price at H3/L3 + Reversal Condition
text Scenario:
Price touches **Monthly L3**
L3 in **Hot Zone**
Buy Count = 13/15
→ **High-Probability Reversal Long**
4. CPR Width Filter (Avoid Choppy Markets)
Rule: Trade only if CPR Label = "Strong Trend"
text CPR Size < 0.25 → Trending
CPR Size > 0.75 → Sideways (Avoid)
5. Multi-Timeframe Bias Dashboard
Use "Buy" and "Sell" columns as a sentiment meter
TimeframeBuySellBiasDaily123BullishWeekly89BearishMonthly112Bullish
→ Wait for alignment before entering
HOW TO READ THE TABLE
Column Meaning Time frame D, W, M, 3M, 6M, 12MOpen Price Current session open PP, TC, BC, etc. Pivot levels (color-coded if in Hot Zone) Buy X/15 conditions met (≥10 = Strong Buy)Sell X/13 conditions met (≥7 = Strong Sell)CPR Size Histogram + Label (Trend vs Range)Zone Hot: PP-S1, Med: S2-L3, etc. + PP Distance
PRO TIPS
Best on 5M–1H charts for entries
Use with volume or order flow for confirmation
Set alerts on Buy ≥12/15 or Sell ≥10/13
Hide unused levels to reduce clutter
Combine with AQuantPrice Dashboard (Small TF) for full system
IDEAL MARKETS
Forex (EURUSD, GBPUSD, USDJPY)
Indices (NAS100, SPX500, DAX)
Crypto (BTC, ETH – use 6–8 decimals)
Commodities (Gold, Oil)
🚀 **NEW INDICATOR ALERT**
**Aquantprice: Institutional Structure Matrix**
The **ALL-IN-ONE CPR Dashboard** used by smart money traders.
✅ **6 Timeframes in 1 Table** (Daily → Yearly)
✅ **15 Buy + 13 Sell Conditions** (Institutional Logic)
✅ **Hot Zones, CPR Width, PP Distance**
✅ **Fully Customizable – Show/Hide Any Level**
✅ **Real-Time Zone Detection** (Hot, Med, Low)
✅ **Precision up to 8 Decimals**
**No more switching charts. No more confusion.**
See **where institutions are positioned** — instantly.
👉 **Add to Chart Now**: Search **"Aquantprice: Institutional Structure Matrix"**
🔥 **Free Access | Pro-Level Insights**
*By AQuant – Trusted by 10,000+ Traders*
#CPR #PivotTrading #SmartMoney #TradingView
FINAL TAGLINE
"See What Institutions See — Before They Move."
Aquantprice: Institutional Structure Matrix
Your Edge. One Dashboard.
EMA + SuperTrend Signals (Customized Subham) - FIXED//@version=5
indicator("EMA + SuperTrend Signals (modes + filters) - FIXED firstClose", overlay=true, shorttitle="EMA×ST Modes", max_labels_count=500)
// ====== USER INPUTS ======
useHeikin = input.bool(false, "Use Heikin Ashi price (set true if chart is Heikin Ashi)")
srcType = input.string("Close", "Price source for EMA/SuperTrend", options= )
emaFastLen = input.int(10, "Fast EMA Length", minval=1)
emaSlowLen = input.int(50, "Slow EMA Length", minval=1)
useEMAFilter = input.bool(true, "Require EMA filter for signals (Fast EMA > Slow EMA)")
atrLen = input.int(10, "SuperTrend ATR Length", minval=1)
atrMult = input.float(3.0, "SuperTrend ATR Multiplier", step=0.1)
showArrows = input.bool(true, "Show buy/sell arrows")
showBands = input.bool(true, "Show final upper/lower bands")
showST = input.bool(true, "Show SuperTrend line")
showEMA = input.bool(true, "Plot EMAs")
showBg = input.bool(true, "Color background by ST")
alertsEnabled = input.bool(true, "Enable alertcondition()s")
// ====== SIGNAL MODE / BEHAVIOR ======
signalMode = input.string("Flip only", "Signal Mode", options= )
allowOnTrendNotOnlyFlip = input.bool(true, "Allow signals based on Signal Mode (in addition to flips)")
// ====== SIDEWAYS / NOISE FILTER INPUTS ======
useAdxFilter = input.bool(true, "Use ADX filter (require trend strength)")
adxLen = input.int(14, "ADX length", minval=1)
adxThreshold = input.int(20, "ADX threshold (lower = more signals)")
useVolFilter = input.bool(true, "Use ATR% volatility filter (require sufficient movement)")
volPctThreshold = input.float(0.002, "ATR / Price threshold (e.g. 0.002 = 0.2%)", step=0.0001)
useRsiFilter = input.bool(true, "Use RSI filter")
rsiLen = input.int(14, "RSI length", minval=1)
rsiBuyThreshold = input.int(50, "RSI buy threshold (require RSI > this for buys)", minval=1, maxval=99)
rsiSellThreshold = input.int(50, "RSI sell threshold (require RSI < this for sells)", minval=1, maxval=99)
// ====== HEIKIN ASHI VALUES (optional) ======
var float haOpen = na
var float haClose = na
var float haHigh = na
var float haLow = na
if useHeikin
haClose := (open + high + low + close) / 4.0
haOpen := na(haOpen ) ? (open + close) / 2.0 : (haOpen + haClose ) / 2.0
haHigh := math.max(high, math.max(haOpen, haClose))
haLow := math.min(low, math.min(haOpen, haClose))
// ====== PRICE SOURCE FUNCTION ======
_getSrc(_choice) =>
float _result = na
if useHeikin
if _choice == "Close"
_result := haClose
else if _choice == "HL2"
_result := (haHigh + haLow) * 0.5
else
_result := (haHigh + haLow + haClose) / 3.0
else
if _choice == "Close"
_result := close
else if _choice == "HL2"
_result := (high + low) * 0.5
else
_result := (high + low + close) / 3.0
_result
priceSrc = _getSrc(srcType)
priceHigh = useHeikin ? haHigh : high
priceLow = useHeikin ? haLow : low
priceClose = nz(priceSrc, close)
// ====== EMA CALC ======
emaFast = ta.ema(priceSrc, emaFastLen)
emaSlow = ta.ema(priceSrc, emaSlowLen)
// ====== SUPER TREND CALC (finalUpper / finalLower) ======
hl2_local = (priceHigh + priceLow) * 0.5
atr = ta.atr(atrLen)
upperBasic = hl2_local + atrMult * atr
lowerBasic = hl2_local - atrMult * atr
var float finalUpper = na
var float finalLower = na
finalUpper := nz(finalUpper , upperBasic)
finalLower := nz(finalLower , lowerBasic)
finalUpper := (upperBasic < finalUpper or priceClose > finalUpper) ? upperBasic : finalUpper
finalLower := (lowerBasic > finalLower or priceClose < finalLower) ? lowerBasic : finalLower
var int trend = 1
trend := nz(trend , 1)
if (priceClose > nz(finalUpper , finalUpper))
trend := 1
else if (priceClose < nz(finalLower , finalLower))
trend := -1
superTrend = trend == 1 ? finalLower : finalUpper
isBull = trend == 1
isBear = trend == -1
// ====== SIGNAL RULE BASE (flips) ======
prevTrend = nz(trend , trend)
bullFlip = (trend == 1 and prevTrend == -1)
bearFlip = (trend == -1 and prevTrend == 1)
// EMA crossover signals (series)
emaXoverBuy = ta.crossover(emaFast, emaSlow)
emaXoverSell = ta.crossunder(emaFast, emaSlow)
// price vs superTrend confirmation
priceAboveST = priceClose > superTrend
priceBelowST = priceClose < superTrend
// Basic EMA filters
emaFilterBuy = (emaFast > emaSlow) and (priceClose > emaFast)
emaFilterSell = (emaFast < emaSlow) and (priceClose < emaFast)
// Build raw candidates depending on mode
flipBuy = bullFlip
flipSell = bearFlip
// firstClose: first bar where trend flipped and price confirms on that bar's close
firstCloseBuy = (trend == 1) and (prevTrend == -1) and (priceClose > superTrend)
firstCloseSell = (trend == -1) and (prevTrend == 1) and (priceClose < superTrend)
// emaCrossoverCandidate: EMA cross while trend confirms
emaCandidateBuy = emaXoverBuy and (trend == 1)
emaCandidateSell = emaXoverSell and (trend == -1)
// Compose the raw buy/sell depending on chosen Signal Mode
var bool buySignal_raw = false
var bool sellSignal_raw = false
if signalMode == "Flip only"
buySignal_raw := flipBuy
sellSignal_raw := flipSell
else if signalMode == "First close in trend"
buySignal_raw := firstCloseBuy or (allowOnTrendNotOnlyFlip and flipBuy)
sellSignal_raw := firstCloseSell or (allowOnTrendNotOnlyFlip and flipSell)
else // "EMA crossover in trend"
buySignal_raw := emaCandidateBuy or (allowOnTrendNotOnlyFlip and flipBuy)
sellSignal_raw := emaCandidateSell or (allowOnTrendNotOnlyFlip and flipSell)
// Apply EMA filter option (if enabled)
if useEMAFilter
buySignal_raw := buySignal_raw and emaFilterBuy
sellSignal_raw := sellSignal_raw and emaFilterSell
// ====== SIDEWAYS FILTERS IMPLEMENTATION ======
// Manual ADX implementation (Wilder smoothing)
up = priceHigh - priceHigh
down = priceLow - priceLow
plusDM = (up > down and up > 0) ? up : 0.0
minusDM = (down > up and down > 0) ? down : 0.0
tr1 = priceHigh - priceLow
tr2 = math.abs(priceHigh - nz(priceClose , priceClose))
tr3 = math.abs(priceLow - nz(priceClose , priceClose))
trueRange = math.max(tr1, math.max(tr2, tr3))
smoothedTR = ta.rma(trueRange, adxLen)
smoothedPlusDM = ta.rma(plusDM, adxLen)
smoothedMinusDM = ta.rma(minusDM, adxLen)
plusDI = smoothedTR == 0 ? 0.0 : (100.0 * smoothedPlusDM / smoothedTR)
minusDI = smoothedTR == 0 ? 0.0 : (100.0 * smoothedMinusDM / smoothedTR)
dx = (plusDI + minusDI == 0) ? 0.0 : (100.0 * math.abs(plusDI - minusDI) / (plusDI + minusDI))
adxValue = ta.rma(dx, adxLen)
adxOk = useAdxFilter ? (adxValue > adxThreshold) : true
// ATR% check
safePrice = priceClose == 0.0 ? nz(close) : priceClose
atrPct = atr / math.abs(safePrice)
volOk = useVolFilter ? (atrPct > volPctThreshold) : true
// RSI checks
rsiValue = ta.rsi(priceSrc, rsiLen)
rsiOkBuy = useRsiFilter ? (rsiValue > rsiBuyThreshold) : true
rsiOkSell = useRsiFilter ? (rsiValue < rsiSellThreshold) : true
// Allow signal only when all enabled filters pass (separate for buy/sell)
allowBuy = adxOk and volOk and rsiOkBuy
allowSell = adxOk and volOk and rsiOkSell
// Final gated signals
buySignal = buySignal_raw and allowBuy
sellSignal = sellSignal_raw and allowSell
// Avoid both at once
if (buySignal and sellSignal)
buySignal := false
sellSignal := false
// ====== PLOTTING ======
plot(showEMA ? emaFast : na, title="EMA Fast", linewidth=2)
plot(showEMA ? emaSlow : na, title="EMA Slow", linewidth=2)
pUpper = plot(showBands ? finalUpper : na, title="Final Upper", linewidth=2, style=plot.style_line)
pLower = plot(showBands ? finalLower : na, title="Final Lower", linewidth=2, style=plot.style_line)
plot(showST ? superTrend : na, title="SuperTrend", linewidth=3, style=plot.style_line)
fill(pUpper, pLower, color = color.new(color.blue, 92))
plotshape(series = (showArrows and buySignal), title="Buy Arrow", style=shape.labelup, location=location.belowbar, color=color.green, text="BUY", textcolor=color.white, size=size.tiny)
plotshape(series = (showArrows and sellSignal), title="Sell Arrow", style=shape.labeldown, location=location.abovebar, color=color.red, text="SELL", textcolor=color.white, size=size.tiny)
// ====== BACKGROUND COLOR ======
var color bg_col = na
if showBg
if not (adxOk and volOk)
bg_col := color.new(color.gray, 85)
else
bg_col := isBull ? color.new(color.green, 90) : color.new(color.red, 90)
else
bg_col := na
bgcolor(bg_col)
// ====== ALERTS ======
alertcondition(alertsEnabled and buySignal, title="EMA+ST Buy", message="EMA+ST BUY — signal passed filters.")
alertcondition(alertsEnabled and sellSignal, title="EMA+ST Sell", message="EMA+ST SELL — signal passed filters.")
alertcondition(alertsEnabled and (buySignal or sellSignal), title="EMA+ST Any Signal", message="EMA+ST signal detected.")
// ====== DEBUG / LABELS ======
showDebug = input.bool(false, "Show debug label (mode, ADX, ATR%, RSI)")
if showDebug and barstate.islast
var label dbg = na
label.delete(dbg)
dbgText = "Mode:" + signalMode + " ADX:" + str.tostring(adxValue, "#.0") + " ATR%:" + str.tostring(atrPct*100, "#.2") + "% RSI:" + str.tostring(rsiValue, "#.1")
dbg := label.new(bar_index, high, dbgText, xloc=xloc.bar_index, yloc=yloc.abovebar, style=label.style_label_left, color=color.gray, textcolor=color.white)
var label lastLbl = na
if barstate.islast
label.delete(lastLbl)
lastLbl := label.new(bar_index, high, isBull ? "ST: Bull" : "ST: Bear", xloc=xloc.bar_index, yloc=yloc.abovebar, style=label.style_label_left, color=isBull ? color.green : color.red, textcolor=color.white)
Dual EMA Status Table (15m & 30m)It checks whether the 9 EMA is above or below the 21 EMA on:
the 15-minute chart, and
the 30-minute chart,
and then displays their alignment in a table:
Timeframe 9 vs 21 Status
15 min 9 > 21 Bullish
30 min 9 > 21 Bullish
CONFIRM ✅ Bullish
✅ “Bullish Confirm” → 9 EMA > 21 EMA on both → uptrend bias
❌ “Bearish Confirm” → 9 EMA < 21 EMA on both → downtrend bias
⚠️ “Mixed” → 15 m and 30 m disagree → stay neutral or wait
💡 How to Use It as a Trading Signal
You can treat it as a buy/sell framework with confirmation rules:
🔹 Buy (Long) bias
Table shows ✅ Bullish confirmation
9 EMA > 21 EMA on both timeframes
Ideally, price pulls back near one of the EMAs and then bounces
You could enter after a bullish candle close above the EMAs
📍 Example entry rule:
Enter long when “✅ Bullish” appears and price closes above both EMAs on the 15 min chart.
Stop-loss below the 21 EMA or recent swing low.
🔹 Sell (Short) bias
Table shows ❌ Bearish confirmation
9 EMA < 21 EMA on both timeframes
Price retraces upward and rejects near EMAs
📍 Example entry rule:
Enter short when “❌ Bearish” appears and price closes below both EMAs on the 15 min chart.
Stop-loss above 21 EMA or recent swing high.
Put Option Profits inspired by Travis Wilkerson; SPX BacktesterPut Option Profits — Travis Wilkerson inspired. This tester evaluates a simple monthly SPX at-the-money credit-spread timing idea: enter on a fixed calendar rule (e.g., 1st Friday or 8th day with business-day shifting) at Open or Close, then exit exactly N calendar days later (first tradable day >= target, at Close). A trade is marked WIN if price at exit is above the entry price (1:1 risk proxy).
The book suggests forward testing 60-day and 180-day expirations to prove the concept. This tool lets you backtest both (and more) to see what actually works best. In the book, profits are taken when the spread reaches ~80% of max credit; losers are left to expire and cash-settle. This backtester does not model early profit-taking—every trade is held to the configured hold period and evaluated on price vs entry at the exit close. Think of it as a pure “set it and forget it” stress test. In live trading, you can still follow Travis’s 80% take-profit rule; TradingView just doesn’t simulate that here. Happy trading!
Features:
Schedule: Day-of-Month (with Prev/Next business-day shift, optional “stay in month”) or Nth Weekday (e.g., 1st Friday).
Entry timing: Open or Close.
Exit: N calendar days later at Close (holiday/weekend aware).
Filters: Optional EMA-200 “risk-on” filter.
Scope: Date range limiter.
Visuals: Entry/exit bubbles (paired colors) or simple win/loss dots.
Table: Overall Win% and N (within range).
Alerts: Entry alert (static condition + dynamic alert() message).
How to use:
[* ]Choose Start Mode (NthWeekday or DayOfMonth) and parameters (e.g., 1st Friday or DOM=8, PrevBizDay).
Pick Entry Timing (Open or Close).
Set Days In Trade (e.g., 150).
(Optional) Enable EMA filter and set Date Range.
Turn Bubbles on/off and/or Dots on/off.
Create alert:
Simple ping: Condition = this indicator -> Monthly Entry Signal -> “Once per bar” (Open) or “Once per bar close” (Close).
Rich message: Condition = this indicator -> Any alert() function call.
Notes:
Keep DOM shift in same month: when a DOM falls on a weekend/holiday, PrevBizDay/NextBizDay shift will stay inside the month if enabled; otherwise it can spill into the prior/next month. (Ignored for NthWeekday.)
Credits: Concept sparked by “Put Option Profits – How to turn ten minutes of free time into consistent cash flow each month” by Travis Wilkerson; this script is a neutral research tool (not financial advice).
Momentum Squeeze Candle [Darwinian]# Momentum Squeeze Candle
Professional squeeze detection indicator with Wyckoff accumulation/distribution analysis and multi-method momentum signals.
## Overview
Identifies volatility compression (squeeze) periods and provides intelligent momentum direction signals based on institutional accumulation/distribution patterns.
## Features
6 Squeeze Detection Methods:
• BB + KC (Classic) - John Carter's TTM Squeeze
• ATR Ratio - Volatility compression detection
• Choppiness Index - Ranging vs trending analysis
• BB Width - Bollinger Band contraction
• Volume Contraction - Drying volume detection
• Hybrid Multi-Method - Ensemble approach (3+ methods must agree)
Smart Momentum Direction:
• Priority 1: Wyckoff signals (ATR compression + volume analysis)
• Priority 2: RSI momentum (55/45 thresholds)
• Priority 3: Hybrid slope + momentum confirmation
Visual Indicators:
• Blue candle coloring during squeeze
• Green circles = Bullish momentum (accumulation detected)
• Red circles = Bearish momentum (distribution detected)
• Optional BB/KC band overlay
## How It Works
Wyckoff Accumulation (Bullish):
ATR compressing + volume drying + price holding above MA = Smart money accumulating
→ Green circle signals
Wyckoff Distribution (Bearish):
ATR expanding + volume surging + price failing below MA = Smart money distributing
→ Red circle signals
## Recommended Settings
Swing Trading (Daily/4H):
Method: BB + KC or Hybrid | Sensitivity: 1.2-1.5
Day Trading (15m-1H):
Method: ATR Ratio or BB Width | Sensitivity: 0.8-1.0
Scalping (1m-5m):
Method: Volume Contraction | Sensitivity: 0.7-0.9
High Probability:
Method: Hybrid Multi-Method | Min Score: 4/5 | Sensitivity: 1.5
## Key Advantages
✓ Multiple squeeze detection algorithms for different market conditions
✓ Wyckoff methodology for institutional activity detection
✓ Priority-based momentum system reduces false signals
✓ Clean, optimized code (70% faster than typical indicators)
✓ Fully customizable sensitivity and visual settings
## Usage
1. Choose squeeze detection method based on your trading style
2. Watch for blue candles (squeeze active)
3. Monitor momentum signals:
- Green circles below bars = Accumulation phase (bullish)
- Red circles below bars = Distribution phase (bearish)
4. Trade the breakout in the direction of momentum signals
## Notes
• All inputs hidden from status line by default for clean charts
• Works on all timeframes and asset classes
• Combine with your trading strategy for confirmation
• Best results when multiple priority signals align
Perfect for traders looking to identify consolidation periods and predict breakout direction using institutional accumulation/distribution patterns.






















