The Box Percent StratHi guys,
Version Zero (more work needed) of an idea I've been meaning to out into a strategy for a while. 🤯
This uses percent boxes🤔 instead of traditional indicators like RSI, MACD etc. 🤫
Takes the first close price of the series and creates a Top Band 10% up, buys if price reaches that level, and puts a stop on a Bot Band, 10% down
When the first trade is in profit by another 10%, it enters another trade and moves the stop of the first trade to breakeven ~ this way it only has one unit of risk at a time
/// Designed for LONG only on Daily, 2D or 3D Charts👌🏻
/// Uses fixed investment risk amount, meaning you're willing to lose that amount per trade
/// Limit buy to not overpay on entries
/// Idea Based on the Darvas system:
/// System only enters trades on strength, when prices equals of exceeds the green line
/// It ads onto the trades, but only *IF* the previous trade is in profit by the UpBoxSize percent size
/// The trailing stop loss is moved up, with the red line
/// A key idea is to only take one unit of risk at a time, meaning for a new add on trade to be taken, the previous trade should be in profit by the same box size as the new new trade's stop loss
/// This will keep adding trades again and again, and they will stop out at the same stop loss
/// Yellow Circles is an MA that filters out choppy areas -- this system only does really well on trending linear markets like: TQQQ, SSO, SPX, SPY
/// Base setting is 10% UpBox Size and 10% DnBox Size: 15% & 15% will be more accurate but fewer signals. 13% profit and 10% stop loss will give a higher risk to reward ratio
Cerca negli script per "TAKE"
Cross impro test by Canundo Crossover Crossunder Tick valuesThis is a script where I tried to check the following things:
Even thought the tick of an asset is, for example 0.5, there are calculated prices, like SMA's that have even more decimals. Leading to crosses happening that for example happen at the same price. Consequently triggering totally useless in side markets. What happens if SMA values are restricted to the tick resolution? (Option works on it's own or with a combination of the others.)
What happens if I set my own tick value, like 0.8 instead of 0.5, what will be the effect for calculated values that are used for crossings? Will tick sizes improve the success rate? (This option will work only when the first option is active.)
Can success rate, especially for sideway markets be improved when adding a spread between MA's, so that it triggers less in sideway markets? (Option works on it's own or with a combination of the others.)
First of all, I had a hard time to round prices properly when it needs to be dynamic and working for different assets with different amounts of decimal values in the tick. The solution is that abs(floor(syminfo.mintick)) will give you the amount of decimals a tick has. It works for all ticks that are at least lower than 10. I'm not sure how huge ticks are out there. I did not implement this solution at the end since I found another way to test it.
Findings:
The first option, when activated, takes out half the trades and raises the percent profitability by 8% so there is some effect. However, all of the tested options have less advantage than I hoped for but are nevertheless something worthy for sideway markets. The first option just forces the MA's from the example to use the tick resolution.
See these two images. One when the first option is off, the second when it's active.
The lines are the MA's with adjusted values, the crosses are the places of the MA's when left as is.
Here a screenshot of the third option set to the value 2 on the 1 minute XBTUSD chart.
The advantage is that less trades trigger that have a low change in price and so less trading fees will happen.
The disadvantage is that all options can implement some delay for a crossing since the crossing will trigger once a slightly bigger move into the direction was taken.
This test environment was not meant to be profitable but to test the effects.
Maybe someone finds it interesting or wanted to test the same, so here you can save some work.
BTC Volume Contango IndexBased on my previous script "BTC Contango Index" which was inspired by a Twitter post by Byzantine General:
This is a script that shows the contango between spot and futures volumes of Bitcoin to identify overbought and oversold conditions. When a market is in contango, the volume of a futures contract is higher than the spot volume. Conversely, when a market is in backwardation, the volume of the futures contract is lower than the spot volume.
The aggregate daily volumes on top exchanges are taken to obtain Total Spot Volume and Total Futures Volume. The script then plots (Total Futures Volume/Total Spot Volume) - 1 to illustrate the percent difference (contango) between spot and futures volumes of Bitcoin. This data by itself is useful, but because aggregate futures volumes are so much larger than spot volumes, no negative values are produced. To correct for this, the Z-score of contango is taken. The Z-score (z) of a data item x measures the distance (in standard deviations StdDev) and direction of the item from its mean (U):
Z-score = (x - U) / StDev
A value of zero indicates that the data item x is equal to the mean U, while positive or negative values show that the data item is above or below the mean (x Values of +2 and -2 show that the data item is two standard deviations above or below the chosen mean, respectively, and over 95.5% of all data items are contained within these two horizontal references). We substitute x with volume contango C, the mean U with simple moving average ( SMA ) of n periods (50), and StdDev with the standard deviation of closing contango for n periods (50), so the above formula becomes: Z-score = (C - SMA (50)) / StdDev(C,50).
When in contango, Bitcoin may be overbought.
When in backwardation, Bitcoin may be oversold.
The current bar calculation will always look incorrect due to TV plotting the Z-score before the bar closes.
MACD-X, More Than MACD by DGTMoving Average Convergence Divergence – MACD
The most popular indicator used in technical analysis, the moving average convergence divergence (MACD), created by Gerald Appel. MACD is a trend-following momentum indicator, designed to reveal changes in the strength, direction, momentum, and duration of a trend in a financial instrument’s price
Historical evolution of MACD,
- Gerald Appel created the MACD line,
- Thomas Aspray added the histogram feature to MACD
- Giorgos E. Siligardos created a leader of MACD
MACD employs two Moving Averages of varying lengths (which are lagging indicators) to identify trend direction and duration. Then, MACD takes the difference in values between those two Moving Averages (MACD Line) and an EMA of those Moving Averages (Signal Line) and plots that difference between the two lines as a histogram which oscillates above and below a center Zero Line. The histogram is used as a good indication of a security's momentum.
Mathematically expressed as;
macd = ma(source, fast_length) – ma(source, slow_length)
signal = ma(macd, signal_length)
histogram = macd – signal
where exponential moving average (ema) is in common use as a moving average (ma)
fast_length = 12
slow_length = 26
signal_length = 9
The MACD indicator is typically good for identifying three types of basic signals ;
Signal Line Crossovers
A Signal Line Crossover is the most common signal produced by the MACD. On the occasions where the MACD Line crosses above or below the Signal Line, that can signify a potentially strong move. The standard interpretation of such an event is a recommendation to buy if the MACD line crosses up through the Signal Line (a "bullish" crossover), or to sell if it crosses down through the Signal Line (a "bearish" crossover). These events are taken as indications that the trend in the financial instrument is about to accelerate in the direction of the crossover.
Zero Line Crossovers
Zero Line Crossovers occur when the MACD Line crossed the Zero Line and either becomes positive (above 0) or negative (below 0). A change from positive to negative MACD is interpreted as "bearish", and from negative to positive as "bullish". Zero crossovers provide evidence of a change in the direction of a trend but less confirmation of its momentum than a signal line crossover
Divergence
Divergence is another signal created by the MACD. Simply, divergence occurs when the MACD and actual price are not in agreement. A "positive divergence" or "bullish divergence" occurs when the price makes a new low but the MACD does not confirm with a new low of its own. A "negative divergence" or "bearish divergence" occurs when the price makes a new high but the MACD does not confirm with a new high of its own. A divergence with respect to price may occur on the MACD line and/or the MACD Histogram
Moving Average Crossovers , another hidden signal that MACD Indicator identifies
Many traders will watch for a short-term moving average to cross above a longer-term moving average and use this to signal increasing upward momentum. This bullish crossover suggests that the price has recently been rising at a faster rate than it has in the past, so it is a common technical buy sign. Conversely, a short-term moving average crossing below a longer-term average is used to illustrate that the asset's price has been moving downward at a faster rate and that it may be a good time to sell.
Moving Average Crossovers in reality is Zero Line Crossovers, the value of the MACD indicator is equal to zero each time the two moving averages cross over each other. For easy interpretation by trades, Zero Line Crossovers are simply described as positive or negative MACD
False signals
Like any forecasting algorithm, the MACD can generate false signals. A false positive, for example, would be a bullish crossover followed by a sudden decline in a financial instrument. A false negative would be a situation where there is bearish crossover, yet the financial instrument accelerated suddenly upwards
What is “MACD-X” and Why it is “More Than MACD”
In its simples form, MACD-X implements variety of different calculation techniques applied to obtain MACD Line, ability to use of variety of different sources , including Volume related sources, and can be plotted along with MACD in the same window and all those features are available and presented within a single indicator, MACD-X
Different calculation techniques lead to different values for MACD Line, as will further discuss below, and as a consequence the signal line and the histogram values will differentiate accordingly. Mathematical calculation of both signal line and the histogram remain the same.
Main features of MACD-X ;
1- Introduces different proven techniques applied on MACD calculation , such as MACD-Histogram, MACD-Leader and MACD-Source, besides the traditional MACD (MACD-TRADITIONAL)
• MACD-Traditional , by Gerald Appel
It is the MACD that we know, stated as traditional just to avoid confusion with other techniques used with this study
• MACD-Histogram , by Thomas Aspray
The MACD-Histogram measures the distance between MACD and its signal line (the 9-day EMA of MACD). Aspray developed the MACD-Histogram to anticipate signal line crossovers in MACD. Because MACD uses moving averages and moving averages lag price, signal line crossovers can come late and affect the reward-to-risk ratio of a trade. Bullish or bearish divergences in the MACD-Histogram can alert chartists to an imminent signal line crossover in MACD
The MACD-Histogram represents the difference between MACD and its 9-day EMA, the signal line. Mathematically,
macdx = macd - ma(macd, signal_length)
Aspray's contribution served as a way to anticipate (and therefore cut down on lag) possible MACD crossovers which are a fundamental part of the indicator.
Here come a question, what if repeat the same calculations once more (macdh2 = macdh - ma(macdh, signal_length), will it be even better, this question will remain to be tested
• MACD-Leader , by Giorgos E. Siligardos, PhD
MACD Leader has the ability to lead MACD at critical situations. Almost all smoothing methods encounter in technical analysis are based on a relative-weighted sum of past prices, and the Leader is no exception. The concealed weights of MACD Leader are such that more relative weight is used in the more recent prices than the respective weights used by the components of MACD. In effect, the Leader expresses more changes in average price dynamics for the recent price movement than MACD, thus eventually leading MACD, especially when significant trend changes are about to take place.
Siligardos creates two less-laggard moving averages indicators in its formula using the same periods as follows
Indicator1 = ma(source, fast_length) + ma(source - ma(source, fast_length), fast_length)
Indicator2 = ma(source, slow_length) + ma(source - ma(source, slow_length), slow_length)
and then take the difference:
Indicator1 - Indicator2
The result is a new MACD Leader indicator
macdx = macd + ma(source - fast_ma, fast_length) - ma(source - slow_ma, slow_length)
• MACD-Source , a custom experimental interpretation of mine ,
MACD Source, presents an application of MACD that evaluates Source/MA Ratio, relatively with less lag, as a basis for MACD Line, also can be expressed as source convergence/divergence to its moving average. Among the various techniques for removing the lag between price and moving average (MA) of the price, one in particular stands out: the addition to the moving average of a portion of the difference between the price and MA. MACD Source, is based on signal length mean of the difference between Source and average value of shot length and long length moving average of the source (Source/MA Ratio), where the source is actual value and hence no lag and relatively less lag with the average value of moving average of the source . Mathematically expressed as,
macdx = ma(source - avg( ma(source, fast_length), ma(source, slow_length) ), signal_length)
MACD Source provides relatively early crossovers comparing to MACD and better momentum direction indications, assuming the lengths are set to same values
For further details, you are invited to check the following two studies, where the first seeds were sown of the MACD-Source idea
Price Distance to its Moving Averages study, adapts the idea of “Prices high above the moving average (MA) or low below it are likely to be remedied in the future by a reverse price movement", presented in an article by Denis Alajbeg, Zoran Bubas and Dina Vasic published in International Journal of Economics, Commerce and Management
First MACD like interpretation comes with the second study named as “ P-MACD ”, where P stands for price, P-MACD study attempts to display relationship between Price and its 20 and 200-period moving average. Calculations with P-MACD were based on price distance (convergence/divergence) to its 200-period moving average, and moving average convergence/divergence of 20-period moving average to 200-period moving average of price.
Now as explained above, MACD Source is a one adapted with traditional MACD, where Source stands for Price, Volume Indicator etc, any source applicable with MACD concept
2- Allows usage of variety of different sources, including Volume related indicators
The most common usage of Source for MACD calculation is close value of the financial instruments price. As an experimental approach, this study will allow source to be selected as one of the following series;
• Current Close Price (close)
• Average of High, Low, and Close Price (hlc3)
• On Balance Volume (obv)
• Accumulation Distribution (accdist)
• Price Volume Trend (pvt)
Where,
-Current Close Price and Average of High, Low, and Close Price are price actions of the financial instrument
- Accumulation Distribution is a volume based indicator designed to measure underlying supply and demand
- On Balance Volume (OBV) , is a momentum indicator that measures positive and negative volume flow
- Price Volume Trend (PVT) is a momentum based indicator used to measure money flow
3- Can be plotted along with MACD in the same window using the same scaling
Default setting of MACD-X will display MACD-Source with Current Close Price as a source and traditional MACD can be plotted eighter as a companion of MACD-X or can be selected to be plotted alone.
Applying both will add ability to compare, or use as a confirmation of one other
In case, traditional MACD Is plotted along with MACD-X to avoid misinterpreting, the lines plotted, the area between MACD-X Line and Signal-X Line is highlighted automatically, even if the highlight option not selected. Otherwise highlight will be applied only if that option selected
4- 4C Histogram
Histogram is plotted with four colors to emphasize the momentum and direction
5- Customizable
Additional to ability of selecting Calculation Method, Source, plotting along with MACD, there are few other option that allows users to customize the MACD-X indicator
Lengths are configurable, default values are set as 12, 26, 9 respectively for fast, slow and smoothing length. Setting lengths to 8,21,5 respectively Is worth checking, slower length moving averages will lead to less lag and earlier reaction to price actions but yet requires a caution and back testing before applying
Highlight the area between MACD-X Line and Signal-X Line, with colors emphasising the direction
Label can be added to display Calculation Method, Source and Length settings, the aim of this label is to server only as a reminder to trades to be aware of settings while they are occupied with charts, analysis etc.
Here comes another question, which is of more importance having the reminder or having the indicators with multi timeframe feature? Build-in Multi Time Frame features of Pine is not supported when labels and lines introduced in the script, there are other methods but brings complexity. To be studied further, this version will be with labels for time being.
Epilogue
MACD-X is an alternative variant of MACD, the insight/signals provided by MACD are also applicable to MACD-X with early and clear warnings for the changes in the trend.
If MACD is essential to your analysis, then it is my guess that after using the MACD-X for a while and familiarizing yourself with its unique character and personality, you will make it an inseparable companion to other indicators in your charts.
The various signals generated by MACD/MACD-X are easily interpreted and very few indicators in technical analysis have proved to be more reliable than the MACD, and this relatively simple indicator can quickly be incorporated into any short-term trading strategy
Disclaimer : Trading success is all about following your trading strategy and the indicators should fit within your trading strategy, and not to be traded upon solely
The script is for informational and educational purposes only. Use of the script does not constitutes professional and/or financial advice. You alone the sole responsibility of evaluating the script output and risks associated with the use of the script. In exchange for using the script, you agree not to hold dgtrd TradingView user liable for any possible claim for damages arising from any decision you make based on use of the script
Realized Volatility IIR Filters with BandsDISCLAIMER:
The Following indicator/code IS NOT intended to be a formal investment advice or recommendation by the author, nor should be construed as such. Users will be fully responsible by their use regarding their own trading vehicles/assets.
The following indicator was made for NON LUCRATIVE ACTIVITIES and must remain as is following TradingView's regulations. Use of indicator and their code are published by Invitation Only for work and knowledge sharing. All access granted over it, their use, copy or re-use should mention authorship(s) and origin(s).
WARNING NOTICE!
THE INCLUDED FUNCTION MUST BE CONSIDERED AS TESTING. The models included in the indicator have been taken from open sources on the web and some of them has been modified by the author, problems could occur at diverse data sceneries.
WHAT'S THIS...?
Work derived by previous own research for study:
This is mainly an INFINITE IMPULSE RESPONSE FILTERING INDICATOR , it's purpose is to catch trend given by the nature of lag given by a VOLATILITY ESTIMATION ALGORITHM as it's coefficient. It provides as well an INFINITE IMPULSE RESPONSE DEVIATION FILTER that uses the same coefficients of the main filter to plot deviation bands as an auxiliary tool.
The given Filter based indicator provides my own Multi Volatility-Estimators Function with only 3 models:
ELASTIC VOLUME WEIGHTED VOLATILITY : This is a Modified Daigler & Padungsaksawasdi "Volume Weighted Volatility" as on DOI: 10.1504/IJBAAF.2018.089423 but with Elastic Volume Weighted Moving Average instead of VWAP (intraday) for faster (but inaccurate) calculation. A future version is planned on the way using intra-bar inspection for intraday timeframe as described in original paper.
GARMAN & KLASS / YANG-ZANG EXTENSION : As one of the best range based (OHLC) with open gaps inclusion in a single bar.
PETER MARTIN'S ULCER INDEX : This is a better approach to measure realized volatility than standard deviation of log returns given it's proven convex risk metric for DrawDowns as shown in Chekhlov et al. (2005) . Regarding this particular model, I take a different approach to use it as coefficient feed: Given that the UI only takes in consideration DrawDawns, I code myself the inverse of this to compute Draw-Ups as well and use both of them to filter minimums volatility levels in order to create a SLOW version of the IIR filter, and maximums of both to calculate as FAST variation. This approach can be used as a better proxy instead of any other common moving average given that with NO COMPOUND IN TIME AT ALL (N=1) or only using as long as N=3 bars of compund, the filter can catch a trend easily, making the indicator nearly a NON PARAMETRIC FILTER.
NOTES:
This version DO NOT INCLUDE ALERTS.
This version DO NOT INCLUDE STRATEGY: ALL Feedback welcome.
DERIVED WORK:
Incremental calculation of weighted mean and variance by Tony Finch (fanf2@cam. ac .uk) (dot@dotat.at), 2009.
Volume weighted volatility: empirical evidence for a new realised volatility measure by Chaiyuth Padungsaksawasdi & Robert T. Daigler, 2018.
Basic DSP Tips & Trics by TradingView user @alexgrover
CHEERS!
@XeL_Arjona 2020.
Backtesting on Non-Standard Charts: Caution! - PineCoders FAQMuch confusion exists in the TradingView community about backtesting on non-standard charts. This script tries to shed some light on the subject in the hope that traders make better use of those chart types.
Non-standard charts are:
Heikin Ashi (HA)
Renko
Kagi
Point & Figure
Range
These chart types are called non-standard because they all transform market prices into synthetic views of price action. Some focus on price movement and disregard time. Others like HA use the same division of bars into fixed time intervals but calculate artificial open, high, low and close (OHLC) values.
Non-standard chart types can provide traders with alternative ways of interpreting price action, but they are not designed to test strategies or run automated traded systems where results depend on the ability to enter and exit trades at precise price levels at specific times, whether orders are issued manually or algorithmically. Ironically, the same characteristics that make non-standard chart types interesting from an analytical point of view also make them ill-suited to trade execution. Why? Because of the dislocation that a synthetic view of price action creates between its non-standard chart prices and real market prices at any given point in time. Switching from a non-standard chart price point into the market always entails a translation of time/price dimensions that results in uncertainty—and uncertainty concerning the level or the time at which orders are executed is detrimental to all strategies.
The delta between the chart’s price when an order is issued (which is assumed to be the expected price) and the price at which that order is filled is called slippage . When working from normal chart types, slippage can be caused by one or more of the following conditions:
• Time delay between order submission and execution. During this delay the market may move normally or be subject to large orders from other traders that will cause large moves of the bid/ask levels.
• Lack of bids for a market sell or lack of asks for a market buy at the current price level.
• Spread taken by middlemen in the order execution process.
• Any other event that changes the expected fill price.
When a market order is submitted, matching engines attempt to fill at the best possible price at the exchange. TradingView strategies usually fill market orders at the opening price of the next candle. A non-standard chart type can produce misleading results because the open of the next candle may or may not correspond to the real market price at that time. This creates artificial and often beneficial slippage that would not exist on standard charts.
Consider an HA chart. The open for each candle is the average of the previous HA bar’s open and close prices. The open of the HA candle is a synthetic value, but the real market open at the time the new HA candle begins on the chart is the unrelated, regular open at the chart interval. The HA open will often be lower on long entries and higher on short entries, resulting in unrealistically advantageous fills.
Another example is a Renko chart. A Renko chart is a type of chart that only measures price movement. The purpose of a Renko chart is to cluster price action into regular intervals, which consequently removes the time element. Because Trading View does not provide tick data as a price source, it relies on chart interval close values to construct Renko bricks. As a consequence, a new brick is constructed only when the interval close penetrates one or more brick thresholds. When a new brick starts on the chart, it is because the previous interval’s close was above or below the next brick threshold. The open price of the next brick will likely not represent the current price at the time this new brick begins, so correctly simulating an order is impossible.
Some traders have argued with us that backtesting and trading off HA charts and other non-standard charts is useful, and so we have written this script to show traders what happens when order fills from backtesting on non-standard charts are compared to real-world fills at market prices.
Let’s review how TV backtesting works. TV backtesting uses a broker emulator to execute orders. When an order is executed by the broker emulator on historical bars, the price used for the fill is either the close of the order’s submission bar or, more often, the open of the next. The broker emulator only has access to the chart’s prices, and so it uses those prices to fill orders. When backtesting is run on a non-standard chart type, orders are filled at non-standard prices, and so backtesting results are non-standard—i.e., as unrealistic as the prices appearing on non-standard charts. This is not a bug; where else is the broker emulator going to fetch prices than from the chart?
This script is a strategy that you can run on either standard or non-standard chart types. It is meant to help traders understand the differences between backtests run on both types of charts. For every backtest, a label at the end of the chart shows two global net profit results for the strategy:
• The net profits (in currency) calculated by TV backtesting with orders filled at the chart’s prices.
• The net profits (in currency) calculated from the same orders, but filled at market prices (fetched through security() calls from the underlying real market prices) instead of the chart’s prices.
If you run the script on a non-standard chart, the top result in the label will be the result you would normally get from the TV backtesting results window. The bottom result will show you a more realistic result because it is calculated from real market fills.
If you run the script on a normal chart type (bars, candles, hollow candles, line, area or baseline) you will see the same result for both net profit numbers since both are run on the same real market prices. You will sometimes see slight discrepancies due to occasional differences between chart prices and the corresponding information fetched through security() calls.
Features
• Results shown in the Data Window (third icon from the top right of your chart) are:
— Cumulative results
— For each order execution bar on the chart, the chart and market previous and current fills, and the trade results calculated from both chart and market fills.
• You can choose between 2 different strategies, both elementary.
• You can use HA prices for the calculations determining entry/exit conditions. You can use this to see how a strategy calculated from HA values can run on a normal chart. You will notice that such strategies will not produce the same results as the real market results generated from HA charts. This is due to the different environment backtesting is running on where for example, position sizes for entries on the same bar will be calculated differently because HA and standard chart close prices differ.
• You can choose repainting/non-repainting signals.
• You can show MAs, entry/exit markers and market fill levels.
• You can show candles built from the underlying market prices.
• You can color the background for occurrences where an order is filled at a different real market price than the chart’s price.
Notes
• On some non-standard chart types you will not obtain any results. This is sometimes due to how certain types of non-standard types work, and sometimes because the script will not emit orders if no underlying market information is detected.
• The script illustrates how those who want to use HA values to calculate conditions can do so from a standard chart. They will then be getting orders emitted on HA conditions but filled at more realistic prices because their strategy can run on a standard chart.
• On some non-standard chart types you will see market results surpass chart results. While this may seem interesting, our way of looking at it is that it points to how unreliable non-standard chart backtesting is, and why it should be avoided.
• In order not to extend an already long description, we do not discuss the particulars of executing orders on the realtime bar when using non-standard charts. Unless you understand the minute details of what’s going on in the realtime bar on a particular non-standard chart type, we recommend staying away from this.
• Some traders ask us: Why does TradingView allow backtesting on non-standard chart types if it produces unrealistic results? That’s somewhat like asking a hammer manufacturer why it makes hammers if hammers can hurt you. We believe it’s a trader’s responsibility to understand the tools he is using.
Takeaways
• Non-standard charts are not bad per se, but they can be badly used.
• TV backtesting on non-standard charts is not broken and doesn’t require fixing. Traders asking for a fix are in dire need of learning more about trading. We recommend they stop trading until they understand why.
• Stay away from—even better, report—any vendor presenting you with strategies running on non-standard charts and implying they are showing reliable results.
• If you don’t understand everything we discussed, don’t use non-standard charts at all.
• Study carefully how non-standard charts are built and the inevitable compromises used in calculating them so you can understand their limitations.
Thanks to @allanster and @mortdiggiddy for their help in editing this description.
Look first. Then leap.
Great Expectations [LucF]Great Expectations helps traders answer the question: What is possible? It is a powerful question, yet exploration of the unknown always entails risk. A more complete set of questions better suited to traders could be:
What opportunity exists from any given point on a chart?
What portion of this opportunity can be realistically captured?
What risk will be incurred in trying to do so, and how long will it take?
Great Expectations is the result of an exploration of these questions. It is a trade simulator that generates visual and quantitative information to help strategy modelers visually identify and analyse areas of optimal expectation on charts, whether they are designing automated or discretionary strategies.
WARNING: Great Expectations is NOT an indicator that helps determine the current state of a market. It works by looking at points in the past from which the future is already known. It uses one definition of repainting extensively (i.e. it goes back in the past to print information that could not have been know at the time). Repainting understood that way is in fact almost all the indicator does! —albeit for what I hope is a noble cause. The indicator is of no use whatsoever in analyzing markets in real-time. If you do not understand what it does, please stay away!
This is an indicator—not a strategy that uses TradingView’s backtesting engine. It works by simulating trades, not unlike a backtest, but with the crucial difference that it assumes a trade (either long or short) is entered on all bars in the historic sample. It walks forward from each bar and determines possible outcomes, gathering individual trade statistics that in turn generate precious global statistics from all outcomes tested on the chart.
Great Expectations provides numbers summarizing trade results on all simulations run from the chart. Those numbers cannot be compared to backtest-produced numbers since all non-filtered bars are examined, even if an entry was taken on the bar immediately preceding the current one, which never happens in a backtest. This peculiarity does NOT invalidate Great Expectations calculations; it just entails that results be considered under a different light. Provided they are evaluated within the indicator’s context, they can be useful—sometimes even more than backtesting results, e.g. in evaluating the impact of parameter-fitting or variations in entry, exit or filtering strats.
Traders and strategy modelers are creatures of hope often suffering from blurred vision; my hope is that Great Expectations will help them appraise the validity of their setup and strat intuitions in a realistic fashion, preventing confirmation bias from obstructing perspective—and great expectations from turning into financial great deceptions.
USE CASES
You’ve identified what looks like a promising setup on other indicators. You load Great Expectations on the chart and evaluate if its high-expectation areas match locations where your setup’s conditions occur. Unless today is your lucky day, chances are the indicator will help you realize your setup is not as promising as you had hoped.
You want to get a rough estimate of the optimal trade duration for a chart and you don’t mind using the entry and exit strategies provided with the indicator. You use the trade length readouts of the indicator.
You’re experimenting with a new stop strategy and want to know how long it will keep you in trades, on average. You integrate your stop strategy in the indicator’s code and look at the average trade length it produces and the TST ratio to evaluate its performance.
You have put together your own entry and exit criteria and are looking for a filter that will help you improve backtesting results. You visually ascertain the suitability of your filter by looking at its results on the charts with great Expectations, to see if your filter is choosing its areas correctly.
You have a strategy that shows backtested trades on your chart. Great Expectations can help you evaluate how well your strategy is benefitting from high-opportunity areas while avoiding poor expectation spots.
You want more complete statistics on your set of strategies than what backtesting will provide. You use Great Expectations, knowing that it tests all bars in the sample that correspond to your criteria, as opposed to backtesting results which are limited to a subset of all possible entries.
You want to fool your friends into thinking you’ve designed the holy grail of indicators, something that identifies optimal opportunities on any chart; you show them the P&L cloud.
FEATURES
For one trade
At any given point on the chart, assuming a trade is entered there, Great Expectations shows you information specific to that trade simulation both on the chart and in the Data Window.
The chart can display:
the P & L Cloud which shows whether the trade ended profitably or not, and by how much,
the Opportunity & Risk Cloud which the maximum opportunity and risk the simulation encountered. When superimposed over the P & L cloud, you will see what I call the managed opportunity and risk, i.e the portion of maximum opportunity that was captured and the portion of the maximum risk that was incurred,
the target and if it was reached,
a background that uses a gradient to show different levels of trade length, P&L or how frequently the target was reached during simulation.
The Data Window displays more than 40 values on individual trades and global results. For any given trade you will know:
Entry/Exit levels, including slippage impact,
It’s outcome and duration,
P/L achieved,
The fraction of the maximum opportunity/risk managed by the trade.
For all trades
After going through all the possible trades on the chart, the indicator will provide you with a rare view of all outcomes expressed with the P&L cloud, which allows us to instantly see the most/least profitable areas of a chart using trade data as support, while also showing its relationship with the opportunity/risk encountered during the simulation. The difference between the two clouds is the managed opportunity and risk.
The Data Window will present you with numbers which we will go through later. Some of them are: average stop size, P/L, win rate, % opportunity managed, trade lengths for different types of trade outcomes and the TST (Target:Stop Travel) ratio.
Let’s see Great Expectations in action… and remember to open your Data Window!
INPUTS
Trade direction : You must first choose if you wish to look at long or short trades. Because of the way the indicator works and the amount of visual information on the chart, it is only practical to look at one type of trades at a time. The default is Longs.
Maximum trade Length (MaxL) : This is the maximum walk forward distance the simulator will go in analyzing outcomes from any given point in the past. It also determines the size of the dead zone among the chart’s last bars. A red background line identifies the beginning of the dead zone for which not enough bars have elapsed to analyze outcomes for the maximum trade length defined. If an ATR-based entry stop is used, that length is added to the wait time before beginning simulations, so that the first entry starts with a clean ATR value. On a sample of around 16000 bars, my tests show that the indicator runs into server errors at lengths of around 290, i.e. having completed ~4,6M simulation loop iterations. That is way too high a length anyways; 100 will usually be amply enough to ring out all the possibilities out of a simulation, and on shorter time frames, 30 can be enough. While making it unduly small will prevent simulations of expressing the market’s potential, the less you use, the faster the indicator will run. The default is 40.
Unrealized P&L base at End of Trade (EOT) : When a simulation ends and the trade is still open, we calculate unrealized P&L from an exit order executed from either the last in-trade stop on the previous bar, or the close of the last bar. You can readily see the impact of this selection on the chart, with the P&L cloud. The default is on the close.
Display : The check box besides the title does nothing.
Show target : Shows a green line displaying the trade’s target expressed as a multiple of X, i.e. the amplitude of the entry stop. I call this value “X” and use it as a unit to express profit and loss on a trade (some call it “R”). The line is highlighted for trades where the close reached the target during the trade, whether the trade ended in profit or loss. This is also where you specify the multiple of X you wish to use in calculating targets. The multiple is used even if targets are not displayed.
Show P&L Cloud : The cloud allows traders to see right away the profitable areas of the chart. The only line printed with the cloud is the “end of trade line” (EOT). The EOT line is the only way one can see the level where a trade ended on the chart (in the Data Window you can see it as the “Exit Fill” value). The EOT level for the trade determines if the trade ended in a profit or a loss. Its value represents one of the following:
- fill from order executed at close of bar where stop is breached during trade (which produces “Realized P/L”),
- simulation of a fill pseudo-fill at the user-defined EOT level (last close or stop level) if the trade runs its course through MaxL bars without getting stopped (producing Unrealized P/L).
The EOT line and the cloud fill print in green when the trade’s outcome is profitable and in red when it is not. If the trade was closed after breaching the stop, the line appears brighter.
Show Opportunity&Risk Cloud : Displays the maximum opportunity/risk that was present during the trade, i.e. the maximum and minimum prices reached.
Background Color Scheme : Allows you to choose between 3 different color schemes for the background gradients, to accommodate different types of chart background/candles. Select “None” if you don’t want a background.
Background source : Determines what value will be used to generate the different intensities of the gradient. You can choose trade length (brighter is shorter), Trade P&L (brighter is higher) or the number of times the target was reached during simulation (brighter is higher). The default is Trade Length.
Entry strat : The check box besides the title does nothing. The default strat is All bars, meaning a trade will be simulated from all bars not excluded by the filters where a MaxL bars future exists. For fun, I’ve included a pseudo-random entry strat (an indirect way of changing the seed is to vary the starting date of the simulation).
Show Filter State : Displays areas where the combination of filters you have selected are allowing entries. Filtering occurs as per your selection(s), whether the state is displayed or not. The effect of multiple selections is additive. The filters are:
1. Bar direction: Longs will only be entered if close>open and vice versa.
2. Rising Volume: Applies to both long and shorts.
3. Rising/falling MA of the length you choose over the number of bars you choose.
4. Custom indicator: You can feed your own filtering signal through this from another indicator. It must produce a signal of 1 to allow long entries and 0 to allow shorts.
Show Entry Stops :
1. Multiple of user-defined length ATR.
2. Fixed percentage.
3. Fixed value.
All entry stops are calculated using the entry fill price as a reference. The fill price is calculated from the current bar’s open, to which slippage is added if configured. This simulates the case where the strategy issued the entry signal on the previous bar for it to be executed at the next bar’s open.
The entry stop remains active until the in-trade stop becomes the more aggressive of the two stops. From then on, the entry stop will be ignored, unless a bar close breaches the in-trade stop, in which case the stop will be reset with a new entry stop and the process repeats.
Show In-trade stops : Displays in bright red the selected in-trade stop (be sure to read the note in this section about them).
1. ATR multiple: added/subtracted from the average of the two previous bars minimum/maximum of open/close.
2. A trailing stop with a deviation expressed as a multiple of entry stop (X).
3. A fixed percentage trailing stop.
Trailing stops deviations are measured from the highest/lowest high/low reached during the trade.
Note: There is a twist with the in-trade stops. It’s that for any given bar, its in-trade stop can hold multiple values, as each successive pass of the advancing simulation loops goes over it from a different entry points. What is printed is the stop from the loop that ended on that bar, which may have nothing to do with other instances of the trade’s in-trade stop for the same bar when visited from other starting points in previous simulations. There is just no practical way to print all stop values that were used for any given bar. While the printed entry stops are the actual ones used on each bar, the in-trade stops shown are merely the last instance used among many.
Include Slippage : if checked, slippage will be added/subtracted from order price to yield the fill price. Slippage is in percentage. If you choose to include slippage in the simulations, remember to adjust it by considering the liquidity of the markets and the time frame you’ll be analyzing.
Include Fees : if checked, fees will be subtracted/added to both realized an unrealized trade profits/losses. Fees are in percentage. The default fees work well for crypto markets but will need adjusting for others—especially in Forex. Remember to modify them accordingly as they can have a major impact on results. Both fees and slippage are included to remind us of their importance, even if the global numbers produced by the indicator are not representative of a real trading scenario composed of sequential trades.
Date Range filtering : the usual. Just note that the checkbox has to be selected for date filtering to activate.
DATA WINDOW
Most of the information produced by this indicator is made available in the Data Window, which you bring up by using the icon below the Watchlist and Alerts buttons at the right of the TV UI. Here’s what’s there.
Some of the information presented in the Data Window is standard trade data; other values are not so standard; e. g. the notions of managed opportunity and risk and Target:Stop Travel ratio. The interplay between all the values provided by Great Expectations is inherently complex, even for a static set of entry/filter/exit strats. During the constant updating which the habitual process of progressive refinement in building strategies that is the lot of strategy modelers entails, another level of complexity is no doubt added to the analysis of this indicator’s values. While I don’t want to sound like Wolfram presenting A New Kind of Science , I do believe that if you are a serious strategy modeler and spend the time required to get used to using all the information this indicator makes available, you may find it useful.
Trade Information
Entry Order : This is the open of the bar where simulation starts. We suppose that an entry signal was generated at the previous bar.
Entry Fill (including slip.) : The actual entry price, including slippage. This is the base price from which other values will be calculated.
Exit Order : When a stop is breached, an exit order is executed from the close of the bar that breached the stop. While there is no “In-trade stop” value included in the Data Window (other than the End of trade Stop previously discussed), this “Exit Order” value is how we can know the level where the trade was stopped during the simulation. The “Trade Length” value will then show the bar where the stop was breached.
Exit Fill (including slip.) : When the exit order is simulated, slippage is added to the order level to create the fill.
Chart: Target : This is the target calculated at the beginning of the simulation. This value also appear on the chart in teal. It is controlled by the multiple of X defined under the “Show Target” checkbox in the Inputs.
Chart: Entry Stop : This value also appears on the chart (the red dots under points where a trade was simulated). Its value is controlled by the Entry Strat chosen in the Inputs.
X (% Fill, including Fees) and X (currency) : This is the stop’s amplitude (Entry Fill – Entry Stop) + Fees. It represents the risk incurred upon entry and will be used to express P&L. We will show R expressed in both a percentage of the Entry Fill level (this value), and currency (the next value). This value represents the risk in the risk:reward ratio and is considered to be a unit of 1 so that RR can be expressed as a single value (i.e. “2” actually meaning “1:2”).
Trade Length : If trade was stopped, it’s the number of bars elapsed until then. The trade is then considered “Closed”. If the trade ends without being stopped (there is no profit-taking strat implemented, so the stop is the only exit strat), then the trade is “Open”, the length is MaxL and it will show in orange. Otherwise the value will print in green/red to reflect if the trade is winning/losing.
P&L (X) : The P&L of the trade, expressed as a multiple of X, which takes into account fees paid at entry and exit. Given our default target setting at 2 units of “X”, a trade that closes at its target will have produced a P&L of +2.0, i.e. twice the value of X (not counting fees paid at exit ). A trade that gets stopped late 50% further that the entry stop’s level will produce a P&L of -1.5X.
P&L (currency, including Fees) : same value as above, but expressed in currency.
Target first reached at bar : If price closed above the target during the trade (even if it occurs after the trade was stopped), this will show when. This value will be used in calculating our TST ratio.
Times Stop/Target reached in sim. : Includes all occurrences during the complete simulation loop.
Opportunity (X) : The highest/lowest price reached during a simulation, i.e. the maximum opportunity encountered, whether the trade was previously stopped or not, expressed as a multiple of X.
Risk (X) : The lowest/highest price reached during a simulation, i.e. the maximum risk encountered, whether the trade was previously stopped or not, expressed as a multiple of X.
Risk:Opportunity : The greater this ratio, the greater Opportunity is, compared to Risk.
Managed Opportunity (%) : The portion of Opportunity that was captured by the highest/low stop position, even if it occurred after a previous stop closed the trade.
Managed Risk (%) : The portion of risk that was protected by the lowest/highest stop position, even if it occurred after a previous stop closed the trade. When this value is greater than 100%, it means the trade’s stop is protecting more than the maximum risk, which is frequent. You will, however, never see close to those values for the Managed Opportunity value, since the stop would have to be higher than the Maximum opportunity. It is much easier to alleviate the risk than it is to lock in profits.
Managed Risk:Opportunity : The ratio of the two preceding values.
Managed Opp. vs. Risk : The Managed Opportunity minus the Managed Risk. When it is negative, which is most often is, it means your strat is protecting a greater portion of the risk than it captures opportunity.
Global Numbers
Win Rate(%) : Percentage of winning trades over all entries. Open trades are considered winning if their last stop/close (as per user selection) locks in profits.
Avg X%, Avg X (currency) : Averages of previously described values:.
Avg Profitability/Trade (APPT) : This measures expectation using: Average Profitability Per Trade = (Probability of Win × Average Win) − (Probability of Loss × Average Loss) . It quantifies the average expectation/trade, which RR alone can’t do, as the probabilities of each outcome (win/lose) must also be used to calculate expectancy. The APPT combine the RR with the win rate to yield the true expectancy of a strategy. In my usual way of expressing risk with X, APPT is the equivalent of the average P&L per trade expressed in X. An APPT of -1.5 means that we lose on average 1.5X/trade.
Equity (X), Equity (currency) : The cumulative result of all trade outcomes, expressed as a multiple of X. Multiplied by the Average X in currency, this yields the Equity in currency.
Risk:Opportunity, Managed Risk:Opportunity, Managed Opp. vs. Risk : The global values of the ones previously described.
Avg Trade Length (TL) : One of the most important values derived by going through all the simulations. Again, it is composed of either the length of stopped trades, or MaxL when the trade isn’t stopped (open). This value can help systems modelers shape the characteristics of the components they use to build their strategies.
Avg Closed Win TL and Avg Closed Lose TL : The average lengths of winning/losing trades that were stopped.
Target reached? Avg bars to Stop and Target reached? Avg bars to Target : For the trades where the target was reached at some point in the simulation, the number of bars to the first point where the stop was breached and where the target was reached, respectively. These two values are used to calculate the next value.
TST (Target:Stop Travel Ratio) : This tracks the ratio between the two preceding values (Bars to first stop/Bars to first target), but only for trades where the target was reached somewhere in the loop. A ratio of 2 means targets are reached twice as fast as stops.
The next values of this section are counts or percentages and are self-explanatory.
Chart Plots
Contains chart plots of values already describes.
NOTES
Optimization/Overfitting: There is a fine line between optimizing and overfitting. Tools like this indicator can lead unsuspecting modelers down a path of overfitting that often turns strategies into over-specialized beasts that do not perform elegantly when confronted to the real-world. Proven testing strategies like walk forward analysis will go a long way in helping modelers alleviate this risk.
Input tuning: Because the results generated by the indicator will vary with the parameters used in the active entry, filtering and exit strats, it’s important to realize that although it may be fun at first, just slapping the default settings on a chart and time frame will not yield optimal nor reliable results. While using ATR as often as possible (as I do in this indicator) is a good way to make strat parametrization adaptable, it is not a foolproof solution.
There is no data for the last MaxL bars of the chart, since not enough trade future has elapsed to run a simulation from MaxL bars back.
Modifying the code: I have tried to structure the code modularly, even if that entails a larger code base, so that you can adapt it to your needs. I’ve included a few token components in each of the placeholders designed for entry strategies, filters, entry stops and in-trade stops. This will hopefully make it easier to add your own. In the same spirit, I have also commented liberally.
You will find in the code many instances of standard trade management tasks that can be lifted to code TV strategies where, as I do in mine, you manage everything yourself and don’t rely on built-in Pine strategy functions to act on your trades.
Enjoy!
THANKS
To @scarf who showed me how plotchar() could be used to plot values without ruining scale.
To @glaz for the suggestion to include a Chandelier stop strat; I will.
To @simpelyfe for the idea of using an indicator input for the filters (if some day TV lets us use more than one, it will be useful in other modules of the indicator).
To @RicardoSantos for the random generator used in the random entry strat.
To all scripters publishing open source on TradingView; their code is the best way to learn.
To my trading buddies Irving and Bruno; who showed me way back how pro traders get it done.
ATR+VWAP Alert//These signals mostly consist of crossovers between a 13 VWMA and a 62 VWMA. I've found these two moving averages to be quite special in their ability to
//recognize a quick trend using volume data. The VWAP is used in the alert system as well, to give some perspective on which direction we are looking to take. We
//are also using ATR. We only take trades when the ATR is on the move, meaning we have a chance to catch a volatile move! Finally, we use RSI to help weed out bad
//trades. We only take 'longs' with bullish readings from RSI, and we only take 'shorts' with bearish readings from RSI. These alerts are fantastic for catching quick intraday
//trades in either direction. I recommend using a small 'take profit' target rather than using an exit indicator. These trades can move 20-30 pips and reverse just as quickly. Good luck!
//How To Use:
//When the alert system is added to the chart, you will notice up/down symbols appear at various locations. For bullish alerts, right click an 'Up' symbol and choose 'Add Alert on VWap & ATR..'
//There are two condition options. 'Long/short', and right below that 'Buy-Signal/Sell-Signal'. Choose 'long' and 'Buy-Signal'. At options, choose 'Once Per Bar Close'. Design your alert, and you're good to go.
//For bearish signals, find a 'down' signal on the chart. Right click and follow the same process, except choosing 'short/Sell-Signal' conditions.
Tips:
Use VWAP as a stop-loss. If a candle closes below/above the VWAP in the direction against you.. get out of the trade. The losses will be minimal and few compared to the wins. Use discretion and trade carefully. This works great with crypto. Invent your own exit. If you come up with a clever exit, please share!
You can contact me at my Discord!
discord.gg
[Parth🇮🇳] Wall Street US30 Pro - Prop Firm Edition....Yo perfect! Here's the COMPLETE strategy in simple words:
***
## WALL STREET US30 TRADING STRATEGY - SIMPLE VERSION
### WHAT YOU'RE TRADING:
US30 (Dow Jones Index) on 1-hour chart using a professional indicator with smart money concepts.
---
### WHEN TO TRADE:
**6:30 PM - 10:00 PM IST every day** (London-NY overlap = highest volume)
***
### THE INDICATOR SHOWS YOU:
A table in top-right corner with 5 things:
1. **Signal Strength** - How confident (need 70%+)
2. **RSI** - Momentum (need OK status)
3. **MACD** - Trend direction (need UP for buys, DOWN for sells)
4. **Volume** - Real or fake move (need HIGH)
5. **Trend** - Overall direction (need UP for buys, DOWN for sells)
Plus **green arrows** (buy signals) and **red arrows** (sell signals).
---
### THE RULES:
**When GREEN ▲ arrow appears:**
- Wait for 1-hour candle to close (don't rush in)
- Check the table:
- Signal Strength 70%+ ? ✅
- Volume HIGH? ✅
- RSI okay? ✅
- MACD up? ✅
- Trend up? ✅
- If all yes = ENTER LONG (BUY)
- Set stop loss 40-50 pips below entry
- Set take profit 2x the risk (2:1 ratio)
**When RED ▼ arrow appears:**
- Wait for 1-hour candle to close (don't rush in)
- Check the table:
- Signal Strength 70%+ ? ✅
- Volume HIGH? ✅
- RSI okay? ✅
- MACD down? ✅
- Trend down? ✅
- If all yes = ENTER SHORT (SELL)
- Set stop loss 40-50 pips above entry
- Set take profit 2x the risk (2:1 ratio)
***
### REAL EXAMPLE:
**7:45 PM IST - Green arrow appears**
Table shows:
- Signal Strength: 88% 🔥
- RSI: 55 OK
- MACD: ▲ UP
- Volume: 1.8x HIGH
- Trend: 🟢 UP
All checks pass ✅
**8:00 PM - Candle closes, signal confirmed**
I check table again - still strong ✓
**I enter on prop firm:**
- BUY 0.1 lot
- Entry: 38,450
- Stop Loss: 38,400 (50 pips below)
- Take Profit: 38,550 (100 pips above)
- Risk: $50
- Reward: $100
- Ratio: 1:2 ✅
**9:30 PM - Price hits 38,550**
- Take profit triggered ✓
- +$100 profit
- Trade closes
**Done for that signal!**
***
### YOUR DAILY ROUTINE:
**6:30 PM IST** - Open TradingView + prop firm
**6:30 PM - 10 PM IST** - Watch for signals
**When signal fires** - Check table, enter if strong
**10:00 PM IST** - Close all trades, done
**Expected daily** - 1-3 signals, +$100-300 profit
***
### EXPECTED RESULTS:
**Win Rate:** 65-75% (most trades win)
**Signals per day:** 1-3
**Profit per trade:** $50-200
**Daily profit:** $100-300
**Monthly profit:** $2,000-6,000
**Monthly return:** 20-30% (on $10K account)
---
### WHAT MAKES THIS WORK:
✅ Uses 7+ professional filters (not just 1 indicator)
✅ Checks volume (real moves only)
✅ Filters overbought/oversold (avoids tops/bottoms)
✅ Aligns with 4-hour trend (higher timeframe)
✅ Only trades peak volume hours (6:30-10 PM IST)
✅ Uses support/resistance (institutional levels)
✅ Risk/reward 2:1 minimum (math works out)
***
### KEY DISCIPLINE RULES:
**DO:**
- ✅ Only trade 6:30-10 PM IST
- ✅ Wait for candle to close
- ✅ Check ALL 5 table items
- ✅ Only take 70%+ strength signals
- ✅ Always use stop loss
- ✅ Always 2:1 reward ratio
- ✅ Risk 1-2% per trade
- ✅ Close all trades by 10 PM
- ✅ Journal every trade
- ✅ Follow the plan
**DON'T:**
- ❌ Trade outside 6:30-10 PM IST
- ❌ Enter before candle closes
- ❌ Take weak signals (below 70%)
- ❌ Trade without stop loss
- ❌ Move stop loss (lock in loss)
- ❌ Hold overnight
- ❌ Revenge trade after losses
- ❌ Overleverge (more than 0.1 lot start)
- ❌ Skip journaling
- ❌ Deviate from plan
***
### THE 5-STEP ENTRY PROCESS:
**Step 1:** Arrow appears on chart ➜
**Step 2:** Wait for candle to close ➜
**Step 3:** Check table (all 5 items) ➜
**Step 4:** If all good = go to prop firm ➜
**Step 5:** Enter trade with SL & TP
Takes 30 seconds once you practice!
***
### MONEY MATH (Starting with $5,000):
**If you take 20 signals per month:**
- Win 15, Lose 5 (75% rate)
- Wins: 15 × $100 = $1,500
- Losses: 5 × $50 = -$250
- Net: +$1,250/month = 25% return
**Month 2:** $5,000 + $1,250 = $6,250 account
**Month 3:** $6,250 + $1,562 = $7,812 account
**Month 4:** $7,812 + $1,953 = $9,765 account
**Month 5:** $9,765 + $2,441 = $12,206 account
**Month 6:** $12,206 + $3,051 = $15,257 account
**In 6 months = $10,000 account → $15,000+ (50% growth)**
That's COMPOUNDING, baby! 💰
***
### START TODAY:
1. Copy indicator code
2. Add to 1-hour US30 chart on TradingView
3. Wait until 6:30 PM IST tonight (or tomorrow if late)
4. Watch for signals
5. Follow the rules
6. Trade your prop firm
**That's it! Simple as that!**
***
### FINAL WORDS:
This isn't get-rich-quick. This is build-wealth-steadily.
You follow the plan, take quality signals only, manage risk properly, you WILL make money. Not every trade wins, but the winners are bigger than losers (2:1 ratio).
Most traders fail because they:
- Trade too much (overtrading)
- Don't follow their plan (emotions)
- Risk too much per trade (blown account)
- Chase signals (FOMO)
- Don't journal (repeat mistakes)
You avoid those 5 things = you'll be ahead of 95% of traders.
**Start trading 6:30 PM IST. Let's go! 🚀**
Trend Pullback System```{"variant":"standard","id":"36492","title":"Trend Pullback System Description"}
Trend Pullback System is a price-action trend continuation model that looks to enter on pullbacks, not breakouts. It’s designed to find high-quality long/short entries inside an already established trend, place the stop at meaningful structure, trail that stop as structure evolves, and warn you when the trade thesis is no longer valid.
Developed by: Mohammed Bedaiwi
---------------------------------
HOW IT WORKS
---------------------------------
1. Trend Detection
• The strategy defines overall bias using moving averages.
• Bullish environment (“uptrend”): price above the slower MA, fast MA above slow MA, and the slow MA is sloping up.
• Bearish environment (“downtrend”): price below the slower MA, fast MA below slow MA, and the slow MA is sloping down.
This prevents trading against chop and focuses on continuation moves in the dominant direction.
2. Pullback + Re-entry Logic
• The script waits for price to pull back into structure (support in an uptrend, resistance in a downtrend), and then push back in the direction of the main trend.
• That “push back” is the setup trigger. We don’t chase the first breakout candle — we buy/sell the retest + resume.
3. Structural Levels (“Diamonds”)
• Green diamond (below bar): bullish pivot low formed while the trend is bullish. This marks defended support.
- Use it as a re-entry zone for longs.
- Use it to trail a stop higher when you’re already long.
- Shorts can take profit here because buyers stepped in.
• Red diamond (above bar): bearish pivot high formed while the trend is bearish. This marks defended resistance.
- Use it as a re-entry zone for shorts.
- Use it to trail a stop lower when you’re already short.
- Longs can take profit here because sellers stepped in.
4. Entry Signals
• BUY arrow (green triangle up under the candle, text like “BUY” / “BUY Zone”):
- LongSetup is true.
- Trend is bullish or turning bullish.
- Price just bounced off recent defended support (green diamond) and reclaimed short-term momentum.
Meaning: enter long here or cover/exit shorts.
• SELL arrow (red triangle down above the candle):
- ShortSetup is true.
- Trend is bearish or turning bearish.
- Price just rolled down from defended resistance (red diamond) and lost short-term momentum.
Meaning: enter short here or take profit on longs.
These are the primary trade entries. They are meant to be actionable.
5. Weak Setups (“W” in yellow)
• Yellow triangle with “W”:
- A possible long/short idea is trying to form, BUT the higher-timeframe confirmation is not fully there yet.
- Think of it as early pressure / early caution, not a full signal.
• You usually watch these areas rather than jumping in immediately.
6. Exit Warning (orange “EXIT” label above a bar)
• The strategy will raise an EXIT marker when you’re in a trade and the *opposite* side just produced a confirmed setup.
- You’re short and a valid longSetup appears → EXIT.
- You’re long and a valid shortSetup appears → EXIT.
• This is basically: “Close or reduce — the other side just took control.”
• It’s not just a trailing stop hit; it’s a regime flip warning.
7. Stop, Target, and Trailing
• On every new setup, the script records:
- Initial stop: recent swing beyond the defended level (below support for longs, above resistance for shorts).
- Initial target: recent opposing swing.
• While you’re in position, if new confirming diamonds print in your favor, the stop can trail toward the new defended level.
• This creates structure-based risk management (not just fixed % or ATR).
8. Reference Levels
• The strategy also plots prior higher-timeframe closes (last week’s close, last month’s close, last year’s close). These can behave as magnets or stall points.
• They’re helpful for take-profit timing and for reading “are we trading above or below last month’s close?”
9. Momentum Panel (hidden by default)
• Internally, the script calculates an SMI-style momentum oscillator with overbought/oversold zones.
• This is optional visual confirmation and does not drive the core entry/exit logic.
---------------------------------
WHAT A TRADE LOOKS LIKE IN REAL PRICE ACTION
---------------------------------
Early warning
• Yellow W + red diamonds + red down arrows = “This is getting weak. Short setups are here.”
• You may also see something like “My Short Entry Id.” That’s where the short side actually engages.
Bearish follow-through, then exhaustion
• Price bleeds down.
• Then the orange EXIT appears.
→ Translation: “If you’re still short, close it. Buyers are stepping in hard. Risk of reversal is now high.”
Regime flip
• Right after EXIT, multiple green BUY arrows fire together (“BUY”, “BUYZone”).
• That’s the true long trigger.
→ This is where you either enter long or flip from short to long.
Expansion leg
• After that flip, price rips up for multiple candles / days / weeks.
• While it runs:
- Green diamonds appear under pullbacks → “dip buy zones / trail stop up here.”
- More BUY arrows show on minor pullbacks → continuation long / scale adds.
Distribution / topping
• Later, you start seeing new yellow W triangles again near local highs. That’s your “careful, this might be topping” warning.
• You finally get a hard red candle, and green diamonds stop stacking.
→ That’s where you tighten risk, scale out, or assume the move is mature.
In plain terms, the model is doing the following for you:
• It puts you short during weakness.
• It tells you when to get OUT of the short.
• It flips you long right as control changes.
• It gives you a structure-based trail the whole way up.
• It warns you again when momentum at the top starts cracking.
That is exactly how the logic was designed.
---------------------------------
QUICK INTERPRETATION CHEAT SHEET
---------------------------------
🔻 Red triangle + “Short Entry” near a red diamond
→ Short entry zone (or take profit on a long).
🟥 Red diamond above bar
→ Sellers defended here. Treat it as resistance. Good place to trail short stops just above that level. Avoid chasing longs straight into it.
🟨 Yellow W
→ Attention only. Early pressure / possible turn. Not fully confirmed.
🟧 EXIT (orange label)
→ The opposite side just printed a real setup. Close the old idea (cover shorts if you’re short, exit longs if you’re long). Thesis invalid.
🟩 Burst of green BUY triangles after EXIT
→ Long entry. Also a “cover shorts now” alert. This is the core money entry in bullish reversals.
💎 Green diamond below bar
→ Bulls defended that level. Good for trailing your long stop up, and good “buy the dip in trend” locations.
📈 Blue / teal MAs stacked and rising
→ Confirmed bullish structure. You’re in trend continuation mode, so dips are opportunities, not automatic exits.
---------------------------------
COLOR / SHAPE KEY
---------------------------------
• Green triangle up (“BUY”, “BUY Zone”):
Long entry / cover shorts / continuation long trigger.
• Red triangle down:
Short entry / take profit on longs / continuation short trigger.
• Orange “EXIT” label:
Opposite side just fired a real setup. The previous trade thesis is now invalid.
• Green diamond below price:
Bullish defended support in an uptrend. Use for dip buys, trailing stops on longs, and objective cover zones for shorts.
• Red diamond above price:
Bearish defended resistance in a downtrend. Use for re-entry shorts, trailing stops on shorts, and objective scale-out zones for longs.
• Yellow “W”:
Weak / early potential setup. Watch it, don’t blindly trust it.
• Moving average bands (fast MA, slow MA, Hull MA):
When stacked and rising, bullish control. When stacked and falling, bearish control.
---------------------------------
INTENT
---------------------------------
This system is built to:
• Trade with momentum, not against it.
• Enter on pullbacks into proven structure, not chase stretched breakouts.
• Automate stop/target logic around actual defended swing levels.
• Warn you when the other side takes over so you don’t give back gains.
Typical usage:
1. In an uptrend, wait for price to pull back, print a green diamond (support proved), then take the first BUY arrow that fires.
2. In a downtrend, wait for a bounce into resistance, print a red diamond (sellers proved), then take the first SELL arrow that fires.
3. Respect EXIT when it appears — that’s the model saying “this trade is done.”
---------------------------------
DISCLAIMER
---------------------------------
This script is for educational and research purposes only. It is not financial advice, investment advice, or a recommendation to buy or sell any security, cryptoasset, or derivative. Markets carry risk. Past performance does not guarantee future results. You are fully responsible for your own decisions, position sizing, risk management, and compliance with all applicable laws and regulations.
Zero Lag Trend Signals (MTF) [Quant Trading] V7Overview
The Zero Lag Trend Signals (MTF) V7 is a comprehensive trend-following strategy that combines Zero Lag Exponential Moving Average (ZLEMA) with volatility-based bands to identify high-probability trade entries and exits. This strategy is designed to reduce lag inherent in traditional moving averages while incorporating dynamic risk management through ATR-based stops and multiple exit mechanisms.
This is a longer term horizon strategy that takes limited trades. It is not a high frequency trading and therefore will also have limited data and not > 100 trades.
How It Works
Core Signal Generation:
The strategy uses a Zero Lag EMA (ZLEMA) calculated by applying an EMA to price data that has been adjusted for lag:
Calculate lag period: floor((length - 1) / 2)
Apply lag correction: src + (src - src )
Calculate ZLEMA: EMA of lag-corrected price
Volatility bands are created using the highest ATR over a lookback period multiplied by a band multiplier. These bands are added to and subtracted from the ZLEMA line to create upper and lower boundaries.
Trend Detection:
The strategy maintains a trend variable that switches between bullish (1) and bearish (-1):
Long Signal: Triggers when price crosses above ZLEMA + volatility band
Short Signal: Triggers when price crosses below ZLEMA - volatility band
Optional ZLEMA Trend Confirmation:
When enabled, this filter requires ZLEMA to show directional momentum before entry:
Bullish Confirmation: ZLEMA must increase for 4 consecutive bars
Bearish Confirmation: ZLEMA must decrease for 4 consecutive bars
This additional filter helps avoid false signals in choppy or ranging markets.
Risk Management Features:
The strategy includes multiple stop-loss and take-profit mechanisms:
Volatility-Based Stops: Default stop-loss is placed at ZLEMA ± volatility band
ATR-Based Stops: Dynamic stop-loss calculated as entry price ± (ATR × multiplier)
ATR Trailing Stop: Ratcheting stop-loss that follows price but never moves against position
Risk-Reward Profit Target: Take-profit level set as a multiple of stop distance
Break-Even Stop: Moves stop to entry price after reaching specified R:R ratio
Trend-Based Exit: Closes position when price crosses EMA in opposite direction
Performance Tracking:
The strategy includes optional features for monitoring and analyzing trades:
Floating Statistics Table: Displays key metrics including win rate, GOA (Gain on Account), net P&L, and max drawdown
Trade Log Labels: Shows entry/exit prices, P&L, bars held, and exit reason for each closed trade
CSV Export Fields: Outputs trade data for external analysis
Default Strategy Settings
Commission & Slippage:
Commission: 0.1% per trade
Slippage: 3 ticks
Initial Capital: $1,000
Position Size: 100% of equity per trade
Main Calculation Parameters:
Length: 70 (range: 70-7000) - Controls ZLEMA calculation period
Band Multiplier: 1.2 - Adjusts width of volatility bands
Entry Conditions (All Disabled by Default):
Use ZLEMA Trend Confirmation: OFF - Requires ZLEMA directional momentum
Re-Enter on Long Trend: OFF - Allows multiple entries during sustained trends
Short Trades:
Allow Short Trades: OFF - Strategy is long-only by default
Performance Settings (All Disabled by Default):
Use Profit Target: OFF
Profit Target Risk-Reward Ratio: 2.0 (when enabled)
Dynamic TP/SL (All Disabled by Default):
Use ATR-Based Stop-Loss & Take-Profit: OFF
ATR Length: 14
Stop-Loss ATR Multiplier: 1.5
Profit Target ATR Multiplier: 2.5
Use ATR Trailing Stop: OFF
Trailing Stop ATR Multiplier: 1.5
Use Break-Even Stop-Loss: OFF
Move SL to Break-Even After RR: 1.5
Use Trend-Based Take Profit: OFF
EMA Exit Length: 9
Trade Data Display (All Disabled by Default):
Show Floating Stats Table: OFF
Show Trade Log Labels: OFF
Enable CSV Export: OFF
Trade Label Vertical Offset: 0.5
Backtesting Date Range:
Start Date: January 1, 2018
End Date: December 31, 2069
Important Usage Notes
Default Configuration: The strategy operates in its most basic form with default settings - using only ZLEMA crossovers with volatility bands and volatility-based stop-losses. All advanced features must be manually enabled.
Stop-Loss Priority: If multiple stop-loss methods are enabled simultaneously, the strategy will use whichever condition is hit first. ATR-based stops override volatility-based stops when enabled.
Long-Only by Default: Short trading is disabled by default. Enable "Allow Short Trades" to trade both directions.
Performance Monitoring: Enable the floating stats table and trade log labels to visualize strategy performance during backtesting.
Exit Mechanisms: The strategy can exit trades through multiple methods: stop-loss hit, take-profit reached, trend reversal, or trailing stop activation. The trade log identifies which exit method was used.
Re-Entry Logic: When "Re-Enter on Long Trend" is enabled with ZLEMA trend confirmation, the strategy can take multiple long positions during extended uptrends as long as all entry conditions remain valid.
Capital Efficiency: Default setting uses 100% of equity per trade. Adjust "default_qty_value" to manage position sizing based on risk tolerance.
Realistic Backtesting: Strategy includes commission (0.1%) and slippage (3 ticks) to provide realistic performance expectations. These values should be adjusted based on your broker and market conditions.
Recommended Use Cases
Trending Markets: Best suited for markets with clear directional moves where trend-following strategies excel
Medium to Long-Term Trading: The default length of 70 makes this strategy more appropriate for swing trading rather than scalping
Risk-Conscious Traders: Multiple stop-loss options allow traders to customize risk management to their comfort level
Backtesting & Optimization: Comprehensive performance tracking features make this strategy ideal for testing different parameter combinations
Limitations & Considerations
Like all trend-following strategies, performance may suffer in choppy or ranging markets
Default 100% position sizing means full capital exposure per trade - consider reducing for conservative risk management
Higher length values (70+) reduce signal frequency but may improve signal quality
Multiple simultaneous risk management features may create conflicting exit signals
Past performance shown in backtests does not guarantee future results
Customization Tips
For more aggressive trading:
Reduce length parameter (minimum 70)
Decrease band multiplier for tighter bands
Enable short trades
Use lower profit target R:R ratios
For more conservative trading:
Increase length parameter
Enable ZLEMA trend confirmation
Use wider ATR stop-loss multipliers
Enable break-even stop-loss
Reduce position size from 100% default
For optimal choppy market performance:
Enable ZLEMA trend confirmation
Increase band multiplier
Use tighter profit targets
Avoid re-entry on trend continuation
Visual Elements
The strategy plots several elements on the chart:
ZLEMA line (color-coded by trend direction)
Upper and lower volatility bands
Long entry markers (green triangles)
Short entry markers (red triangles, when enabled)
Stop-loss levels (when positions are open)
Take-profit levels (when enabled and positions are open)
Trailing stop lines (when enabled and positions are open)
Optional ZLEMA trend markers (triangles at highs/lows)
Optional trade log labels showing complete trade information
Exit Reason Codes (for CSV Export)
When CSV export is enabled, exit reasons are coded as:
0 = Manual/Other
1 = Trailing Stop-Loss
2 = Profit Target
3 = ATR Stop-Loss
4 = Trend Change
Conclusion
Zero Lag Trend Signals V7 provides a robust framework for trend-following with extensive customization options. The strategy balances simplicity in its core logic with sophisticated risk management features, making it suitable for both beginner and advanced traders. By reducing moving average lag while incorporating volatility-based signals, it aims to capture trends earlier while managing risk through multiple configurable exit mechanisms.
The modular design allows traders to start with basic trend-following and progressively add complexity through ZLEMA confirmation, multiple stop-loss methods, and advanced exit strategies. Comprehensive performance tracking and export capabilities make this strategy an excellent tool for systematic testing and optimization.
Note: This strategy is provided for educational and backtesting purposes. All trading involves risk. Past performance does not guarantee future results. Always test thoroughly with paper trading before risking real capital, and adjust position sizing and risk parameters according to your risk tolerance and account size.
================================================================================
TAGS:
================================================================================
trend following, ZLEMA, zero lag, volatility bands, ATR stops, risk management, swing trading, momentum, trend confirmation, backtesting
================================================================================
CATEGORY:
================================================================================
Strategies
================================================================================
CHART SETUP RECOMMENDATIONS:
================================================================================
For optimal visualization when publishing:
Use a clean chart with no other indicators overlaid
Select a timeframe that shows multiple trade signals (4H or Daily recommended)
Choose a trending asset (crypto, forex major pairs, or trending stocks work well)
Show at least 6-12 months of data to demonstrate strategy across different market conditions
Enable the floating stats table to display key performance metrics
Ensure all indicator lines (ZLEMA, bands, stops) are clearly visible
Use the default chart type (candlesticks) - avoid Heikin Ashi, Renko, etc.
Make sure symbol information and timeframe are clearly visible
================================================================================
COMPLIANCE NOTES:
================================================================================
✅ Open-source publication with complete code visibility
✅ English-only title and description
✅ Detailed explanation of methodology and calculations
✅ Realistic commission (0.1%) and slippage (3 ticks) included
✅ All default parameters clearly documented
✅ Performance limitations and risks disclosed
✅ No unrealistic claims about performance
✅ No guaranteed results promised
✅ Appropriate for public library (original trend-following implementation with ZLEMA)
✅ Educational disclaimers included
✅ All features explained in detail
================================================================================
TT ToniTrading Adjustable Price Fee Band [%]Simple but perfectly functional indicator with Trading fee bands.
Crypto Trading is with fees and very small trades often don't make sense due to the fees we need to pay. With this band you can visualize your fees before entering a trade and take smarter decisions for tight daytrading and scalping.
You type in the fee for just one trade, the Taker Fee for a Market Order. The bands show the fees in % times 2, so what you will pay for opening and closing the trade in reality. The band therefore shows the real break-even point, with included payed fees.
It additionally helps taking trading decisions or not with very small trades (Scalping).
You can smooth the bands if you want and you can addtionally show the true datapoints if you prefer smoothend bands. I recommend no bigger smoothing than 2, if you don't want to show the datapoints. Additionally you can fill the band, and of course adjust transperency, colour and all the general TradingView stuff.
Fee Overview in the current market for the indicator input field:
BingX with 10% fee reduction code = 0,045 %
BingX: Normal = 0,050 %
Bitget, ByBit, BitUnix, Blofin, Phemex: Normal = 0,060 %
Bitget, ByBit, BitUnix, Blofin, Phemex: with 20% fee reduction code = 0,048 %
Have fun Trading, Happy Profits!
Greetings
ToniTrading
RSI VWAP v1 [JopAlgo]RSI VWAP v1.1 made stronger by volume-aware!
We know there's nothing new and the original RSI already does an excellent job. We're just working on small, practical improvements – here's our take: The same basic idea, clearer display, and a single, specially developed rolling line: a VWAP of the RSI that incorporates volume (participation) into the calculation.
Do you prefer the pure classic?
You can still use Wilder or Cutler engines –
but the star here is the VW-RSI + rolling line.
This RSI also offers the possibility of illustrating a possible
POC (Point of Control - or the HAL or VAL) level.
However, the indicator does NOT plot any of these levels itself.
We have included an illustration in the chart for this!
We hope this version makes your decision-making easier.
What you’ll see
The RSI line with a 50 midline and optional bands: either static 70/30 or adaptive μ±k·σ of the Rolling Line.
One smoothing concept only: the Rolling Line (light blue) = VWAP of RSI.
Shadow shading between RSI and the Rolling Line (green when RSI > line, red when RSI < line).
A lighter tint only on the parts of that shadow that sit above the upper band or below the lower band (quick overbought/oversold context).
Simple divergence lines drawn from RSI pivots (green for regular bullish, red for regular bearish). No labels, no buy/sell text—kept deliberately clean.
What’s new, and why it helps
VW-RSI engine (default):
RSI can be computed from volume-weighted up/down moves, so momentum reflects how much traded when price moved—not just the direction.
Rolling Line (VWAP of RSI) with pure VWAP adaptation:
Low volume: blends toward a faster VWAP so early, thin starts aren’t missed.
Volume spikes: blends toward a slower VWAP so a single heavy bar doesn’t whip the curve.
You can reveal the Base Rolling (pre-adaptation) line to see exactly how much adaptation is happening.
Adaptive bands (optional):
Instead of fixed 70/30, use mean ± k·stdev of the Rolling Line over a lookback. Levels breathe with the market—useful in strong trends where static bounds stay pinned.
Minimal, readable panel:
One smoothing, one story. The shadow tells you who’s in control; the lighter highlight shows stretch beyond your lines.
How to read it (fast)
Bias: RSI above 50 (and a rising Rolling Line) → bullish bias; below 50 → bearish bias.
Trigger: RSI crossing the Rolling Line with the bias (e.g., above 50 and crossing up).
Stretch: Near/above the upper band, avoid chasing; near/below the lower band, avoid panic—prefer a cross back through the line.
Divergence lines: Use as context, not as standalone signals. They often help you wait for the next cross or avoid late entries into exhaustion.
Settings that actually matter
RSI Engine: VW-RSI (default), Wilder, or Cutler.
Rolling Line Length: the VWAP length on RSI (higher = calmer, lower = earlier).
Adaptive behavior (pure VWAP):
Speed-up on Low Volume → blends toward fast VWAP (factor of your length).
Dampen Spikes (volume z-score) → blends toward slow VWAP.
Fast/Slow Factors → how far those fast/slow variants sit from the base length.
Bands: choose Static 70/30 or Adaptive μ±k·σ (set the lookback and k).
Visuals: show/hide Base Rolling (ref), main shadow, and highlight beyond bands.
Signal gating: optional “ignore first bars” per day/session if you dislike open noise.
Starter presets
Scalp (1–5m): RSI 9–12, Rolling 12–18, FastFactor ~0.5, SlowFactor ~2.0, Adaptive on.
Intraday (15m–1H): RSI 10–14, Rolling 18–26, Bands k = 1.0–1.4.
Swing (4H–1D): RSI 14–20, Rolling 26–40, Bands k = 1.2–1.8, Adaptive on.
Where it shines (and limits)
Best: liquid markets where volume structure matters (majors, indices, large caps).
Works elsewhere: even with imperfect volume, the shadow + bands remain useful.
Limits: very thin/illiquid assets reduce the benefit of volume-weighting—lengthen settings if needed.
Attribution & License
Based on the concept and baseline implementation of the “Relative Strength Index” by TradingView (Pine v6 built-in).
Released as Open-source (MPL-2.0). Please keep the license header and attribution intact.
Disclaimer
For educational purposes only; not financial advice. Markets carry risk. Test first, use clear levels, and manage risk. This project is independent and not affiliated with or endorsed by TradingView.
1m Scalping ATR (with SL & Zones)A universal ATR indicator that anchors volatility to your stop-loss.
Read any market (FX, JPY pairs, Gold/Silver, indices, crypto) consistently—regardless of pip/point conventions and timeframe.
Why this indicator?
Classic ATR is absolute (pips/points) and feels different across markets/TFs. ATR Takeoff normalizes ATR to your stop-loss in pips and highlights clear zones for “quiet / ideal / too volatile,” so you instantly know if a 10-pip SL fits current conditions.
Key features
Auto pip detection (FX, JPY, XAU/XAG, indices, BTC/ETH).
Selectable ATR source: chart timeframe or fixed ATR TF (e.g., “15”, “30”, “60”).
Display modes:
Percent of SL – ATR relative to SL in %, great for M1 (typical 10–30%).
Multiple of SL – ATR as a multiple of SL (e.g., 0.6× / 1.0× / 1.2×).
Panel zones:
Green = “Ready for takeoff” (≤ Low), Yellow = reference (Mid), Red = too volatile (≥ High).
Status badge (top-right): Quiet / ATR ok / Wild, current ATR/SL value, ATR TF used.
Direction-agnostic: Works the same for longs and shorts.
Inputs (at a glance)
Length / Smoothing (RMA/SMA/EMA/WMA): ATR base settings.
Your Stop-Loss (Pips): Reference SL (e.g., 10).
ATR Timeframe (empty = chart): Use chart TF or a fixed TF.
Display Mode: “Percent of SL” or “Multiple of SL.”
Low/Mid/High (Percent Mode): Zone thresholds in % of SL.
Low/Mid/High (Multiple Mode): Zone thresholds in ×SL.
Recommended defaults
Length 14, Smoothing RMA, SL 10 pips
Display Mode: Percent of SL
Low/Mid/High (%): 15 / 20 / 25
ATR Timeframe: empty (= chart) for reactive, or “30” for smoother M30 context with M1 entries.
How to use
Set SL (pips). 2) Choose display mode. 3) Optionally pick ATR TF.
Interpretation:
≤ Low (green): setups allowed.
≈ Mid (yellow): neutral reference.
≥ High (red): too volatile → adjust SL/size or wait.
Note: Auto-pip relies on common ticker naming; verify on exotic symbols.
Disclaimer: For research/education. Not financial advice.
Weekend Hunter Ultimate v6.2 Weekend Hunter Ultimate v6.2 - Automated Crypto Weekend Trading System
OVERVIEW:
Specialized trading strategy designed for cryptocurrency weekend markets (Saturday-Sunday) when institutional traders are typically offline and market dynamics differ significantly from weekdays. Optimized for 15-minute timeframe execution with multi-timeframe confluence analysis.
KEY FEATURES:
- Weekend-Only Trading: Automatically activates during configurable weekend hours
- Dynamic Leverage: 5-20x leverage adjusted based on market safety and signal confidence
- Multi-Timeframe Analysis: Combines 4H trend, 1H momentum, and 15M execution
- 10 Pre-configured Crypto Pairs: BTC, ETH, LINK, XRP, DOGE, SOL, AVAX, PEPE, TON, POL
- Position & Risk Management: Max 4 concurrent positions, -30% account protection
- Smart Trailing Stops: Protects profits when approaching targets
RISK MANAGEMENT:
- Maximum daily loss: 5% (configurable)
- Maximum weekend loss: 15% (configurable)
- Per-position risk: Capped at 120-156 USDT
- Emergency stops for flash crashes (8% moves)
- Consecutive loss protection (4 losses = pause)
TECHNICAL INDICATORS:
- CVD (Cumulative Volume Delta) divergence detection
- ATR-based dynamic stop loss and take profit
- RSI, MACD, Bollinger Bands confluence
- Volume surge confirmation (1.5x average)
- Weekend liquidity adjustments
INTEGRATION:
- Designed for Bybit Futures (0.075% taker fee)
- WunderTrading webhook compatibility via JSON alerts
- Minimum position size: 120 USDT (Bybit requirement)
- Initial capital: $500 recommended
TARGET METRICS:
- Win rate target: 65%
- Average win: 5.5%
- Average loss: 1.8%
- Risk-reward ratio: ~3:1
IMPORTANT DISCLAIMERS:
- Past performance does not guarantee future results
- Leveraged trading carries substantial risk of loss
- Weekend crypto markets have 13% of normal liquidity
- Not suitable for traders who cannot afford to lose their entire investment
- Requires continuous monitoring and adjustment
USAGE:
1. Apply to 15-minute charts only
2. Configure weekend hours for your timezone
3. Set up webhook alerts for automation
4. Monitor performance table in top-right corner
5. Adjust parameters based on your risk tolerance
This is an experimental strategy for educational purposes. Always test with small amounts first and never invest more than you can afford to lose completely.
Trend Score with Dynamic Stop Loss HTF
How the Trend Score System Works
This indicator uses a Trend Score (TS) to measure price momentum over time. It tracks whether price is breaking higher or lower, then sums these moves into a cumulative score to define trend direction.
⸻
1. Trend Score (+1 / -1 Mechanism)
On each new bar:
• +1 point: if the current bar breaks the previous bar’s high.
• −1 point: if the current bar breaks the previous bar’s low.
• If both happen in the same bar, they cancel each other out.
• If neither happens, the score does not change.
This creates a simple running measure of bullish vs bearish pressure.
⸻
2. Cumulative Trend Score
The Trend Score is cumulative, meaning each new +1 or -1 is added to the total score, building a continuous count.
• Rising scores = buyers are consistently pushing price to higher highs.
• Falling scores = sellers are consistently pushing price to lower lows.
This smooths out noise and helps identify persistent momentum rather than single-bar spikes.
⸻
3. Trend Flip Trigger (default = 3)
A trend flip occurs when the cumulative Trend Score changes by 3 points (default setting) in the opposite direction of the current trend.
• Bullish Flip:
• Cumulative TS rises 3 points from its most recent low pivot.
• Marks a potential start of a new uptrend.
• A bullish stop-loss (SL) is set at the most recent swing low.
• Bearish Flip:
• Cumulative TS falls 3 points from its most recent high pivot.
• Marks a potential start of a new downtrend.
• A bearish SL is set at the most recent swing high.
Example:
• TS is at -2, then climbs to +1.
• That’s a +3 change, triggering a bullish flip.
⸻
4. Visual Summary
• Green background: Active bullish trend.
• Red background: Active bearish trend.
• ▲ Triangle Up: A bullish flip occurred this bar.
• Stop Loss Line: Shows the structural low used for risk management.
⸻
Why This Matters
The Trend Score measures trend pressure simply and objectively:
• +1 / -1 mechanics track real price behavior (breakouts of highs and lows).
• Cumulative changes of 3 points act like a momentum filter, ignoring small reversals.
• This helps you see true regime shifts on higher timeframes, which is especially useful for swing trades and investing decisions.
⸻
Key Takeaways
• Only flips after meaningful swings: prevents overreacting to single-bar noise.
• SL shows invalidation point: helps you know where a trend thesis fails.
• Works best on Daily or Weekly charts: for smoother, more reliable signals. Using Trend Score for Long-Term Investing
This indicator is designed to support decision-making for higher timeframe investing, such as swing trades, multi-month positions, or even multi-year holds.
It helps you:
• Identify major bullish regimes.
• Decide when to add to winning positions (DCA up).
• Know when to pause buying or consider trimming during weak periods.
• Stay disciplined while holding long-term winners.
Important Note:
These are suggestions for context. Always combine them with your own analysis, portfolio allocation rules, and risk tolerance.
⸻
1. Start With the Higher Timeframe
• Use Weekly charts for a broad investing view.
• Use Daily charts only for fine-tuning entry points or deciding when to add.
• A Bullish Flip on Weekly suggests the market may be entering a major uptrend.
• If Weekly is bullish and Daily also turns bullish, it’s extra confirmation of strength.
⸻
2. Building a Position with DCA
Goal: Grow your position gradually during strong bullish regimes while staying aware of risk.
A. Initial Buy
• Start with a small initial allocation when a Bullish Flip appears on Weekly or Daily.
• This is just a starter position to get exposure while the new trend develops.
B. Adding Through Strength (DCA Up)
• Consider adding during pullbacks, as long as price stays above the active SL line.
• Each add should be smaller or equal to your first buy.
• Spread out adds over time or price levels, instead of going all-in at once.
C. Pause Buying When:
• Price approaches or touches the SL level (trend invalidation).
• A Bearish Flip appears on Weekly or Daily — this signals potential weakness.
• Your total position size reaches your maximum allocation limit for that asset.
⸻
3. Holding Winners
When a position grows in profit:
• Stay in the trend as long as the Weekly regime remains bullish.
• The indicator’s green background acts as a reminder to hold, not panic sell.
• Use the SL bubble to monitor where the trend could potentially break.
• Avoid selling just because of small pullbacks — focus on big-picture trend health.
⸻
4. Taking Partial Profits
While this tool is designed to help hold long-term winners, there may be times to lighten risk:
• After large, rapid moves far above the SL, consider trimming a small portion of your position.
• When MFE (Maximum Favorable Excursion) in the table reaches unusually high levels, it may signal overextension.
• If the Weekly chart turns Neutral or Bearish, you can gradually reduce exposure while waiting for the next Bullish Flip.
⸻
5. Using the Stop Loss Line for Awareness
The Dynamic SL line represents a structural level that, if broken, may suggest the bullish trend is weakening.
How to think about it:
• Above SL: Market remains structurally healthy — continue holding or adding gradually.
• Close to SL: Pause adds. Be cautious and consider tightening your risk.
• Below SL: Treat this as a potential signal to reassess your position, especially if the break is confirmed on Weekly.
The SL is not a hard stop — it’s a visual guide to help you manage expectations.
⸻
6. Example Use Case
Imagine you are investing in a growth stock:
• Weekly Bullish Flip: You open a small starter position.
• Price pulls back slightly but stays above SL: You add a second, smaller tranche.
• Trend continues up for months: You hold and stop adding once your desired allocation is reached.
• Price doubles: You trim 10–20% to lock some profits, but continue holding the majority.
• Price later dips below SL: You slow down, reassess, and decide whether to reduce exposure.
This keeps you:
• Participating in major uptrends.
• Avoiding overcommitment during weak phases.
• Making adjustments gradually, not emotionally.
⸻
7. Suggested Workflow
1. Check Weekly chart → is it Bullish?
2. If yes, review Daily chart to fine-tune entry or adds.
3. Build exposure gradually while Weekly remains bullish.
4. Watch SL bubbles as awareness points for risk management.
5. Use partial trims during big rallies, but avoid exiting entirely too soon.
6. Reassess if Weekly turns Neutral or Bearish.
⸻
Key Takeaways
• Use this as a compass, not a command system.
• Weekly flips = big picture direction.
• Daily flips = timing and precision.
• Add gradually (DCA) while above SL, pause near SL, reassess below SL.
• Hold winners as long as Weekly remains bullish.
Trend Score with Dynamic Stop Loss RTH
📘 Trend Score with Dynamic Stop Loss (RTH) — Guide
🔎 Overview
This indicator tracks intraday momentum during Regular Trading Hours and flags trend flips using a cumulative TrendScore. It also draws dynamic stop-loss levels and shows a live stats table for quick decision-making and journaling.
⸻
⚙️ Core Concepts
1) TrendScore (per bar)
• +1 if the current bar makes a higher high than the previous bar (counted once per bar).
• –1 if the current bar makes a lower low than the previous bar (counted once per bar).
• If a bar takes both the prior high and low, the net contribution can cancel out within that bar.
2) Cumulative TrendScore (running total)
• The per-bar TrendScore accumulates across the session to form the cumulative TrendScore (TS).
• TS resets to 0 at session open and is cleared at session close.
• Rising TS = persistent upside pressure; falling TS = persistent downside pressure.
⸻
🔄 Flip Rules (3-point reversal of the cumulative TrendScore)
A flip occurs when the cumulative TrendScore reverses by 3 points in the opposite direction of the current trend.
• Bullish Flip
• Trigger: After a decline, the cumulative TrendScore rises by +3 from its down-leg.
• Interpretation: Bulls have taken control.
• Stop-loss: the lowest price of the prior (down) leg.
• Bearish Flip
• Trigger: After a rise, the cumulative TrendScore falls by –3 from its up-leg.
• Interpretation: Bears have taken control.
• Stop-loss: the highest price of the prior (up) leg.
Flip bars are marked with ▲ (lime) for bullish and ▼ (red) for bearish.
Note: If you prefer a different reversal distance, adjust the flip distance setting in the script’s inputs (default is 3).
⸻
📏 Stop-Loss Lines
• A dotted line is drawn at the prior leg’s extreme:
Green (below price) after a bullish flip.
Red (above price) after a bearish flip.
• Options:
Remove on touch for a clean chart.
Freeze on touch to keep a visual record for journaling.
• All stop lines are cleared at session end.
⸻
🧮 Stats Table (what you see)
• Trend: Bull / Bear / Neutral
• Bars in Trend: Count since the flip bar
• Since Flip: Current close minus flip bar close
• Since SL: Current close minus active stop level
• MFE-Maximum Favorable Excursion: Highest favorable move since flip
• MAE-Maximum Adverse Excursion: Largest adverse move since flip
Table colors reflect the current trend (green for bull, red for bear).
⸻
📊 Trading Playbook
Entries
• Aggressive: Enter immediately on a flip marker.
• Conservative: Wait for a small pullback that doesn’t violate the stop.
Stops
• Place the stop at the script’s flip stop-loss line (the prior leg extreme).
Exits
Choose one style and stick with it:
• Stop-only: Exit when the stop is hit.
• Time-based: Flatten at session close.
• Targets: Scale/close at 1R, 2R.
• Trailing: Trail behind minor swings once MFE > 1R.
Ultimately Exit choice is your own edge, so you must decide for yourself.
💡 Best Practices
• Skip the first few bars after the open (gap noise).
• Use regular candles (Heikin-Ashi will distort highs/lows).
• If you want fewer flips, increase the flip distance (e.g., 4 or 5). For more
responsiveness, use 2. Otherwise, increase your time frame to 5m, 10m, 15m.
• Keep SL lines frozen (not auto-removed) if you’re journaling.
Position Size CalculatorPosition Size Calculator
This open-source Pine Script® indicator helps traders manage risk by calculating position size, margin, and risk/reward based on account size, leverage, entry, stop-loss, and take-profit. It features a customizable table and optional chart lines/labels for clear trade planning across stocks, forex, crypto, and futures.
What It Does
- Position Size: Computes units to trade based on risk percentage and stop-loss distance, capped by leverage.
- Margin: Calculates initial margin in base currency and USD, with account size percentage.
- Risk/Reward: Shows risk-reward ratio, percentage price movements, and USD gains/losses.
- Visualization: Displays results in a table and optional chart lines/labels with customizable styles.
How It Works
- Precision: Adjusts price formatting using syminfo.mintick for accuracy across assets.
- Calculations: Position size = accountSize * (riskPercent / 100) / |entry - stoploss|, capped by accountSize * leverage / entry. Margin = positionSize / leverage. Risk-reward = |takeprofit - entry| / |stoploss - entry|.
- Display: Table shows metrics; optional lines/labels plot entry, stop-loss, and take-profit with percentage and USD details.
How to Use
- Set Inputs:
1- Account Size (USD): Your capital (e.g., 1000).
2- % Risk per Trade: Risk tolerance (e.g., 1%).
3- Leverage: Broker leverage (e.g., 1x, 10x).
4- Entry, Stop Loss, Take Profit: Trade prices.
5- Show Lines and Labels: Enable chart overlays.
- Customize: Adjust table position, colors, and line styles (Solid, Dashed, Dotted).
- View Results: Table shows position size, margin, and risk/reward. Chart lines/labels (if enabled) display prices, percentages, and USD outcomes.
- Apply: Use metrics for trade execution; modify code for custom features.
Notes
- Ensure valid inputs (entry ≠ stop-loss, both positive) to avoid “N/A”.
- Open-source: Inspect or extend the code for your needs.
- Contact the author via TradingView for feedback.
RTH Levels: VWAP + PDH/PDL + ONH/ONL + IBAlgo Index — Levels Pro (ONH/ONL • PDH/PDL • VWAP±Bands • IB • Gaps)
Purpose. A session-aware, non-repainting levels tool for intraday decision-making. Designed for futures and indices, with clean visuals, alerts, and a one-click Minimal Mode for screenshot-ready charts.
What it plots
• PDH/PDL (RTH-only) – Prior Regular Trading Hours high/low, computed intraday and frozen at the RTH close (no 24h mix-ups, no repainting).
• ONH/ONL – Prior Overnight high/low, held throughout RTH.
• RTH VWAP with ±σ bands – Volume-weighted variance, reset each RTH.
• Initial Balance (IB) – First N minutes of RTH, plus 1.5× / 2.0× extensions after IB completes.
• Today’s RTH Open & Prior RTH Close – With gap detection and “gap filled” alert.
• Killzone shading – NY Open (09:30–10:30 ET) and Lunch (11:15–13:30 ET).
• Values panel (top-right) – Each level with live distance in points & ticks.
• Right-edge level tags – With anti-overlap (stagger + vertical jitter).
• Price-scale tags – Native trackprice markers that always “stick” to the axis.
⸻
New in v6.4
• Minimal Mode: one click for a clean look (thinner lines, VWAP bands/IB extensions hidden, on-chart right-edge labels off; price-scale tags remain).
• Theme presets: Dark Hi-Contrast / Light Minimal / Futures Classic / Muted Dark.
• Anti-overlap controls: horizontal staggering, vertical jitter, and baseline offset to keep tags readable even when levels cluster.
⸻
Quick start (2 minutes)
1. Add to chart → keep defaults.
2. Sessions (ET):
• RTH Session default: 09:30–16:00 (US equities cash hours).
• Overnight Session default: 18:00–09:29.
Adjust for your market if you use different “day” hours (e.g., many use 08:20–13:30 ET for COMEX Gold).
3. Theme & Minimal Mode: pick a Theme Preset; enable Minimal Mode for screenshots.
4. Visibility: toggle PD/ON/VWAP/IB/References/Panel to taste.
5. Right-edge labels: turn Show Right-Edge Labels on. If they crowd, tune:
• Anti-overlap: min separation (ticks)
• Horizontal offset per tag (bars)
• Vertical jitter per step (ticks)
• Right-edge baseline offset (bars)
6. Alerts: open Add alert → Condition: and pick the events you want.
⸻
How levels are computed (no repainting)
• PDH/PDL: Intraday H/L are accumulated only while in RTH and saved at RTH close for “yesterday’s” values.
• ONH/ONL: Accumulated across the defined Overnight window and then held during RTH.
• RTH VWAP & ±σ: Volume-weighted mean and standard deviation, reset at the RTH open.
• IB: First N minutes of RTH (default 60). Extensions (1.5×/2.0×) appear after IB completes.
• Gaps: Today’s RTH open vs prior RTH close; “Gap Filled” triggers when price trades back to prior close.
⸻
Practical playbooks (how to trade around the levels)
1) PDH/PDL interactions
• Rejection: Price taps PDH/PDL then closes back inside → mean-reversion toward VWAP/IB.
• Acceptance: Close/hold beyond PDH/PDL with momentum → continuation to next HTF/IB target.
• Alert: PD Touch/Break.
2) ONH/ONL “taken”
• Often one ON extreme is taken during RTH. ONH Taken / ONL Taken → check if it’s a clean break or sweep & reclaim.
• Sweep + reclaim near VWAP can fuel rotations through the ON range.
3) VWAP ±σ framework
• Balanced: First tag of ±1σ often reverts toward VWAP.
• Trend: Persistent trade beyond ±1σ + IB break → target ±2σ/±3σ.
• Alerts: VWAP Cross and VWAP Reject (cross then immediate fail back).
4) IB breaks
• After IB completes, a clean IB break commonly targets 1.5× and sometimes 2.0×.
• Quick return inside IB = possible fade back to the opposite IB edge/VWAP.
• Alerts: IB Break Up / Down.
5) Gaps
• Gap-and-go: Opening drive away from prior close + VWAP support → trend until IB completion.
• Gap-fill: Weak open and VWAP overhead/underfoot → trade toward prior close; manage on Gap Filled alert.
Pro tip: Stack confluences (e.g., ONL sweep + VWAP reclaim + IB hold) and respect your execution rules (e.g., require a 5-minute close in direction, or your order-flow confirmation).
⸻
Inputs you’ll actually touch
• Sessions (ET): Session Timezone, RTH Session, Overnight Session.
• Visibility: toggles for PD/ON/VWAP/IB/Ref/Panel.
• VWAP bands: set σ multipliers (±1/±2/±3).
• IB: duration (minutes) and extension multipliers (1.5× / 2.0×).
• Style & Theme: Theme Preset, Main Line Width, Trackprice, Minimal Mode, and anti-overlap controls.
⸻
Alerts included
• PD Touch/Break — High ≥ PDH or Low ≤ PDL
• ONH Taken / ONL Taken — First in-RTH take of ONH/ONL
• VWAP Cross — Close crosses VWAP
• VWAP Reject — Cross then immediate fail back
• IB Break Up / Down — Break of IB High/Low after IB completes
• Gap Filled — Price trades back to prior RTH close
Setup: Add alert → Condition: Algo Index — Levels Pro → choose event → message → Notify on app/email.
⸻
Panel guide
The top-right panel shows each level plus live distance from last price:
LevelValue (Δpoints | Δticks)
Coloring: green if level is below current price, red if above.
⸻
Styling & screenshot tips
• Use Theme Preset that matches your chart.
• For dark charts, “Dark Hi-Contrast” with Main Line Width = 3 works well.
• Enable Trackprice for crisp axis tags that always stick to the right edge.
• Turn on Minimal Mode for cleaner screenshots (no VWAP bands or IB extensions, on-chart tags off; price-scale tags remain).
• If tags crowd, increase min separation (ticks) to 30–60 and horizontal offset to 3–5; add vertical jitter (4–12 ticks) and/or push tags farther right with baseline offset (bars).
⸻
Behavior & limitations
• Levels are computed incrementally; tables refresh on the last bar for efficiency.
• Right-edge labels are placed at bar_index + offset and do not track extra right-margin scrolling (TradingView limitation). The price-scale tags (from trackprice) do track the axis.
• “RTH” is what you define in inputs. If your market uses different day hours, change the session strings so PDH/PDL reflect your definition of “yesterday’s session.”
⸻
FAQ
Q: My PDH/PDL don’t match the daily chart.
A: By design this uses RTH-only highs/lows, not 24h daily bars. Adjust sessions if you want a different definition.
Q: Right-edge tags overlap or don’t sit at the far right.
A: Increase min separation / horizontal offset / vertical jitter and/or push tags farther with baseline offset. If you want markers that always hug the axis, rely on Trackprice.
Q: Can I change killzones?
A: Yes—edit the session strings in settings or request a version with user inputs for custom windows.
⸻
Disclaimer
Educational use only. This is not financial advice. Always apply your own risk management and confirmation rules.
⸻
Enjoy it? Please ⭐ the script and share screenshots using Minimal Mode + a Theme Preset that fits your style.
SMC_CommonLibrary "SMC_Common"
Common types and utilities for Smart Money Concepts indicators
get_future_time(bars_ahead)
Parameters:
bars_ahead (int)
get_time_at_offset(offset)
Parameters:
offset (int)
get_mid_time(time1, time2)
Parameters:
time1 (int)
time2 (int)
timeframe_to_string(tf)
Parameters:
tf (string)
is_psychological_level(price)
Parameters:
price (float)
detect_swing_high(src_high, lookback)
Parameters:
src_high (float)
lookback (int)
detect_swing_low(src_low, lookback)
Parameters:
src_low (float)
lookback (int)
detect_fvg(h, l, min_size)
Parameters:
h (float)
l (float)
min_size (float)
analyze_volume(vol, volume_ma)
Parameters:
vol (float)
volume_ma (float)
create_label(x, y, label_text, bg_color, label_size, use_time)
Parameters:
x (int)
y (float)
label_text (string)
bg_color (color)
label_size (string)
use_time (bool)
SwingPoint
Fields:
price (series float)
bar_index (series int)
bar_time (series int)
swing_type (series string)
strength (series int)
is_major (series bool)
timeframe (series string)
LiquidityLevel
Fields:
price (series float)
bar_index (series int)
bar_time (series int)
liq_type (series string)
touch_count (series int)
is_swept (series bool)
quality_score (series float)
level_type (series string)
OrderBlock
Fields:
start_bar (series int)
end_bar (series int)
start_time (series int)
end_time (series int)
top (series float)
bottom (series float)
ob_type (series string)
has_liquidity_sweep (series bool)
has_fvg (series bool)
is_mitigated (series bool)
is_breaker (series bool)
timeframe (series string)
mitigation_level (series float)
StructureBreak
Fields:
level (series float)
break_bar (series int)
break_time (series int)
break_type (series string)
direction (series string)
is_confirmed (series bool)
source_swing_bar (series int)
source_time (series int)
SignalData
Fields:
signal_type (series string)
entry_price (series float)
stop_loss (series float)
take_profit (series float)
risk_reward_ratio (series float)
confluence_count (series int)
confidence_score (series float)
strength (series string)
Current Hourly Open Liquidity with Sweep DetectionStatistics indicate that if the current hourly candle reaches the high or low of the previous hourly candle, there is a strong likelihood that the price will return to the current hour's open, depending on how quickly the previous hour's high or low was swept. If the sweep occurs within the first 20 minutes, there is a 75% chance the current hour's open will be reached; if it takes between 21 and 40 minutes, the probability decreases to 50%; and if it takes longer than 41 minutes, the chance drops to 25%.
These statistics can help identify manipulation on the hourly timeframe and guide trade decisions accordingly. For instance, if the previous hourly high is taken within the first 20 minutes but the current hour's open is not reached, it may be wise to avoid long positions until it happens or consider short positions in the direction of the open liquidity, using your existing entry rules and risk management.
The indicator highlights the current hour's open with a line and label to visually represent that liquidity pool, adjusting the line's color based on whether and when the previous hour's high or low was tapped. Once the open is reached, the indicator can, depending on settings, remove the line and label from the chart (this is enabled by default) since the liquidity pool is no longer relevant, preventing chart clutter.
All colors, line widths, label text sizes, and colors can be customized.
KST Strategy [Skyrexio]Overview
KST Strategy leverages Know Sure Thing (KST) indicator in conjunction with the Williams Alligator and Moving average to obtain the high probability setups. KST is used for for having the high probability to enter in the direction of a current trend when momentum is rising, Alligator is used as a short term trend filter, while Moving average approximates the long term trend and allows trades only in its direction. Also strategy has the additional optional filter on Choppiness Index which does not allow trades if market is choppy, above the user-specified threshold. Strategy has the user specified take profit and stop-loss numbers, but multiplied by Average True Range (ATR) value on the moment when trade is open. The strategy opens only long trades.
Unique Features
ATR based stop-loss and take profit. Instead of fixed take profit and stop-loss percentage strategy utilizes user chosen numbers multiplied by ATR for its calculation.
Configurable Trading Periods. Users can tailor the strategy to specific market windows, adapting to different market conditions.
Optional Choppiness Index filter. Strategy allows to choose if it will use the filter trades with Choppiness Index and set up its threshold.
Methodology
The strategy opens long trade when the following price met the conditions:
Close price is above the Alligator's jaw line
Close price is above the filtering Moving average
KST line of Know Sure Thing indicator shall cross over its signal line (details in justification of methodology)
If the Choppiness Index filter is enabled its value shall be less than user defined threshold
When the long trade is executed algorithm defines the stop-loss level as the low minus user defined number, multiplied by ATR at the trade open candle. Also it defines take profit with close price plus user defined number, multiplied by ATR at the trade open candle. While trade is in progress, if high price on any candle above the calculated take profit level or low price is below the calculated stop loss level, trade is closed.
Strategy settings
In the inputs window user can setup the following strategy settings:
ATR Stop Loss (by default = 1.5, number of ATRs to calculate stop-loss level)
ATR Take Profit (by default = 3.5, number of ATRs to calculate take profit level)
Filter MA Type (by default = Least Squares MA, type of moving average which is used for filter MA)
Filter MA Length (by default = 200, length for filter MA calculation)
Enable Choppiness Index Filter (by default = true, setting to choose the optional filtering using Choppiness index)
Choppiness Index Threshold (by default = 50, Choppiness Index threshold, its value shall be below it to allow trades execution)
Choppiness Index Length (by default = 14, length used in Choppiness index calculation)
KST ROC Length #1 (by default = 10, value used in KST indicator calculation, more information in Justification of Methodology)
KST ROC Length #2 (by default = 15, value used in KST indicator calculation, more information in Justification of Methodology)
KST ROC Length #3 (by default = 20, value used in KST indicator calculation, more information in Justification of Methodology)
KST ROC Length #4 (by default = 30, value used in KST indicator calculation, more information in Justification of Methodology)
KST SMA Length #1 (by default = 10, value used in KST indicator calculation, more information in Justification of Methodology)
KST SMA Length #2 (by default = 10, value used in KST indicator calculation, more information in Justification of Methodology)
KST SMA Length #3 (by default = 10, value used in KST indicator calculation, more information in Justification of Methodology)
KST SMA Length #4 (by default = 15, value used in KST indicator calculation, more information in Justification of Methodology)
KST Signal Line Length (by default = 10, value used in KST indicator calculation, more information in Justification of Methodology)
User can choose the optimal parameters during backtesting on certain price chart.
Justification of Methodology
Before understanding why this particular combination of indicator has been chosen let's briefly explain what is KST, Williams Alligator, Moving Average, ATR and Choppiness Index.
The KST (Know Sure Thing) is a momentum oscillator developed by Martin Pring. It combines multiple Rate of Change (ROC) values, smoothed over different timeframes, to identify trend direction and momentum strength. First of all, what is ROC? ROC (Rate of Change) is a momentum indicator that measures the percentage change in price between the current price and the price a set number of periods ago.
ROC = 100 * (Current Price - Price N Periods Ago) / Price N Periods Ago
In our case N is the KST ROC Length inputs from settings, here we will calculate 4 different ROCs to obtain KST value:
KST = ROC1_smooth × 1 + ROC2_smooth × 2 + ROC3_smooth × 3 + ROC4_smooth × 4
ROC1 = ROC(close, KST ROC Length #1), smoothed by KST SMA Length #1,
ROC2 = ROC(close, KST ROC Length #2), smoothed by KST SMA Length #2,
ROC3 = ROC(close, KST ROC Length #3), smoothed by KST SMA Length #3,
ROC4 = ROC(close, KST ROC Length #4), smoothed by KST SMA Length #4
Also for this indicator the signal line is calculated:
Signal = SMA(KST, KST Signal Line Length)
When the KST line rises, it indicates increasing momentum and suggests that an upward trend may be developing. Conversely, when the KST line declines, it reflects weakening momentum and a potential downward trend. A crossover of the KST line above its signal line is considered a buy signal, while a crossover below the signal line is viewed as a sell signal. If the KST stays above zero, it indicates overall bullish momentum; if it remains below zero, it points to bearish momentum. The KST indicator smooths momentum across multiple timeframes, helping to reduce noise and provide clearer signals for medium- to long-term trends.
Next, let’s discuss the short-term trend filter, which combines the Williams Alligator and Williams Fractals. Williams Alligator
Developed by Bill Williams, the Alligator is a technical indicator that identifies trends and potential market reversals. It consists of three smoothed moving averages:
Jaw (Blue Line): The slowest of the three, based on a 13-period smoothed moving average shifted 8 bars ahead.
Teeth (Red Line): The medium-speed line, derived from an 8-period smoothed moving average shifted 5 bars forward.
Lips (Green Line): The fastest line, calculated using a 5-period smoothed moving average shifted 3 bars forward.
When the lines diverge and align in order, the "Alligator" is "awake," signaling a strong trend. When the lines overlap or intertwine, the "Alligator" is "asleep," indicating a range-bound or sideways market. This indicator helps traders determine when to enter or avoid trades.
The next indicator is Moving Average. It has a lot of different types which can be chosen to filter trades and the Least Squares MA is used by default settings. Let's briefly explain what is it.
The Least Squares Moving Average (LSMA) — also known as Linear Regression Moving Average — is a trend-following indicator that uses the least squares method to fit a straight line to the price data over a given period, then plots the value of that line at the most recent point. It draws the best-fitting straight line through the past N prices (using linear regression), and then takes the endpoint of that line as the value of the moving average for that bar. The LSMA aims to reduce lag and highlight the current trend more accurately than traditional moving averages like SMA or EMA.
Key Features:
It reacts faster to price changes than most moving averages.
It is smoother and less noisy than short-term EMAs.
It can be used to identify trend direction, momentum, and potential reversal points.
ATR (Average True Range) is a volatility indicator that measures how much an asset typically moves during a given period. It was introduced by J. Welles Wilder and is widely used to assess market volatility, not direction.
To calculate it first of all we need to get True Range (TR), this is the greatest value among:
High - Low
abs(High - Previous Close)
abs(Low - Previous Close)
ATR = MA(TR, n) , where n is number of periods for moving average, in our case equals 14.
ATR shows how much an asset moves on average per candle/bar. A higher ATR means more volatility; a lower ATR means a calmer market.
The Choppiness Index is a technical indicator that quantifies whether the market is trending or choppy (sideways). It doesn't indicate trend direction — only the strength or weakness of a trend. Higher Choppiness Index usually approximates the sideways market, while its low value tells us that there is a high probability of a trend.
Choppiness Index = 100 × log10(ΣATR(n) / (MaxHigh(n) - MinLow(n))) / log10(n)
where:
ΣATR(n) = sum of the Average True Range over n periods
MaxHigh(n) = highest high over n periods
MinLow(n) = lowest low over n periods
log10 = base-10 logarithm
Now let's understand how these indicators work in conjunction and why they were chosen for this strategy. KST indicator approximates current momentum, when it is rising and KST line crosses over the signal line there is high probability that short term trend is reversing to the upside and strategy allows to take part in this potential move. Alligator's jaw (blue) line is used as an approximation of a short term trend, taking trades only above it we want to avoid trading against trend to increase probability that long trade is going to be winning.
Almost the same for Moving Average, but it approximates the long term trend, this is just the additional filter. If we trade in the direction of the long term trend we increase probability that higher risk to reward trade will hit the take profit. Choppiness index is the optional filter, but if it turned on it is used for approximating if now market is in sideways or in trend. On the range bounded market the potential moves are restricted. We want to decrease probability opening trades in such condition avoiding trades if this index is above threshold value.
When trade is open script sets the stop loss and take profit targets. ATR approximates the current volatility, so we can make a decision when to exit a trade based on current market condition, it can increase the probability that strategy will avoid the excessive stop loss hits, but anyway user can setup how many ATRs to use as a stop loss and take profit target. As was said in the Methodology stop loss level is obtained by subtracting number of ATRs from trade opening candle low, while take profit by adding to this candle's close.
Backtest Results
Operating window: Date range of backtests is 2023.01.01 - 2025.05.01. It is chosen to let the strategy to close all opened positions.
Commission and Slippage: Includes a standard Binance commission of 0.1% and accounts for possible slippage over 5 ticks.
Initial capital: 10000 USDT
Percent of capital used in every trade: 60%
Maximum Single Position Loss: -5.53%
Maximum Single Profit: +8.35%
Net Profit: +5175.20 USDT (+51.75%)
Total Trades: 120 (56.67% win rate)
Profit Factor: 1.747
Maximum Accumulated Loss: 1039.89 USDT (-9.1%)
Average Profit per Trade: 43.13 USDT (+0.6%)
Average Trade Duration: 27 hours
These results are obtained with realistic parameters representing trading conditions observed at major exchanges such as Binance and with realistic trading portfolio usage parameters.
How to Use
Add the script to favorites for easy access.
Apply to the desired timeframe and chart (optimal performance observed on 1h BTC/USDT).
Configure settings using the dropdown choice list in the built-in menu.
Set up alerts to automate strategy positions through web hook with the text: {{strategy.order.alert_message}}
Disclaimer:
Educational and informational tool reflecting Skyrexio commitment to informed trading. Past performance does not guarantee future results. Test strategies in a simulated environment before live implementation.
Reverse Keltner Channel StrategyReverse Keltner Channel Strategy
Overview
The Reverse Keltner Channel Strategy is a mean-reversion trading system that capitalizes on price movements between Keltner Channels. Unlike traditional Keltner Channel strategies that trade breakouts, this system takes the contrarian approach by entering positions when price returns to the channel after overextending.
Strategy Logic
Long Entry Conditions:
Price crosses above the lower Keltner Channel from below
This signals a potential reversal after an oversold condition
Position is entered at market price upon signal confirmation
Long Exit Conditions:
Take Profit: Price reaches the upper Keltner Channel
Stop Loss: Placed at half the channel width below entry price
Short Entry Conditions:
Price crosses below the upper Keltner Channel from above
This signals a potential reversal after an overbought condition
Position is entered at market price upon signal confirmation
Short Exit Conditions:
Take Profit: Price reaches the lower Keltner Channel
Stop Loss: Placed at half the channel width above entry price
Key Features
Mean Reversion Approach: Takes advantage of price tendency to return to mean after extreme moves
Adaptive Stop Loss: Stop loss dynamically adjusts based on market volatility via ATR
Visual Signals: Entry points clearly marked with directional triangles
Fully Customizable: All parameters can be adjusted to fit various market conditions
Customizable Parameters
Keltner EMA Length: Controls the responsiveness of the channel (default: 20)
ATR Multiplier: Determines channel width/sensitivity (default: 2.0)
ATR Length: Affects volatility calculation period (default: 10)
Stop Loss Factor: Adjusts risk management aggressiveness (default: 0.5)
Best Used On
This strategy performs well on:
Currency pairs with defined ranging behavior
Commodities that show cyclical price movements
Higher timeframes (4H, Daily) for more reliable signals
Markets with moderate volatility
Risk Management
The built-in stop loss mechanism automatically adjusts to market conditions by calculating position risk relative to the current channel width. This approach ensures that risk remains proportional to potential reward across varying market conditions.
Notes for Optimization
Consider adjusting the EMA length and ATR multiplier based on the specific asset and timeframe:
Lower values increase sensitivity and generate more signals
Higher values produce fewer but potentially more reliable signals
As with any trading strategy, thorough backtesting is recommended before live implementation.
Past performance is not indicative of future results. Always practice sound risk management.






















