Example - How to create multiple level gridsExample on how to create custom grids with variable N lines/labels:
LINE
[PX] VWAP Gap LevelHello guys,
another day, another method for detecting support and resistance level. This time it's all about the VWAP and daily gaps it might produce.
How does it work?
The indicator detects when a new daily candle begins and the VWAP makes a big move in either direction. Often it produces a gap and this is where the support or resistance level will be plotted. The idea behind it is, that those gaps get filled at some point in time. You can control how big a VWAP movement ("gap") has to be with the "VWAP Movement %" -setting. Also, you can adjust the style of the level.
If you find this indicator useful, please leave a "like" and hit that "follow" button :)
Have fun and happy trading :)))
[PX] M/W/D LevelHey guys,
this script shows monthly, weekly and daily OHLC data represented as horizontal level.
I tried to make it as user-friendly as possible. Therefore, you can add different colors and styles for each level, as well as turn them on and off.
With the "Label Offset" -parameter you are in control where the label text should appear. You can shift it from left to right and vice-versa. To shift it to the left choose a negative value. To shift it to the right use a positive one.
This best setting for me personally is the "Candle Selection" -dropdown. This allows you to decide wether you want to show the previous candles OHLC-data or the current live OHLC-data.
!!CAUTION!! If you use the "Current Month/Week/Day" -selection be aware that values shown are "live"-data of the current candle. Therefore, values will change the same way your chart keeps changing on live data.
The "Previous Month/Week/Day" -selection on the other hand is historical data and therefore only changes once we reached a new month/week/day.
If you like my work, consider leaving a like :)
Happy trading!
Price-Line Channel - A Friendly Support And Resistance IndicatorIntroduction
Lines are the most widely used figures in technical analysis, this is due to the linear trends that some securities posses (daily log SP500 for example), support and resistances are also responsible for the uses of lines, basically linear support and resistances are made with the assumption that the line connecting two local maximas or minimas will help the user detect a new local maxima or minima when the price will cross the line.
Technical indicators attempting to output lines have always been a concern in technical analysis, the mostly know certainly being the linear regression, however any linear models would fit in this category. In general those indicators always reevaluate their outputs values (repainting), others non repainting indicators returning lines are sometimes to impractical to set-up. This is what has encouraged me to make a simpler indicator based on the framework used in the recursive bands indicator that i published.
The proposed indicator aim to be extremely flexible and easy to use while returning linear support and resistances, an option that allow readjustment is also introduced, thus allowing for a "smarter" indicator.
The Indicator
The indicator return two extremities, the upper one aim to detect resistance points while the lower one aim to detect support points. The length setting control the steepness of the line, with higher values of length involving a lower slope, this make the indicator less reactive and interact with the price less often.
The name "price-line" comes from the fact that the channel is dependent on its own interaction with the price, therefore a breakout methodology can also be used, where price is up-trending when crossing with the upper extremity and down trending when crossing with the lower one.
Readjusted Option
The line steepness can be readjusted based on the market volatility, it make more sense for the line to be more steep when the market is more volatile, thus making it converge faster toward the price, this of course is done at the cost of some linearity. This is achieved by checking the "readjustment" option. The effects can be shown on BTCUSD, below the indicator without the readjusted option :
when the "readjustment" option is checked we have the following results :
The volatile down movement on BTCUSd make the upper extremity converge faster toward the price, this option can be great for volatile markets.
Conclusion
The recursive bands indicator prove to be an excellent framework that allow for the creation of lots of indicators, the proposed indicator is extremely efficient and provide an easy solution for returning linear support and resistances without much drawbacks, the readjusted option allow the indicator to adapt to the market volatility at the cost of linearity.
The performance of the indicator is relative to the motion of the price, however the indicator show signs of returning accurate support and resistances points. I hope the indicator find its use in the community.
Thanks for reading !
Note
Respect the house rules, always request permission before publishing open source code. This is an original work, requesting permission is the least you can do.
Forecasting - Drift MethodIntroduction
Nothing fancy in terms of code, take this post as an educational post where i provide information rather than an useful tool.
Time-Series Forecasting And The Drift Method
In time-series analysis one can use many many forecasting methods, some share similarities but they can all by classified in groups and sub-groups, the drift method is a forecasting method that unlike averages/naive methods does not have a constant (flat) forecast, instead the drift method can increase or decrease over time, this is why its a great method when it comes to forecasting linear trends.
Basically a drift forecast is like a linear extrapolation, first you take the first and last point of your data and draw a line between those points, extend this line into the future and you have a forecast, thats pretty much it.
One of the advantage of this method is first its simplicity, everyone could do it by hand without any mathematical calculations, then its ability to be non-conservative, conservative methods involve methods that fit the data very well such as linear/non-linear regression that best fit a curve to the data using the method of least-squares, those methods take into consideration all the data points, however the drift method only care about the first and last point.
Understanding Bias And Variance
In order to follow with the ability of methods to be non-conservative i want to introduce the concept of bias and variance, which are essentials in time-series analysis and machine learning.
First lets talk about training a model, when forecasting a time-series we can divide our data set in two, the first part being the training set and the second one the testing set. In the training set we fit a model to the training data, for example :
We use 200 data points, we split this set in two sets, the first one is for training which is in blue, and the other one for testing which is in green.
Basically the Bias is related to how well a forecasting model fit the training set, while the variance is related to how well the model fit the testing set. In our case we can see that the drift line does not fit the training set very well, it is then said to have high bias. If we check the testing set :
We can see that it does not fit the testing set very well, so the model is said to have high variance. It can be better to talk of bias and variance when using regression, but i think you get it. This is an important concept in machine learning, you'll often see the term "overfitting" which relate to a model fitting the training set really well, those models have a low to no bias, however when it comes to testing they don't fit well at all, they have high variance.
Conclusion On The Drift Method
The drift method is good at forecasting linear trends, and thats all...you see, when forecasting financial data you need models that are able to capture the complexity of the price structure as well as being robust to noise and outliers, the drift method isn't able to capture such complexity, its not a super smart method, same goes for linear regression. This is why more peoples are switching to more advanced models such a neural networks that can sometimes capture such complexity and return decent results.
So this method might not be the best but if you like lines then here you go.
ADL-NDX Rank Difference-Buschi
English:
An expansion of the Advance Decline Line of the NASDAQ. It can be interesting to compare the Advance Decline Line with the corresponding benchmark index. I therefore made a ranking (0 to 100) based on the performance over the last days (default: 21 days). The difference is the target figure and ranges between -100 (bearish divergence) to +100 (bullish divergence).
Deutsch:
Eine Erweiterung der Advance Decline Line der NASDAQ. Oft möchte man den Verlauf der Advance Decline Line mit dem zugehörigen Leitindex vergleichen. Daher habe ich für beide ein Ranking (0 bis 100) erstellt auf Basis des Verlaufs über die letzten Tage (Standardwert: 21 Tage). Die Differenz stellt dabei die Zielgröße dar und schwankt zwischen -100 (bärische Divergenz) und +100 (bullische Divergenz).
ADL-SPX Rank Difference-Buschi
English:
An expansion of the Advance Decline Line of the NYSE. It can be interesting to compare the Advance Decline Line with the corresponding benchmark index. I therefore made a ranking (0 to 100) based on the performance over the last days (default: 21 days). The difference is the target figure and ranges between -100 (bearish divergence) to +100 (bullish divergence).
Deutsch:
Eine Erweiterung der Advance Decline Line der NYSE. Oft möchte man den Verlauf der Advance Decline Line mit dem zugehörigen Leitindex vergleichen. Daher habe ich für beide ein Ranking (0 bis 100) erstellt auf Basis des Verlaufs über die letzten Tage (Standardwert: 21 Tage). Die Differenz stellt dabei die Zielgröße dar und schwankt zwischen -100 (bärische Divergenz) und +100 (bullische Divergenz).
Linear Trailing StopBased on my latest script "Linear Channels"
This is a trailing stop version of the linear channels. Thanks to capissimo for helping me fix several issues with the linear extrapolation part.
In order to know how the indicator work i recommend reading the post on the Linear Channels indicator here
Hope you like it and feel free to leave your suggestions :)
Linear ChannelsIntroduction
I already made an indicator (simple line) that tried to make lines on price such that the results would not repaint and give a good fit to the price, today i publish a channels indicator based on the simple line indicator. The indicator aim to show possible support and resistance levels when the central line posses a low sum of squares with the price, a linear extrapolation was also provided in order to show possible future price positions respective to the channels.
The Indicator
The emphasis parameter of the simple line indicator has been removed, instead we keep length and mult as numerical input parameters. In general length control how persistent the lines are, larger values will create longer lines on average, mult help make the line fit to the price better but might as well affect how spread the channels are as well as the lines average length. When mult > length the lines will fit better the price while when length >= mult the fit might not be the best.
The point parameter allow you to fix the indicator when using it on high market price values or when the indicator exhibit a weird behaviour.
point = false on btcusd
point = true
If the lines still does not fit well enough try to lower length.
I know this might result inconvenient in so many ways but i'am working on simplifying things. Therefore some larger price values might use lower length and use mult instead. For market not using the point parameters a settings of : length > 1 and mult = length*2 might provide a good to go setup.
The channel spreading parameter allow to make spread the channels by a certain factor.
Issues
I'am still not good with line extensions, if it bother you deactivate the extrapolation parameter. Sorry for the inconvenience.
Conclusion
It is possible to make non repainting linear indicators, and i'am working on some of them. While some might argue that price is not linear thus not requiring the use of linear indicators it can still be interesting to use those if they, unlike the linear regression, don't repaints and provide a way to change their directions according to the price trend.
Thanks for reading !
[RS]Function - Geometric Line Drawingsfunctions using the new line functions in V4 to draw multiple geometric shapes.
Trend StepJust a modification of my old auto-line script, lot of errors fixed and a correction in the standard deviation. Also changed the tittle because "auto-line" was really confusing.
Tower Line IndicatorHere is the code of twr indicator
I'v already posted a idea about this indicator. You guys can make this chart more complete if you want.
Complete indicator is just fixed the color align in some price pattern.
The rule is hard to write for me but we have simple version here. :)
Read more about tower line:
Tower line here
Need help about tower line(To add the color align when price expand or other situation)
Detail about tower line
Have you heard about tower line
[RESEARCH] Dashed Line StyleA simple as ass concept that uses modular arithmetic to plot dashed line.
Simple LinesIntroduction
Making lines is great in technical analysis since it can highlights principal movements and make the analysis of the price easier when using certain methodologies (Elliott Waves, patterns).
However most of the indicators making lines (Zig-Zag, simple linear regression) are non causal (repaint), this is the challenge i tried to overcome, making an indicator capable of making lines in a smart way (able to follow price without loosing a linear approach) and with the least lag possible, i inspired myself from the behaviour of the renko when using a small brick size. This indicator does not repaint .
The code is short and i hope, understandable for all of you, making lines is not a difficult task and its important to know that when a problem appear complex it does not mean that the code used to solve this problem must be complex. Lets see the indicator in details.
The indicator
The indicator have 4 parameters, the length parameter who control the length of lines, the emphasis parameter who control the stability and also the ability to make lines closer to the price (thus minimizing the sum of squares) , the mult parameter which is similar to emphasis and a point option that we will discuss later.
When emphasis and mult are both equal to 1 the indicator will sometimes draw a perfect line, however this line will try to follow the price and thus can create a noisy result.
This is where emphasis and mult will correct this behaviour. The emphasis parameter give a more periodic look as well as some control to the lines but can also destroy them.
This should not happen with mult , this parameter also give more predictability to the lines. Overall it correct the drawbacks of the parameters combinations mentioned earlier.
Its also possible to mix both the emphasis and mult parameter, but take into account that when both are equals the result consist of less reactive lengthy lines with low accuracy. Its better to only use one of them and let the other stay to 1.
Point Option
The indicator can sometimes have a weird look, appearing almost flat or just dont appearing at all. When such thing happen use the point option.
XPDUSD without point option.
with point option :
Time Frame Problem and Its Fix
When using higher time-frames the result of the indicator can appear different, in general the higher the time frame the lengthier are the lines. In order to fix this you can use decimals in the length parameter
length and mult both equal to 5.5, emphasis cant use decimals.
Conclusion
I have highlighted a simple way to make use of the small renko box size method in order to return reactive lines without making the indicator repaint. However Its ability to be close to the price as well as being always super reactive is not a guarantee.
For any suggestion/help feel free to pm me, i would be happy to help you :)
Efficient Auto LineMore Efficiency
Based on the Auto-Line code, the Efficient Auto Line aim to provide a more controlled adaptivity of the indicator. The first indicator of this sort worked this way : when the absolute difference between the price and the indicator is higher than the previous indicator +/- A pips of amplitude, the indicator will display the closing price, else its anterior value. The second indicator (Auto-Line) was adaptive and used the standard deviation instead of a constant A . This indicator will run both methodology providing both a trend strength indicator (Efficiency Ratio) parameter and two constant parameter.
Parameters
The length parameter will control the period of the efficiency ratio, a high period return lower values of the efficiency ratio. Since its an indicator in a range of (0,1) we use it to make our indicator more adaptive in trending market, this is when we need our two constant parameters, the fast/slow parameter can be any amount of pips where fast < slow , when the price is trending (efficiency ratio close to 1) the indicator will use the fast parameter, if its ranging (efficiency ratio away from 1) the indicator will use the slow parameter, then it will work like the first methodology previously explained. So the fast parameter should be equal to a small movement of pips (0.0001 or 1 pip) and the slow parameter should be equal to a number of pips you wont expect to see in a ranging market. At this point it is good to test for both parameter and see which values work better (a more automatic process is in development) .
Hope you like it !
Priceit plots
ema - you can choose length
it plots a custom price say x
it plots price x*factors >
1.0005* price
1.001* price
0.9995* price
0.999* price
1.002* price
1.004* price
1.006* price
1.008* price
1.010* price
1.012* price
you can edit these , the scrip is open source
it plots ohlc4 and ohlc4* factors
1.0005* ohlc4
1.001* ohlc4
0.9995* ohlc4
0.999* ohlc4
you can edit these , the scrip is open source
line plotline plot any of the following or any combination of them together:
high, low, open, close, hl2, ohlc4
Auto-Line With DriftA variation on the Auto-Line indicator, we allow it to get closer to the price thanks to a drift , this also allow the line to be more directional .
This indicator can be used with moving averages using crosses as signals or as a band indicator by ploting a + dev as the upper band and a - dev as the lower one.
For any help or suggestions feel free to send a message :)
Linear Tendency FollowerLinear Trend Follower follows 'source' trend using lines within a number of periods ('length') using the last n periods source variation divided by 'length' as line slope. It is delayed by 'length' periods.
Auto-LineAn indicator inspired by the Renko chart.Instead of using a static box size we use standard deviation, this make the indicator more reactive to the market state.
If the indicator show no values then you have to round the price to the nearest integer, for that use the round parameter.
Hope you enjoy :)
draw line at bar on condition, up to 40 bars in lengthDraws line at bar on condition, up to 40 bars in length.
Well, that's not a line, but a set of `—` characters. But it looks like a line, so it is line.