CFB-Adaptive, Williams %R w/ Dynamic Zones [Loxx]CFB-Adaptive, Williams %R w/ Dynamic Zones is a Jurik-Composite-Fractal-Behavior-Adaptive Williams % Range indicator with Dynamic Zones. These additions to the WPR calculation reduce noise and return a signal that is more viable than WPR alone.
What is Williams %R?
Williams %R , also known as the Williams Percent Range, is a type of momentum indicator that moves between 0 and -100 and measures overbought and oversold levels. The Williams %R may be used to find entry and exit points in the market. The indicator is very similar to the Stochastic oscillator and is used in the same way. It was developed by Larry Williams and it compares a stock’s closing price to the high-low range over a specific period, typically 14 days or periods.
What is Composite Fractal Behavior ( CFB )?
All around you mechanisms adjust themselves to their environment. From simple thermostats that react to air temperature to computer chips in modern cars that respond to changes in engine temperature, r.p.m.'s, torque, and throttle position. It was only a matter of time before fast desktop computers applied the mathematics of self-adjustment to systems that trade the financial markets.
Unlike basic systems with fixed formulas, an adaptive system adjusts its own equations. For example, start with a basic channel breakout system that uses the highest closing price of the last N bars as a threshold for detecting breakouts on the up side. An adaptive and improved version of this system would adjust N according to market conditions, such as momentum, price volatility or acceleration.
Since many systems are based directly or indirectly on cycles, another useful measure of market condition is the periodic length of a price chart's dominant cycle, (DC), that cycle with the greatest influence on price action.
The utility of this new DC measure was noted by author Murray Ruggiero in the January '96 issue of Futures Magazine. In it. Mr. Ruggiero used it to adaptive adjust the value of N in a channel breakout system. He then simulated trading 15 years of D-Mark futures in order to compare its performance to a similar system that had a fixed optimal value of N. The adaptive version produced 20% more profit!
This DC index utilized the popular MESA algorithm (a formulation by John Ehlers adapted from Burg's maximum entropy algorithm, MEM). Unfortunately, the DC approach is problematic when the market has no real dominant cycle momentum, because the mathematics will produce a value whether or not one actually exists! Therefore, we developed a proprietary indicator that does not presuppose the presence of market cycles. It's called CFB (Composite Fractal Behavior) and it works well whether or not the market is cyclic.
CFB examines price action for a particular fractal pattern, categorizes them by size, and then outputs a composite fractal size index. This index is smooth, timely and accurate
Essentially, CFB reveals the length of the market's trending action time frame. Long trending activity produces a large CFB index and short choppy action produces a small index value. Investors have found many applications for CFB which involve scaling other existing technical indicators adaptively, on a bar-to-bar basis.
What is Jurik Volty used in the Juirk Filter?
One of the lesser known qualities of Juirk smoothing is that the Jurik smoothing process is adaptive. "Jurik Volty" (a sort of market volatility ) is what makes Jurik smoothing adaptive. The Jurik Volty calculation can be used as both a standalone indicator and to smooth other indicators that you wish to make adaptive.
What is the Jurik Moving Average?
Have you noticed how moving averages add some lag (delay) to your signals? ... especially when price gaps up or down in a big move, and you are waiting for your moving average to catch up? Wait no more! JMA eliminates this problem forever and gives you the best of both worlds: low lag and smooth lines.
Ideally, you would like a filtered signal to be both smooth and lag-free. Lag causes delays in your trades, and increasing lag in your indicators typically result in lower profits. In other words, late comers get what's left on the table after the feast has already begun.
What are Dynamic Zones?
As explained in "Stocks & Commodities V15:7 (306-310): Dynamic Zones by Leo Zamansky, Ph .D., and David Stendahl"
Most indicators use a fixed zone for buy and sell signals. Here’ s a concept based on zones that are responsive to past levels of the indicator.
One approach to active investing employs the use of oscillators to exploit tradable market trends. This investing style follows a very simple form of logic: Enter the market only when an oscillator has moved far above or below traditional trading lev- els. However, these oscillator- driven systems lack the ability to evolve with the market because they use fixed buy and sell zones. Traders typically use one set of buy and sell zones for a bull market and substantially different zones for a bear market. And therein lies the problem.
Once traders begin introducing their market opinions into trading equations, by changing the zones, they negate the system’s mechanical nature. The objective is to have a system automatically define its own buy and sell zones and thereby profitably trade in any market — bull or bear. Dynamic zones offer a solution to the problem of fixed buy and sell zones for any oscillator-driven system.
An indicator’s extreme levels can be quantified using statistical methods. These extreme levels are calculated for a certain period and serve as the buy and sell zones for a trading system. The repetition of this statistical process for every value of the indicator creates values that become the dynamic zones. The zones are calculated in such a way that the probability of the indicator value rising above, or falling below, the dynamic zones is equal to a given probability input set by the trader.
To better understand dynamic zones, let's first describe them mathematically and then explain their use. The dynamic zones definition:
Find V such that:
For dynamic zone buy: P{X <= V}=P1
For dynamic zone sell: P{X >= V}=P2
where P1 and P2 are the probabilities set by the trader, X is the value of the indicator for the selected period and V represents the value of the dynamic zone.
The probability input P1 and P2 can be adjusted by the trader to encompass as much or as little data as the trader would like. The smaller the probability, the fewer data values above and below the dynamic zones. This translates into a wider range between the buy and sell zones. If a 10% probability is used for P1 and P2, only those data values that make up the top 10% and bottom 10% for an indicator are used in the construction of the zones. Of the values, 80% will fall between the two extreme levels. Because dynamic zone levels are penetrated so infrequently, when this happens, traders know that the market has truly moved into overbought or oversold territory.
Calculating the Dynamic Zones
The algorithm for the dynamic zones is a series of steps. First, decide the value of the lookback period t. Next, decide the value of the probability Pbuy for buy zone and value of the probability Psell for the sell zone.
For i=1, to the last lookback period, build the distribution f(x) of the price during the lookback period i. Then find the value Vi1 such that the probability of the price less than or equal to Vi1 during the lookback period i is equal to Pbuy. Find the value Vi2 such that the probability of the price greater or equal to Vi2 during the lookback period i is equal to Psell. The sequence of Vi1 for all periods gives the buy zone. The sequence of Vi2 for all periods gives the sell zone.
In the algorithm description, we have: Build the distribution f(x) of the price during the lookback period i. The distribution here is empirical namely, how many times a given value of x appeared during the lookback period. The problem is to find such x that the probability of a price being greater or equal to x will be equal to a probability selected by the user. Probability is the area under the distribution curve. The task is to find such value of x that the area under the distribution curve to the right of x will be equal to the probability selected by the user. That x is the dynamic zone.
Included:
Bar coloring
3 signal variations w/ alerts
Divergences w/ alerts
Loxx's Expanded Source Types
Cerca negli script per "algo"
Intermediate Williams %R w/ Discontinued Signal Lines [Loxx]Intermediate Williams %R w/ Discontinued Signal Lines is a Williams %R indicator with advanced options:
-Williams %R smoothing, 30+ smoothing algos found here:
-Williams %R signal, 30+ smoothing algos found here:
-DSL lines with smoothing or fixed overbought/oversold boundaries, smoothing algos are EMA and FEMA
-33 Expanded Source Type inputs including Heiken-Ashi and Heiken-Ashi Better, found here:
What is Williams %R?
Williams %R, also known as the Williams Percent Range, is a type of momentum indicator that moves between 0 and -100 and measures overbought and oversold levels. The Williams %R may be used to find entry and exit points in the market. The indicator is very similar to the Stochastic oscillator and is used in the same way. It was developed by Larry Williams and it compares a stock’s closing price to the high-low range over a specific period, typically 14 days or periods.
Included:
-Toggle on/off bar coloring
-Toggle on/off signal line
OrdinaryLeastSquaresLibrary "OrdinaryLeastSquares"
One of the most common ways to estimate the coefficients for a linear regression is to use the Ordinary Least Squares (OLS) method.
This library implements OLS in pine. This implementation can be used to fit a linear regression of multiple independent variables onto one dependent variable,
as long as the assumptions behind OLS hold.
solve_xtx_inv(x, y) Solve a linear system of equations using the Ordinary Least Squares method.
This function returns both the estimated OLS solution and a matrix that essentially measures the model stability (linear dependence between the columns of 'x').
NOTE: The latter is an intermediate step when estimating the OLS solution but is useful when calculating the covariance matrix and is returned here to save computation time
so that this step doesn't have to be calculated again when things like standard errors should be calculated.
Parameters:
x : The matrix containing the independent variables. Each column is regarded by the algorithm as one independent variable. The row count of 'x' and 'y' must match.
y : The matrix containing the dependent variable. This matrix can only contain one dependent variable and can therefore only contain one column. The row count of 'x' and 'y' must match.
Returns: Returns both the estimated OLS solution and a matrix that essentially measures the model stability (xtx_inv is equal to (X'X)^-1).
solve(x, y) Solve a linear system of equations using the Ordinary Least Squares method.
Parameters:
x : The matrix containing the independent variables. Each column is regarded by the algorithm as one independent variable. The row count of 'x' and 'y' must match.
y : The matrix containing the dependent variable. This matrix can only contain one dependent variable and can therefore only contain one column. The row count of 'x' and 'y' must match.
Returns: Returns the estimated OLS solution.
standard_errors(x, y, beta_hat, xtx_inv) Calculate the standard errors.
Parameters:
x : The matrix containing the independent variables. Each column is regarded by the algorithm as one independent variable. The row count of 'x' and 'y' must match.
y : The matrix containing the dependent variable. This matrix can only contain one dependent variable and can therefore only contain one column. The row count of 'x' and 'y' must match.
beta_hat : The Ordinary Least Squares (OLS) solution provided by solve_xtx_inv() or solve().
xtx_inv : This is (X'X)^-1, which means we take the transpose of the X matrix, multiply that the X matrix and then take the inverse of the result.
This essentially measures the linear dependence between the columns of the X matrix.
Returns: The standard errors.
estimate(x, beta_hat) Estimate the next step of a linear model.
Parameters:
x : The matrix containing the independent variables. Each column is regarded by the algorithm as one independent variable. The row count of 'x' and 'y' must match.
beta_hat : The Ordinary Least Squares (OLS) solution provided by solve_xtx_inv() or solve().
Returns: Returns the new estimate of Y based on the linear model.
Average Down [Zeiierman]AVERAGING DOWN
Averaging down is an investment strategy that involves buying additional contracts of an asset when the price drops. This way, the investor increases the size of their position at discounted prices. The averaging down strategy is highly debated among traders and investors because it can either lead to huge losses or great returns. Nevertheless, averaging down is often used and favored by long-term investors and contrarian traders. With careful/proper risk management, averaging down can cover losses and magnify the returns when the asset rebounds. However, the main concern for a trader is that it can be hard to identify the difference between a pullback or the start of a new trend.
HOW DOES IT WORK
Averaging down is a method to lower the average price at which the investor buys an asset. A lower average price can help investors come back to break even quicker and, if the price continues to rise, get an even bigger upside and thus increase the total profit from the trade. For example, We buy 100 shares at $60 per share, a total investment of $6000, and then the asset drops to $40 per share; in order to come back to break even, the price has to go up 50%. (($60/$40) - 1)*100 = 50%.
The power of Averaging down comes into play if the investor buys additional shares at a lower price, like another 100 shares at $40 per share; the total investment is ($6000+$4000 = $10000). The average price for the investment is now $50. (($60 x 100) + ($40 x 100))/200; in order to get back to break even, the price has to rise 25% ($50/$40)-1)*100 = 25%, and if the price continues up to $60 per share, the investor can secure a profit at 16%. So by averaging down, investors and traders can cover the losses easier and potentially have more profit to secure at the end.
THE AVERAGE DOWN TRADINGVIEW TOOL
This script/indicator/trading tool helps traders and investors to get the average price of their position. The tool works for Long and Short and displays the entry price, average price, and the PnL in points.
HOW TO USE
Use the tool to calculate the average price of your long or short position in any market and timeframe.
Get the current PnL for the investment and keep track of your entry prices.
APPLY TO CHART
When you apply the tool on the chart, you have to select five entry points, and within the setting panel, you can choose how many of these five entry points are active and how many contracts each entry has. Then, the tool will display your average price based on the entries and the number of contracts used at each price level.
LONG
Set your entries and the number of contracts at each price level. The indicator will then display all your long entries and at what price you will break even. The entry line changes color based on if the entry is in profit or loss.
SHORT
Set your entries and the number of contracts at each price level. The indicator will then display all your short entries and at what price you will break even. The entry line changes color based on if the entry is in profit or loss.
-----------------
Disclaimer
Copyright by Zeiierman.
The information contained in my Scripts/Indicators/Ideas/Algos/Systems does not constitute financial advice or a solicitation to buy or sell any securities of any type. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual’s trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
My Scripts/Indicators/Ideas/Algos/Systems are only for educational purposes!
Example: Monte Carlo SimulationExperimental:
Example execution of Monte Carlo Simulation applied to the markets(this is my interpretation of the algo so inconsistencys may appear).
note:
the algorithm is very demanding so performance is limited.
RAT Moving Average Crossover StrategyThis is based on general moving average crossovers but some modifications made to generate buy sell signals.
Weis pip zigzag jayyWhat you see here is the Weis pip zigzag wave plotted directly on the price chart. This script is the companion to the Weis pip wave ( ) which is plotted in the lower panel of the displayed chart and can be used as an alternate way of plotting the same results. The Weis pip zigzag wave shows how far in terms of price a Weis wave has traveled through the duration of a Weis wave. The Weis pip zigzag wave is used in combination with the Weis cumulative volume wave. The two waves must be set to the same "wave size".
To use this script you must set the wave size. Using the traditional Weis method simply enter the desired wave size in the box "Select Weis Wave Size" In this example, it is set to 5. Each wave for each security and each timeframe requires its own wave size. Although not the traditional method a more automatic way to set wave size would be to use ATR. This is not the true Weis method but it does give you similar waves and, importantly, without the hassle described above. Once the Weis wave size is set then the pip wave will be shown.
I have put a pip zigzag of a 5 point Weis wave on the bar chart - that is a different script. I have added it to allow your eye to see what a Weis wave looks like. You will notice that the wave is not in straight lines connecting wave tops to bottoms this is a function of the limitations of Pinescript version 1. This script would need to be in version 4 to allow straight lines. There are too many calculations within this script to allow conversion to Pinescript version 4 or even Version 3. I am in the process of rewriting this script to reduce the number of calculations and streamline the algorithm.
The numbers plotted on the chart are calculated to be relative numbers. The script is limited to showing only three numbers vertically. Only the highest three values of a number are shown. For example, if the highest recent pip value is 12,345 only the first 3 numerals would be displayed ie 123. But suppose there is a recent value of 691. It would not be helpful to display 691 if the other wave size is shown as 123. To give the appropriate relative value the script will show a value of 7 instead of 691. This informs you of the relative magnitude of the values. This is done automatically within the script. There is likely no need to manually override the automatically calculated value. I will create a video that demonstrates the manual override method.
What is a Weis wave? David Weis has been recognized as a Wyckoff method analyst he has written two books one of which, Trades About to Happen, describes the evolution of the now popular Weis wave. The method employed by Weis is to identify waves of price action and to compare the strength of the waves on characteristics of wave strength. Chief among the characteristics of strength is the cumulative volume of the wave. There are other markers that Weis uses as well for example how the actual price difference between the start of the Weis wave from start to finish. Weis also uses time, particularly when using a Renko chart. Weis specifically uses candle or bar closes to define all wave action ie a line chart.
David Weis did a futures io video which is a popular source of information about his method.
This is the identical script with the identical settings but without the offending links. If you want to see the pip Weis method in practice then search Weis pip wave. If you want to see Weis chart in pdf then message me and I will give a link or the Weis pdf. Why would you want to see the Weis chart for May 27, 2020? Merely to confirm the veracity of my algorithm. You could compare my Weis chart here () from the same period to the David Weis chart from May 27. Both waves are for the ES!1 4 hour chart and both for a wave size of 5.
Price Action and 3 EMAs Momentum plus Sessions FilterThis indicator plots on the chart the parameters and signals of the Price Action and 3 EMAs Momentum plus Sessions Filter Algorithmic Strategy. The strategy trades based on time-series (absolute) and relative momentum of price close, highs, lows and 3 EMAs.
I am still learning PS and therefore I have only been able to write the indicator up to the Signal generation. I plan to expand the indicator to Entry Signals as well as the full Strategy.
The strategy works best on EURUSD in the 15 minutes TF during London and New York sessions with 1 to 1 TP and SL of 30 pips with lots resulting in 3% risk of the account per trade. I have already written the full strategy in another language and platform and back tested it for ten years and it was profitable for 7 of the 10 years with average profit of 15% p.a which can be easily increased by increasing risk per trade. I have been trading it live in that platform for over two years and it is profitable.
Contributions from experienced PS coders in completing the Indicator as well as writing the Strategy and back testing it on Trading View will be appreciated.
STRATEGY AND INDICATOR PARAMETERS
Three periods of 12, 48 and 96 in the 15 min TF which are equivalent to 3, 12 and 24 hours i.e (15 min * period / 60 min) are the foundational inputs for all the parameters of the PA & 3 EMAs Momentum + SF Algo Strategy and its Indicator.
3 EMAs momentum parameters and conditions
• FastEMA = ema of 12 periods
• MedEMA = ema of 48 periods
• SlowEMA = ema of 96 periods
• All the EMAs analyse price close for up to 96 (15 min periods) equivalent to 24 hours
• There’s Upward EMA momentum if price close > FastEMA and FastEMA > MedEMA and MedEMA > SlowEMA
• There’s Downward EMA momentum if price close < FastEMA and FastEMA < MedEMA and MedEMA < SlowEMA
PA momentum parameters and conditions
• HH = Highest High of 48 periods from 1st closed bar before current bar
• LL = Lowest Low of 48 periods from 1st closed bar from current bar
• Previous HH = Highest High of 84 periods from 12th closed bar before current bar
• Previous LL = Lowest Low of 84 periods from 12th closed bar before current bar
• All the HH & LL and prevHH & prevLL are within the 96 periods from the 1st closed bar before current bar and therefore indicative of momentum during the past 24 hours
• There’s Upward PA momentum if price close > HH and HH > prevHH and LL > prevLL
• There’s Downward PA momentum if price close < LL and LL < prevLL and HH < prevHH
Signal conditions and Status (BuySignal, SellSignal or Neutral)
• The strategy generates Buy or Sell Signals if both 3 EMAs and PA momentum conditions are met for each direction and these occur during the London and New York sessions
• BuySignal if price close > FastEMA and FastEMA > MedEMA and MedEMA > SlowEMA and price close > HH and HH > prevHH and LL > prevLL and timeinrange (LDN&NY) else Neutral
• SellSignal if price close < FastEMA and FastEMA < MedEMA and MedEMA < SlowEMA and price close < LL and LL < prevLL and HH < prevHH and timeinrange (LDN&NY) else Neutral
Entry conditions and Status (EnterBuy, EnterSell or Neutral)(NOT CODED YET)
• ENTRY IS NOT AT THE SIGNAL BAR but at the current bar tick price retracement to FastEMA after the signal
• EnterBuy if current bar tick price <= FastEMA and current bar tick price > prevHH at the time of the Buy Signal
• EnterSell if current bar tick price >= FastEMA and current bar tick price > prevLL at the time of the Sell Signal
NAND PerceptronExperimental NAND Perceptron based upon Python template that aims to predict NAND Gate Outputs. A Perceptron is one of the foundational building blocks of nearly all advanced Neural Network layers and models for Algo trading and Machine Learning.
The goal behind this script was threefold:
To prove and demonstrate that an ACTUAL working neural net can be implemented in Pine, even if incomplete.
To pave the way for other traders and coders to iterate on this script and push the boundaries of Tradingview strategies and indicators.
To see if a self-contained neural network component for parameter optimization within Pinescript was hypothetically possible.
NOTE: This is a highly experimental proof of concept - this is NOT a ready-made template to include or integrate into existing strategies and indicators, yet (emphasis YET - neural networks have a lot of potential utility and potential when utilized and implemented properly).
Hardcoded NAND Gate outputs with Bias column (X0):
// NAND Gate + X0 Bias and Y-true
// X0 // X1 // X2 // Y
// 1 // 0 // 0 // 1
// 1 // 0 // 1 // 1
// 1 // 1 // 0 // 1
// 1 // 1 // 1 // 0
Column X0 is bias feature/input
Column X1 and X2 are the NAND Gate
Column Y is the y-true values for the NAND gate
yhat is the prediction at that timestep
F0,F1,F2,F3 are the Dot products of the Weights (W0,W1,W2) and the input features (X0,X1,X2)
Learning rate and activation function threshold are enabled by default as input parameters
Uncomment sections for more training iterations/epochs:
Loop optimizations would be amazing to have for a selectable length for training iterations/epochs but I'm not sure if it's possible in Pine with how this script is structured.
Error metrics and loss have not been implemented due to difficulty with script length and iterations vs epochs - I haven't been able to configure the input parameters to successfully predict the right values for all four y-true values for the NAND gate (only been able to get 3/4; If you're able to get all four predictions to be correct, let me know, please).
// //---- REFERENCE for final output
// A3 := 1, y0 true
// B3 := 1, y1 true
// C3 := 1, y2 true
// D3 := 0, y3 true
PLEASE READ: Source article/template and main code reference:
towardsdatascience.com
towardsdatascience.com
towardsdatascience.com
Baseline-C [ID: AC-P]The "AC-P" version of jiehonglim's NNFX Baseline script is my personal customized version of the NNFX Baseline concept as part of the NNFX Algorithm stack/structure for 1D Trend Trading for Forex. Everget's JMA implementation is used for the baseline smoothing method, with optional ATR bands at 1.0x and 1.5x from the baseline.
NNFX = No Nonsense Forex
Baseline = Component of the NNFX Algorithm that consists of a single moving average
Baseline ---> Meant to be used in conjunction with ATR/C1/C2/Vol Indicator/Exit Indicator as per NNFX Algorithm setup/structure. C1 is 1st Confirmation Indicator, C2 is 2nd Confirmation Indicator.
JMA (Jurik Moving Average) is used for the baseline and slow baseline.
A slow baseline option is included, but disabled by default.
The faint orange/purple lines are 1.0x/1.5x ATR from the Baseline, and are what I use as potential TP/SL targets or to evaluate when to stay out of a trade (chop/missed entry/exit/other/ATR breach), depending on the trade setup (in conjunction with C1/C2/Vol Indicator/Exit Indicator)
This script is heavily based upon jiehonglim's NNFX Baseline script for signaling, barcoloring, and ATR.
SSL Channel option included but disabled by default (Erwinbeckers SSL component)
POC (Point of Control) from Volume Profile is included/enabled by default for both the current timeframe and 12HR timeframe
03.freeman's InfoPanel Divergence Indicator was used a reference to replace the current/previous ATR information infopanel/info draw from jiehonglim's script. I'm not sure whether I like the previous way ATR info was displayed vs how I have it currently, but it's something that is completely optional:
Specifically: I am tuning this baseline/indicator for 1D trading as part of the NNFX system, for Forex.
DO NOT USE THIS INDICATOR WITHOUT PROPER TUNING/ADJUSTMENT for your timeframe and asset class.
Note about lack of alerts:
Alerts for baseline crosses (and other crosses) have been purposefully omitted for this version upon initial publication. While getting alerts for baseline crosses under certain conditions/filtered conditions that eliminate low-importance signals and crossover whipsaw would be great, it's something I'm still looking into.
SPECIFICALLY: There are entry, exit, take profit, and continuation signal components in relation to the Baseline to the rest of the NNFX Algorithm stack (ATR/C1/C2/Vol Indicator/Exit Indicator), including but limited to the "1 candle rule" and the "7 candle rule" as per NNFX.
Implementing alerts that are significant that also factor in these rules while reducing alert spam/false signals would be ideal, but it's also the HTF/Daily chart - visually, entry/exit/continuation signal alignment is easy to spot when trading 1D - alerts may be redundant/a pursuit in diminishing returns (for now).
//-------------------------------------------------------------------
// Acknowledgements/Reference:
// jiehonglim, NNFX Baseline Script - Moving Averages
//
// Fractured, Many Moving Averages
//
// everget, Jurik Moving Average/JMA
//
// 03.freeman, InfoPanel Divergence Indicator
//
// Ggqmna Volume stops
//
// Libertus RSI Divs
//
// ChrisMoody, CM_Price-Action-Bars-Price Patterns That Work
//
// Erwinbeckers SSL Channel
//
Step-OMA with SignalsThe Step-OMA with Signals is a sophisticated trend-following indicator that combines Loxx's Optimized Moving Average (OMA) algorithm with an advanced step function to create a highly responsive yet smooth trend detection system. This indicator excels at identifying trend changes early while minimizing false signals through its adaptive filtering mechanism.
Core Algorithm Components
1. Optimized Moving Average (OMA) Foundation
Based on Loxx's advanced OMA implementation
Uses a 6-stage exponential smoothing process
Incorporates adaptive period calculation based on market noise
Employs Jurik-style smoothing techniques for superior signal quality
2. Step Function Integration
Implements a step-based trend detection mechanism
Uses ATR-based dynamic threshold calculation
Maintains trend consistency through threshold memory
Provides clear trend change identification
3. Adaptive Noise Filtering
Automatically adjusts to market volatility
Calculates optimal averaging periods based on price noise
Reduces false signals in choppy market conditions
Speed (Default: 3.0, Range: -1.5 to unlimited)
This is the most critical parameter affecting indicator behavior:
Positive Speed Values (0 to 10.0+):
Creates faster, more responsive signals
Higher values increase sensitivity to recent price action
Negative Speed Values (-1.5 to -0.1):
Produces smoother, more conservative signals
Reduces noise and false breakouts
Creates delayed but more reliable trend confirmations
Adaptive (Default: True)
When enabled: Automatically adjusts averaging period based on market noise
When disabled: Uses fixed length parameter
Recommendation: Keep enabled for most market conditions
Sensitivity Factor (Default: 3.0)
Controls the threshold distance for trend change detection
Lower values: More frequent signals, higher sensitivity
Higher values: Fewer but more reliable signals
Optimal range: 2.0-5.0 depending on market volatility
Step Size Period (Default: 50)
Determines the ATR calculation period for dynamic thresholds
Affects the indicator's adaptation to volatility changes
Lower values: More reactive to recent volatility
Higher values: More stable threshold calculation
For a trading application, Step-OMA is a suitable base filter to complement other types of signaling indicators (oscillators, momentum indicators).
Disclaimer: This indicator is a technical analysis tool and should be used in conjunction with proper risk management and comprehensive market analysis. Past performance does not guarantee future results.
Pattern Detector [theUltimator5]🎯 Overview
The Pattern Detector is a comprehensive technical analysis indicator that automatically identifies and visualizes multiple pattern types on your charts. Built with advanced ZigZag technology and sophisticated pattern recognition algorithms, this tool helps traders spot high-probability trading opportunities across all timeframes and markets.
✨ Key Features
🔍 Multi-Pattern Detection System
Harmonic Patterns: Butterfly, Gartley, Bat, and Crab patterns with precise Fibonacci ratios
Classic Reversal Patterns: Head & Shoulders and Inverse Head & Shoulders
Double Patterns: Double Tops and Double Bottoms with extreme validation
Wedge Patterns: Rising and Falling Wedges with volume confirmation
📊 Advanced ZigZag Engine
Customizable sensitivity (5-50 levels)
Depth multiplier for multi-timeframe analysis
Real-time pivot detection with noise filtering
Option to display ZigZag lines only for pure price action analysis
🎨 Visualization
Clean pattern lines with distinct color coding
Point labeling system (X, A, B, C, D for harmonics / LS, H, RS for H&S)
Pattern name displays with bullish/bearish direction
Price target projections with arrow indicators
Subtle pattern fills for enhanced visibility
🛠️ Settings & Configuration
Core ZigZag Settings
ZigZag Sensitivity (5-50): Controls pattern detection sensitivity. Lower values detect more patterns but may include noise. Higher values focus on major swings only.
ZigZag Depth Multiplier (1-5): Multiplies sensitivity for deeper analysis. Level 1 = most responsive, Level 5 = major swings only.
Pattern Detection Toggles
Show ZigZag Lines Only: Displays pure ZigZag without pattern detection for price structure analysis
Detect Harmonic Patterns: Enable/disable Fibonacci-based harmonic pattern detection
Detect Head & Shoulders: Toggle classic reversal pattern identification
Detect Double Tops/Bottoms: Enable double pattern detection with extreme validation
Detect Wedge Patterns: Toggle wedge pattern detection with volume confirmation
Display Options
Show Pattern Names: Display pattern names directly on chart (e.g., "Butterfly (Bullish)")
Show Point Labels: Add lettered labels at key pattern points for structure identification
Project Harmonic Targets: Show projected completion points for incomplete harmonic patterns
📈 Pattern Types Explained
Harmonic Patterns 🦋
Advanced Fibonacci-based patterns that provide high-probability reversal signals:
Butterfly: AB=0.786 XA, BC=0.382-0.886 AB, CD=1.618-2.24 BC
Gartley: AB=0.618 XA, BC=0.382-0.886 AB, CD=1.272-1.618 BC
Bat: AB=0.382-0.50 XA, BC=0.382-0.886 AB, CD=1.618-2.24 BC
Crab: AB=0.382-0.618 XA, BC=0.382-0.886 AB, CD=2.24-3.618 BC
Head & Shoulders 👤
Classic three-peak reversal pattern indicating trend exhaustion:
Standard H&S: Bearish reversal at tops
Inverse H&S: Bullish reversal at bottoms
Automatic neckline validation and price target calculation
Double Patterns 📊
Powerful reversal patterns with extreme validation:
Double Top: Two similar highs with valley between (bearish)
Double Bottom: Two similar lows with peak between (bullish)
Includes lookback period validation to ensure patterns are significant extremes
Wedge Patterns 📐
Continuation/reversal patterns with converging trend lines:
Rising Wedge: Converging upward slopes (typically bearish)
Falling Wedge: Converging downward slopes (typically bullish)
Volume confirmation required for increased accuracy
🎯 Trading Applications
Entry Signals
Harmonic Patterns: Enter at point D completion with targets at point A
H&S Patterns: Enter on neckline break with calculated targets
Double Patterns: Enter on support/resistance break with measured moves
Wedge Patterns: Enter on breakout direction with volume confirmation
Risk Management
Use pattern structure for logical stop placement
Pattern invalidation levels provide clear exit rules
Multiple pattern confirmation increases probability
Multi-Timeframe Analysis
Higher ZigZag depth for longer-term patterns
Lower sensitivity for short-term trading patterns
Combine with other timeframes for confluence
⚙️ Optimal Settings
For Day Trading (1m-15m charts)
ZigZag Sensitivity: 5-9
Depth Multiplier: 1-2
Enable all pattern types for maximum opportunities
For Swing Trading (1H-4H charts)
ZigZag Sensitivity: 9-15
Depth Multiplier: 2-3
Focus on harmonic and H&S patterns
For Position Trading (Daily+ charts)
ZigZag Sensitivity: 15-25
Depth Multiplier: 3-5
Emphasize major harmonic and double patterns
🔧 Technical Specifications
Maximum Lookback: 5000 bars for comprehensive analysis
Pattern Overlap Prevention: Intelligent filtering prevents duplicate patterns
Performance Optimized: Efficient algorithms for real-time detection
Volume Integration: Advanced volume analysis for wedge confirmation
Fibonacci Precision: 10% tolerance for harmonic ratio validation
📚 How to Use
Add to Chart: Apply indicator to any timeframe/market
Configure Settings: Adjust sensitivity based on trading style
Enable Patterns: Toggle desired pattern types
Analyze Results: Look for completed patterns with clear structure
Plan Trades: Use price targets and pattern invalidation for trade management
Perfect for both novice and experienced traders seeking systematic pattern recognition with visualization and entry/exit signals.
Contrarian Market Structure BreakMarket Structure Break application was inspired and adapted from Market Structure Oscillator indicator developed by Lux Algo. So much credit to their work.
This indicator pairs nicely with the Contrarian 100 MA and can be located here:
Indicator Description: Contrarian Market Structure BreakOverview
The "Contrarian Market Structure Break" indicator is a versatile tool tailored for traders seeking to identify potential reversal opportunities by analyzing market structure across multiple timeframes. Built on Institutional Concepts of Structure (ICT), this indicator detects Break of Structure (BOS) and Change of Character (CHoCH) patterns across short-term, intermediate-term, and long-term swings, plotting them with customizable lines and labels. It generates contrarian buy and sell signals when price breaks key swing levels, with a unique "Blue Dot Tracker" to monitor consecutive buy signals for trend confirmation. Optimized for the daily timeframe, this indicator is adaptable to other timeframes with proper testing, making it ideal for traders of forex, stocks, or cryptocurrencies.
How It Works
The indicator combines three key components to provide a comprehensive view of market dynamics: Multi-Timeframe Market Structure Analysis: It identifies swing highs and lows across short-term, intermediate-term, and long-term periods, plotting BOS (continuation) and CHoCH (reversal) events with customizable line styles and labels.
Contrarian Signal Generation: Buy and sell signals are triggered when the price crosses below swing lows (buy) or above swing highs (sell), indicating potential reversals in overextended markets.
Blue Dot Tracker: A unique feature that counts consecutive buy signals ("blue dots") and highlights a "Hold Investment" state with a yellow background when three or more buy signals occur, suggesting a potential trend continuation.
Signals are visualized as small circles below (buy) or above (sell) price bars, and a table in the bottom-right corner displays the blue dot count and recommended action (Hold or Flip Investment), enhancing decision-making clarity.
Mathematical Concepts Swing Detection: The indicator identifies swing highs and lows by comparing price patterns over three bars, ensuring robust detection of pivot points. A swing high occurs when the middle bar’s high is higher than the surrounding bars, and a swing low occurs when the middle bar’s low is lower.
Market Structure Logic: BOS is detected when the price breaks a prior swing high (bullish) or low (bearish) in the direction of the current trend, while CHoCH signals a potential reversal when the price breaks a swing level against the trend. These are calculated across three timeframes for a multi-dimensional perspective.
Blue Dot Tracker: This feature counts consecutive buy signals and tracks the entry price. If three or more buy signals occur without a sell signal, the indicator enters a "Hold Investment" state, marked by a yellow background, until the price exceeds the entry price or a sell signal occurs.
Entry and Exit Rules Buy Signal (Blue Dot Below Bar): Triggered when the closing price crosses below a swing low on either the intermediate-term or long-term timeframe, suggesting an oversold condition and potential reversal upward. Short-term signals can be enabled but are disabled by default to reduce noise.
Sell Signal (White Dot Above Bar): Triggered when the closing price crosses above a swing high on either the intermediate-term or long-term timeframe, indicating an overbought condition and potential reversal downward.
Blue Dot Tracker Logic: After a buy signal, the indicator increments a blue dot counter and records the entry price. If three or more consecutive buy signals occur (blueDotCount ≥ 3), the indicator enters a "Hold Investment" state, highlighted with a yellow background, suggesting a potential trend continuation. The "Hold Investment" state ends when the price exceeds the entry price or a sell signal occurs, resetting the counter.
Exit Rules: Traders can exit buy positions when a sell signal appears, the price exceeds the entry price during a "Hold Investment" state, or based on additional confirmation from BOS/CHoCH patterns or other technical analysis tools. Always use proper risk management.
Recommended Usage
The indicator is optimized for the daily timeframe, where it effectively captures significant reversal and continuation patterns in trending or ranging markets. It can be adapted to other timeframes (e.g., 1H, 4H, 15M) with careful testing of settings, particularly enabling/disabling short-term structure analysis to suit market conditions. Backtesting is recommended to optimize performance for your chosen asset and timeframe.
Customization Options Market Structure Display: Toggle short-term, intermediate-term, and long-term structures on or off, with customizable line styles (solid, dashed, dotted) and colors for bullish and bearish breaks.
Labels: Enable or disable BOS/CHoCH labels for each timeframe to reduce chart clutter.
Signal Visibility: Hide buy/sell signals if desired for a cleaner chart.
Blue Dot Tracker: Monitor the blue dot count and action (Hold or Flip Investment) via the table display, which is fully customizable in terms of position and appearance.
Why Use This Indicator?
The "Contrarian Market Structure Break" indicator offers a robust framework for identifying high-probability reversal and continuation setups using ICT principles. Its multi-timeframe analysis, clear signal visualization, and innovative Blue Dot Tracker provide traders with actionable insights into market dynamics. Whether you're a swing trader or a day trader, this indicator’s flexibility and intuitive design make it a valuable addition to your trading arsenal.
Note for TradingView Moderators
This script complies with TradingView's House Rules by providing an educational and transparent description without performance claims or guarantees. It is designed to assist traders in technical analysis and should be used alongside proper risk management and personal research. The code is original, well-documented, and includes customizable inputs and clear visual outputs to enhance the user experience.
Tips for Users:
Backtest thoroughly on your chosen asset and timeframe to validate signal reliability. Combine with other indicators or price action analysis for confirmation of entries and exits. Adjust timeframe settings and enable/disable short-term structures to match market volatility and your trading style.
Hope the "Contrarian Market Structure Break" indicator enhances your trading strategy and helps you navigate the markets with confidence! Happy trading!
Alpha - Combined BreakoutThis Pine Script indicator, "Alpha - Combined Breakout," is a combination between Smart Money Breakout Signals and UT Bot Alert, The UT Bot Alert indicator was initially developer by Yo_adriiiiaan
The idea of original code belongs HPotter.
This Indicator helps you identify potential trading opportunities by combining two distinct strategies: Smart Money Breakout and a modified UT Bot (likely a variation of the Ultimate Trend Bot). It provides visual signals, draws lines for potential take profit (TP) and stop loss (SL) levels, and includes a dashboard to track performance metrics.
Tutorial:
Understanding and Using the "Alpha - Combined Breakout" Indicator
This indicator is designed for traders looking for confirmation of market direction and potential entry/exit points by blending structural analysis with a trend-following oscillator.
How it Works (General Concept)
The indicator combines two main components:
Smart Money Breakout: This part identifies significant breaks in market structure, which "smart money" traders often use to gauge shifts in supply and demand. It looks for higher highs/lows or lower highs/lows and flags when these structural points are broken.
UT Bot: This is a trend-following component that generates buy and sell signals based on price action relative to an Average True Range (ATR) based trailing stop.
You can choose to use these signals independently or combined to generate trading alerts and visual cues on your chart. The dashboard provides a quick overview of how well the signals are performing based on your chosen settings and display mode.
Parameters and What They Do
Let's break down each input parameter:
1. Smart Money Inputs
These settings control how the indicator identifies market structure and breakouts.
swingSize (Market Structure Time-Horizon):
What it does: This integer value defines the number of candles used to identify significant "swing" (pivot) points—highs and lows.
Effect: A larger swingSize creates a smoother market structure, focusing on longer-term trends. This means signals might appear less frequently and with some delay but could be more reliable for higher timeframes or broader market movements. A smaller swingSize will pick up more minor market structure changes, leading to more frequent but potentially noisier signals, suitable for lower timeframes or scalping.
Analogy: Think of it like a zoom level on your market structure map. Higher values zoom out, showing only major mountain ranges. Lower values zoom in, showing every hill and bump.
bosConfType (BOS Confirmation Type):
What it does: This string input determines how a Break of Structure (BOS) is confirmed. You have two options:
'Candle Close': A breakout is confirmed only if a candle's closing price surpasses the previous swing high (for bullish) or swing low (for bearish).
'Wicks': A breakout is confirmed if any part of the candle (including its wick) surpasses the previous swing high or low.
Effect: 'Candle Close' provides stronger, more conservative confirmation, as it implies sustained price movement beyond the structure. 'Wicks' provides earlier, more aggressive signals, as it captures momentary breaches of the structure.
Analogy: Imagine a wall. 'Candle Close' means the whole person must get over the wall. 'Wicks' means even a finger touching over the top counts as a breach.
choch (Show CHoCH):
What it does: A boolean (true/false) input to enable or disable the display of "Change of Character" (CHoCH) labels. CHoCH indicates the first structural break against the current dominant trend.
Effect: When true, it helps identify early signs of a potential trend reversal, as it marks where the market's "character" (its tendency to make higher highs/lows or lower lows/highs) first changes.
BULL (Bullish Color) & BEAR (Bearish Color):
What they do: These color inputs allow you to customize the visual appearance of bullish and bearish signals and lines drawn by the Smart Money component.
Effect: Purely cosmetic, helps with visual identification on the chart.
sm_tp_sl_multiplier (SM TP/SL Multiplier (ATR)):
What it does: A float value that acts as a multiplier for the Average True Range (ATR) to calculate the Take Profit (TP) and Stop Loss (SL) levels specifically when you're in "Smart Money Only" mode. It uses the ATR calculated by the UT Bot's nLoss_ut as its base.
Effect: A higher multiplier creates wider TP/SL levels, potentially leading to fewer trades but larger wins/losses. A lower multiplier creates tighter TP/SL levels, potentially leading to more frequent but smaller wins/losses.
2. UT Bot Alerts Inputs
These parameters control the behavior and sensitivity of the UT Bot component.
a_ut (UT Key Value (Sensitivity)):
What it does: This integer value adjusts the sensitivity of the UT Bot.
Effect: A higher value makes the UT Bot less sensitive to price fluctuations, resulting in fewer and potentially more reliable signals. A lower value makes it more sensitive, generating more signals, which can include more false signals.
Analogy: Like a noise filter. Higher values filter out more noise, keeping only strong signals.
c_ut (UT ATR Period):
What it does: This integer sets the look-back period for the Average True Range (ATR) calculation used by the UT Bot. ATR measures market volatility.
Effect: This period directly influences the calculation of the nLoss_ut (which is a_ut * xATR_ut), thus defining the distance of the trailing stop loss and take profit levels. A longer period makes the ATR smoother and less reactive to sudden price spikes. A shorter period makes it more responsive.
h_ut (UT Signals from Heikin Ashi Candles):
What it does: A boolean (true/false) input to determine if the UT Bot calculations should use standard candlestick data or Heikin Ashi candlestick data.
Effect: Heikin Ashi candles smooth out price action, often making trends clearer and reducing noise. Using them for UT Bot signals can lead to smoother, potentially delayed signals that stay with a trend longer. Standard candles are more reactive to raw price changes.
3. Line Drawing Control Buttons
These crucial boolean inputs determine which type of signals will trigger the drawing of TP/SL/Entry lines and flags on your chart. They act as a priority system.
drawLinesUtOnly (Draw Lines: UT Only):
What it does: If checked (true), lines and flags will only be drawn when the UT Bot generates a buy/sell signal.
Effect: Isolates UT Bot signals for visual analysis.
drawLinesSmartMoneyOnly (Draw Lines: Smart Money Only):
What it does: If checked (true), lines and flags will only be drawn when the Smart Money Breakout logic generates a bullish/bearish breakout.
Effect: Overrides drawLinesUtOnly if both are checked. Isolates Smart Money signals.
drawLinesCombined (Draw Lines: UT & Smart Money (Combined)):
What it does: If checked (true), lines and flags will only be drawn when both a UT Bot signal AND a Smart Money Breakout signal occur on the same bar.
Effect: Overrides both drawLinesUtOnly and drawLinesSmartMoneyOnly if checked. Provides the strictest entry criteria for line drawing, looking for strong confluence.
Dashboard Metrics Explained
The dashboard provides performance statistics based on the lines drawing control button selected. For example, if "Draw Lines: UT Only" is active, the dashboard will show stats only for UT Bot signals.
Total Signals: The total number of buy or sell signals generated by the selected drawing mode.
TP1 Win Rate: The percentage of signals where the price reached Take Profit 1 (TP1) before hitting the Stop Loss.
TP2 Win Rate: The percentage of signals where the price reached Take Profit 2 (TP2) before hitting the Stop Loss.
TP3 Win Rate: The percentage of signals where the price reached Take Profit 3 (TP3) before hitting the Stop Loss. (Note: TP1, TP2, TP3 are in order of distance from entry, with TP3 being furthest.)
SL before any TP rate: This crucial metric shows the number of times the Stop Loss was hit / the percentage of total signals where the stop loss was triggered before any of the three Take Profit levels were reached. This gives you a clear picture of how often a trade resulted in a loss without ever moving into profit target territory.
Short Tutorial: How to Use the Indicator
Add to Chart: Open your TradingView chart, go to "Indicators," search for "Alpha - Combined Breakout," and add it to your chart.
Access Settings: Once added, click the gear icon next to the indicator name on your chart to open its settings.
Choose Your Signal Mode:
For UT Bot only: Uncheck "Draw Lines: Smart Money Only" and "Draw Lines: UT & Smart Money (Combined)". Ensure "Draw Lines: UT Only" is checked.
For Smart Money only: Uncheck "Draw Lines: UT Only" and "Draw Lines: UT & Smart Money (Combined)". Ensure "Draw Lines: Smart Money Only" is checked.
For Combined Signals: Check "Draw Lines: UT & Smart Money (Combined)". This will override the other two.
Adjust Parameters:
Start with default settings. Observe how the signals appear on your chosen asset and timeframe.
Refine Smart Money: If you see too many "noisy" market structure breaks, increase swingSize. If you want earlier breakouts, try "Wicks" for bosConfType.
Refine UT Bot: Adjust a_ut (Sensitivity) to get more or fewer UT Bot signals. Change c_ut (ATR Period) if you want larger or smaller TP/SL distances. Experiment with h_ut to see if Heikin Ashi smoothing suits your trading style.
Adjust TP/SL Multiplier: If using "Smart Money Only" mode, fine-tune sm_tp_sl_multiplier to set appropriate risk/reward levels.
Interpret Signals & Lines:
Buy/Sell Flags: These indicate the presence of a signal based on your selected drawing mode.
Entry Line (Blue Solid): This is where the signal was generated (usually the close price of the signal candle).
SL Line (Red/Green Solid): Your calculated stop loss level.
TP Lines (Dashed): Your three calculated take profit levels (TP1, TP2, TP3, where TP3 is the furthest target).
Smart Money Lines (BOS/CHoCH): These lines indicate horizontal levels where market structure breaks occurred. CHoCH labels might appear at the first structural break against the prior trend.
Monitor Dashboard: Pay attention to the dashboard in the top right corner. This dynamically updates to show the win rates for each TP and, crucially, the "SL before any TP rate." Use these statistics to evaluate the effectiveness of the indicator's signals under your current settings and chosen mode.
*
Set Alerts (Optional): You can set up alerts for any of the specific signals (UT Bot Long/Short, Smart Money Bullish/Bearish, or the "Line Draw" combined signals) to notify you when they occur, even if you're not actively watching the chart.
By following this tutorial, you'll be able to effectively use and customize the "Alpha - Combined Breakout" indicator to suit your trading strategy.
Contrarian with 5 Levels5 Levels application was inspired and adapted from Predictive Ranges indicator developed by Lux Algo. So much credit to their work.
Indicator Description: Contrarian with 5 Levels
Overview
The "Contrarian with 5 Levels" indicator is a powerful tool designed for traders seeking to identify potential reversal points in the market by combining contrarian trading principles with dynamic support and resistance levels. This indicator overlays a Simple Moving Average (SMA) shadow and five adaptive price levels, integrating Institutional Concepts of Structure (ICT) such as Break of Structure (BOS) and Market Structure Shift (MSS) to provide clear buy and sell signals. It is ideal for traders looking to capitalize on overextended price movements, particularly on the daily timeframe, though it is adaptable to other timeframes with proper testing.
How It Works
The indicator operates on two core components:
Contrarian SMA Shadow: A shaded region between the SMA of highs and lows (default length: 100) acts as a dynamic zone to identify overbought or oversold conditions. When the price moves significantly outside this shadow, it signals potential exhaustion, aligning with contrarian trading principles.
Five Adaptive Levels: Using a modified ATR-based calculation, the indicator plots five key levels (two resistance, one average, and two support) that adjust dynamically to market volatility. These levels serve as critical zones for potential reversals.
ICT Structure Analysis: The indicator incorporates BOS and MSS logic to detect shifts in market structure, plotting bullish and bearish breaks with customizable colors for clarity.
Buy and sell signals are generated when the price crosses key levels while outside the SMA shadow, indicating potential reversal opportunities. The signals are visualized as small circles above (sell) or below (buy) the price bars, making them easy to interpret.
Mathematical Concepts
SMA Shadow: The indicator calculates the SMA of the highest highs and lowest lows over a user-defined period (default: 100). This creates a dynamic range that highlights extreme price movements, which contrarian traders often target for reversals.
Five Levels Calculation: The five levels are derived using a volatility-adjusted formula based on the Average True Range (ATR). The average level (central pivot) is calculated as a smoothed price, with two upper (resistance) and two lower (support) levels offset by a multiple of the ATR (default multiplier: 6.0). This adaptive approach ensures the levels remain relevant across varying market conditions.
ICT BOS/MSS Logic: The indicator identifies pivot highs and lows on a user-defined timeframe (default: daily) to detect structural breaks. A BOS occurs when the price breaks a prior pivot high (bullish) or low (bearish), while an MSS signals a shift in market direction, providing context for potential reversals.
Entry and Exit Rules
Buy Signal (Blue Dot Below Bar): Triggered when the closing price is below both the SMA shadow (smaLow) and the average level (avg), and the price crosses under either the first or second support level (prS1 or prS2). This suggests the market may be oversold, indicating a potential reversal upward.
Sell Signal (White Dot Above Bar): Triggered when the closing price is above both the SMA shadow (smaHigh) and the average level (avg), and the price crosses over either the first or second resistance level (prR1 or prR2). This suggests the market may be overbought, indicating a potential reversal downward.
Recommended Usage
This indicator is optimized for the daily timeframe, where it has been designed to capture significant reversal opportunities in trending or ranging markets. However, it can be adapted to other timeframes (e.g., 1H, 4H, 15M) with proper testing of settings such as SMA length, ATR multiplier, and structure timeframe. Users are encouraged to backtest and optimize parameters to suit their trading style and asset class.
Customization Options
SMA Length: Adjust the SMA period (default: 100) to control the sensitivity of the shadow.
Five Levels Length and Multiplier: Modify the length (default: 200) and ATR multiplier (default: 6.0) to fine-tune the support/resistance levels.
Timeframe Settings: Set separate timeframes for structure analysis and five levels to align with your trading strategy.
Color and Signal Display: Customize colors for BOS/MSS lines and toggle buy/sell signals on or off for a cleaner chart.
Why Use This Indicator?
The "Contrarian with 5 Levels" indicator combines the power of contrarian trading with dynamic levels and market structure analysis, offering a unique perspective for identifying high-probability reversal setups. Its intuitive design, customizable settings, and clear signal visualization make it suitable for both novice and experienced traders. Whether you're trading forex, stocks, or cryptocurrencies, this indicator provides a robust framework for spotting potential turning points in the market.
We hope you find the "Contrarian with 5 Levels" indicator a valuable addition to your trading toolkit! Happy trading!
Please leave feedback in the comments section.
Grothendieck-Teichmüller Geometric SynthesisDskyz's Grothendieck-Teichmüller Geometric Synthesis (GTGS)
THEORETICAL FOUNDATION: A SYMPHONY OF GEOMETRIES
The 🎓 GTGS is built upon a revolutionary premise: that market dynamics can be modeled as geometric and topological structures. While not a literal academic implementation—such a task would demand computational power far beyond current trading platforms—it leverages core ideas from advanced mathematical theories as powerful analogies and frameworks for its algorithms. Each component translates an abstract concept into a practical market calculation, distinguishing GTGS by identifying deeper structural patterns rather than relying on standard statistical measures.
1. Grothendieck-Teichmüller Theory: Deforming Market Structure
The Theory : Studies symmetries and deformations of geometric objects, focusing on the "absolute" structure of mathematical spaces.
Indicator Analogy : The calculate_grothendieck_field function models price action as a "deformation" from its immediate state. Using the nth root of price ratios (math.pow(price_ratio, 1.0/prime)), it measures market "shape" stretching or compression, revealing underlying tensions and potential shifts.
2. Topos Theory & Sheaf Cohomology: From Local to Global Patterns
The Theory : A framework for assembling local properties into a global picture, with cohomology measuring "obstructions" to consistency.
Indicator Analogy : The calculate_topos_coherence function uses sine waves (math.sin) to represent local price "sections." Summing these yields a "cohomology" value, quantifying price action consistency. High values indicate coherent trends; low values signal conflict and uncertainty.
3. Tropical Geometry: Simplifying Complexity
The Theory : Transforms complex multiplicative problems into simpler, additive, piecewise-linear ones using min(a, b) for addition and a + b for multiplication.
Indicator Analogy : The calculate_tropical_metric function applies tropical_add(a, b) => math.min(a, b) to identify the "lowest energy" state among recent price points, pinpointing critical support levels non-linearly.
4. Motivic Cohomology & Non-Commutative Geometry
The Theory : Studies deep arithmetic and quantum-like properties of geometric spaces.
Indicator Analogy : The motivic_rank and spectral_triple functions compute weighted sums of historical prices to capture market "arithmetic complexity" and "spectral signature." Higher values reflect structured, harmonic price movements.
5. Perfectoid Spaces & Homotopy Type Theory
The Theory : Abstract fields dealing with p-adic numbers and logical foundations of mathematics.
Indicator Analogy : The perfectoid_conv and type_coherence functions analyze price convergence and path identity, assessing the "fractal dust" of price differences and price path cohesion, adding fractal and logical analysis.
The Combination is Key : No single theory dominates. GTGS ’s Unified Field synthesizes all seven perspectives into a comprehensive score, ensuring signals reflect deep structural alignment across mathematical domains.
🎛️ INPUTS: CONFIGURING THE GEOMETRIC ENGINE
The GTGS offers a suite of customizable inputs, allowing traders to tailor its behavior to specific timeframes, market sectors, and trading styles. Below is a detailed breakdown of key input groups, their functionality, and optimization strategies, leveraging provided tooltips for precision.
Grothendieck-Teichmüller Theory Inputs
🧬 Deformation Depth (Absolute Galois) :
What It Is : Controls the depth of Galois group deformations analyzed in market structure.
How It Works : Measures price action deformations under automorphisms of the absolute Galois group, capturing market symmetries.
Optimization :
Higher Values (15-20) : Captures deeper symmetries, ideal for major trends in swing trading (4H-1D).
Lower Values (3-8) : Responsive to local deformations, suited for scalping (1-5min).
Timeframes :
Scalping (1-5min) : 3-6 for quick local shifts.
Day Trading (15min-1H) : 8-12 for balanced analysis.
Swing Trading (4H-1D) : 12-20 for deep structural trends.
Sectors :
Stocks : Use 8-12 for stable trends.
Crypto : 3-8 for volatile, short-term moves.
Forex : 12-15 for smooth, cyclical patterns.
Pro Tip : Increase in trending markets to filter noise; decrease in choppy markets for sensitivity.
🗼 Teichmüller Tower Height :
What It Is : Determines the height of the Teichmüller modular tower for hierarchical pattern detection.
How It Works : Builds modular levels to identify nested market patterns.
Optimization :
Higher Values (6-8) : Detects complex fractals, ideal for swing trading.
Lower Values (2-4) : Focuses on primary patterns, faster for scalping.
Timeframes :
Scalping : 2-3 for speed.
Day Trading : 4-5 for balanced patterns.
Swing Trading : 5-8 for deep fractals.
Sectors :
Indices : 5-8 for robust, long-term patterns.
Crypto : 2-4 for rapid shifts.
Commodities : 4-6 for cyclical trends.
Pro Tip : Higher towers reveal hidden fractals but may slow computation; adjust based on hardware.
🔢 Galois Prime Base :
What It Is : Sets the prime base for Galois field computations.
How It Works : Defines the field extension characteristic for market analysis.
Optimization :
Prime Characteristics :
2 : Binary markets (up/down).
3 : Ternary states (bull/bear/neutral).
5 : Pentagonal symmetry (Elliott waves).
7 : Heptagonal cycles (weekly patterns).
11,13,17,19 : Higher-order patterns.
Timeframes :
Scalping/Day Trading : 2 or 3 for simplicity.
Swing Trading : 5 or 7 for wave or cycle detection.
Sectors :
Forex : 5 for Elliott wave alignment.
Stocks : 7 for weekly cycle consistency.
Crypto : 3 for volatile state shifts.
Pro Tip : Use 7 for most markets; 5 for Elliott wave traders.
Topos Theory & Sheaf Cohomology Inputs
🏛️ Temporal Site Size :
What It Is : Defines the number of time points in the topological site.
How It Works : Sets the local neighborhood for sheaf computations, affecting cohomology smoothness.
Optimization :
Higher Values (30-50) : Smoother cohomology, better for trends in swing trading.
Lower Values (5-15) : Responsive, ideal for reversals in scalping.
Timeframes :
Scalping : 5-10 for quick responses.
Day Trading : 15-25 for balanced analysis.
Swing Trading : 25-50 for smooth trends.
Sectors :
Stocks : 25-35 for stable trends.
Crypto : 5-15 for volatility.
Forex : 20-30 for smooth cycles.
Pro Tip : Match site size to your average holding period in bars for optimal coherence.
📐 Sheaf Cohomology Degree :
What It Is : Sets the maximum degree of cohomology groups computed.
How It Works : Higher degrees capture complex topological obstructions.
Optimization :
Degree Meanings :
1 : Simple obstructions (basic support/resistance).
2 : Cohomological pairs (double tops/bottoms).
3 : Triple intersections (complex patterns).
4-5 : Higher-order structures (rare events).
Timeframes :
Scalping/Day Trading : 1-2 for simplicity.
Swing Trading : 3 for complex patterns.
Sectors :
Indices : 2-3 for robust patterns.
Crypto : 1-2 for rapid shifts.
Commodities : 3-4 for cyclical events.
Pro Tip : Degree 3 is optimal for most trading; higher degrees for research or rare event detection.
🌐 Grothendieck Topology :
What It Is : Chooses the Grothendieck topology for the site.
How It Works : Affects how local data integrates into global patterns.
Optimization :
Topology Characteristics :
Étale : Finest topology, captures local-global principles.
Nisnevich : A1-invariant, good for trends.
Zariski : Coarse but robust, filters noise.
Fpqc : Faithfully flat, highly sensitive.
Sectors :
Stocks : Zariski for stability.
Crypto : Étale for sensitivity.
Forex : Nisnevich for smooth trends.
Indices : Zariski for robustness.
Timeframes :
Scalping : Étale for precision.
Swing Trading : Nisnevich or Zariski for reliability.
Pro Tip : Start with Étale for precision; switch to Zariski in noisy markets.
Unified Field Configuration Inputs
⚛️ Field Coupling Constant :
What It Is : Sets the interaction strength between geometric components.
How It Works : Controls signal amplification in the unified field equation.
Optimization :
Higher Values (0.5-1.0) : Strong coupling, amplified signals for ranging markets.
Lower Values (0.001-0.1) : Subtle signals for trending markets.
Timeframes :
Scalping : 0.5-0.8 for quick, strong signals.
Swing Trading : 0.1-0.3 for trend confirmation.
Sectors :
Crypto : 0.5-1.0 for volatility.
Stocks : 0.1-0.3 for stability.
Forex : 0.3-0.5 for balance.
Pro Tip : Default 0.137 (fine structure constant) is a balanced starting point; adjust up in choppy markets.
📐 Geometric Weighting Scheme :
What It Is : Determines the framework for combining geometric components.
How It Works : Adjusts emphasis on different mathematical structures.
Optimization :
Scheme Characteristics :
Canonical : Equal weighting, balanced.
Derived : Emphasizes higher-order structures.
Motivic : Prioritizes arithmetic properties.
Spectral : Focuses on frequency domain.
Sectors :
Stocks : Canonical for balance.
Crypto : Spectral for volatility.
Forex : Derived for structured moves.
Indices : Motivic for arithmetic cycles.
Timeframes :
Day Trading : Canonical or Derived for flexibility.
Swing Trading : Motivic for long-term cycles.
Pro Tip : Start with Canonical; experiment with Spectral in volatile markets.
Dashboard and Visual Configuration Inputs
📋 Show Enhanced Dashboard, 📏 Size, 📍 Position :
What They Are : Control dashboard visibility, size, and placement.
How They Work : Display key metrics like Unified Field , Resonance , and Signal Quality .
Optimization :
Scalping : Small size, Bottom Right for minimal chart obstruction.
Swing Trading : Large size, Top Right for detailed analysis.
Sectors : Universal across markets; adjust size based on screen setup.
Pro Tip : Use Large for analysis, Small for live trading.
📐 Show Motivic Cohomology Bands, 🌊 Morphism Flow, 🔮 Future Projection, 🔷 Holographic Mesh, ⚛️ Spectral Flow :
What They Are : Toggle visual elements representing mathematical calculations.
How They Work : Provide intuitive representations of market dynamics.
Optimization :
Timeframes :
Scalping : Enable Morphism Flow and Spectral Flow for momentum.
Swing Trading : Enable all for comprehensive analysis.
Sectors :
Crypto : Emphasize Morphism Flow and Future Projection for volatility.
Stocks : Focus on Cohomology Bands for stable trends.
Pro Tip : Disable non-essential visuals in fast markets to reduce clutter.
🌫️ Field Transparency, 🔄 Web Recursion Depth, 🎨 Mesh Color Scheme :
What They Are : Adjust visual clarity, complexity, and color.
How They Work : Enhance interpretability of visual elements.
Optimization :
Transparency : 30-50 for balanced visibility; lower for analysis.
Recursion Depth : 6-8 for balanced detail; lower for older hardware.
Color Scheme :
Purple/Blue : Analytical focus.
Green/Orange : Trading momentum.
Pro Tip : Use Neon Purple for deep analysis; Neon Green for active trading.
⏱️ Minimum Bars Between Signals :
What It Is : Minimum number of bars required between consecutive signals.
How It Works : Prevents signal clustering by enforcing a cooldown period.
Optimization :
Higher Values (10-20) : Fewer signals, avoids whipsaws, suited for swing trading.
Lower Values (0-5) : More responsive, allows quick reversals, ideal for scalping.
Timeframes :
Scalping : 0-2 bars for rapid signals.
Day Trading : 3-5 bars for balance.
Swing Trading : 5-10 bars for stability.
Sectors :
Crypto : 0-3 for volatility.
Stocks : 5-10 for trend clarity.
Forex : 3-7 for cyclical moves.
Pro Tip : Increase in choppy markets to filter noise.
Hardcoded Parameters
Tropical, Motivic, Spectral, Perfectoid, Homotopy Inputs : Fixed to optimize performance but influence calculations (e.g., tropical_degree=4 for support levels, perfectoid_prime=5 for convergence).
Optimization : Experiment with codebase modifications if advanced customization is needed, but defaults are robust across markets.
🎨 ADVANCED VISUAL SYSTEM: TRADING IN A GEOMETRIC UNIVERSE
The GTTMTSF ’s visuals are direct representations of its mathematics, designed for intuitive and precise trading decisions.
Motivic Cohomology Bands :
What They Are : Dynamic bands ( H⁰ , H¹ , H² ) representing cohomological support/resistance.
Color & Meaning : Colors reflect energy levels ( H⁰ tightest, H² widest). Breaks into H¹ signal momentum; H² touches suggest reversals.
How to Trade : Use for stop-loss/profit-taking. Band bounces with Dashboard confirmation are high-probability setups.
Morphism Flow (Webbing) :
What It Is : White particle streams visualizing market momentum.
Interpretation : Dense flows indicate strong trends; sparse flows signal consolidation.
How to Trade : Follow dominant flow direction; new flows post-consolidation signal trend starts.
Future Projection Web (Fractal Grid) :
What It Is : Fibonacci-period fractal projections of support/resistance.
Color & Meaning : Three-layer lines (white shadow, glow, colored quantum) with labels showing price, topological class, anomaly strength (φ), resonance (ρ), and obstruction ( H¹ ). ⚡ marks extreme anomalies.
How to Trade : Target ⚡/● levels for entries/exits. High-anomaly levels with weakening Unified Field are reversal setups.
Holographic Mesh & Spectral Flow :
What They Are : Visuals of harmonic interference and spectral energy.
How to Trade : Bright mesh nodes or strong Spectral Flow warn of building pressure before price movement.
📊 THE GEOMETRIC DASHBOARD: YOUR MISSION CONTROL
The Dashboard translates complex mathematics into actionable intelligence.
Unified Field & Signals :
FIELD : Master value (-10 to +10), synthesizing all geometric components. Extreme readings (>5 or <-5) signal structural limits, often preceding reversals or continuations.
RESONANCE : Measures harmony between geometric field and price-volume momentum. Positive amplifies bullish moves; negative amplifies bearish moves.
SIGNAL QUALITY : Confidence meter rating alignment. Trade only STRONG or EXCEPTIONAL signals for high-probability setups.
Geometric Components :
What They Are : Breakdown of seven mathematical engines.
How to Use : Watch for convergence. A strong Unified Field is reliable when components (e.g., Grothendieck , Topos , Motivic ) align. Divergence warns of trend weakening.
Signal Performance :
What It Is : Tracks indicator signal performance.
How to Use : Assesses real-time performance to build confidence and understand system behavior.
🚀 DEVELOPMENT & UNIQUENESS: BEYOND CONVENTIONAL ANALYSIS
The GTTMTSF was developed to analyze markets as evolving geometric objects, not statistical time-series.
Why This Is Unlike Anything Else :
Theoretical Depth : Uses geometry and topology, identifying patterns invisible to statistical tools.
Holistic Synthesis : Integrates seven deep mathematical frameworks into a cohesive Unified Field .
Creative Implementation : Translates PhD-level mathematics into functional Pine Script , blending theory and practice.
Immersive Visualization : Transforms charts into dynamic geometric landscapes for intuitive market understanding.
The GTTMTSF is more than an indicator; it’s a new lens for viewing markets, for traders seeking deeper insight into hidden order within chaos.
" Where there is matter, there is geometry. " - Johannes Kepler
— Dskyz , Trade with insight. Trade with anticipation.
Long-Leg Doji Breakout StrategyThe Long-Leg Doji Breakout Strategy is a sophisticated technical analysis approach that capitalizes on market psychology and price action patterns.
Core Concept: The strategy identifies Long-Leg Doji candlestick patterns, which represent periods of extreme market indecision where buyers and sellers are in equilibrium. These patterns often precede significant price movements as the market resolves this indecision.
Pattern Recognition: The algorithm uses strict mathematical criteria to identify authentic Long-Leg Doji patterns. It requires the candle body to be extremely small (≤0.1% of the total range) while having long wicks on both sides (at least 2x the body size). An ATR filter ensures the pattern is significant relative to recent volatility.
Trading Logic: Once a Long-Leg Doji is identified, the strategy enters a "waiting mode," monitoring for a breakout above the doji's high (long signal) or below its low (short signal). This confirmation approach reduces false signals by ensuring the market has chosen a direction.
Risk Management: The strategy allocates 10% of equity per trade and uses a simple moving average crossover for exits. Visual indicators help traders understand the pattern identification and trade execution process.
Psychological Foundation: The strategy exploits the natural market cycle where uncertainty (represented by the doji) gives way to conviction (the breakout), creating high-probability trading opportunities.
The strength of this approach lies in its ability to identify moments when market sentiment shifts from confusion to clarity, providing traders with well-defined entry and exit points while maintaining proper risk management protocols.
How It Works
The strategy operates on a simple yet powerful principle: identify periods of market indecision, then trade the subsequent breakout when the market chooses direction.
Step 1: Pattern Detection
The algorithm scans for Long-Leg Doji candles, which have three key characteristics:
Tiny body (open and close prices nearly equal)
Long upper wick (significant rejection of higher prices)
Long lower wick (significant rejection of lower prices)
Step 2: Confirmation Wait
Once a doji is detected, the strategy doesn't immediately trade. Instead, it marks the high and low of that candle and waits for a definitive breakout.
Step 3: Trade Execution
Long Entry: When price closes above the doji's high
Short Entry: When price closes below the doji's low
Step 4: Exit Strategy
Positions are closed when price crosses back through a 20-period moving average, indicating potential trend reversal.
Market Psychology Behind It
A Long-Leg Doji represents a battlefield between bulls and bears that ends in a stalemate. The long wicks show that both sides tried to push price in their favor but failed. This creates a coiled spring effect - when one side finally gains control, the move can be explosive as trapped traders rush to exit and momentum traders jump aboard.
Key Parameters
Doji Body Threshold (0.1%): Ensures the body is truly small relative to the candle's range
Wick Ratio (2.0): Both wicks must be at least twice the body size
ATR Filter: Uses Average True Range to ensure the pattern is significant in current market conditions
Position Size: 10% of equity per trade for balanced risk management
Pros:
High Probability Setups: Doji patterns at key levels often lead to significant moves as they represent genuine shifts in market sentiment.
Clear Rules: Objective criteria for entry and exit eliminate emotional decision-making and provide consistent execution.
Risk Management: Built-in position sizing and exit rules help protect capital during losing trades.
Market Neutral: Works equally well for long and short positions, adapting to market direction rather than fighting it.
Visual Confirmation: The strategy provides clear visual cues, making it easy to understand when patterns are forming and trades are triggered.
Cons:
False Breakouts: In choppy or ranging markets, price may break the doji levels only to quickly reverse, creating whipsaws.
Patience Required: Traders must wait for both pattern formation and breakout confirmation, which can test discipline during active market periods.
Simple Exit Logic: The moving average exit may be too simplistic, potentially cutting profits short during strong trends or holding losers too long during reversals.
Volatility Dependent: The strategy relies on sufficient volatility to create meaningful doji patterns - it may underperform in extremely quiet markets.
Lagging Entries: Waiting for breakout confirmation means missing the very beginning of moves, reducing potential profit margins.
Best Market Conditions
The strategy performs optimally during periods of moderate volatility when markets are making genuine directional decisions rather than just random noise. It works particularly well around key support/resistance levels where the market's indecision is most meaningful.
Optimization Considerations
Consider combining with additional confluence factors like volume analysis, support/resistance levels, or other technical indicators to improve signal quality. The exit strategy could also be enhanced with trailing stops or multiple profit targets to better capture extended moves while protecting gains.
Best for Index option,
Enjoy !!
Wavelet Filter with Adaptive Upsampling [BackQuant]Wavelet Filter with Adaptive Upsampling
The Wavelet Filter with Adaptive Upsampling is an advanced filtering and signal reconstruction tool designed to enhance the analysis of financial time series data. It combines wavelet transforms with adaptive upsampling techniques to filter and reconstruct price data, making it ideal for capturing subtle market movements and enhancing trend detection. This system uses high-pass and low-pass filters to decompose the price series into different frequency components, applying adaptive thresholding to eliminate noise and preserve relevant signal information.
Shout out to Loxx for the Least Squares fitting of trigonometric series and Quinn and Fernandes algorithm for finding frequency
www.tradingview.com
Key Features
1. Frequency Decomposition with High-Pass and Low-Pass Filters:
The indicator decomposes the input time series using high-pass and low-pass filters to separate the high-frequency (detail) and low-frequency (trend) components of the data. This decomposition allows for a more accurate analysis of underlying trends, while mitigating the impact of noise.
2. Soft Thresholding for Noise Reduction:
A soft thresholding function is applied to the high-frequency component, allowing for the reduction of noise while retaining significant market signals. This function adjusts the coefficients of the high-frequency data, removing small fluctuations and leaving only the essential price movements.
3. Adaptive Upsampling Process:
The upsampling process in this script can be customized using different methods: sinusoidal upsampling, advanced upsampling, and simple upsampling. Each method serves a unique purpose:
Sinusoidal Upsample uses a sine wave to interpolate between data points, providing a smooth transition.
Advanced Upsample utilizes a Quinn-Fernandes algorithm to estimate frequency and apply more sophisticated interpolation techniques, adapting to the market’s cyclical behavior.
Simple Upsample linearly interpolates between data points, providing a basic upsampling technique for less complex analysis.
4. Reconstruction of Filtered Signal:
The indicator reconstructs the filtered signal by summing the high and low-frequency components after upsampling. This allows for a detailed yet smooth representation of the original time series, which can be used for analyzing underlying trends in the market.
5. Visualization of Reconstructed Data:
The reconstructed series is plotted, showing how the upsampling and filtering process enhances the clarity of the price movements. Additionally, the script provides the option to visualize the log returns of the reconstructed series as a histogram, with positive returns shown in green and negative returns in red.
6. Cumulative Series and Trend Detection:
A cumulative series is plotted to visualize the compounded effect of the filtered and reconstructed data. This feature helps traders track the overall performance of the asset over time, identifying whether the asset is following a sustained upward or downward trend.
7. Adaptive Thresholding and Noise Estimation:
The system estimates the noise level in the high-frequency component and applies an adaptive thresholding process based on the standard deviation of the downsampled data. This ensures that only significant price movements are retained, further refining the trend analysis.
8. Customizable Parameters for Flexibility:
Users can customize the following parameters to adjust the behavior of the indicator:
Frequency and Phase Shift: Control the periodicity of the wavelet transformation and the phase of the upsampling function.
Upsample Factor: Adjust the level of interpolation applied during the upsampling process.
Smoothing Period: Determine the length of time used to smooth the signal, helping to filter out short-term fluctuations.
References
Enhancing Cross-Sectional Currency Strategies with Context-Aware Learning to Rank
arxiv.org
Daubechies Wavelet - Wikipedia
en.wikipedia.org
Quinn Fernandes Fourier Transform of Filtered Price by Loxx
Note on Usage for Mean-Reversion Strategy
This indicator is primarily designed for trend-following strategies. However, by taking the inverse of the signals, it can be adapted for mean-reversion strategies. This involves buying underperforming assets and selling outperforming ones. Caution: This method may not work effectively with highly correlated assets, as the price movements between correlated assets tend to mirror each other, limiting the effectiveness of mean-reversion strategies.
Final Thoughts
The Wavelet Filter with Adaptive Upsampling is a powerful tool for traders seeking to improve their understanding of market trends and noise. By using advanced wavelet decomposition and adaptive upsampling, this system offers a clearer, more refined picture of price movements, enhancing trend-following strategies. It’s particularly useful for detecting subtle shifts in market momentum and reconstructing price data in a way that removes noise, providing more accurate insights into market conditions.
CISD Levels by HAZEDCISD Levels by HAZED - Advanced Market Structure Analysis
📊 Overview
The CISD Levels indicator is a sophisticated market structure analysis tool that automatically identifies and plots critical support and resistance levels based on Change in State Direction (CISD) methodology. This indicator helps traders visualize key market turning points and potential breakout/breakdown levels with precision.
🎯 What are CISD Levels?
CISD (Change in State Direction) levels represent significant price points where market sentiment shifts from bullish to bearish or vice versa. These levels are dynamically calculated based on:
Market structure breaks (higher highs/lower lows)
Pullback patterns and trend continuations
Real-time price action analysis
Dynamic level updates as market conditions evolve
✨ Key Features
🔥 Smart Level Detection
Automatically identifies bullish (+CISD) and bearish (-CISD) levels
Real-time updates as market structure evolves
Intelligent pullback detection algorithm
🎨 Full Customization
Colors: Customize bullish/bearish level colors
Line Styles: Choose from solid, dotted, or dashed lines
Text Labels: Fully customizable text, size, and font options
Transparency: Adjustable line transparency (0-100%)
Extensions: Control how far lines extend into the future
📈 Historical Analysis
Show All Levels: Option to display historical CISD levels
Max Levels Control: Limit the number of historical levels shown (1-50)
Level Management: Automatic cleanup of old levels
🚨 Smart Alerts
Bullish Alerts: Get notified when price breaks above +CISD levels
Bearish Alerts: Get notified when price breaks below -CISD levels
Alert Frequency: Choose between "Once Per Bar" or "Once Per Bar Close"
📊 Statistics Table
Market State: Current bullish/bearish market condition
Active Levels: Count of currently active CISD levels
Latest Levels: Display of most recent +CISD and -CISD values
Positioning: 5 different table positions available
🛠️ How to Use
For Swing Traders:
Use CISD levels as key support/resistance zones
Enter positions on level breaks with proper risk management
Set stop losses below/above opposite CISD levels
For Day Traders:
Watch for price reactions at CISD levels
Use levels for entry/exit timing
Combine with volume analysis for confirmation
For Position Traders:
Identify major market structure changes
Use higher timeframe CISD levels for strategic entries
Monitor level breaks for trend continuation signals
⚙️ Settings Guide
CISD Level Settings
Bullish/Bearish Colors: Customize level appearance
Custom Text: Add your own labels to levels
Alert Setup: Enable notifications for level breaks
Historical Levels: Choose to show past levels for context
Appearance Customization
Line Width: 1-5 pixel thickness options
Line Style: Solid, dotted, or dashed
Extension Bars: Control future projection (1-50 bars)
Text Options: Size, font, and bold formatting
Statistics Table
Enable/Disable: Toggle table visibility
Position: 5 placement options on chart
Real-time Data: Live market state and level information
🎯 Best Practices
Multi-Timeframe Analysis: Use CISD levels across different timeframes for confluence
Risk Management: Always use proper position sizing and stop losses
Confirmation: Combine with volume, momentum, or other indicators
Market Context: Consider overall market conditions and news events
Backtesting: Test the levels on historical data before live trading
📋 Technical Specifications
Overlay: True (plots directly on price chart)
Max Lines: 500 (handles multiple historical levels)
Max Labels: 500 (supports extensive labeling)
Real-time Updates: Dynamic level calculation and alerts
Performance: Optimized code for smooth chart operation
🚀 Why Choose CISD Levels?
Precision: Advanced algorithm for accurate level identification
Flexibility: Extensive customization options for any trading style
Reliability: Proven market structure analysis methodology
User-Friendly: Intuitive settings with helpful tooltips
Professional: Clean, professional appearance on any chart
📞 Support & Updates
This indicator is actively maintained and updated. For questions, suggestions, or feature requests, feel free to reach out through TradingView messaging.
⚠️ Disclaimer: This indicator is for educational and informational purposes only. Always conduct your own analysis and risk management. Past performance does not guarantee future results.
Auto Fractal [theUltimator5]This indicator is what I call the Auto Fractal. It is a unique algorithm that looks back in time, finds a segment on the chart that closest matches the recent price action, then projects the price forwards. It effectively finds chart patterns and shows you what the price did the last time the same/similar chart pattern was observed.
Creating an algorithm to match abstract curves to other abstract curves and provide a confidence score was the fundamental problem that needed to be solved in order to create this indicator, which curve matches with surprising accuracy.
The most effective method to "curve match" that I found is the Pearson Coefficient, set by a segment length and a lookback period. After the highest coefficient curve is located, the curve then gets scaled and offset to match the current price.
The past segment is drawn over the current price (orange line), giving a visualization of the two curves and how closely they match each other. The indicator then projects the price forwards in time based on the price action of the chart from the historical segment (dashed fuchsia line).
A bounding box also gets drawn around the historical segment to give you a clear visual of where the price is getting pulled from for proper analysis and ease of use.
The Pearson Coefficient % is shown in a table in the top right-hand corner of the chart and can be toggled off if desired. The values range from -100% (perfectly inverse correlation) to +100% (perfectly correlated) with 0 meaning no correlation whatsoever. The closer to +100% the value is, the better the segment match.
As with most/all of my indicators, user interface and simplicity was at the top of my priority list. I designed this to be easily readable and intuitive to both novice and veteran traders, without cluttering the chart.
Note:
This indicator is extremely heavy in terms of memory usage due to nested for loops, and takes several seconds to initially load the chart overlay. If the lookback period is increased too high (>600) then the indicator may time out and fail to load anything. If nothing loads on the chart, try reducing the lookback length and wait up to 10 seconds for lines to appear.
Dynamic Range Filter with Trend Candlesticks (Zeiierman)█ Overview
Dynamic Range Filter with Trend Candlesticks (Zeiierman) is a volatility-responsive trend engine that adapts in real-time to market structure, offering a clean and intelligent visualization of directional bias. It blends dynamic range calculation with customizable smoothing techniques and layered trend confirmation logic, making it ideal for traders who rely on clear trend direction, structural range analysis, and momentum-based candlestick signals.
By measuring scaled volatility over configurable lengths and applying advanced moving average techniques, this indicator filters out market noise while preserving true directional intent. Complementing this, a dual-trend system (range-based and candle-based) enhances clarity and responsiveness, particularly during shifting market conditions.
█ How It Works
⚪ Scaled Volatility Band Calculation
At the core lies a volatility engine that constructs adaptive range bands around price using smoothed high/low calculations. The bands are dynamically adjusted using:
High/Low Smoothing – Applies a moving average to the raw high and low data before calculating the range.
Scaled Range Volatility – A 2.618 multiplier scales the distance between smoothed highs and lows, forming a responsive volatility envelope.
Band Multiplier – Controls how wide the upper/lower range bands extend from the mean.
This filtering process minimizes false signals and highlights only structurally meaningful moves.
⚪ Multi-Type Smoothing Engine
Users can choose from a wide array of smoothing algorithms for trend construction, including:
HMA (default), SMA, EMA, RMA
KAMA – Adapts to market volatility using efficiency ratios.
VIDYA – Momentum-sensitive smoothing using CMO logic.
FRAMA – Dynamically adjusts to fractal dimension in price.
Super Smoother – Ideal for eliminating aliasing in range signals.
This provides the trader with fine-tuned control over reactivity vs. smoothness.
⚪ Trend Detection (Dual Engine)
The indicator includes two independent trend tracking systems:
Main Trend Filter – Based on adaptive volatility band shifts.
Candle Trend Filter – A second-tier confirmation using smoothed candle data, ideal for directional candles and confirmation entries.
█ How to Use
⚪ Trend Confirmation
Use the Trend Line and colored candlesticks for high-probability entries in the trend direction. The more trend layers that align, the higher the confidence.
⚪ Reversal Zones
When the price reaches the outer bands or fails to break them, look for candle color shifts or a crossover in the range to anticipate possible reversals or consolidations.
█ Settings
Scaled Volatility Length – Controls the lookback used to stabilize the base volatility band.
MA Type & Length – Choose and fine-tune the smoothing method (HMA, EMA, KAMA, etc.)
High/Low Smoother – Pre-smoothing for structural high/low banding.
Band Multiplier – Adjusts the width of the dynamic bands.
Trend Length (Candles) – Length used for candle-based trend confirmation.
-----------------
Disclaimer
The content provided in my scripts, indicators, ideas, algorithms, and systems is for educational and informational purposes only. It does not constitute financial advice, investment recommendations, or a solicitation to buy or sell any financial instruments. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
ErrorFunctionsLibrary "ErrorFunctions"
A collection of functions used to approximate the area beneath a Gaussian curve.
Because an ERF (Error Function) is an integral, there is no closed-form solution to calculating the area beneath the curve. Meaning all ERFs are approximations; precisely wrong, but mostly accurate. How close you need to get to the actual area depends entirely on your use case, with more precision being less efficient.
The internal precision of floats in Pine Script is 1e-16 (16 decimals, aka. double precision). This library adapts well known algorithms designed to efficiently reach double precision. Single precision alternates are also included. All of them were made free to use, modify, and distribute by their original authors.
HASTINGS
Adaptation of a single precision ERF by Cecil Hastings Jr, published through Princeton University in 1955. It was later documented by Abramowitz and Stegun as equation 7.1.26 in their 1972 Handbook of Mathematical Functions. Fast, efficient, and ideal when precision beyond a few decimals is unnecessary.
GILES
Adaptation of a single precision Inverse ERF by Michael Giles, published through the University of Oxford in 2012. It reverses the ERF, estimating an X coordinate from an area. It too is fast, efficient, and ideal when precision beyond a few decimals is unnecessary.
LIBC
Adaptation of the double precision ERF & ERFC in the standard C library (aka. libc). It is also the same ERF & ERFC that SciPy uses. While not quite as efficient as the Hastings approximation, it's still very fast and fully maximizes Pines precision.
BOOST
Adaptation of the double precision Inverse ERF & Inverse ERFC in the Boost Math C++ library. SciPy uses these as well. These reverse the ERF & ERFC, estimating an X coordinate from an area. It too isn't quite as efficient as the Giles approximation, but still fast and fully maximizes Pines precision.
While these algorithms are not exported directly, they are available through their exported counterparts.
- - -
ERROR FUNCTIONS
erf(x, precise)
An Error Function estimates the theoretical error of a measurement.
Parameters:
x (float) : (float) Upper limit of the integration.
precise (bool) : Double precision (true) or single precision (false).
Returns: (float) Between -1 and 1.
erfc(x, precise)
A Complementary Error Function estimates the difference between a theoretical error and infinity.
Parameters:
x (float) : (float) Lower limit of the integration.
precise (bool) : Double precision (true) or single precision (false).
Returns: (float) Between 0 and 2.
erfinv(x, precise)
An Inverse Error Function reverses the erf() by estimating the original measurement from the theoretical error.
Parameters:
x (float) : (float) Theoretical error.
precise (bool) : Double precision (true) or single precision (false).
Returns: (float) Between 0 and ± infinity.
erfcinv(x, precise)
An Inverse Complementary Error Function reverses the erfc() by estimating the original measurement from the difference between the theoretical error and infinity.
Parameters:
x (float) : (float) Difference between the theoretical error and infinity.
precise (bool) : Double precision (true) or single precision (false).
Returns: (float) Between 0 and ± infinity.
- - -
DISTRIBUTION FUNCTIONS
pdf(x, m, s)
A Probability Density Function estimates the probability density . For clarity, density is not a probability .
Parameters:
x (float) : (float) X coordinate for which a density will be estimated.
m (float) : (float) Mean
s (float) : (float) Sigma
Returns: (float) Between 0 and ∞.
cdf(z, precise)
A Cumulative Distribution Function estimates the area under a Gaussian curve between negative infinity and the Z Score.
Parameters:
z (float) : (float) Z Score.
precise (bool) : Double precision (true) or single precision (false).
Returns: (float) Between 0 and 1.
cdfinv(a, precise)
An Inverse Cumulative Distribution Function reverses the cdf() by estimating the Z Score from an area.
Parameters:
a (float) : (float) Area between 0 and 1.
precise (bool) : Double precision (true) or single precision (false).
Returns: (float) Between -∞ and +∞
cdfab(z1, z2, precise)
A Cumulative Distribution Function from A to B estimates the area under a Gaussian curve between two Z Scores (A and B).
Parameters:
z1 (float) : (float) First Z Score.
z2 (float) : (float) Second Z Score.
precise (bool) : Double precision (true) or single precision (false).
Returns: (float) Between 0 and 1.
ttt(z, precise)
A Two-Tailed Test estimates the area under a Gaussian curve between symmetrical ± Z scores and ± infinity.
Parameters:
z (float) : (float) One of the symmetrical Z Scores.
precise (bool) : Double precision (true) or single precision (false).
Returns: (float) Between 0 and 1.
tttinv(a, precise)
An Inverse Two-Tailed Test reverses the ttt() by estimating the absolute Z Score from an area.
Parameters:
a (float) : (float) Area between 0 and 1.
precise (bool) : Double precision (true) or single precision (false).
Returns: (float) Between 0 and ∞.
ott(z, precise)
A One-Tailed Test estimates the area under a Gaussian curve between an absolute Z Score and infinity.
Parameters:
z (float) : (float) Z Score.
precise (bool) : Double precision (true) or single precision (false).
Returns: (float) Between 0 and 1.
ottinv(a, precise)
An Inverse One-Tailed Test Reverses the ott() by estimating the Z Score from a an area.
Parameters:
a (float) : (float) Area between 0 and 1.
precise (bool) : Double precision (true) or single precision (false).
Returns: (float) Between 0 and ∞.
Vector Candles [v6 Optimized + EMA]
Vector Candles represent an innovative technical analysis approach that transforms traditional candlestick charting by integrating volume dynamics, color-coded momentum, and multi-dimensional market insights. Unlike standard candlesticks that merely display price movement, Vector Candles encode additional market information through sophisticated color and volume algorithms.
Key Features:
-Dynamic Volume-Based Coloring: Candles change color based on trading volume intensity
-Volume Categories:
High Volume (Lime/Red): Significant market activity (200%+- Vol of Previous 10 Candles)
Above Average Volume (Blue/Fuchsia): Moderate market momentum (150%+- Vol of Previous 10 Candles).
Normal Volume (Gray Scales): Standard market conditions.
Stopping Volume Candles - Typically Pinbar/Doji candles. Stops volume in the current direction of delivery & can help forecast impending reversals or end to the current trend.
-Integrated EMA (Exponential Moving Average) Option:
-Customizable EMA Length (Default: 50 periods) (I use 33)
Configurable EMA Source (e.g., close price)
Optional EMA Overlay for Trend Confirmation