Average Daily Range Lines + VWAP by TenozenOANDA:EURUSD
Hello! I created an indicator called ADRL (Average Daily Range Lines). This is my first original work, and I hope it's helpful to you guys.
1. Let me explain a bit of how it works...
So first of I need the ADR value, as by default length I use 19 for it. I want this indicator to calculate every start of the new day and break if another new day starts, so if the target level isn't reached, then the value would start to go back to 0 and get the new target level of the day. The target level is based on the first ADR multiplied by how much "percent" we want for the target level to hit, based on the first ADR value of the day. When the new day starts, the algo would start to add up the ADR value. If the added ADR hits the target level, it starts to plot a line by the candlestick by its high, low, and mid-level; it would create a new line if there is a new target being hit. So that's it.
About the VWAP, I took Tradingview's VWAP. I added the anchored part so I can plot a line if there is a new target level being hit. I hope that's okay.
2. How to use it...
- Using this indicator is pretty easy. When a new box is being plotted, that means that's the time when you should trade, as the box is still fresh. The VWAP helps if the market is trending or not.
- You can treat this indicator just like an S&R, as the price tends to respect the box. So best to use it as a pullback trade.
- We can assume if the price above the box, is a buy; vice versa.
3. Best Market to use...
- I suggest a trade in a nonvolatile market. The more volatile the market is, the harder the box is to be respected by the price. But if you really want to trade in that market, I suggest adjusting the inputs by how the box is being respected.
4. Suggestions...
- Use this indicator in 5 minutes chart if you day trade.
- Try using 30 minutes and setting the percent input from 100 to 80 and changing the ADR length from 19 to 14, this is much more suitable if you tend to hold trades.
Suporte e Resistência
SUPPORT RESISTANCE STRATEGY [5MIN TF]A SUPPORT RESISTANCE BREAKOUT STRATEGY for 5 minute Time-Frame , that has the time condition for Indian Markets
The Timing can be changed to fit other markets, scroll down to "TIME CONDITION" to know more.
The commission is also included in the strategy .
The basic idea is when ,
1) Price crosses above Resistance Level ,indicated by Red Line, is a Long condition.
2) Price crosses below Support Level ,indicated by Green Line , is a Short condition.
3) Candle high crosses above ema1, is a part of the Long condition .
4) Candle low crosses below ema1, is a part of the Short condition .
5) Volume Threshold is an added confirmation for long/short positions.
6) Maximum Risk per trade for the intraday trade can be changed .
7) Default qty size is set to 50 contracts , which can be changed under settings → properties → order size.
8) ATR is used for trailing after entry, as mentioned in the inputs below.
// ═════════════════════════//
// ————————> INPUTS <————————— //
// ═════════════════════════//
→ L_Bars ———————————> Length of Resistance / Support Levels.
→ R_Bars ———————————> Length of Resistance / Support Levels.
→ Volume Break ———————> Volume Breakout from range to confirm Long/Short position.
→ Price Cross Ema —————> Added condition as explained above (3) and (4).
→ ATR LONG —————————> ATR stoploss trail for Long positions.
→ ATR SHORT ————————> ATR stoploss trail for Short positions.
→ RISK ————————————> Maximum Risk per trade intraday.
The strategy was back-tested on TCS ,the input values and the results are mentioned under "BACKTEST RESULTS" below.
// ═════════════════════════ //
// ————————> PROPERTIES<——————— //
// ═════════════════════════ //
Default_qty_size ————> 50 contracts , which can be changed under
Settings
↓
Properties
↓
Order size
// ═══════════════════════════════//
// ————————> TIME CONDITION <————————— //
// ═══════════════════════════════//
The time can be changed in the script , Add it → click on ' { } ' → Pine editor→ making it a copy [right top corner} → Edit the line 27.
The Indian Markets open at 9:15am and closes at 3:30pm.
The 'time_cond' specifies the time at which Entries should happen .
"Close All" function closes all the trades at 3pm , at the open of the next candle.
To change the time to close all trades , Go to Pine Editor → Edit the line 92 .
All open trades get closed at 3pm , because some brokers don't allow you to place fresh intraday orders after 3pm .
// ═══════════════════════════════════════════════ //
// ————————> BACKTEST RESULTS ( 100 CLOSED TRADES )<————————— //
// ═══════════════════════════════════════════════ //
INPUTS can be changed for better Back-Test results.
The strategy applied to NSE:TCS ( 5 min Time-Frame and contract size 50) gives us 60% profitability , as shown below
It was tested for a period a 6 months with a Profit Factor of 1.8 ,net Profit of 30,000 Rs profit .
Sharpe Ratio : 0.49
Sortino Ratio : 1.4
The graph has a Linear Curve with Consistent Profits.
The INPUTS are as follows,
1) L_Bars —————————> 4
2) R_Bars —————————> 4
3) Volume Break ————> 5
4) Price Cross Ema ——> 100
5) ATR LONG ——————> 2.4
6) ATR SHORT —————> 2.6
7) RISK —————————> 2000
8) Default qty size ——> 50
NSE:TCS
Save it to favorites.
Apply it to your charts Now !!
Thank You ☺ NSE:TCS
CFB Utility - Manual LevelsManual Level's for the seasoned Set and Forget trader! Want to keep your levels in an organized place, wrapped up nicely in an indicator? You've found the right tool.
Features Include:
Up to 20 Manually Declared Levels
User defined Coloring and text
Auto Linear Trend Target x16Experienced traders always tell us that “Never trade against the trend.” or “Trend is our friend.”. Yes sure, no one wants to trade against the trend. However, there are a lot of trends with different types and cycles, then which trend to follow, which trend they are mentioning? This tool (also known as ALTT x16, Laser Net x16) will support us in identifying different linear trends with different cycles. Nearest history-based targets are also added for our convenience of completeness.
Markets: All.
Timeframes: All. Recommendation: 30m and above.
Periods: Up to 16.
Usage: The higher period of a trend, the more strength it has. Enter when price breakouts a trend line and exit at the nearest trend line and target.
ORBox | by Octopu$📈 ORBox | by Octopu$
ORBox is a Box for the Opening Range Breakout
The Box is added automatically according to the User preferences through GUI
This Indicator includes a Dropdown selection for which Range for the Breakout you want to use
ORBox has built-in Alerts for when the Breakout happens according to your preferences
Works in any Timeframe with any Ticker
(Using SPY 5m just as an example:)
www.tradingview.com
SPY
Features:
• Opening Breakout Range (ORB)
• Dropdown menu selection to choose which TF to watch
• Built-in Alerts for Momentum Awareness
Options:
• Customization for Box Colors and Sizes
• Display ORB for Current Day or Previous
Notes:
v1.0
ORBox Indicator release
Changes and updates can come in the future for additional functionalities or per requests.
Did you like it? Shoot me a message! I'd appreciate if you dropped by to say thanks.
- Octopu$
🐙
Fair Value Gap [LuxAlgo]Fair value gaps (FVG) highlight imbalances areas between market participants and have become popular amongst technical analysts. The following script aims to display fair value gaps alongside the percentage of filled gaps and the average duration (in bars) before gaps are filled.
Users can be alerted when an FVG is filled using the alerts built into this script.
🔶 USAGE
In practice, FVG's highlight areas of support (bullish FVG) and resistances (bearish FVG). Once a gap is filled, suggesting the end of the imbalance, we can expect the price to reverse.
This approach is more contrarian in nature, users wishing to use a more trend-following approach can use the identification of FVG as direct signals, going long with the identification of a bullish FVG, and short with a bearish FVG.
🔹 Mitigation
By default, the script highlights the areas of only unmitigated FVG's. Users can however highlight the mitigation level of mitigated FVG's, that is the lower extremity of bullish FVG's and the upper extremity of bearish FVG's.
The user can track the evolution of a mitigated FVG's using the "Dynamic" setting.
🔹 Threshold
The gap height can be used to determine the degree of imbalance between buying and selling market participants. Users can filter fair value gaps based on the gap height using the "Threshold %" setting. Using the "Auto" will make use of an automatic threshold, only keeping more volatile FVG's.
🔶 DETAILS
We use the following rules for detecting FVG's in this script:
Bullish FVG
low > high(t-2)
close(t-1) > high(t-2)
(low - high(t-2)) / high(t-2) > threshold
Upper Bullish FVG = low
Lower Bullish FVG = high(t-2)
Bearish FVG
high < low(t-2)
close(t-1) < low(t-2)
(low(t-2) - high) / high < -threshold
Upper Bearish FVG = low(t-2)
Lower Bearish FVG = high
🔶 SETTINGS
Threshold %: Threshold percentage used to filter our FVG's based on their height.
Auto Threshold: Use the cumulative mean of relative FVG heights as threshold.
Unmitigatted Levels: Extent the mitigation level of the number of unmitigated FVG's set by the user.
Mitigation Levels: Show the mitigation levels of mitigated FVG's.
Timeframe : Timeframe of the price data used to detect FVG's.
SGX Nifty OHLC for Nifty 50 IndexSGX Nifty OHLC for Nifty 50 Index
What is this Indicator?
• This indicator calculates the OHLC levels of SGX Nifty.
How does SGX Nifty impact NIFTY and the Indian Market?
• Helps in predicting NIFTY50 Index behavior.
• The closing price of today's 9.14 am (IST) SGX Nifty will be the Open of today's Nifty50 Open. This helps to determine the opening Gap of Nifty50.
• SGX Nifty OHLC levels can act as support and resistance in Nifty50.
Who to use?
• Beneficial for Day Traders, who trade in NIFTY Index.
What timeframe to use?
• Use 1 minute for better accuracy.
• Other timeframes will also work.
Important Note
• Use 1 min timeframe for accurate OHLC.
• In other timeframes OHLC will have negligible difference, it won't be huge.
• This indicator will appear only on NIFTY Index and Futures chart.
• To hide the warning label go to the indicator Menu.
Tide Finder (TiFi)Very helpful for price-action trading. Works excellently with 1-hour time frames and below.
See Tide Finder Plus (TiFi+) if you want help from this indicator in higher time frames.
See also: Adaptive Rebound Line (ARL) .
The idea for this indicator was brought on by the concept of high and low tides and everything related to the concept.
Simple LevelsSImple levels is a clean way to automatically plot important daily levels including:
Yesterday's High
Yesterday's Low
50% level between Prior High/Low
Today's Open
Premarket Low
Premarket High
This Daily Levels indicator is unique in its ability to:
-Plot all of the daily level PLUS premarket high/low levels (extended hours must be turned ON)
-Can hide past days levels, only plotting levels on the current day, to keep chart cleaner
-Can extend line levels right or fullscreen
-Plots the level price at each level on the chart
-Can show/hide price levels labels
-Can add supplemental premarket levels plot to show levels being formed during the premarket time period
-Coded with line.new vs plot so dashed lines are available as a style
-Automatically hides the indicator if the timeframe selected is Daily or greater
Support Resistance Channels/Zones Multi Time FrameHello All,
For long time I have been getting a lot of requests for Support/Resistance Multi Time Frame script. Here ' Support Resistance Channels/Zones Multi Time Frame ' is in your service.
This script works if the Higher Time Frame you set is higher than the chart time frame. so the time frame in the options should be higher than the chart time frame.
The script checks total bars and highest/lowest in visible part of the chart and shows all S/R zones that fits according the highest/lowest in visible part. you can see screenshots below if it didn't make sense or if you didn't understand
Let see the options:
Higher Time Frame : the time frame that will be used to get Support/Resistance zones, should be higher than chart time frame
Pivot Period : is the number to find the Pivot Points on Higher time frame, these pivot points are used while calculating the S/R zones
Loopback Period : is the number of total bars on higher time frame which is used while finding pivot points
Maximum Channel Width % : is the percent for maximum width for each channel
Minimum Strength : each zone should contain at least a 1 or more pivot points, you set it here. (Open/High/Low/Close also are considered while calculating the strength)
Maximum Number of S/R : the number of maximum Support/Resistance zones. there can be less S/Rs than this number if it can not find enough S/Rs
Show S/R that fits the Chart : because of we use higher time frame, you should enable this option then the script shows only S/Rs that fits the current chart. if you disable this option, all S/R zones are shown and it may shrink the chart. also you may not see any S/R zone if you don't choose the higher time frame wisely ;)
Show S/R channels in a table : if you enable this option (by default it's enabled) then lower/upper bands of all S/R zones shown in a table ( even if it doesn't fit the chart ). you can change its location. zones are sorted according to their strengths. first one is the strongest.
and the other options is about colors and transparency.
Screenshots before and after zoom-out:
after zoom-out number of visible bars and highest/lowest change and it shows more S/R zones that fits the current chart!
if you see Support Resistance zone like below then you should decrease ' Maximum Channel Width ' or you should set higher time frame better:
You can change colors and transparency:
You can change Table location:
Alerts added :)
P.S. I haven't tested it so much, if you see any issue please drop a comment or send me message
Enjoy!
[aalfiann] Swing Trail SignalDescription
The idea is when we want to swing trading with Trend Follower strategy.
This indicator technicaly only display the Support and Resistent with Trailing line. So we can follow the price to gain efficient profit.
Very simple strategy, clean and efficient.
Alert condition supported.
HOW TO USE
1. Buy Signal / Long Trend
The Buy Signal is appear once the resistent breakout. You can directly buy or setup for long trade after the bar is closed.
2. Sell Signal / Short Trend
The Sell signal is appear once the support breakdown. You can directly sell or setup for short trade after the bar is closed.
Concept
There are many Support and Resistent indicator out there, but mostly display two lines, support lines and resistance lines. The reason I've create this indicator is, if the Long Trend is ended, why we display the support line anymore? and vice versa.
The important thing in this indicator is how to know that the trend is ended. So that we can focus or prepare on the new trend. For example, if the Long trend is ended, then we should focus only to resistance line.
How I get into this?
Firstly, I do calculate the support and resistent per 1 candle length and multiplier 2.0 and I calculate the Average True Range atr = mult * ta.atr(length) .
After we have the ATR value, then we are able :
- To get Long Stop is by calculate ta.highest(close, length) - atr and then I compared the max value with the previous Long Stop by calculate math.max(longStop, longStopPrev) .
- To get Short Stop is by calculate ta.lowest(close, length) + atr and then I compared the min value with the previous Short Stop by calculate math.min(shortStop, shortStopPrev) .
How I know the direction trend has changed?
var int dir = 1
dir := close > shortStopPrev ? 1 : close < longStopPrev ? -1 : dir
changeCond = dir != dir
so we can draw the trailing line until the trend is ended also we will know when the trend direction is changed.
Multi Timeframe Support & ResistanceAbout This Indicator
This indicator plots support (pivot low) and resistance (pivot high) using the chart timeframe and second editable timeframe.
How it can be useful
Having higher timeframe support and resistance plotted on a lower timeframe chart helps keep you grounded in the current range the price is in. This can be useful when wanting to avoid taking longs at resistance and shorts at support.
How to use
Adjusting the look back and look ahead will impact how frequently the support and resistance lines move. When Price breaks above resistance or below support, the lines will not move until a new pivot high and pivot low are detected.
Disclaimer: Not Financial Advice
[TC] -- DayTrader's Auto Ultra TrendlinesThe goal of this indicator is to provide day traders with more realistic and general support and resistance trendlines for the chart timeframe they are trading, without the need for excessive parameter adjustment or manual consideration of trendlines from higher timeframes. As we all know, when trading smaller timeframes, it is not only the trendlines from the current timeframe which are significant - we must also consider the position of trendlines from higher ones.
Auto Ultra Trendlines plots a set of multi-timeframe-based resistance and support trendlines that are dynamically calculated depending on the timeframe of the chart which the indicator is applied to.
The indicator calculates conglomerated support and resistance trendlines based on trendline values calculated from several timeframes higher than the chart's. The higher timeframes are logically selected and differ based on the chart timeframe.
This indicator is designed to be applied to charts with a timeframe up to and including the 8H, and cannot be applied to charts with a timeframe greater than 1D.
To increase or decrease the lookback period for the trendlines, use the 'Lookback Factor' parameter.
[SCOPO]Scalping BotEnglish, German is found Below
Scalping Indicator (5min Mostly)
- An Indicator that Creates Possible Trades, created on MA's, Volumebased Support and Ressistance and MACD, The Take Profits are created by a Simple Support and Ressitance Indicator (Built In)
- The Indicator sends with the Alert Function Buy and Sell Signals
- These Signals exists from 3 Entrys, 5 Take Profits and 1 Additional Take Profit who should be used after Entry 2/3 has been filled
- If a Signal gets Invalid or an Entry has been filled ,there comes a new Alert
- The Indicator Plots Lines on the Chart for TP/SL and has an Integrated Backtester table
If you got Questions pls Contact me via PM!
Update Rolled out Today (2.9.2022)
- Its now possible to set your own choosen minimal TP, before was 0.3 % and the next Ressistance above would have been taken for longs
- FilterMA can now be choosen from Different MA's via Dropdown menu
- Length of FilterMA can now be set by user
- Those Changes have been done to make it usefull for higher Timeframes too
German
Scalping Indikator
- Kurzbeschreibung: Ein Indikator der mit EMA & Macd und Volumenbasierten Supports/Ressistance Long - & Shorttrades vorschlägt
- Der Indikator sendet mit der Alarm Funktion Kauf und Verkaufsignale
Diese Signale bestehen aus 3 Entrys, 5 Take Profits sowie 1 Additional Take Profit der Aktiv wird nachdem der Entry 2 / 3 gefüllt wurde
Sollte ein Signal Invalidiert werden dann kommt ein erneuter Alarm
Sollte der 1.Entry gefüllt werden dann kommt auch ein Alarm
- Der Indikator gibt visuell auf dem Chart Linien für TP/SL wieder und besitzt auch ein Integriertes Info Fenster für ehemalige Trades.
- Die TP's werden durch eine eingebaute Support/Ressistance Funktion ausgewählt.
Alle verbesserungsvorschläge bitte per PN an @ridicolous
Update vom 2.9.2022
- Es wurde die möglichkeit mindest TP's zu setzen hinzugefügt
- Die FilterEMA kann nun aus einer Auswahl verschiedener MA's ausgewählt werden
- FilterMA längen können nun angepasstwerden
- Diese Aenderungen wurden hinzugefügt um das Skript auch auf höheren Timeframes laufen lassen zu können
Pivot Average [Misu]█ This Indicator is based on Pivot Points.
It aggregates closed Pivot Points to determine a " Pivot Average " line.
Pivot Points here refer to highs and lows.
█ Usages:
Pivot Average can be used as resistance or breakout area.
It is also very usefull to find battle zones.
It can also be used as a trend indicator: when the price is below, trend is down, when price is above, trend is up.
Mixed with momentum/volatility indicator it is very powerfull.
█ Parameters:
Deviation: Parameter used to calculate pivots.
Depth: Parameter used to calculate pivots.
Length: History Lenght used to determine Pivot Average.
Smoothing MA Lenght: MA lenght used to smooth Pivot Average.
Close Range %: Define price percentage change required to determine close pivots.
Color: Color of the Pivot Average.
Simple LevelsSimple Level provides a (you guessed it) simple user to user level sharing experience, with less boxes, less formatting, and less hassle.
Simply insert your levels into the input box, separated by commas. That's it.
Example: 1,2,3,4,5
The Simple Levels indicator will automatically color your lines based on their position to the current close price.
If the level is crossed, the level line will change color.
This indicator is intended for those who just want to skip filling out boxes or typing in a tricky format, and cut to the chase.
There are additional, nice-to-have settings as well for the "more" technically inclined; however, nothing too complicated.
Enjoy!
B1rd's Level ToolV0.1
Allows you to create arbitrary support levels based on bar data from a selected point in time and source.
Features:
- An interactive chart that lets you pick the level simply by dragging the vertical line associated with its start point.
- A secondary vertical line (end point) sets up a point in time from where this indicator is going to check for price crossing the level. (so it doesn't trigger immediately if you are on a lower time frame)
- There is also an option to hide the vertical lines once you're done initializing.
- No matter what timeframe you are on, you can just pick the source and timeframe the level should be locked in on.
- Optionally when line is crossed it stops plotting the line from that point onward and shows you a signal.
- You can customize the name, color, size and style of each level.
TODO:
- Add the option to set up multiple levels.
- Add Alerts.
- Work on Improving the layout.
- Bugfixed.
- Give proper title names to the style tab.
T3 Striped [Loxx]Theory:
Although T3 is widely used, some of the details on how it is calculated are less known. T3 has, internally, 6 "levels" or "steps" that it uses for its calculation.
This version:
Instead of showing the final T3 value, this indicator shows those intermediate steps. This shows the "building steps" of T3 and can be used for trend assessment as well as for possible support / resistance values.
What is the T3 moving average?
Better Moving Averages Tim Tillson
November 1, 1998
Tim Tillson is a software project manager at Hewlett-Packard, with degrees in Mathematics and Computer Science. He has privately traded options and equities for 15 years.
Introduction
"Digital filtering includes the process of smoothing, predicting, differentiating, integrating, separation of signals, and removal of noise from a signal. Thus many people who do such things are actually using digital filters without realizing that they are; being unacquainted with the theory, they neither understand what they have done nor the possibilities of what they might have done."
This quote from R. W. Hamming applies to the vast majority of indicators in technical analysis . Moving averages, be they simple, weighted, or exponential, are lowpass filters; low frequency components in the signal pass through with little attenuation, while high frequencies are severely reduced.
"Oscillator" type indicators (such as MACD , Momentum, Relative Strength Index ) are another type of digital filter called a differentiator.
Tushar Chande has observed that many popular oscillators are highly correlated, which is sensible because they are trying to measure the rate of change of the underlying time series, i.e., are trying to be the first and second derivatives we all learned about in Calculus.
We use moving averages (lowpass filters) in technical analysis to remove the random noise from a time series, to discern the underlying trend or to determine prices at which we will take action. A perfect moving average would have two attributes:
It would be smooth, not sensitive to random noise in the underlying time series. Another way of saying this is that its derivative would not spuriously alternate between positive and negative values.
It would not lag behind the time series it is computed from. Lag, of course, produces late buy or sell signals that kill profits.
The only way one can compute a perfect moving average is to have knowledge of the future, and if we had that, we would buy one lottery ticket a week rather than trade!
Having said this, we can still improve on the conventional simple, weighted, or exponential moving averages. Here's how:
Two Interesting Moving Averages
We will examine two benchmark moving averages based on Linear Regression analysis.
In both cases, a Linear Regression line of length n is fitted to price data.
I call the first moving average ILRS, which stands for Integral of Linear Regression Slope. One simply integrates the slope of a linear regression line as it is successively fitted in a moving window of length n across the data, with the constant of integration being a simple moving average of the first n points. Put another way, the derivative of ILRS is the linear regression slope. Note that ILRS is not the same as a SMA ( simple moving average ) of length n, which is actually the midpoint of the linear regression line as it moves across the data.
We can measure the lag of moving averages with respect to a linear trend by computing how they behave when the input is a line with unit slope. Both SMA (n) and ILRS(n) have lag of n/2, but ILRS is much smoother than SMA .
Our second benchmark moving average is well known, called EPMA or End Point Moving Average. It is the endpoint of the linear regression line of length n as it is fitted across the data. EPMA hugs the data more closely than a simple or exponential moving average of the same length. The price we pay for this is that it is much noisier (less smooth) than ILRS, and it also has the annoying property that it overshoots the data when linear trends are present.
However, EPMA has a lag of 0 with respect to linear input! This makes sense because a linear regression line will fit linear input perfectly, and the endpoint of the LR line will be on the input line.
These two moving averages frame the tradeoffs that we are facing. On one extreme we have ILRS, which is very smooth and has considerable phase lag. EPMA has 0 phase lag, but is too noisy and overshoots. We would like to construct a better moving average which is as smooth as ILRS, but runs closer to where EPMA lies, without the overshoot.
A easy way to attempt this is to split the difference, i.e. use (ILRS(n)+EPMA(n))/2. This will give us a moving average (call it IE /2) which runs in between the two, has phase lag of n/4 but still inherits considerable noise from EPMA. IE /2 is inspirational, however. Can we build something that is comparable, but smoother? Figure 1 shows ILRS, EPMA, and IE /2.
Filter Techniques
Any thoughtful student of filter theory (or resolute experimenter) will have noticed that you can improve the smoothness of a filter by running it through itself multiple times, at the cost of increasing phase lag.
There is a complementary technique (called twicing by J.W. Tukey) which can be used to improve phase lag. If L stands for the operation of running data through a low pass filter, then twicing can be described by:
L' = L(time series) + L(time series - L(time series))
That is, we add a moving average of the difference between the input and the moving average to the moving average. This is algebraically equivalent to:
2L-L(L)
This is the Double Exponential Moving Average or DEMA , popularized by Patrick Mulloy in TASAC (January/February 1994).
In our taxonomy, DEMA has some phase lag (although it exponentially approaches 0) and is somewhat noisy, comparable to IE /2 indicator.
We will use these two techniques to construct our better moving average, after we explore the first one a little more closely.
Fixing Overshoot
An n-day EMA has smoothing constant alpha=2/(n+1) and a lag of (n-1)/2.
Thus EMA (3) has lag 1, and EMA (11) has lag 5. Figure 2 shows that, if I am willing to incur 5 days of lag, I get a smoother moving average if I run EMA (3) through itself 5 times than if I just take EMA (11) once.
This suggests that if EPMA and DEMA have 0 or low lag, why not run fast versions (eg DEMA (3)) through themselves many times to achieve a smooth result? The problem is that multiple runs though these filters increase their tendency to overshoot the data, giving an unusable result. This is because the amplitude response of DEMA and EPMA is greater than 1 at certain frequencies, giving a gain of much greater than 1 at these frequencies when run though themselves multiple times. Figure 3 shows DEMA (7) and EPMA(7) run through themselves 3 times. DEMA^3 has serious overshoot, and EPMA^3 is terrible.
The solution to the overshoot problem is to recall what we are doing with twicing:
DEMA (n) = EMA (n) + EMA (time series - EMA (n))
The second term is adding, in effect, a smooth version of the derivative to the EMA to achieve DEMA . The derivative term determines how hot the moving average's response to linear trends will be. We need to simply turn down the volume to achieve our basic building block:
EMA (n) + EMA (time series - EMA (n))*.7;
This is algebraically the same as:
EMA (n)*1.7-EMA( EMA (n))*.7;
I have chosen .7 as my volume factor, but the general formula (which I call "Generalized Dema") is:
GD (n,v) = EMA (n)*(1+v)-EMA( EMA (n))*v,
Where v ranges between 0 and 1. When v=0, GD is just an EMA , and when v=1, GD is DEMA . In between, GD is a cooler DEMA . By using a value for v less than 1 (I like .7), we cure the multiple DEMA overshoot problem, at the cost of accepting some additional phase delay. Now we can run GD through itself multiple times to define a new, smoother moving average T3 that does not overshoot the data:
T3(n) = GD ( GD ( GD (n)))
In filter theory parlance, T3 is a six-pole non-linear Kalman filter. Kalman filters are ones which use the error (in this case (time series - EMA (n)) to correct themselves. In Technical Analysis , these are called Adaptive Moving Averages; they track the time series more aggressively when it is making large moves.
Included
Alerts
Signals
Bar coloring
Loxx's Expanded Source Types
Median Absolute Deviation Outlier FractalsCore Concepts
Using Bill William's fractals (can be any types of pivots), we want to find outlier fractals using the median absolute deviation (MAD). When the true range falls outside the specified threshold, it is counted as an outlier. These outliers tend to have significance. Prices usually react to those levels in the future, sometimes a single level and other times a cluster of them to create a zone.
Usage
The baseline determines the trend. Above baseline is uptrend and below is downtrend.
MAD length is how much data you want to use for the MAD calculation.
Deviation limit is the multiple of MAD from median figure to determine if the true range prices exceeds it and if it does we have an outlier.
Notes:
The script is for informational and educational purposes only.
Any suggestions for improvement are welcome!
Price Gaps PRO Script is tracking price gaps on stock or idexes that are not continuosly traded. Usually, such gaps are filled fairly quickly.
This script shows how often the gaps are filled on the same trading day and in the longer term.
You also can set alarms to be notified about:
- New gap that appeared.
- Filling of a gap.
Script settings:
PRICE GAP SCANNER
Intraday gaps - For intervals shorter than a day we can incluse od exclude gaps on bars during traiding day.
Limit gaps - Gaps visualization will be making gaps smaller each time they will be filled parcially.
Hide filled gaps - Hiding filled gaps
Active - Background color for Active gap visualization
Filled - Background color for Filled gap visualization
ALERTS - ANY ALERT() FUNCTION CALL
Open gap: - Sending alert when new gap appers.
- $ - Sending in message cash value of the gap
- % - Sending in message percent value of the gap
Close gap - Sending alert when gap was filled.
STATS
Table - Type of table with statistics shown on the screen:
H(idden) - Do not show any statistics
B(ase) - Basic statistics about filling gaps
A(ctive) - List of not filled gaps
F(illed) - List of filled gaps
Offset - Starting index for Active/Filled list
Count - Number of shown rows for Active/Filled list.
Mark FVGsMark FVGs is marking FVG (stands for Fair Value Gap, other name is Imbalance or IMB) on your chart so that you can instantly detect them
It supports:
- marking bullish and bearish partly filled or unfilled FVGs of the current timeframe
- marking bullish and bearish already filled FVGs of the current timeframe
- marking bullish and bearish FVGs of the any 4 timeframes on your current timeframe
technically it re-builds them on the last bar or as soon as new realtime bar is updated. it looks with 1k bars back to find the nearest specific number of FGVs
Adjustments:
- changing the maximum number of FVGs to display.
- changing the color of FVG area
- displaying already filled FVG of the current time frame
- changing the mode of displaying area it can either extended or fixed width
- displaying labels of other time frame FVGs
Institutional Price LevelsInstitutional price levels
(AKA round numbers, Perfect Price Levels-PPL)
Institutional Price Levels (IPL) script shows the closest round numbers from the current price.
Some traders uses round numbers as a support resistance levels.
For example: 0.000 0.500 1.000 levels. Additional levels are 0.200 0.800.
So I made a simple script that shows round numbers and the quarter levels(Not exactly quarter but minor levels)
Quarter level option is planned on next update.
Default range is 300 pips and you can extend until 500 pips range.
Time range is extandable to the right and left side. You can just extend the line by increasing the bar numbers.
Inputs:
Show levels - Can show and hide all levels. Level colors are optional.
Show quarter - Can show and hide minor levels which is 0.800 0.200 levels. Colors are optional
Show more levels - Can show and hide more levels. Default range is 300 pips. Additional 200 pips range is optional.
Extend right bars - Can set length of levels to the right side.
Extend left bars - Can set length of levels to the left side.
Thank you.
Range Strat - MACD/RSIThis strategy uses a trend based indicator (MACD) for entry/exit signals with a momentum oscillator (RSI) to act as confirmation. Although relying on a trend based indicator this has been created for range bound crypto markets, which have been in a period of chop since June 2022.
Long/Short signals are generated from MACD with the RSI oscillator thresholds suppressing entries at price extremes. This is not a mean reversion RSI strategy! As the indicators are contrary to each other you will need to be generous with the RSI settings in order for signals to trigger.
Strategy is designed for use on the 4h timeframe, it may work well on higher timeframes, but lower time frames will lead to false signals. Use fixed percentage of equity for order size to capture the compounding effect. As a reversal strategy bear in mind that should market trend strongly in either direction stops will be required.
The RSI thresholds can be tailored to provide higher frequency or safer signals. Similarly tweaking MACD settings will provide earlier/more frequent or safer signals. As this is intended to enter near range high / low you should check the visual cues to ensure a ping-pong effect is observed, so that peaks and troughs are captured. Once an observable range is established the strategy works well across a range of crypto markets,
The script is open source, so feel free to amend as you wish. Using a different momentum oscillator may provide better results. I have prior coding experience, but first time using PineScript was last night, so it's not very tidy. I will update this with some additional customisation and TP/SL in the near future.
Usage: Range bound markets
Markets: Cryptocurrency Alts/BTC/ETH
Timeframe: 4h