Delta Volume Candles [LucF]█ OVERVIEW
This indicator plots on-chart volume delta information using candles that can replace your normal candles, tops and bottoms appended to normal candles, optional MAs of those tops and bottoms levels, a divergence channel and a chart background. The indicator calculates volume delta using intrabar analysis, meaning that it uses the lower timeframe bars constituting each chart bar.
█ CONCEPTS
Volume Delta
The volume delta concept divides a bar's volume in "up" and "down" volumes. The delta is calculated by subtracting down volume from up volume. Many calculation techniques exist to isolate up and down volume within a bar. The simplest use the polarity of interbar price changes to assign their volume to up or down slots, e.g., On Balance Volume or the Klinger Oscillator . Others such as Chaikin Money Flow use assumptions based on a bar's OHLC values. The most precise calculation method uses tick data and assigns the volume of each tick to the up or down slot depending on whether the transaction occurs at the bid or ask price. While this technique is ideal, it requires huge amounts of data on historical bars, which considerably limits the historical depth of charts and the number of symbols for which tick data is available. Furthermore, historical tick data is not yet available on TradingView.
This indicator uses intrabar analysis to achieve a compromise between the simplest and most precise methods of calculating volume delta. It is currently the most precise method usable on TradingView charts. TradingView's Volume Profile built-in indicators use it, as do the CVD - Cumulative Volume Delta Candles and CVD - Cumulative Volume Delta (Chart) indicators published from the TradingView account . My Delta Volume Channels and Volume Delta Columns Pro indicators also use intrabar analysis. Other volume delta indicators such as my Realtime 5D Profile use realtime chart updates to calculate volume delta without intrabar analysis, but that type of indicator only works in real time; they cannot calculate on historical bars.
This is the logic I use to determine the polarity of intrabars, which determines the up or down slot where its volume is added:
• If the intrabar's open and close values are different, their relative position is used.
• If the intrabar's open and close values are the same, the difference between the intrabar's close and the previous intrabar's close is used.
• As a last resort, when there is no movement during an intrabar, and it closes at the same price as the previous intrabar, the last known polarity is used.
Once all intrabars making up a chart bar have been analyzed and the up or down property of each intrabar's volume determined, the up volumes are added, and the down volumes subtracted. The resulting value is volume delta for that chart bar, which can be used as an estimate of the buying/selling pressure on an instrument. Not all markets have volume information. Without it, this indicator is useless.
Intrabar analysis
Intrabars are chart bars at a lower timeframe than the chart's. The timeframe used to access intrabars determines the number of intrabars accessible for each chart bar. On a 1H chart, each chart bar of an active market will, for example, usually contain 60 bars at the lower timeframe of 1min, provided there was market activity during each minute of the hour.
This indicator automatically calculates an appropriate lower timeframe using the chart's timeframe and the settings you use in the script's "Intrabars" section of the inputs. As it can access lower timeframes as small as seconds when available, the indicator can be used on charts at relatively small timeframes such as 1min, provided the market is active enough to produce bars at second timeframes.
The quantity of intrabars analyzed in each chart bar determines:
• The precision of calculations (more intrabars yield more precise results).
• The chart coverage of calculations (there is a 100K limit to the quantity of intrabars that can be analyzed on any chart,
so the more intrabars you analyze per chart bar, the less chart bars can be calculated by the indicator).
The information box displayed at the bottom right of the chart shows the lower timeframe used for intrabars, as well as the average number of intrabars detected for chart bars and statistics on chart coverage.
Balances
This indicator calculates five balances from volume delta values. The balances are oscillators with a zero centerline; positive values are bullish, and negative values are bearish. It is important to understand the balances as they can be used to:
• Color candle bodies.
• Calculate body and top and bottom divergences.
• Color an EMA channel.
• Color the chart's background.
• Configure markers and alerts.
The five balances are:
1 — Bar Balance : This is the only balance using instant values; it is simply the subtraction of the down volume from the up volume on the bar, so the instant volume delta for that bar.
2 — Average Balance : Calculates a distinct EMA for both the up and down volumes, and subtracts the down EMA from the up EMA.
The result is akin to MACD's histogram because it is the subtraction of two moving averages.
3 — Momentum Balance : Starts by calculating, separately for both up and down volumes, the difference between the same EMAs used in "Average Balance" and
an SMA of twice the period used for the "Average Balance" EMAs. The difference for the up side is subtracted from the difference for the down side,
and an RSI of that value is calculated and brought over the −50/+50 scale.
4 — Relative Balance : The reference values used in the calculation are the up and down EMAs used in the "Average Balance".
From those, we calculate two intermediate values using how much the instant up and down volumes on the bar exceed their respective EMA — but with a twist.
If the bar's up volume does not exceed the EMA of up volume, a zero value is used. The same goes for the down volume with the EMA of down volume.
Once we have our two intermediate values for the up and down volumes exceeding their respective MA, we subtract them. The final value is an ALMA of that subtraction.
The rationale behind using zero values when the bar's up/down volume does not exceed its EMA is to only take into account the more significant volume.
If both instant volume values exceed their MA, then the difference between the two is the signal's value.
The signal is called "relative" because the intermediate values are the difference between the instant up/down volumes and their respective MA.
This balance flatlines when the bar's up/down volumes do not exceed their EMAs, which makes it useful to spot areas where trader interest dwindles, such as consolidations.
The smaller the period of the final value's ALMA, the more easily it will flatline. These flat zones should be considered no-trade zones.
5 — Percent Balance : This balance is the ALMA of the ratio of the "Bar Balance" over the total volume for that bar.
From the balances and marker conditions, two more values are calculated:
1 — Marker Bias : This sums the up/down (+1/‒1) occurrences of the markers 1 to 4 over a period you define, so it ranges from −4 to +4, times the period.
Its calculation will depend on the modes used to calculate markers 3 and 4.
2 — Combined Balances : This is the sum of the bull/bear (+1/−1) states of each of the five balances, so it ranges from −5 to +5.
The periods for all of these balances can be configured in the "Periods" section at the bottom of the script's inputs. As you cannot see the balances on the chart, you can use my Volume Delta Columns Pro indicator in a pane; it can plot the same balances, so you will be able to analyze them.
Divergences
In the context of this indicator, a divergence is any bar where the bear/bull state of a balance (above/below its zero centerline) diverges from the polarity of a chart bar. No directional bias is assigned to divergences when they occur. Candle bodies and tops/bottoms can each be colored differently on divergences detected from distinct balances.
Divergence Channel
The divergence channel is the space between two levels (by default, the bar's open and close ) saved when divergences occur. When price (by default the close ) has breached a channel and a new divergence occurs, a new channel is created. Until that new channel is breached, bars where additional divergences occur will expand the channel's levels if the bar's price points are outside the channel.
Prices breaches of the divergence channel will change its state. Divergence channels can be in one of three different states:
• Bull (green): Price has breached the channel to the upside.
• Bear (red): Price has breached the channel to the downside.
• Neutral (gray): The channel has not yet been breached.
█ HOW TO USE THE INDICATOR
I do not make videos to explain how to use my indicators. I do, however, try hard to include in their description everything one needs to understand what they do. From there, it's up to you to explore and figure out if they can be useful in your trading practice. Communicating in videos what this description and the script's tooltips contain would make for very long videos that would likely exceed the attention span of most people who find this description too long. There is no quick way to understand an indicator such as this one because it uses many different concepts and has quite a bit of settings one can use to modify its visuals and behavior — thus how one uses it. I will happily answer questions on the inner workings of the indicator, but I do not answer questions like "How do I trade using this indicator?" A useful answer to that question would require an in-depth analysis of who you are, your trading methodology and objectives, which I do not have time for. I do not teach trading.
Start by loading the indicator on an active chart containing volume information. See here if you need help.
The default configuration displays:
• Normal candles where the bodies are only colored if the bar's volume has increased since the last bar.
If you want to use this indicator's candles, you may want to disable your chart's candles by clicking the eye icon to the right of the symbol's name in the top left of the chart.
• A top or bottom appended to the normal candles. It represents the difference between up and down volume for that bar
and is positioned at the top or bottom, depending on its polarity. If up volume is greater than down volume, a top is displayed. If down volume is greater, a bottom is plotted.
The size of tops and bottoms is determined by calculating a factor which is the proportion of volume delta over the bar's total volume.
That factor is then used to calculate the top or bottom size relative to a baseline of the average candle body size of the last 100 bars.
• An information box in the bottom right displaying intrabar and chart coverage information.
• A light red background when the intrabar volume differs from the chart's volume by more than 1%.
The script's inputs contain tooltips explaining most of the fields. I will not repeat them here. Following is a brief description of each section of the indicator's inputs which will give you an idea of what the indicator can do:
Normal Candles is where you configure the replacement candles plotted by the script. You can choose from different coloring schemes for their bodies and specify a unique color for bodies where a divergence calculated using the method you choose occurs.
Volume Tops & Botttoms is where you configure the display of tops and bottoms, and their EMAs. The EMAs are calculated from the high point of tops and the low point of bottoms. They can act as a channel to evaluate price, and you can choose to color the channel using a gradient reflecting the advances/declines in the balance of your choice.
Divergence Channel is where you set up the appearance and behavior of the divergence channel. These areas represent levels where price and volume delta information do not converge. They can be interpreted as regions with no clear direction from where one will look for breaches. You can configure the channel to take into account one or both types of divergences you have configured for candle bodies and tops/bottoms.
Background allows you to configure a gradient background color that reflects the advances/declines in the balance of your choice. You can use this to provide context to the volume delta values from bars. You can also control the background color displayed on volume discrepancies between the intrabar and the chart's timeframe.
Intrabars is where you choose the calculation mode determining the lower timeframe used to access intrabars. The indicator uses the chart's timeframe and the type of market you are on to calculate the lower timeframe. Your setting there should reflect which compromise you prefer between the precision of calculations and chart coverage. This is also where you control the display of the information box in the lower right corner of the chart.
Markers allows you to control the plotting of chart markers on different conditions. Their configuration determines when alerts generated from the indicator will fire. Note that in order to generate alerts from this script, they must be created from your chart. See this Help Center page to learn how. Only the last 500 markers will be visible on the chart, but this will not affect the generation of alerts.
Periods is where you configure the periods for the balances and the EMAs used in the indicator.
The raw values calculated by this script can be inspected using the Data Window.
█ INTERPRETATION
Rightly or wrongly, volume delta is considered by many a useful complement to the interpretation of price action. I use it extensively in an attempt to find convergence between my read of volume delta and price movement — not so much as a predictor of future price movement. No system or person can predict the future. Accordingly, I consider people who speak or act as if they know the future with certainty to be dangerous to themselves and others; they are charlatans, imprudent or blissfully ignorant.
I try to avoid elaborate volume delta interpretation schemes involving too many variables and prefer to keep things simple:
• Trends that have more chances of continuing should be accompanied by VD of the same polarity.
In trends, I am looking for "slow and steady". I work from the assumption that traders and systems often overreact, which translates into unproductive volatility.
Wild trends are more susceptible to overreactions.
• I prefer steady VD values over wildly increasing ones, as large VD increases often come with increased price volatility, which can backfire.
Large VD values caused by stopping volume will also often occur on trend reversals with abnormally high candles.
• Prices escaping divergence channels may be leading a trend in that direction, although there is no telling how long that trend will last; could be just a few bars or hundreds.
When price is in a channel, shifts in VD balances can sometimes give us an idea of the direction where price has the most chance of breaking.
• Dwindling VD will often indicate trend exhaustion and predate reversals by many bars, but the problem is that mere pauses in a trend will often produce the same behavior in VD.
I think it is too perilous to infer rigidly from VD decreases.
Divergence Channel
Here I have configured the divergence channels to be visible. First, I set the bodies to display divergences on the default Bar Balance. They are indicated by yellow bodies. Then I activated the divergence channels by choosing to draw levels on body divergences and checked the "Fill" checkbox to fill the channel with the same color as the levels. The divergence channel is best understood as a direction-less area from where a breach can be acted on if other variables converge with the breach's direction:
Tops and Bottoms EMAs
I find these EMAs rather interesting. They have no equivalent elsewhere, as they are calculated from the top and bottom values this indicator plots. The only similarity they have with volume-weighted MAs, including VWAP, is that they use price and volume. This indicator's Tops and Bottoms EMAs, however, use the price and volume delta. While the channel differs from other channels in how it is calculated, it can be used like others, as a baseline from which to evaluate price movement or, alternatively, as stop levels. Remember that you can change the period used for the EMAs in the "Periods" section of the inputs.
This chart shows the EMAs in action, filled with a gradient representing the advances/decline from the Momentum balance. Notice the anomaly in the chart's latest bars where the Momentum balance gradient has been indicating a bullish bias for some time, during which price was mostly below the EMAs. Price has just broken above the channel on positive VD. My interpretation of this situation would be that it is a risky opportunity for a long trade in the larger context where the market has been in a downtrend since the 5th. Intrepid traders choosing to enter here could do so with a "make or break" tight stop that will minimize their losses should the market continue its downtrend while hopefully preserving the potential upside of price continuing on the longer-term uptrend prevalent since the 28th:
█ NOTES
Volume
If you use indicators such as this one which depends on volume information, it is important to realize that the volume data they consume comes from data feeds, and that all data feeds are NOT created equally. Those who create the data feeds we use must make decisions concerning the nature of the transactions they tally and the way they are tallied in each feed, and these decisions affect the nature of our volume data. My Volume X-ray publication discusses some of the reasons why volume information from different timeframes, brokers/exchanges or sectors may vary considerably. I encourage you to read it. This indicator's display of a warning through a background color on volume discrepancies between the timeframe used to access intrabars and the chart's timeframe is an attempt to help you realize these variations in feeds. Don't take things for granted, and understand that the quality of a given feed's volume information affects the quality of the results this indicator calculates.
Markets as ecosystems
I believe it is perilous to think that behavioral patterns you discover in one market through the lens of this or any other indicator will necessarily port to other markets. While this may sometimes be the case, it will often not. Why is that? Because each market is its own ecosystem. As cities do, all markets share some common characteristics, but they also all have their idiosyncrasies. A proportion of a city's inhabitants is always composed of outsiders who come and go, but a core population of regulars and systems is usually the force that actually defines most of the city's observable characteristics. I believe markets work somewhat the same way; they may look the same, but if you live there for a while and pay attention, you will notice the idiosyncrasies. Some things that work in some markets will, accordingly, not work in others. Please keep that in mind when you draw conclusions.
On Up/Down or Buy/Sell Volume
Buying or selling volume are misnomers, as every unit of volume transacted is both bought and sold by two different traders. While this does not keep me from using the terms, there is no such thing as “buy only” or “sell only” volume. Trader lingo is riddled with peculiarities. Without access to order book information, traders work with the assumption that when price moves up during a bar, there was more buying pressure than selling pressure, just as when buy market orders take out limit ask orders in the order book at successively higher levels. The built-in volume indicator available on TradingView uses this logic to color the volume columns green or red. While this script’s calculations are more precise because it analyses intrabars to calculate its information, it uses pretty much the same imperfect logic. Until Pine scripts can have access to how much volume was transacted at the bid/ask prices, our volume delta calculations will remain a mere proxy.
Repainting
• The values calculated on the realtime bar will update as new information comes from the feed.
• Historical values may recalculate if the historical feed is updated or when calculations start from a new point in history.
• Markers and alerts will not repaint as they only occur on a bar's close. Keep this in mind when viewing markers on historical bars,
where one could understandably and incorrectly assume they appear at the bar's open.
To learn more about repainting, see the Pine Script™ User Manual's page on the subject .
Superfluity
In "The Bed of Procrustes", Nassim Nicholas Taleb writes: To bankrupt a fool, give him information . This indicator can display a lot of information. The inevitable adaptation period you will need to figure out how to use it should help you eliminate all the visuals you do not need. The more you eliminate, the easier it will be to focus on those that are the most useful to your trading practice. Don't be a fool.
█ THANKS
Thanks to alexgrover for his Dekidaka-Ashi indicator. His volume plots on candles were the inspiration for my top/bottom plots.
Kudos to PineCoders for their libraries. I use two of them in this script: Time and lower_tf .
The first versions of this script used functionality that I would not have known about were it not for these two guys:
— A guy called Kuan who commented on a Backtest Rookies presentation of their Volume Profile indicator.
— theheirophant , my partner in the exploration of the sometimes weird abysses of request.security() ’s behavior at lower timeframes.
在脚本中搜索"bear"
Multi Timeframe ADX and DI w/ AlertsThis script is based off the public DMI code and used to get a quick visual of trend and direction across 3 different timeframes. Alert conditions have been setup for trend changes to bull/bear for all 3 timeframes. This script is meant to pull together the concepts of multi-time frame indicators, custom functions, and custom alert conditions.
The primary instructions for this script was to find a version of the ADX Indicator and give it the same treatment as we did with the Heiken Ashi demo (displaying green/red/gray circles to indicate trend and direction) over a configurable time frame. Display a matrix of each timeframe and the corresponding directional color (green=bull, red=bear, gray=non-trending). Have it produce an alert when the state of indicator changes to either bull or bear.
Commercial Movement Index-BuschiEnglish
Inspired by the book "The Commitments of Traders Bible" by Stephen Briese, this indicator is a follow-up of my already published "Commercial Index-Buschi".
Here, the Commercial Index isn't shown in values from 0 to 100, but in how far the value changed from a given timeframe (default Movement Reference: 6 weeks). Therefore it ranges from 100 (bullish move from the Commercials during the last weeks) to -100 (bearish move).
Deutsch
Inspiriert durch das Buch "The Commitments of Traders Bible" by Stephen Briese, ist dieser Indikator eine Weiterentwicklung meines bereits veröffentlichten Skriptes "Commercial Index-Buschi".
Hier wird der Commercial Index nicht in Werten von 0 bis 100 angezeigt, sondern in wieweit er sich innerhalb eines vorgegebenen Zeitfensters (Standard: Movement Reference: 6 Wochen) verändert hat. Daher schwankt er zwischen 100 (bullishe Bewegung der Commercials innerhalb der letzten Wochen) und -100 (bearishe Bewegung).
How To Use Dynamic ZonesExample of how to apply and use Dynamic Zones with an indicator by injecting it's source into my adaptation of the original idea by Leo Zamansky, Ph.D., and David Stendahl.
• Load your desired oscillating indicator on your chart (CCI, RSI, etc).
• Load my "How To Use Dynamic Zones" indicator on your chart.
• In the "How To Use Dynamic Zones" indicator settings choose your desired oscillating indicator as the Oscillator Source.
You will now have dynamic overbought and oversold levels. I have also included alerts which may be used to indicate when these conditions occur.
If desired you may repeat the above process by loading additional indicators along with additional copies of my indicator to use with each oscillator.
Oscillator Source: CLOSE uses your chosen indicator as a source or you may use price as a source
Sample Length: 70 uses number of previous values for evaluating
Hi is Above X% of Sample: 88 sets overbought zone
Lo is Below X% of Sample: 88 sets oversold zone
The simplest explanation of what these default settings are doing is that they take 70 previous values of your chosen indicator, then create an overbought level that is above 88% of those previous values and an oversold level that is below 88% of those previous values. As new bars form the levels are dynamically reevaluated and updated.
---
"This investing style follows a very simple form of logic: Enter the market only when an oscillator has moved far above or below traditional trading levels. However, these oscillator driven systems lack the ability to evolve with the market because they use fixed buy and sell zones. Traders typically use one set of buy and sell zones for a bull market and substantially different zones for a bear market. And therein lies the problem.
Once traders begin introducing their market opinions into trading equations, by changing the zones, they negate the system’s mechanical nature. The objective is to have a system automatically define its own buy and sell zones and thereby profitably trade in any market — bull or bear. Dynamic zones offer a solution to the problem of fixed buy and sell zones for any oscillator-driven system."
Reference: Stocks & Commodities V15:7 (306-310): Dynamic Zones by Leo Zamansky, Ph.D., and David Stendahl
---
NOTICE: This is an example script and not meant to be used as an actual strategy. By using this script or any portion thereof, you acknowledge that you have read and understood that this is for research purposes only and I am not responsible for any financial losses you may incur by using this script!
10/5 Weekly/Daily EMAs with ConfirmationsPlots Daily and Weekly 10 & 5 EMAs (but fully customizable to your own).
In addition to plotting the EMAs it color coordinates trend bias and has cross confirmation signals.
Philosophy and how to read:
I use this indicator when trading strictly on the daily timeframe. I have not tested it on other timeframes.
In my trade system I start with both the monthly and weekly charts to define overall bias.
Here’s the general rule of thumb.
10 EMA is direction (bias) and 5 EMA is price.
If 5EMA is below 10EMA there is a bear bias. If 5EMA is above 10EMA there is a bull bias.
This indicator will plot both the daily and weekly 10 & 5 EMAs.
It will also color code the background based on how these EMAs relate to each other.
Light red typically is just the daily is confirmed bear (typically because it could be either or)
Dark red, both daily and weekly in confirmed bear.
Light green, typically just daily is confirmed bull (typically because it could be either or)
Dark green, both daily and weekly in confirmed bull.
In addition to background highlight there is confirmation crosses.
The daily confirmation cross is default yellow triangle.
Down triangle is 5 crossing the 10 downward.
Up triangle is the 5 crossing the 10 upward.
The weekly confirmation is the same only is aqua color.
Generally, on a color change you want to see one or both confirmation in the direction of the bias change.
If you only want to plot the daily bias in the options unclick the setting: Include Weekly Background Plotting. Unclicking this will remove the background coloring for the weekly bias. This might be helpful if you only want to see the strength of what the weekly timeframe is telling you.
Also, I’m primarily a trend trader but I also do have a reversal system I trade with lower R:R parameters.
A good reversal confirmation signal I’ve noticed is the instrument that you are trading should go through a cycle of light color to dark color.
You could also create alerts with this indicator based on just signals. When the signal fires the value will be 1.
Future Updates:
I want to find some way to correlate the distance between these EMAs to enhance the signal. Also to include a velocity component. Plus a few more things.
If you like this indicator please like and leave a comment down below.
Total Power IndicatorHello traders!
This indicator was originally developed by Daniel Fernandez (Currency Trader magazine, 2011).
It is based on the two well-known indicators by Dr. Alexander Elder - Bulls Power and Bears Power.
Signals
1) Long when Bull and Total lines indicate 100 (it happens rarely)
2) Short when Bear and Total lines indicate 100 (it happens rarely)
3) Bull and Bear lines crossovers
4) Long when Bull line crosses Total line from below
5) Short when Bear line crosses Total line from below
6) Long/Short when Bull/Bear lines cross adjustable level.
Like and follow for more open source indicators!
Happy Trading!
Volume Strength Candles / Colored BarsIs Price Action Higher or Lower on STRONG or WEAK VOLUME from lookback
(Strong or Weak Bulls // Strong or Weak Bears)
Candles / Bars Indicate the Following (default 13 period lookback / Length)
MAROON Bear Candle with STRONG VOLUME more than 150% of the lookback / length (13 default), STRONG Bear Candle Confirmed With Volume
RED Bear Candle while VOLUME is BETWEEN 50% & 150% of the Lookback / Length (13 default), Neutral Bear Volume Neither strong or weak
ORANGE Bear Candle with WEAK VOLUME (Less than 50% of the Length / Lookback)
DARK GREEN Bull Candle with STRONG VOLUME MORE than 150% of lookback
GREEN Bull Candle with Neutral VOLUME BETWEEN 50% & 150% of the lookback / Length
AQUA Bull Candle with WEAK VOLUME less than 50% of the Lookback
Is price confirmed by volume?
Can Change the Lookback / Length from 13
Can Change the Colors and Transparency to easily see based off your chart background colors I recommend ZERO Transparency to easily identify volume strength (i use white background but many use black or other)
Two Bar Break Line Alerts R1.0 by JustUncleLThis indicator with default settings is designed for BINARY OPTIONS trading. The indicator can also be used for Forex trading with some setting changes. The script shows Two Bar Pullback Break lines and alerts when those Break lines are Touched (broken) creating a short term momentum entry condition.
For a Bullish Break (Green Up Arrow) to occur: first must have two (or three) consecutive bear (red) candles which is followed by a bull (green) candle creating a pivot point. The breakout occurs then the High of the current Bull (green) exceeds the highest point of the previous two (or three) pivotal bear candles. The green channel Line shows where the current Bullish BreakOut occurs.
For a Bearish Break (Red Down Arrow) to occur: first must have two (or three) consecutive bull (green) candles which is followed by a bear (red) candle creating a pivot point. The breakout occurs when the Low of the current Bear (red) drops below the lowest point of the previous two (or three) pivotal Bull candles. The red channel Line shows where the current Bearish BreakOut occurs.
The break Line Arrows can optionally be filtered by the Coloured MA (enabled by default), a longer term directional MA (disabled by default) and/or a MACD condition (enabled by default) as a momentum filter.
You can optionally select three Bar break lines instead of two. The three bar break lines are actually equivalent to Guppy's Three Bar Count Back Line method for trade entries (see Guppy's video reference below).
Included in this indicator is an ability to display some basic Binary Option statistics, when enabled (enabled by default) it shows Successful Bars in Yellow and failed Bars in Black and the last Nine numbers on the script title line represent the Binary option Statistics in order:
%ITM rate
Total orders
Successful Orders
Failed Orders
Total candles tested
Candles per Day
Trades per Day
Max Consecutive Wins
Max Consecutive Losses
You can start the Binary Option statistics from a specific Date, which is handy for checking more recent history.
HINTS:
BINARY OPTIONS trading: use 5min, 15m, 1hr or even Daily charts. Trade after the price touches one of the Breakout lines and the Arrow first appears. Wait for the price to come back from Break Line by 1 or 2 pips, the alert arrow must stay on and candle change to black, then take Binary trade expiry End of Candle. If price pull back and arrow turns off, don't trade this candle, move on you probably don't have momentum, there will be plenty of other trigger events. The backtesting results are good with ITM rates 65% to 72% on many currency pairs, commodities and indices. Realtime trading has confirmed the backtesting results and they could even be bettered, provided you are selective on which signals to trade (strong MACD support etc), that you are patient and disciplined to this trading method.
FOREX trading: the default settings should work with scalping. For longer term trades try with settings change to a more standard MACD filter or slower to catch the longer term momentum swings and the idea would be to trade the first Break Line alert that occurs after a decent Pullback in the direction of the trend. Setting the SL to just above/below the Pivot High/Low and set target to two or three times SL.
References:
"Fundamentals of Price Action Trading for Forex, Stocks, Options and Futures" video:
www.youtube.com
Other videos by "basecamptrading" on Naked Trading.
"Taking Profits in Today's Market by Daryl Guppy" video:
www.youtube.com
NG [Simple Harmonic Oscillator]The SHO is a bounded oscillator for the simple harmonic index that calculates the period of the market’s cycle.
The oscillator is used for short and intermediate terms and moves within a range of -100 to 100 percent.
The SHO has overbought and oversold levels at +40 and -40, respectively.
At extreme periods, the oscillator may reach the levels of +60 and -60.
The zero level demonstrates an equilibrium between the periods of bulls and bears.
The SHO oscillates between +40 and -40.
The crossover at those levels creates buy and sell signals.
In an uptrend, the SHO fluctuates between 0 and +40 where the bulls are controlling the market.
On the contrary, the SHO fluctuates between 0 and -40 during downtrends where the bears controlthe market.
Reaching the extreme level -60 in an uptrend is a sign of weakness.
Force Index with Buy on Dip strategyThis charts has 2 indicators
1 - Force Index
This indicator is based on Dr Alexander Elder ForceIndex indicator with relate price to volume by multiplying net change and volume.
- GREEN Bar indicates Bull is in control
- RED Bar indicates Bear is in control.
LENGTH of the bar indicate the strength of Bull or Bear.
Normally there's potential BUY if the RED bar turned GREEN and SELL if GREEN to RED.
2 - Stochastic momentum
Stochastic momentum is to detect potential Reversal where BLUE bar will appear if :-
- Oversold - Stochastic less than 35
- Closing price is higher than last 2 High (Fast Turtle)
// Note : Best use with "EMA Indicators with BUY sell Signal"
Hersheys Volume Pressure v1Hersheys Volume Pressure gives you very nice confirmation of trend starts and stops using volume and price.
For up bars...
If you have a large price range with low volume, that's very bullish.
If you have a small price range with low volume, that's bullish.
For down bars...
If you have a large price range with low volume, that's very bearish.
If you have a small price range with low volume, that's bearish.
Look at the chart and you'll see how trends start and end with a PINCH and widen in the middle of the moves.
Hersheys Volume Pressure is unique, in that it measures bull/bear pressure on each bar by itself. Other volume indicators like On Balnce Volume and Price Volume Trend use cumulative differences in the current and previous bar to show trends.
You can set the moving average period, 14 is the default.
Good trading!
Brian Hershey
Murrey Math Extremes ComparatorHOW IT WORKS
Creates two murrey math oscillators (hidden) one with 256 length another with 32 length and compare each other.
WHAT GIVE ME THIS SCRIPT
The script can give you very valuable information:
- Main Trend
- Pullbacks detections
- Extreme overbought oversold prices alerts
- Divergences
- Any timeframe usage
REFERENCES OF USAGE
Main Trend Indications
****The main trend is indicated with green(bull) or red(bears) small "triangles" on the bottom(bull) or the top(bears) of the chart.
*****To detect the Bull/Bear major trend the script use 256 murrey, if > 0 (green) we are uptrend in other cases we are downtrend
Pullback detection
****The pullbacks are indicated with Green(bull) or red(bears) medium "Arrows"
*****To detect pullbacks the system compare the long term murrey with the short term murrey, if long term is Green(green triangles)
*****so we are in a main bull trend, if the short term murrey make an extreme low then the pullback is indicated
*****The same for the short pullback, if long term murrey is RED and we have an extreme green short term murrey we shot a red arrow
Extreme Overbught/Oversold
****The extreme OO is indicated with fancy diamonds
*****To detect the Extremes price movements we combine the two murrey, if Long Term Murrey is overbought and short term murrey too
*****Then the diamond show on the screen obove or below based on the extreme if overbought or oversold
Strategy Resume:
Triangles indicate Major Trend Up/Down
Arrows Indicate Continuation pullbacks
Diamonds Indicate Extreme Prices
GUIDE HOW TO IMAGES
How it's works Behind Scene
MWho is in ControlWho is in Control.
This study shows who is in control by showing just the Bull side, the Bear side or a combined view. This study follows the same philosophy of simplicity I try to use as much as possible in my studies. The least number of parameters and as understandable as possible.
Len : length of the period
Signal : Signal to show change of trend
Disp Bull : Display/Hide Bull Side
Disp Bear : Display/Hide Bear Side
Disp Differential : Display/Hide the differential between Bulls and Bears.
: Volume Zone Oscillator & Price Zone Oscillator LB Update JRMThis is a simple update of Lazy Bear's " Indicators: Volume Zone Indicator & Price Zone Indicator" Script. PZO plots on the same indicator. The horizontal plot lines are taken primarily from two articles by Wahalil and Steckler "In The Volume Zone" May 2011, Stocks and Commodities and "Entering The Price Zone"June 2011, Stocks and Commodities. With both indicators on the same plot it is easier to see divergences between the indicators. I did add a plot line at 80 and -80 as well because that is getting into truly extreme price/volume territory where one might contemplate a close your eyes and sell or cover particularly if confirmed at a higher time frame with the expectation of some type of corrective move..
The inputs and plot lines can be edited as per Lazy Bear's original script and follows the original format. Many thanks to Lazy Bear.
Hero Zero+ Gamma (False Breakout Filter)Hero Zero – EMA + VWAP + Gamma (Strong Candle)
Purpose:
This script is designed to capture high-momentum intraday moves (Gamma Blasts / Hero Zero trades) by combining:
Trend strength (EMA stack)
Institutional reference (VWAP)
Momentum candle quality (Full Body / Marubozu)
Participation confirmation (Volume burst – OI proxy)
It avoids weak breakouts and focuses only on decisive price expansion candles.
1️⃣ EMA STRUCTURE – TREND FILTER
emaFast = ta.ema(close, 9)
emaMid = ta.ema(close, 20)
emaSlow = ta.ema(close, 50)
📈 Why EMAs?
EMAs react faster to price → ideal for intraday momentum
The script uses EMA stacking, not just crossovers
Bullish EMA Stack
emaFast > emaMid > emaSlow
✔ Indicates strong uptrend
✔ Buyers are in control across short, medium & intraday timeframes
Bearish EMA Stack
emaFast < emaMid < emaSlow
✔ Indicates strong downtrend
✔ Sellers dominate
🔒 No EMA stack = no trade
This removes sideways and choppy markets.
2️⃣ VWAP – INSTITUTIONAL BIAS
vwapVal = ta.vwap(hlc3)
Why VWAP?
Used by institutions, algos, prop desks
Acts as a fair value line
Conditions
Bullish trade: close > VWAP
Bearish trade: close < VWAP
📌 This ensures:
You trade with smart money
You avoid mean-reversion traps
3️⃣ VOLUME BURST – GAMMA / OI PROXY
avgVol = ta.sma(volume, 20)
volBurst = volume > avgVol * 1.5
What this represents
Sudden increase in participation
Acts as a proxy for OI build-up / Gamma activity
✔ No volume = no follow-through
✔ Volume burst confirms real interest, not fake moves
4️⃣ STRONG CANDLE LOGIC – CORE EDGE 🔥
Candle Anatomy
bodySize = abs(close - open)
upperWick = high - max(close, open)
lowerWick = min(close, open) - low
A) FULL BODY CANDLE
Meaning:
Price moves strongly in one direction with minimal rejection.
Bullish Full Body
bodySize > upperWick
✔ Buyers pushed price up and held it
Bearish Full Body
bodySize > lowerWick
✔ Sellers dominated without pullback
B) MARUBOZU CANDLE (Institutional Candle)
upperWick <= mintick*2
lowerWick <= mintick*2
✔ Almost no wicks
✔ Pure aggression
✔ Typically seen during:
Option Gamma expansion
Index hero moves
Breakout candles
C) STRONG CANDLE (Final Filter)
Strong Candle = Full Body OR Marubozu
📌 This is powerful because:
Full Body → strong but normal momentum
Marubozu → explosive institutional move
Weak candles are fully filtered out.
5️⃣ HERO ZERO (GAMMA BLAST) CONDITIONS
Bullish Gamma Blast
EMA Stack + Price above VWAP +
Strong Bull Candle + Volume Burst
Bearish Gamma Blast
EMA Stack + Price below VWAP +
Strong Bear Candle + Volume Burst
💥 When all align → probability spike
💥 Designed for fast 1–3 candle expansion
6️⃣ SIGNAL VISUALS
Green “GAMMA BUY” → below candle
Red “GAMMA SELL” → above candle
EMAs + VWAP plotted for context
Signals are rare but high-quality.
7️⃣ ALERT SYSTEM
alertcondition(bullGamma)
alertcondition(bearGamma)
✔ Use for:
Bank Nifty / Nifty
Option buying
Scalping during power hours
8️⃣ BEST USAGE (IMPORTANT)
✅ Recommended Timeframes
3-min → Best balance
5-min → Safer
1-min → Aggressive scalping only
✅ Best Time Window (IST)
9:20 – 11:00 AM
2:30 – 3:15 PM (Hero Zero zone)
9️⃣ WHAT THIS SCRIPT AVOIDS ❌
Sideways chop
Low volume traps
Wicky fake breakouts
EMA crossover noise
🧠 TRADER MINDSET
This is not a signal-spamming indicator.
It is a confirmation engine for:
Index options
Momentum scalps
Gamma expansion trades
LTF Distribution Analyzer█ OVERVIEW
LTF Distribution Analyzer reveals the hidden price distribution and order flow within each candle by sampling lower timeframe data. It visualizes where prices concentrated, how volume was distributed between buyers and sellers, and identifies divergences between price action and actual market participation.
Unlike traditional candlesticks showing only OHLC, this indicator exposes the statistical structure of price movement using quartile-based visualization combined with delta analysis.
█ CONCEPTS
The indicator is built on two core concepts:
1 — Statistical Price Distribution
Each candle contains many lower timeframe bars. By analyzing these bars, we calculate:
• Q1 (25th percentile) - 25% of prices traded below this level
• Q3 (75th percentile) - 75% of prices traded below this level
• Median - The middle price value
• IQR (Interquartile Range) - The Q3-Q1 spread containing 50% of all prices
2 — Volume Delta Analysis
Delta measures buying vs selling pressure:
• Delta = Buy Volume − Sell Volume
• Positive delta = More aggressive buying
• Negative delta = More aggressive selling
• Delta Ratio normalizes this as a percentage
█ HOW IT WORKS
The indicator fetches lower timeframe data using request.security_lower_tf() and processes it to create a statistical summary:
Step 1: Timeframe Calculation
• Auto mode: Chart timeframe ÷ Auto Divisor = LTF
• Example: 1H chart ÷ 1000 = ~3.6 second sampling
• Manual mode: User-specified timeframe
Step 2: Data Collection
• Collects all close prices from LTF bars within current candle
• Aggregates volume by candle direction (bullish/bearish)
Step 3: Statistical Analysis
• Calculates quartiles (Q1, Q3), median, and boundaries
• Identifies outliers using 1.5× and 3× IQR fences
• Finds Volume POC (price with highest volume)
Step 4: Delta Calculation
• Sums buy volume (from bullish LTF bars)
• Sums sell volume (from bearish LTF bars)
• Computes delta ratio for color determination
█ VISUAL ELEMENTS
┌─────────────────────────────────────────┐
│ ▲ Extreme outlier (3× IQR) │
│ △ Mild outlier (1.5× IQR) │
│ ─ Upper whisker cap │
│ ┊ Whisker line (dashed) │
│ ▄ IQR Box (Q1 to Q3 range) │
│ ━ Volume POC (highest volume) │
│ ● Median (green=bull, red=bear) │
│ ┊ Whisker line (dashed) │
│ ─ Lower whisker cap │
│ ▽ Mild outlier │
│ ▼ Extreme outlier │
└─────────────────────────────────────────┘
█ COLOR SYSTEM
Colors indicate the relationship between candle direction and order flow:
🟢 TEAL (Positive Flow)
Bullish candle + Positive delta
→ Strong buying confirmation
→ Trend continuation signal
🔴 RED (Negative Flow)
Bearish candle + Negative delta
→ Strong selling confirmation
→ Trend continuation signal
🟠 ORANGE (Mixed Signal A)
Bullish candle + Negative delta
→ Price up but sellers dominated
→ Potential weakness/reversal warning
🔵 BLUE (Mixed Signal B)
Bearish candle + Positive delta
→ Price down but buyers dominated
→ Potential accumulation/reversal signal
█ SETTINGS
Timeframe Settings
• LTF Mode — Auto or Manual selection
• Manual Timeframe — Specific LTF when in Manual mode
• Auto Divisor — Higher = finer granularity (default: 1000)
• Allow Sub-Minute — Requires Premium subscription
Visual Style
• Positive/Negative Flow colors — Customize the 4 flow colors
• Box Transparency — Opacity of the quartile box (0-100%)
Statistics Display
• Show Statistics Panel — Toggle on-chart stats table
• Show Timeframe Badge — Toggle LTF indicator badge
• Panel Position — Choose corner placement
• Panel Size — Text size selection
█ HOW TO USE
1. Divergence Detection
Look for color mismatches:
• Orange bars in uptrend = weakness, potential reversal
• Blue bars in downtrend = strength, potential reversal
• Multiple consecutive divergent bars strengthen signal
• Wait for confirmation before entry
2. Volume POC Trading
• POC marks where most volume traded
• POC clusters at similar levels = strong S/R zone
• Price often returns to POC before continuing
• Use POC for entry/exit targeting
3. Trend Confirmation
• Consecutive teal = strong uptrend
• Consecutive red = strong downtrend
• Median position shows intrabar momentum
• Wide boxes indicate high volatility
4. Outlier Analysis
• Extreme markers (▲▼) often mark stop hunts
• Consider fading extremes at key levels
• Mild markers (△▽) = areas to watch
█ RECOMMENDED SETTINGS
For different chart timeframes:
│ Chart TF │ Auto Divisor │ Resulting LTF │
├──────────┼──────────────┼───────────────┤
│ 15M │ 1500 │ ~1M │
│ 1H │ 1000 │ ~3-4s │
│ 4H │ 600 │ ~24s │
│ Daily │ 500 │ ~2-3M │
Tip: Check the TF badge to confirm active sampling timeframe.
█ BEST PRACTICES
Do:
✓ Use "Bars" chart style for cleanest display
✓ Combine with support/resistance analysis
✓ Wait for confirmation bars
✓ Note POC clusters across multiple bars
✓ Adjust divisor based on your timeframe
Avoid:
✗ Trading single bar signals alone
✗ Using during low volume periods
✗ Trading immediately after news releases
✗ Ignoring overall market context
█ LIMITATIONS
• Requires adequate market liquidity for reliable signals
• Sub-minute timeframes need Premium subscription
• Historical data depth depends on TradingView's data availability
• Delta calculation assumes volume direction matches candle direction
█ NOTES
This indicator works best on liquid markets (forex majors, major indices, popular stocks/crypto) where volume data is meaningful.
The gray dotted vertical line marks where LTF data becomes available - bars before this line won't display the indicator.
For questions or suggestions, leave a comment below.
Options Gamma Flip Zones [BackQuant]Options Gamma Flip Zones
A market-structure style “gamma flip” mapper that builds adaptive strike-like zones, scores how price interacts with them, then promotes the strongest candidates into confirmed flip zones. Designed to highlight pinning, failed breaks, and rotational behavior without needing live options chain data.
What this indicator does
This script identifies price levels that behave like “strike magnets” during conditions that resemble options pinning, then draws dynamic zones around those levels.
Instead of assuming every round number matters, it:
Creates a strike ladder (auto or manual step).
Applies a regime filter that looks for “pin-friendly” market conditions.
Tracks and scores repeated interactions with the level.
Upgrades a zone from candidate to confirmed when enough evidence accumulates.
Invalidates zones when price achieves sustained acceptance away from them.
The output is a set of shaded boxes (zones) centered on strike-like levels, with text readouts that show the current state of each zone.
Key concept: “Gamma proxy”
A true gamma flip requires options positioning data. This indicator does not use options chain gamma.
Instead, it uses a proxy approach:
When markets have elevated volatility relative to their recent baseline AND trend strength is weak, price often behaves “sticky” around key levels.
In those conditions, repeated touches and failed escapes around a level behave similarly to pinning around strikes.
So this tool is best read as:
“Where would a strike-like magnet likely exist right now, based on price behavior and regime conditions?”
How zones are created
Zones only start forming when the script detects a pin-friendly regime.
1) Strike Ladder (level selection)
Auto Strike Step selects a step size based on current price magnitude (bigger price, bigger step).
Manual Strike Step lets you force a fixed increment.
The current “active level” is the nearest rounded level to price.
Major Level Every optionally marks major ladder levels (multiples of step).
2) Band construction (zone thickness)
Each zone is a symmetric band around the level, using one of two modes:
ATR mode scales thickness with volatility.
Percent mode scales thickness as a fraction of price.
This matters because “pin behavior” is not a single tick. It’s a region where price repeatedly probes and rejects.
Regime filter (when the script is allowed to believe in pinning)
A zone is only eligible to form and strengthen when Pin Regime is active. Pin Regime is a conjunction of:
1) IV proxy (ATR z-score)
Uses ATR as a volatility proxy.
Converts ATR% into a z-score relative to a long lookback.
IV Proxy Threshold controls how elevated volatility must be before the script considers pinning likely.
2) Weak trend requirement
The script also requires price action to be non-trending:
EMA spread must be small (fast vs slow EMA not diverging strongly).
ADX must be below a ceiling, confirming weak directional trend strength.
Interpretation:
High “IV proxy” + weak trend is where pin-like behavior is most common.
If trend is strong, zones are less meaningful because price is more likely to accept away from levels.
Flip confirmation logic (what upgrades a zone)
A zone is not “confirmed” just because price is near it once. The script builds conviction via evidence accumulation.
Evidence types:
Touches : price comes close to the level within tolerance.
Failed escapes : price pushes outside the band but closes back inside (rejection).
Acceptance run : consecutive closes outside the band, suggesting price is accepting away from the zone.
Protections:
Touch Cooldown prevents counting the same micro-chop as multiple touches.
Acceptance Bars defines what “real acceptance” means, so the zone does not get invalidated by one noisy bar.
A zone becomes confirmed when:
Touches meet the “evidence” requirement.
Failed escapes meet the “rejection” requirement.
The regime filter still says the market is pin-friendly.
That is important, it avoids promoting levels that only worked briefly in a trending tape.
Zone scoring and lifecycle
Each zone maintains a score that evolves over time. Think of score as “how much this level has recently behaved like a magnet.”
Score dynamics:
Decay per bar : score fades over time if price stops respecting the zone.
+ per touch : repeated proximity increases score.
+ per failed escape : rejections add stronger reinforcement.
- per acceptance bar : sustained trading outside reduces score.
Min score to draw : prevents clutter from weak, low-confidence zones.
Invalidation:
If the score becomes very weak AND price achieves sustained acceptance away from the zone, the zone is deleted.
This keeps the chart clean and ensures zones represent current market behavior, not ancient levels.
How to read the plot on chart
1) Zone fill and border
Each zone is drawn as a box extended to the right.
Fill opacity adapts to zone strength, strong zones are visually more prominent.
Border color encodes the current directional context and special events.
2) Bullish vs bearish coloring
A zone is colored bullish when price is currently trading above the zone’s mid-level.
A zone is colored bearish when price is currently trading below it.
This is not a trade signal by itself, it is a state cue for “which side is in control around the level.”
3) Failed escape highlighting
If price attempts to break above the band and fails, the border temporarily highlights as a failed up escape.
If price attempts to break below the band and fails, the border temporarily highlights as a failed down escape.
These are the moments where pin behavior is most visible:
Break attempt.
Immediate rejection.
Return to the band.
4) Midline (optional)
The zone midline is the strike-like level itself.
It is dotted to distinguish it from price structure lines.
5) Optional strike ladder overlay
When enabled, the script draws major and minor ladder lines near current price.
Major levels are thicker and less transparent.
This is a visualization aid for “where the algorithm is rounding,” not a prediction tool.
On-chart text readout (what the box text means)
Each box prints a compact state summary, designed for fast scanning:
Γ CANDIDATE means the zone is being tracked but not yet validated.
Γ FLIP (PROXY) means the zone has met confirmation requirements.
BULL/BEAR indicates which side price is on relative to the mid-level.
L prints the level value.
T is touch count, repeated proximity events.
F is fail count, rejected escape attempts.
IVz is the volatility proxy z-score at the moment.
ADX is the trend strength context.
Practical use cases
1) Pinning and range trading context
Confirmed zones often act like gravity wells in sideways or rotational regimes.
When price repeatedly fails to escape, fading outer edges can be reasonable context for mean reversion workflows.
2) Breakout validation
If price achieves acceptance outside the band for multiple bars, that is stronger breakout context than a single wick.
Zones that invalidate cleanly can mark transitions from pinning to directional move.
3) Time your “do nothing” periods
When Pin Regime is active and a zone is confirmed, the tape often becomes sticky and inefficient for trend chasing.
This helps avoid taking trend entries into a pin environment.
Alerts
Standalone alertconditions are included:
Zone Confirmed : a candidate becomes confirmed.
Zone Touch : price touches an active zone within tolerance.
Zone Invalidated : the zone loses relevance and is removed.
Tuning guidelines
Sensitivity vs quality
Lower Touches Needed and Failed Escapes Needed creates more zones faster, but with lower quality.
Higher values create fewer zones, but the ones that remain are more behaviorally “proven.”
Band width
ATR mode adapts to volatility and is typically safer across assets.
Percent mode is consistent visually but can feel too tight in high vol or too wide in low vol if not tuned.
Regime thresholds
If you want fewer zones, raise IV proxy threshold and tighten weak-trend filters.
If you want more zones, lower IV proxy threshold and loosen weak-trend filters.
Limitations
This is a proxy model, not live options gamma.
In strong trends, pinning assumptions can break, the regime filter is there to reduce that risk, but not eliminate it.
Auto strike step is designed for typical market ranges, manual step is recommended for niche tick sizes or custom markets.
Disclaimer
Educational and informational only, not financial advice.
Not a complete trading system.
Always validate settings per asset and timeframe.
MTF Candle Body Break WITH 20SMAMTF Candle Body Break WITH 20SMA: Complete Guide
This indicator is a professional-grade market environment analysis tool designed to synchronize "Market Structure" and "Momentum" across multiple timeframes (MTF).
1. Core Logic: Candle Body Break
Unlike traditional high/low breakouts that include wicks, this tool focuses exclusively on "Body Breaks" (Closing prices).
Logical Basis: Wicks often represent temporary noise. A closing price break signifies a genuine shift in market consensus.
Visualization: * Blue Lines: Bullish Structure.
Red Lines: Bearish Structure.
Gray/Black Lines: Historical breakout levels that often act as future Support or Resistance (S/R Flip).
2. Triple 20SMA System
The indicator automatically plots three generations of 20-period SMAs relative to your current chart.
Short-term (Black): 15-Min 20SMA (On a 1H chart). This acts as the "immediate support" for a strong trend.
Mid-term (Blue): Current TF 20SMA. The backbone of the trend.
Long-term (Red): Higher TF 20SMA. The major trend direction.
3. The Dashboard System (Three Components)
The right side of the screen features a three-part visual system to confirm trend alignment:
① Top-Right Panel: Long-Term Signal
Compares Daily (1D) and 4-Hour (4H) structure.
Blue: Both are bullish.
Red: Both are bearish.
② Middle-Right Bar: Momentum Signal (The "Final Filter")
This vertical bar represents the SMA 10/20 Sync.
Blue: The SMA 10 is above the SMA 20 on the 1-Hour chart. This indicates that short-term momentum is accelerating upward.
Red: The SMA 10 is below the SMA 20. This indicates downward acceleration.
Gray: No clear momentum (ranging or indecisive).
③ Bottom-Right Panel: Short-Term Signal
Compares 1-Hour (1H) and 15-Minute (15M) structure.
Blue: Both are bullish.
Red: Both are bearish.
4. Entry Signal: The "●" (Dot)
The "●" signal is the "Perfect Alignment" trigger. It appears when:
Long-term (Daily/4H) is aligned.
Short-term (1H/15M) is aligned.
Momentum (Middle Bar) is aligned.
When all these turn the same color, the "●" appears, signaling a high-probability trade.
日本語解説:完全版
このインジケーターは、**「相場の構造(実体ブレイク)」と「勢い(移動平均線の同期)」**を全時間軸で一致させ、高勝率なポイントを特定する環境認識ツールです。
1. 核心:実体ブレイク(Body Break)
ヒゲではなく、**「終値(実体)」**で高値・安値を更新した時のみをトレンド転換と見なします。
メリット: 突発的なヒゲによるダマシを排除し、真の構造変化を捉えます。
表示: 青ライン(上昇)、赤ライン(下落)。過去のラインはグレー(サポレジ転換の目安)として残ります。
2. 3本の20SMA
チャートの時間足に合わせて、自動で最適な3本のSMAを描画します。
短期(黒): 15分足20MA(1時間足チャート時)。今の勢いを表し、押し目買いの目印になります。
中期(青): 表示中の時間足の20MA。
長期(赤): 上位足の20MA。
3. 3つのダッシュボード(信号機)
右側に表示される3つのパーツが、トレードの「Go/No-Go」を判定します。
① 右上パネル:長期構造シグナル
日足と4時間足の構造を比較します。ここが「青」なら、大きな流れは上向きです。
② 右中央のバー:モーメンタム・シグナル(真ん中のテーブル)
1時間足のSMA10とSMA20の同期を表します。
青: SMA10 > SMA20(上昇加速中)
赤: SMA10 < SMA20(下落加速中)
役割: 構造が良くても、勢いが死んでいる(レンジ)時はエントリーを避けるための「最終フィルター」です。
③ 右下パネル:短期構造シグナル
1時間足と15分足の構造を比較します。ここが「青」に変わる瞬間が、エントリーの準備段階です。
4. エントリーサイン「●」
「長期・中期(真ん中のバー)・短期」すべての色が揃った瞬間にチャートに「●」が出現します。 すべての時間軸の投資家が同じ方向を向いた「完璧な同調」を示しており、最も期待値の高いエントリーポイントとなります。
NQ Command Center [EOD Predictor]This is a sophisticated Macro-correlated Dashboard designed specifically for trading NQ (Nasdaq 100). It attempts to predict how the daily candle will close (Green or Red) by combining Price Action (Market Structure) with External Market Drivers (Yields, Volatility, Dollar, and Breadth).
How This Script Works
The script assigns a "Score" to current market conditions. The higher the score, the more bullish the prediction. The lower the score, the more bearish.
1. The "Structure" Score (Price Action) It looks at the Daily High/Low (PDH/PDL) and recent daily trend:
Bullish (+1): We are making Higher Highs/Higher Lows, or price is holding in the top 33% of yesterday's range.
Breakout (+2): Price has broken above the Previous Daily High (PDH).
Bearish (-1/-2): We are making Lower Highs, or price has broken below the Previous Daily Low (PDL).
2. The "Macro" Score (External Data) It pulls data from 5 external tickers to see if the environment supports a move:
ADDQ (Breadth): If > 0, more stocks are advancing than declining (Bullish).
VXN (Volatility): If falling, fear is decreasing (Bullish).
DXY (Dollar) & US10Y (Yields): If these are dropping, it is usually good for Tech/Nasdaq (Bullish).
CVD (Volume): Estimates if volume is dominated by buyers or sellers.
3. The Prediction (The Output) It sums these scores.
Total Score ≥ 4: "STRONG GREEN CLOSE 🚀" (High confidence Longs)
Total Score ≤ -4: "STRONG RED CLOSE 🩸" (High confidence Shorts)
Near 0: "CHOP / NEUTRAL" (Avoid trading or take quick scalps).
How to Use It Effectively
Symbol: Open a chart for NQ1! (Nasdaq Futures) or NDX.
Timeframe: This is designed for Intraday trading. Use 5m, 15m, or 1h charts. (Do not use on Daily chart, as the table lines up intraday data against daily history).
The Dashboard: Look at the table in the top right.
Focus on "AI Forecast": If it says STRONG GREEN, look for Long setups (pullbacks to support).
Check Confidence: If Confidence is "LOW", the macro data might be conflicting with price action (e.g., Price is going up, but Volume is selling). Be careful.
The Lines: The script plots Green (PDH) and Red (PDL) lines on your chart.
These are key reaction points. If price breaks the Green line, the "Live Status" on the dashboard will switch to BREAKOUT.
ICT Concepts [Kodexius]ICT Concepts is an all in one, chart overlay toolkit that combines several widely used ICT style components into a single, modular workflow. It is designed to help you map higher timeframe context, track directional structure, and refine execution areas with imbalance and liquidity concepts, without turning the chart into a cluttered drawing board.
Instead of plotting everything indefinitely, each module focuses on “live relevance” and chart readability. Zones, lines, and labels are managed with sensible limits so the most recent and most meaningful structures remain visible while older objects are automatically retired.
Because the system is modular, you can run it like a complete toolkit:
- Use multi timeframe Order Blocks to define high probability zones
- Use Market Structure (BOS and MSS) for bias and context
- Validate intent with SMT Divergence when you want intermarket confirmation
- Refine with Imbalances (FVG, BPR, CE) and Liquidity Sweeps
- Add timing structure via Killzones and risk structure via auto Fibonacci
🔹 Features
🔸 Multi Timeframe Order Blocks (3 candle displacement OB)
The OB engine detects a strict 3 candle displacement sequence (bull and bear) and projects the “order block candle” as a forward extending zone. Detection can run on the chart timeframe or on a user selected higher timeframe and then be displayed on your execution chart.
🔸 Overlap Control
Before adding a new OB, the script checks overlap against existing zones of the same direction. If a new zone intersects an existing one, it is ignored to reduce redundant stacking in the same price area.
🔸 Automatic Extension and Mitigation for Order Blocks
OB zones extend forward on every bar and are removed once mitigation is confirmed. Mitigation is evaluated by close breaking decisively beyond the relevant boundary:
- Bullish OB mitigates when close prints below the OB bottom
- Bearish OB mitigates when close prints above the OB top
🔸 Market Structure (BOS and MSS)
Market Structure is built from swing pivots using a configurable pivot length. When price closes through the latest swing, the script prints a structure event:
BOS (Break of Structure) for continuation
MSS (Market Structure Shift) for a directional change
To keep the chart readable, older structure drawings are capped by history limits.
🔸 SMT Divergence with optional mini panel
SMT can compare the current instrument with a user selected symbol to highlight divergence at swing points. A divergence is flagged when one market makes a new swing extreme while the other fails to confirm.
Optional: a compact right side “compare symbol” candle panel can be enabled so you can visually confirm what the secondary market is doing without leaving the chart.
🔸 Imbalances: FVG, BPR, and CE modes
You can choose between three imbalance views depending on your style:
FVG mode: Fair Value Gaps are plotted as extending zones
CE mode: Consequent Encroachment is visualized using a midpoint line and a half zone fill
BPR mode: Balanced Price Range is formed when a new FVG overlaps an opposing FVG, producing a “balanced” region that often behaves differently than a standalone gap
🔸 Automatic extension, limits, and mitigation for imbalances
Imbalance objects extend forward until mitigated. Mitigation uses wick based logic:
Bullish imbalance mitigates when price wicks below the zone bottom
Bearish imbalance mitigates when price wicks above the zone top
The script also enforces per side limits and removes older items to keep performance stable.
🔸 Liquidity sweeps (buyside and sellside)
The liquidity module tracks swing highs and lows and marks sweep events when price runs the level and then closes back through it, which often behaves like a rejection signal. Sweeps are visualized with a level line plus a small sweep highlight box, with an optional history cap.
🔸 Auto anchored Fibonacci (EQ and OTE focus)
Fibonacci levels are automatically anchored using the most recent structure context so you do not need to manually re draw fibs every time the market evolves. EQ and OTE focused bands are plotted to support common premium discount style workflows, with optional extra levels if desired.
🔸 Killzones (session boxes with optional range tracking)
Asian, London Open, New York AM, and New York PM killzones can be displayed using UTC-5 session definitions. Session boxes dynamically expand as new highs and lows are formed during the session, and historical zones can be retained up to a user set count. Rendering is restricted to intraday timeframes up to 60 minutes for clean scaling and performance.
🔹 Calculations
1) Order Block detection (3 candle displacement)
The OB pattern is defined inside detectLogic() . The zone boundaries always come from candle (the middle candle of the 3 candle sequence).
detectLogic() =>
bool isBull = open > close and close > open and close > open and low < low and close > high
bool isBear = open < close and close < open and close < open and high > high and close < low
[isBull, high , low , time , isBear, high , low , time ]
Interpretation (bullish side):
Candle is bearish
Candle is bullish (the OB candle)
Current candle is bullish and closes above high
low undercuts low to form the sweep style condition
Bearish logic is the mirrored inverse.
2) Multi timeframe projection and duplicate control
If the timeframe input is set, detections are computed on that timeframe and projected onto the current chart using request.security . A last processed time check prevents duplicate prints.
=
request.security(syminfo.tickerid, i_tf, detectLogic())
var int lastBullTime = 0
var int lastBearTime = 0
if mtf_isBull and mtf_bullTime != lastBullTime
lastBullTime := mtf_bullTime
if mtf_isBear and mtf_bearTime != lastBearTime
lastBearTime := mtf_bearTime
3) OB overlap validation and mitigation
Overlap is checked before pushing a new zone, then zones are extended and removed once mitigated by close.
method hasOverlap(array OBs, float top, float bottom) =>
bool overlap = false
if OBs.size() > 0
for i = 0 to OBs.size() - 1
OB item = OBs.get(i)
if (top < item.top and top > item.bottom) or (bottom > item.bottom and bottom < item.top)
overlap := true
break
overlap
method isMitigated(OB this, float currentClose) =>
this.isBull ? (currentClose < this.bottom) : (currentClose > this.top)
4) Market Structure: pivots, BOS, and MSS
Swings are derived from pivots; then BOS/MSS prints when price crosses the latest swing. The script tracks trend state to decide whether the break is continuation (BOS) or shift (MSS).
float ph = ta.pivothigh(i_structLen, i_structLen)
float pl = ta.pivotlow(i_structLen, i_structLen)
bool brokenHigh = ta.crossover(close, lastHigh)
bool brokenLow = ta.crossunder(close, lastLow)
// drawStructure(..., "BOS", ...) or drawStructure(..., "MSS", ...) depending on trend state
5) SMT Divergence conditions
SMT uses pivot highs/lows on both instruments. A bearish SMT prints when the main chart makes a higher high but the compare symbol fails to exceed its prior high. A bullish SMT prints when the main chart makes a lower low but the compare symbol fails to make a lower low.
bool bearishSmt = not na(smtAHighPrev) and not na(smtBHighPrev) and (smtAHighLast > smtAHighPrev) and (smtBHighLast <= smtBHighPrev)
bool bullishSmt = not na(smtALowPrev) and not na(smtBLowPrev) and (smtALowLast < smtALowPrev) and (smtBLowLast >= smtBLowPrev)
6) FVG detection, BPR construction, and CE level
FVGs are detected via a classic 3 bar gap condition. When a new FVG overlaps an opposing FVG, the script builds a BPR using the intersecting region. CE is the midpoint (top + bottom) / 2, plotted as a dashed line plus a half fill box.
bool fvgBullDetected = low > high
bool fvgBearDetected = high < low
// CE
float ceLevel = (this.top + this.bottom) / 2
Imbalance mitigation uses wick logic:
method isMitigated(FVG this, float currentHigh, float currentLow) =>
this.isBull ? (currentLow < this.bottom) : (currentHigh > this.top)
7) Liquidity sweep trigger
A sweep is confirmed only when price runs the pivot level and closes back through it (reject style).
bool sweepBull = i_showLiq and not na(liqLastLow) and not liqLastLowSwept and low < liqLastLow and close > liqLastLow
bool sweepBear = i_showLiq and not na(liqLastHigh) and not liqLastHighSwept and high > liqLastHigh and close < liqLastHigh
8) Killzone session mapping
Sessions are defined in UTC-5 using time() session strings.
string kzTz = "UTC-5"
kzInSession(string sess) =>
not na(time(timeframe.period, sess, kzTz))
bool inAsian = kzInSession("2000-0000")
bool inLondon = kzInSession("0200-0500")
bool inNY = kzInSession("0830-1100")
MA Alignment DetectorMA Alignment Detector : If it is bullish MA alignment, the color becomes red, if it is bearlish MA alignment, the color become green.
CryptoFlux Dynamo [JOAT]CryptoFlux Dynamo: Velocity Scalping Strategy
WHAT THIS STRATEGY IS
CryptoFlux Dynamo is an open-source Pine Script v6 strategy designed for momentum-based scalping on cryptocurrency perpetual futures. It combines multiple technical analysis methods into a unified system that adapts its behavior based on current market volatility conditions.
This script is published open-source so you can read, understand, and modify the complete logic. The description below explains everything the strategy does so that traders who cannot read Pine Script can fully understand how it works before using it.
HOW THIS STRATEGY IS ORIGINAL AND WHY THE INDICATORS ARE COMBINED
This strategy uses well-known indicators (MACD, EMA, RSI, MFI, Bollinger Bands, Keltner Channels, ATR). The originality is not in the individual indicators themselves, but in the specific way they are integrated into a regime-adaptive system. Here is the detailed justification for why these components are combined and how they work together:
The Problem Being Solved:
Standard indicator-based strategies use fixed thresholds. For example, a typical MACD strategy might enter when the histogram crosses above zero. However, in cryptocurrency markets, volatility changes dramatically throughout the day and week. A MACD crossover during a low-volatility consolidation period has very different implications than the same crossover during a high-volatility trending period. Using the same entry thresholds and stop distances in both conditions leads to either:
Too many false signals during consolidation (if thresholds are loose)
Missing valid opportunities during expansion (if thresholds are tight)
Stops that are too tight during volatility spikes (causing premature exits)
Stops that are too wide during compression (giving back profits)
The Solution Approach:
This strategy first classifies the current volatility regime using normalized ATR (ATR as a percentage of price), then dynamically adjusts ALL other parameters based on that classification. This creates a context-aware system rather than a static threshold comparison.
How Each Component Contributes to the System:
ATR-Based Regime Classification (The Foundation)
The strategy calculates ATR over 21 periods, smooths it with a 13-period EMA to reduce noise from wicks, then divides by price to get a normalized percentage. This ATR% is classified into three regimes:
- Compression (ATR% < 0.8%): Market is consolidating, breakouts are more likely but false signals are common
- Expansion (ATR% 0.8% - 1.6%): Normal trending conditions
- Velocity (ATR% > 1.6%): High volatility, larger moves but also larger adverse excursions
This regime classification then controls stop distances, profit targets, trailing stop offsets, and signal strength requirements. The regime acts as a "meta-parameter" that tunes the entire system.
EMA Ribbon (8/21/34) - Trend Structure Detection
The three EMAs establish trend direction and structure. When EMA 8 > EMA 21 > EMA 34, the trend structure is bullish. The slope of the middle EMA (21) is calculated over 8 bars and converted to degrees using arctangent. This slope measurement quantifies trend strength, not just direction.
Why these specific periods? The 8/21/34 sequence follows Fibonacci-like spacing and provides good separation on 5-minute cryptocurrency charts. The fast EMA (8) responds to immediate price action, the mid EMA (21) represents the short-term trend, and the slow EMA (34) acts as a trend filter.
The EMA ribbon works with the regime classification: during compression regimes, the strategy requires stronger ribbon alignment before entry because false breakouts are more common.
MACD (8/21/5) - Momentum Measurement
The MACD uses faster parameters (8/21/5) than the standard (12/26/9) because cryptocurrency markets move faster than traditional markets. The histogram is smoothed with a 5-period EMA to reduce noise.
The key innovation is the adaptive histogram baseline. Instead of using a fixed threshold, the strategy calculates a rolling baseline from the smoothed absolute histogram value, then multiplies by a sensitivity factor (1.15). This means the threshold for "significant momentum" automatically adjusts based on recent momentum levels.
The MACD works with the regime classification: during velocity regimes, the histogram baseline is effectively higher because recent momentum has been stronger, preventing entries on relatively weak momentum.
RSI (21 period) and MFI (21 period) - Independent Momentum Confirmation
RSI measures momentum using price changes only. MFI (Money Flow Index) measures momentum using price AND volume. By requiring both to confirm, the strategy filters out price moves that lack volume support.
The 21-period length is longer than typical (14) to reduce noise on 5-minute charts. The trigger threshold (55 for longs, 45 for shorts) is slightly offset from 50 to require momentum in the trade direction, not just neutral readings.
These indicators work together: a signal requires RSI > 55 AND MFI > 55 for longs. This dual confirmation reduces false signals from price manipulation or low-volume moves.
Bollinger Bands (1.5 mult) and Keltner Channels (1.8 mult) - Squeeze Detection
When Bollinger Bands contract inside Keltner Channels, volatility is compressing and a breakout is likely. This is the "squeeze" condition. When the bands expand back outside the channels, the squeeze "releases."
The strategy uses a 1.5 multiplier for Bollinger Bands (tighter than standard 2.0) and 1.8 for Keltner Channels. These values were chosen to identify meaningful squeezes on 5-minute cryptocurrency charts without triggering too frequently.
The squeeze detection works with the regime classification: squeeze releases during compression regimes receive additional signal strength points because breakouts from consolidation are more significant.
Volume Impulse Detection - Institutional Participation Filter
The strategy calculates a volume baseline (34-period SMA) and standard deviation. A "volume impulse" is detected when current volume exceeds the baseline by 1.15x OR when the volume z-score exceeds 0.5.
This filter ensures entries occur when there is meaningful market participation, not during low-volume periods where price moves are less reliable.
Volume impulse is required for all entries and adds points to the composite signal strength score.
Cycle Oscillator - Trend Alignment Filter
The strategy calculates a 55-period EMA as a cycle basis, then measures price deviation from this basis as a percentage. When price is more than 0.15% above the cycle basis, the cycle is bullish. When more than 0.15% below, the cycle is bearish.
This filter prevents counter-trend entries. Long signals require bullish cycle alignment; short signals require bearish cycle alignment.
BTC Dominance Filter (Optional) - Market Regime Filter
The strategy can optionally use BTC.D (Bitcoin Dominance) as a market regime filter. When BTC dominance is rising (slope > 0.12), the market is in "risk-off" mode and long entries on altcoins are filtered. When dominance is falling (slope < -0.12), short entries are filtered.
This filter is optional because the BTC.D data feed may lag during low-liquidity periods.
How The Components Work Together (The Mashup Justification):
The strategy uses a composite scoring system where each signal pathway contributes points:
Trend Break pathway (30 points): Requires EMA ribbon alignment + positive slope + price breaks above recent structure high
Momentum Surge pathway (30 points): Requires MACD histogram > adaptive baseline + MACD line > signal + RSI > 55 + MFI > 55 + volume impulse
Squeeze Release pathway (25 points): Requires BB inside KC (squeeze) then release + momentum bias + histogram confirmation
Micro Pullback pathway (15 points): Requires shallow retracement to fast EMA within established trend + histogram confirmation + volume impulse
Additional modifiers:
+5 points if volume impulse is present, -5 if absent
+5 points in velocity regime, -2 in compression regime
+5 points if cycle is aligned, -5 if counter-trend
A trade only executes when the composite score reaches the minimum threshold (default 55) AND all filters agree (session, cycle bias, BTC dominance if enabled).
This scoring system is the core innovation: instead of requiring ALL conditions to be true (which would generate very few signals) or ANY condition to be true (which would generate too many false signals), the strategy requires ENOUGH conditions to be true, with different conditions contributing different weights based on their reliability.
HOW THE STRATEGY CALCULATES ENTRIES AND EXITS
Entry Logic:
1. Calculate current volatility regime from ATR%
2. Calculate all indicator values (MACD, EMA, RSI, MFI, squeeze, volume)
3. Evaluate each signal pathway and sum points
4. Check all filters (session, cycle, dominance, kill switch)
5. If composite score >= 55 AND all filters pass, generate entry signal
6. Calculate position size based on risk per trade and regime-adjusted stop distance
7. Execute entry with regime name as comment
Position Sizing Formula:
RiskCapital = Equity * (0.65 / 100)
StopDistance = ATR * StopMultiplier(regime)
RawQuantity = RiskCapital / StopDistance
MaxQuantity = Equity * (12 / 100) / Price
Quantity = min(RawQuantity, MaxQuantity)
Quantity = round(Quantity / 0.001) * 0.001
This ensures each trade risks approximately 0.65% of equity regardless of volatility, while capping total exposure at 12% of equity.
Stop Loss Calculation:
Stop distance is ATR multiplied by a regime-specific multiplier:
Compression regime: 1.05x ATR (tighter stops because moves are smaller)
Expansion regime: 1.55x ATR (standard stops)
Velocity regime: 2.1x ATR (wider stops to avoid premature exits during volatility)
Take Profit Calculation:
Target distance is ATR multiplied by regime-specific multiplier and base risk/reward:
Compression regime: 1.6x ATR * 1.8 base R:R * 0.9 regime bonus = approximately 2.6x ATR
Expansion regime: 2.05x ATR * 1.8 base R:R * 1.0 regime bonus = approximately 3.7x ATR
Velocity regime: 2.8x ATR * 1.8 base R:R * 1.15 regime bonus = approximately 5.8x ATR
Trailing Stop Logic:
When adaptive trailing is enabled, the strategy calculates a trailing offset based on ATR and regime:
Compression regime: 1.1x base offset (looser trailing to avoid noise)
Expansion regime: 1.0x base offset (standard)
Velocity regime: 0.8x base offset (tighter trailing to lock in profits during fast moves)
The trailing stop only activates when it would be tighter than the initial stop.
Momentum Fail-Safe Exits:
The strategy closes positions early if momentum reverses:
Long positions close if MACD histogram turns negative OR EMA ribbon structure breaks (fast EMA crosses below mid EMA)
Short positions close if MACD histogram turns positive OR EMA ribbon structure breaks
This prevents holding through momentum reversals even if stop loss hasn't been hit.
Kill Switch:
If maximum drawdown exceeds 6.5%, the strategy disables new entries until manually reset. This prevents continued trading during adverse conditions.
HOW TO USE THIS STRATEGY
Step 1: Apply to Chart
Use a 5-minute chart of a high-liquidity cryptocurrency perpetual (BTC/USDT, ETH/USDT recommended)
Ensure at least 200 bars of history are loaded for indicator stabilization
Use standard candlestick charts only (not Heikin Ashi, Renko, or other non-standard types)
Step 2: Understand the Visual Elements
EMA Ribbon: Three lines (8/21/34 periods) showing trend structure. Bullish when stacked upward, bearish when stacked downward.
Background Color: Shows current volatility regime
- Indigo/dark blue = Compression (low volatility)
- Purple = Expansion (normal volatility)
- Magenta/pink = Velocity (high volatility)
Bar Colors: Reflect signal strength divergence. Brighter colors indicate stronger directional bias.
Triangle Markers: Entry signals. Up triangles below bars = long entry. Down triangles above bars = short entry.
Dashboard (top-right): Real-time display of regime, ATR%, signal strengths, position status, stops, targets, and risk metrics.
Step 3: Interpret the Dashboard
Regime: Current volatility classification (Compression/Expansion/Velocity)
ATR%: Normalized volatility as percentage of price
Long/Short Strength: Current composite signal scores (0-100)
Cycle Osc: Price deviation from 55-period EMA as percentage
Dominance: BTC.D slope and filter status
Position: Current position direction or "Flat"
Stop/Target: Current stop loss and take profit levels
Kill Switch: Status of drawdown protection
Volume Z: Current volume z-score
Impulse: Whether volume impulse condition is met
Step 4: Adjust Parameters for Your Needs
For more conservative trading: Increase "Minimum Composite Signal Strength" to 65 or higher
For more aggressive trading: Decrease to 50 (but expect more false signals)
For higher timeframes (15m+): Increase "Structure Break Window" to 12-15, increase "RSI Momentum Trigger" to 58
For lower liquidity pairs: Increase "Volume Impulse Multiplier" to 1.3, increase slippage in strategy properties
To disable short selling: Uncheck "Enable Short Structure"
To disable BTC dominance filter: Uncheck "BTC Dominance Confirmation"
STRATEGY PROPERTIES (BACKTEST SETTINGS)
These are the exact settings used in the strategy's Properties dialog box. You must use these same settings when evaluating the backtest results shown in the publication:
Initial Capital: $100,000
Justification: This amount is higher than typical retail accounts. I chose this value to demonstrate percentage-based returns that scale proportionally. The strategy uses percentage-based position sizing (0.65% risk per trade), so a $10,000 account would see the same percentage returns with 10x smaller position sizes. The absolute dollar amounts in the backtest should be interpreted as percentages of capital.
Commission: 0.04% (commission_value = 0.04)
Justification: This reflects typical perpetual futures exchange fees. Major exchanges charge between 0.02% (maker) and 0.075% (taker). The 0.04% value is a reasonable middle estimate. If your exchange charges different fees, adjust this value accordingly. Higher fees will reduce net profitability.
Slippage: 1 tick
Justification: This is conservative for liquid pairs like BTC/USDT on major exchanges during normal conditions. For less liquid altcoins or during high volatility, actual slippage may be higher. If you trade less liquid pairs, increase this value to 2-3 ticks for more realistic results.
Pyramiding: 1
Justification: No position stacking. The strategy holds only one position at a time. This simplifies risk management and prevents overexposure.
calc_on_every_tick: true
Justification: The strategy evaluates on every price update, not just bar close. This is necessary for scalping timeframes where waiting for bar close would miss opportunities. Note that this setting means backtest results may differ slightly from bar-close-only evaluation.
calc_on_order_fills: true
Justification: The strategy recalculates immediately after order fills for faster response to position changes.
RISK PER TRADE JUSTIFICATION
The default risk per trade is 0.65% of equity. This is well within the TradingView guideline that "risking more than 5-10% on a trade is not typically considered viable."
With the 12% maximum exposure cap, even if the strategy takes multiple consecutive losses, the total risk remains manageable. The kill switch at 6.5% drawdown provides additional protection by halting new entries during adverse conditions.
The position sizing formula ensures that stop distance (which varies by regime) is accounted for, so actual risk per trade remains approximately 0.65% regardless of volatility conditions.
SAMPLE SIZE CONSIDERATIONS
For statistically meaningful backtest results, you should select a dataset that generates at least 100 trades. On 5-minute BTC/USDT charts, this typically requires:
2-3 months of data during normal market conditions
1-2 months during high-volatility periods
3-4 months during low-volatility consolidation periods
The strategy's selectivity (requiring 55+ composite score plus all filters) means it generates fewer signals than less filtered approaches. If your backtest shows fewer than 100 trades, extend the date range or reduce the minimum signal strength threshold.
Fewer than 100 trades produces statistically unreliable results. Win rate, profit factor, and other metrics can vary significantly with small sample sizes.
STRATEGY DESIGN COMPROMISES AND LIMITATIONS
Every strategy involves trade-offs. Here are the compromises made in this design and the limitations you should understand:
Selectivity vs. Opportunity Trade-off
The 55-point minimum threshold filters many potential trades. This reduces false signals but also misses valid setups that don't meet all criteria. Lowering the threshold increases trade frequency but decreases win rate. There is no "correct" threshold; it depends on your preference for fewer higher-quality signals vs. more signals with lower individual quality.
Regime Classification Lag
The ATR-based regime detection uses historical data (21 periods + 13-period smoothing). It cannot predict sudden volatility spikes. During flash crashes or black swan events, the strategy may be classified in the wrong regime for several bars before the classification updates. This is an inherent limitation of any lagging indicator.
Indicator Parameter Sensitivity
The default parameters (MACD 8/21/5, EMA 8/21/34, RSI 21, etc.) are tuned for BTC/ETH perpetuals on 5-minute charts during 2024 market conditions. Different assets, timeframes, or market regimes may require different parameters. There is no guarantee that parameters optimized on historical data will perform similarly in the future.
BTC Dominance Filter Limitations
The CRYPTOCAP:BTC.D data feed may lag during low-liquidity periods or weekends. The dominance slope calculation uses a 5-bar SMA, adding additional delay. If you notice the filter behaving unexpectedly, consider disabling it.
Backtest vs. Live Execution Differences
TradingView backtesting does not replicate actual broker execution. Key differences:
Backtests assume perfect fills at calculated prices; real execution involves order book depth, latency, and partial fills
The calc_on_every_tick setting improves backtest realism but still cannot capture sub-bar price action or order book dynamics
Commission and slippage settings are estimates; actual costs vary by exchange, time of day, and market conditions
Funding rates on perpetual futures are not modeled in backtests and can significantly impact profitability over time
Exchange-specific limitations (position limits, liquidation mechanics, order types) are not modeled
Market Condition Dependencies
This strategy is designed for trending and breakout conditions. During extended sideways consolidation with no clear direction, the strategy may generate few signals or experience whipsaws. No strategy performs well in all market conditions.
Cryptocurrency-Specific Risks
Cryptocurrency markets operate 24/7 without session boundaries. This means:
No natural "overnight" risk reduction
Volatility can spike at any time
Liquidity varies significantly by time of day
Exchange outages or issues can occur at any time
WHAT THIS STRATEGY DOES NOT DO
To be straightforward about limitations:
This strategy does not guarantee profits. Past backtest performance does not indicate future results.
This strategy does not predict the future. It reacts to current conditions based on historical patterns.
This strategy does not account for funding rates, which can significantly impact perpetual futures profitability.
This strategy does not model exchange-specific execution issues (partial fills, requotes, outages).
This strategy does not adapt to fundamental news events or black swan scenarios.
This strategy is not optimized for all market conditions. It may underperform during extended consolidation.
IMPORTANT RISK WARNINGS
Past performance does not guarantee future results. The backtest results shown reflect specific historical market conditions and parameter settings. Markets change constantly, and strategies that performed well historically may underperform or lose money in the future. A single backtest run does not constitute proof of future profitability.
Trading involves substantial risk of loss. Cryptocurrency derivatives are highly volatile instruments. You can lose your entire investment. Only trade with capital you can afford to lose completely.
This is not financial advice. This strategy is provided for educational and informational purposes only. It does not constitute investment advice, trading recommendations, or any form of financial guidance. The author is not a licensed financial advisor.
You are responsible for your own decisions. Before using this strategy with real capital:
Thoroughly understand the code and logic by reading the open-source implementation
Forward test with paper trading or very small positions for an extended period
Verify that commission, slippage, and execution assumptions match your actual trading environment
Understand that live results will differ from backtest results
Consider consulting with a qualified financial advisor
No guarantees or warranties. This strategy is provided "as is" without any guarantees of profitability, accuracy, or suitability for any purpose. The author is not responsible for any losses incurred from using this strategy.
OPEN-SOURCE CODE STRUCTURE
The strategy code is organized into these sections for readability:
Configuration Architecture: Input parameters organized into logical groups (Core Controls, Optimization Constants, Regime Intelligence, Signal Pathways, Risk Architecture, Visualization)
Helper Functions: calcQty() for position sizing, clamp01() and normalize() for value normalization, calcMFI() for Money Flow Index calculation
Core Indicator Engine: EMA ribbon, ATR and regime classification, MACD with adaptive baseline, RSI, MFI, volume analytics, cycle oscillator, BTC dominance filter, squeeze detection
Signal Pathway Logic: Trend break, momentum surge, squeeze release, micro pullback pathways with composite scoring
Entry/Exit Orchestration: Signal filtering, position sizing, entry execution, stop/target calculation, trailing stop logic, momentum fail-safe exits
Visualization Layer: EMA plots, regime background, bar coloring, signal labels, dashboard table
You can read and modify any part of the code. Understanding the logic before deployment is strongly recommended.
- Made with passion by officialjackofalltrades
Intraday ORB-Anchored VWAP Structure [Arjo]Intraday ORB-Anchored VWAP Structure
This indicator is built for intraday traders. This tool helps them to see how the market is behaving today. It uses Opening Range, VWAP, and commonly used reference levels to show the market's general direction.
It will not tell you exactly when to buy or sell. Instead, it provides a clear picture of the market so you can make better decisions on your own.
What This Indicator Does
1. Defines the Trading Session
The indicator works only during the selected intraday session (for example, the Indian market). All levels reset automatically at the start of each new trading day.
2. Calculates the Opening Range (ORB)
The Opening Range is the high and low formed during the first few minutes of the session (e.g., first 15 minutes). This range helps identify early market direction.
3. Determines Early Directional Bias
After the Opening Range ends, a smooth trend filter (using a smooth function) evaluates whether price behavior is more bullish or bearish.
This step is used only to decide where VWAP should be anchored , not to generate signals.
4. Anchors VWAP from the Opening Range
If early price behavior is bullish, VWAP is anchored from the Opening Range High
If early price behavior is bearish, VWAP is anchored from the Opening Range Low
5. Plots Important Reference Levels
Previous Day High (PDH) and Low (PDL)
Central Pivot Range (TC, PP, BC)
Opening Range High and Low
Optional Opening Range box
Anchored VWAP for the current session only
How You Can Use This Indicator
Use Opening Range High and Low to understand where the market found early support and resistance.
Observe how price behaves relative to the anchored VWAP :
Staying above VWAP suggests intraday strength
Staying below VWAP suggests intraday weakness
Use PDH, PDL, and CPR levels as reference zones where price may react.
Combine these levels with your own entry rules, confirmation tools, and risk management.
Notes
This indicator is a visual reference and structure tool only.
It does not predict price, provide trade calls, or guarantee outcomes .
All calculations are non-repainting once the Opening Range is complete.
Designed for educational, discretionary, and semi-systematic intraday analysis.
Disclaimer:
This script is intended for market analysis and educational purposes only . Trading involves risk, and users are responsible for their own trading decisions.
Happy Trading






















