MTF MACD (PPO) [TANHEF]Mult-Timeframe Moving Average Convergence Divergence (MACD) and Percentage Price Oscillator (PPO) indicator that allows for viewing of 1 to 5 different Timeframes.
Brief Summary
The primary benefit of multi-timeframe indicators is getting better entries and confirmation from viewing multiple time frames at once, which can often get overlooked.
MACD shouldn't be only used by itself, it is a lot more consistent when applied in the same direction as the trend as well as multiple other things including support, resistance, and volume improve the outcomes of the MACD results.
Personally, I look for good entries on higher and lower time frames (multiple timeframes must agree with the buying or selling). For example, if a higher timeframe looks like a good long entry (MACD line is crossing up and below the zero line), then the lower timeframes should be checked to ensure they are not oversold or overextended (the MACD line must be low or below the zero), once the lower and higher timeframes are in agreeance an entry can be made.
What is Moving Average Convergence Divergence (MACD)?
Moving average convergence divergence (MACD) is a trend-following momentum indicator that shows the relationship between two moving averages of the price. The MACD is calculated by subtracting the 26-period exponential moving average (EMA) from the 12-period EMA.
What is the Percentage Price Oscillator (PPO)?
The PPO is identical to the MACD indicator, except the PPO measures percentage difference between two EMAs, while the MACD measures absolute (or dollar) difference. The PPO has the advantage of being comparable to other assets with different prices, whereas MACD readings are not comparable. For example, regardless of the asset's price, a PPO result of 10 means the short-term average is 10% above the long-term average.
A signal line can be displayed on Timeframe, including:
- MACD & Signal Line crosses (Green when MACD above Signal Line and Red when MACD below Signal Line)
- Histogram Direction (fast and slow EMA gap)
- SuperTrend for identifying trend direction (green for uptrend, red for downtrend)
- EMA Trend for identifying trend direction (above EMA = up trend and green, below EMA = down trend and red)
Cross Dots and Potential cross dots
- Green Dot, is displayed when the MACD crosses the Signal Line
- Red Dot, is displayed when the MACD crosses the Signal Line
- Yellow Dot. Potential cross up (green dot) on next bar. Displayed when if the same distance a MACD moves on a bar is applied to the next bar will cause a MACD and Signal Line Cross. This is calculated by checking if the value change of one bar is added to the current MACD value would lead to a cross on the next bar, the it is a potential up dot.
- Purple Dot. Potential cross down (red dot) on next bar. Displayed when if the same distance a MACD moves on a bar is applied to the next bar will cause a MACD and Signal Line Cross. This is calculated by checking if the value change of one bar is added to the current MACD value would lead to a cross on the next bar, the it is a potential down dot.
Best Fit Settings
- Can be applied to the MACD, Signal Line, and Histogram to re-scale (stretch) to fit them within the space of the +2 and -2 range that each timeframe is provided on this indicator.
- The lookback distance value is used to lookback a certain distance to ensure everything scaled to fit well.
Labels are displayed on the right of the indicators, including:
- a label identifying 'line indicator' is currently being displayed
- the Timeframe corresponding to each MACD or PPO indicator
- the MACD or PPO of each Timeframe
ابحث في النصوص البرمجية عن "supertrend"
Santanu StrategyThis script use for crypto market, its use ema and supertrend to find the current trend in the market
Intraday JXMODI CrossCombination of two strategy.
MA Cross strategy + RSI strategy to decide whether the stock/crypto is currently overbought/oversold.
RSI alert when change from bull to bear, and vice verse.
Useful for quick entry and exit trade.
Whenever RSI Black color line Cross Red color MA line , Trend Changes.
For Bull side Trade on High of that candle & Stoploss Low of that candle in which Cross Occurs.(Green Shadow)
For Bear side Trade on Low of that candle & Stoploss High of that candle in which Cross occurs.(Red Shadow)
For more confirmation use SuperTrend etc indicators.
Compound Indicator Strategy - BTC/USDT 3hThis is an Strategy finds and utilise end points of short term market trends and this is a combination of many indicators such as
1. Volume change oscillator
2. Money flow index ( MFI )
3. Momentum Oscillator (MOM)
4. Stochastic Indicator
6. Relative Strength Indicator ( RSI )
7. Relative volatility index (RVI)
8. Balance of power (BOP)
9. Small moving average ( SMA )
10. Exponential moving average ( EMA )
11. Parabolic SAR
12. Super trend indicator
this script forms a compound indicator after analysing movements of those indicators through different time frames and measure its co-relation and variance with the price action. buy doing that, indicator in a position to identify short term market reversals and presented.
after generating a common indicator, it evaluates standard deviation and standard variance with currant market price action and generates a buy and sell signals. you can determine your own trading method based on available options.
Compound IndicatorThis is an indicator finds end points of short term market trends. this is a combination of many indicators such as
1. Volume change oscillator
2. Money flow index (MFI)
3. Momentum Oscillator (MOM)
4. Stochastic Indicator
6. Relative Strength Indicator (RSI)
7. Relative volatility index (RVI)
8. Balance of power (BOP)
9. Small moving average (SMA)
10. Exponential moving average (EMA)
11. Parabolic SAR
12. Super trend indicator
this script forms a compound indicator after analysing movements of those indicators through different time frames and measure its co-relation and variance with the price action. buy doing that, indicator in a position to identify short term market reversals and presented.
TAExtLibrary "TAExt"
Indicator functions can be used in other indicators and strategies. This will be extended by time with indicators I use in my strategies and studies.
atrwo(length, stdev_length, stdev_mult) ATR without outliers
Parameters:
length : The length of the ATR
stdev_length : The length of the standard deviation, used for detecting outliers
stdev_mult : The multiplier of the standard deviation, used for detecting outliers
Returns: The ATR value
atrwma(src, period, type, atr_length, stdev_length, stdev_mult) ATR without outlier weighted moving average
Parameters:
src : The source of the moving average
period : The period of the moving average
type : The type of the moving average, possible values: SMA, EMA, RMA
atr_length : The length of the ATR
stdev_length : The length of the standard deviation, used for detecting outliers
stdev_mult : The multiplier of the standard deviation, used for detecting outliers
Returns: The moving average value
jma(src, period, phase, power) Jurik Moving Average
Parameters:
src : The source of the moving average
period : The period of the moving average calculation
phase : The phase of jurik MA calculation (-100..100)
power : The power of jurik MA calculation
Returns: The Jurik MA series
anyma(src, period, type, offset, sigma, phase, power) Moving Average by type
Parameters:
src : The source of the moving average
period : The period of the moving average calculation
type : The type of the moving average
offset : Used only by ALMA, it is the ALMA offset
sigma : Used only by ALMA, it is the ALMA sigma
phase : The phase of jurik MA calculation (-100..100)
power : The power of jurik MA calculation
Returns: The moving average series
wae(macd_src, macd_fast_length, macd_slow_length, macd_sensitivity, bb_base_src, bb_upper_src, bb_lower_src, bb_length, bb_mult, dead_zone_length, dead_zone_mult) Waddah Attar Explosion (WAE)
Parameters:
macd_src : The source series used by MACD
macd_fast_length : The fast MA length of the MACD
macd_slow_length : The slow MA length of the MACD
macd_sensitivity : The MACD diff multiplier
bb_base_src : The source used by stdev
bb_upper_src : The source used by the upper Bollinger Band
bb_lower_src : The source used by the lower Bollinger Band
bb_length : The lenth for Bollinger Bands
bb_mult : The multiplier for Bollinger Bands
dead_zone_length : The ATR length for dead zone calculation
dead_zone_mult : The ATR multiplier for dead zone
Returns:
ssl(length, high_src, low_src) Semaphore Signal Level channel (SSL)
Parameters:
length : The length of the moving average
high_src : Source of the high moving average
low_src : Source of the low moving average
Returns:
adx(atr_length, di_length, adx_length, high_src, low_src, atr_ma_type, di_ma_type, adx_ma_type) Average Directional Index + Direction Movement Index (ADX + DMI)
Parameters:
atr_length : The length of ATR
di_length : DI plus and minus smoothing length
adx_length : ADX smoothing length
high_src : Source of the high moving average
low_src : Source of the low moving average
atr_ma_type : MA type of the ATR calculation
di_ma_type : MA type of the DI calculation
adx_ma_type : MA type of the ADX calculation
Returns:
NazhoThis is a simple scalping strategy that works for all time frames... I have only tested it on FOREX
It works by checking if the price is currently in an uptrend and if it crosses the 20 EMA .
If it crosses the 20 EMA and its in and uptrend it will post a BUY SIGNAL.
If it crosses the 20 EMA and its in and down it will post a SELL SIGNAL.
The red line is the highest close of the previous 8 bars --- This is resistance
The green line is the lowest close of the previous 8 bars -- This is support
+SuperTrend
sar_taLevel: 3
Background
The Parabolic SAR is a technical indicator developed by J. Welles Wilder to determine the direction that an asset is moving. The indicator is also referred to as a stop and reverse system, which is abbreviated as SAR. It aims to identify potential reversals in the price movement of traded assets.
PINE v5 Version of SAR Library, which includes latest the Supertrend, Parabolic SAR, Gann Hilo activator, Chex indicators etc.
Function
This lib provides functions similar to SAR which can serve as a similar element for composite strategy. Parameters need to be tuned for the best performance and I will further inrish this collections.
Bonus,
If you can propose me a novel SAR source link, I would like to grant you one L4/L5 indicator with 2-month subscription for free.
Library "sar_ta"
tv_sar()
lucid_sar()
gl_activator()
ltb_sar()
chanex()
bjorgum_sar()
Super Auto Breakout Day Trade Volatile stocksThis strategy is looking at MA and distance from MA to determine entry and exit for highly volatile day trade stocks.
This trading strategy is not good for big-cap stocks as the movement there is not much in terms of %.
The target for open trade is to close at a 10% gain or at 2.8% loss which is a good risk to reward ratio.
GREEN MILE & RED SKY by OnurThis indicator is the upgrated version of "GREEN MILE by Onur". Indicator shows fibonacci buying + selling levels due to the past 3500 (adjustable and 1500 by default) candles. Prices in the dark green area is a strong buying signal. Prices in the dark red areas is strong selling signal
Decreasing period value makes indicator effective from long term to short term.
Works harmoniously with MACD & RSI indicators.
MTF DPO-RSI IndicatorThis indicator uses the principle of taking the RSI of DPO readings across multiple time frames in order to provide trade signals and an overarching view of market conditions to the trader. My hope with creating this indicator was to present more divergence based signals than your typical indicator, while still keeping those signals at a high quality.
In the settings menu, you may specify:
Indicator Timeframe - the chart resolution that is used to calculate values.
Source DPO Length - the number of bars used to calculate the Detrended Price Oscillator value. The DPO value is the source for the RSI calculations.
DPO Hull Smoothing - how much smoothing is applied to the DPO . Smoothing is accomplished by taking a Hull Moving Average of the closing price, and using this to calculate the DPO value.
RSI Length - the number of bars used to calculate the RSI of the DPO value.
Time Multipliers 1 through 6 - use this to define what resolution each plot will represent. A value of 1 will represent the current Indicator Timeframe. A value of 3 will represent 3 times the current Indicator Timeframe, etc.
Show Plot 1 through 6 - toggles the display of plots.
How I trade with this indicator:
A value of under 30 represents an over sold state for that particular plot. A value of over 70 represents an overbought state for that plot.
Identify divergences on a lower timeframe plot which are apparent in overbought or oversold conditions, and confirm the signal with an overbought or oversold condition, or a divergence on a higher timeframe plot. Divergences which begin in oversold or overbought territory and end inside the 30-70 range tend to be more reliable signals, in my experience. Like all indicators, this is best when used in conjunction with other indicators. Trend indicators, such as double EMA's and Supertrend are my favorite pairing, and a stochastic RSI is a good tool to have as well.
This is my first published indicator! If you find unique ways to use it, drop me a message. I'd love to know what you find. :)
Divergence-Support/ResistenceAnother script based on zigzag, divergence, and to yield support and resistence levels.
This idea started with below two concepts:
▶ Support and resistence are simply levels where price has rejected to go further down or up. Usually, we can derive this based on pivots. But, if we start looking at every pivot, there will be many of them and may be confusing to understand which one to consider.
▶ Lot of people asked about one of my previous script on divergence detector on how to use it. I believe divergence should be considered as area of support and resistence because, they only amount to temporary weakness in momentum and nothing more. As per my understanding
Trend > Hidden Divergence > Divergence > Oscillator Levels of Overbought and Oversold
⬜ Process
▶ Now combining the above two concepts - what we are trying to do here is draw support resistence lines only on pivots which has observed either divergence or hidden divergence. Continuation and indecision pivots are ignored.
▶ Input requires only few parameters.
Zigzag lengths and oscillator to be used. Oscillator periods are automatically calculated based on zigzag length. Hence no other information required. You can also chose custom oscillator via external source.
▶ Display include horizontal lines of support/resistence which are drawn from the candle from where divergence or hidden divergence is detected.
▶ Support resistence lines are colored based on divergence. Green shades for bullish divergence and bullish hidden divergence whereas red shades for bearish divervence and bearish hidden divergence. Please note, red and green lines does not mean they only provide resistence or support. Any lines which are below the price should be treated as support and any line which are above the price should be treated as resistence.
▶ Divergence symbols are also printed on the bar from where divergence/hidden divergence is detected.
↗ - Bullish Hidden Divergence
↘ - Bearish Hidden Divergence
⤴ - Bullish Divergence
⤵ - Bearish Divergence
▶ Script also demonstrates usage of libraries effectively. I have used following libraries in this code.
import HeWhoMustNotBeNamed/ zigzag /2 as zg
import HeWhoMustNotBeNamed/enhanced_ta/8 as eta
import HeWhoMustNotBeNamed/ supertrend /4 as st
Can be good combination to use it with harmonic patterns.
True BarcolorHeikin Ashi can be useful for understanding trend based on price action but it doesn't take volume in context. Here I have tried to use volume for understanding true bar color and ultimately true trend analysis. It can also help you in not getting trapped in sudden shakeouts. Also, you can use it for averaging of your existing position.
Conditions used:
Relative closing price
Relative volume against previous bar and overall moving average of volume
Volume analysis
Trend analysis
CHAMELEON TRAILA filter combining the built in supertrend function and two SMA's in order to act as a filter for trade ideas put forward by CHAMELEON which can be placed in a separate panel.
This is not accurate enough to use on its own as a signal, but helps filter out more complex ideas. To be most effective it is recommended to set the LENGTH correctly.
Includes ALERT CONDITION's for when the TRAIL is UP, DOWN or MIXED.
Multi-ZigZag Multi-Oscillator Trend DetectorThis table is intended to give you snapshot of how price and oscillators are moving along with zigzag pivots.
This is done in the same lines of Zigzag-Trend-Divergence-Detector
But, here are the differences
Table shows multiple oscillator movements at a same time instead of one selected oscillator
Divergence is not calculated and also supertrend based trend. Trend can be calculated based on zigzag movements. However, lets keep this for future enhancements.
This system also uses multiple zigzags instead of just one.
⬜ Process
▶ Derive multiple zigzags - Code is taken from Multi-ZigZag
▶ Along with zigzags - also calculate different oscillators and attach it to zigzag pivot.
▶ Calculate directions of zigzag pivots and corresponding oscillators.
▶ Plot everything in the table on last bar.
⬜ Table components
Table contains following data:
Directional legends are:
⇈ - Higher High (Green)
⇊ - Lower Low (Red)
⭡- Lower High (Orange)
⭣ - Higher Low (Lime)
⬜ Input Parameters
▶ Source : Default is close. If Unchecked - uses high/low data for calculating pivots. Can also use external input such as OBV
▶ Stats : Gives option to select the depth of output (History) and also lets you chose text size and table position.
▶ Oscillators : Oscillator length is derived by multiplying multiplier to zigzag length. For example, for zigzag 5, with 4 as multiplier, all oscillators are calculated with length 20. But, same for zigzag 8 will be 32 and so on.
▶ Available oscillators :
CCI - Commodity Channel Index
CMO - Chande Momentum Oscillator
COG - Center Of Gravity
MFI - Money Flow Index (Shows only if volume is present)
MOM - Momentum oscillator
ROC - Rate Of Change
RSI - Relative Strength Index
TSI - Total Strength Index
WPR - William Percent R
BB - Bollinger Percent B
KC - Keltner Channel Percent K
DC - Donchian Channel Percent D
ADC - Adoptive Donchian Channel Percent D ( Adoptive-Donchian-Channel )
⬜ Challenges
There are 12 oscillators and each zigzag has different length. Which means, there are 48 combinations of the ocillators.
First challenge was generating these values without creating lots of static initialization. Also, note, if the functions are not called on each bar, then they will not yield correct result. This is achieved through initializer function which runs on every bar and stores the oscillator values in an array which emulates multi dimensional array oscillator X zigzag length.
Next challenge was getting these values within function when we need it. While doing so I realized that values stored in array also have historical series and calling array.get will actully get you the entire series and not just the value. This is an important takeaway for me and this can be used for further complex implementations.
Thanks to @LonesomeTheBlue and @LucF for some timely suggestions and interesting technical discussions :)
Keltner Center Of Gravity Channel ( KeltCOG )I have the ambition to create a ‘landscape’ which enables the user to see the ‘mood’ of the market about the price of an instrument, simply by looking where the candles go. Prices are a simple phenomenon , they go up or down or stay the same. This is represented quite well for the short term by a candle. I recommend to study candle patterns. Prices not only fluctuate but also trend up, down or go sideways. The user should analyze this by determining the COG (Center Of Gravity) and the ‘normal’ current range by using the historical data in a lookback period.
As a COG the center line of a Donchian Channel is often used. I.m.o. a COG should be a zone, in this channel I use the gray zone of my Donchian Fibonacci Channel, The ‘normal’ range is a multiple of Average True Range, as used in a Keltner Channel. Combining the two can give a cumbersome result, as one can see in my Keltner Fibonacci Channel. In this KeltCOG channel I solved this by not using all Fibonacci levels and by making the Keltner lines strictly parallel to the nearest COG line. To do this, I use the fact that the COG lines have horizontal stretches, there I make the Keltner lines horizontal too. Only where the COG lines change value, the Keltner lines are recalculated. This way the channel gets a very regular shape with three clear zones.
Interpretation of a chart by using the KeltCOG channel.
Overbought: If the candles go higher then the blue zone, the market is hyper enthusiast, creating an overbought situation. This is often followed by a reversion to the COG.
Uptrend: If the candles form in the blue zone, the market is enthusiast and willing to pay more.
Hopeful: If the candles form in or near the upper uncolored zone, the market is hopeful and is thinking about paying more. Sometimes prices go a little up.
Content: If the candles form in the gray zone, which represents COG, the market is happy with the current prices, so these move sideways
Disappointed: If the candles form in or near the lower uncolored zone, the market is disappointed and contemplates paying less, sometimes prices go a little down.
Downtrend: If the candles form in red zone, the market doesn’t like the instrument at all, rejects the current price and is only prepared to pay less.
Oversold: If the candles form below the red zone, the market overdoes its disgust, creating an oversold situation, often followed by a reversion to the COG.
CCI 5 LEVELS BY MOADThe Commodity Channel Index ( CCI ) is a momentum oscillator used in technical analysis primarily to identify overbought and oversold levels by measuring an instrument's variations away from its statistical mean. Besides overbought/oversold levels, CCI is often used to find reversals as well as divergences. Originally, the indicator was designed to be used for identifying trends in commodities , however it is now used in a wide range of financial instruments.
There are several steps involved in calculating the CCI . The following example is for a typical 14 Period CCI:
CCI = (Typical Price - 14 Period SMA of TP) / (.015 x Mean Deviation)
Typical Price (TP) = (High + Low + Close)/3
Constant = .015
The Constant is set at .015 for scaling purposes. By including the constant, the majority of CCI values will fall within the 100 to -100 range.
Mean Deviation:
1) Subtract the most recent 14 Period Simple Moving from each typical price (TP) for the Period.
2) Sum these numbers strictly using absolute values.
3) Divide the value generated in step 2 by the total number of Periods (14 in this case).
Overbought and Oversold conditions can be used in their more traditional sense to identify future reversals. Remember true overbought/oversold thresholds values can and often do vary between instruments.
During a Bullish Trend, price crossing above the overbought threshold may indicate strong confidence in the move and price will continue to rise.
During a Bearish Trend, price crossing below the oversold threshold may indicate strong confidence in the move and price will continue to fall.
The first option is a modified CCI indicator that uses the "Arnaud Legoux Moving Average" instead of the SMA , and the source uses the VWAP instead of the HLC3. Added to this version an option to calculate CCI with different types of moving averages:
Green dots mean they are overbought
Orange dots mean they are oversold
Added a "SuperTrend Background" based on the modified CCI indicator:
Bull event = CCI crossing over the 0 line
Bear event = CCI crossing below the 0 line
Added a signal as EMA (modified CCI , signal length)
The second option is a standard CCI indicator that shows a coloured histogram of important levels, giving a good visual of the CCI levels. Added to this version is an extra coloured level +/-200 and an option to use Traditional CCI calculations according to user @JustUncleL
LEVELS:
Aqua: Greater than 200.
Lavender: Greater than 100 and less than 200.
Dark Lavender: Greater than 0 and less than 100.
Dark Coral: Less than 0 and greater than -100.
Coral: Less than -100 and greater than -200.
Light Red: Less than -200.
Zigzag Candles MAWe have the candles here: Zigzag-Candles
Lets create moving average!!
Just simple moving average at the moment. Since, items are in array. Not so easy to use standard functions of pine. Hence, will take that for future enhancements.
ATR and Supertrend next!!
Zigzag CandlesCan't deny that I am obsessed with zigzags. Been doing some crazy experiments with it and have many more in pipeline. I believe zigzag can be used to derive better trend following methods. Here is an attempt to visualize zigzag as candlesticks. Next steps probably to derive moving average, atr (although there was an attempt of AZR made earlier) and probably supertrend too ;)
Input parameters include ZigzagLength (to calculate zigzag) and CandleSize (number of zigzag pivots in each candle)
CandleSize can be 3 or more. Every time we collect pivots which are equal to CandleSize, we derive one candle. And when we derive a candle, we remove all old pivots except the last one. Becauase, the last pivot acts as open to the next bar and is required.
Body of the candle tells the start and end zigzag pivot in the range. And Wicks signify highest and lowest pivots in the range. High and Low wicks are placed at the pivot where high and lows are formed. Hence, you can see them at different positions each time.
Thanks to @RicardoSantos for suggesting boxes for candles - while I was trying to achieve this with plotbar
[VJ] Mega Supertrend for IntradayThis is a simple intraday strategy for working on Stocks or commodities based out on Super Trend and intraday's best friend - VWAP . You can modify the start time and end time based on your timezones. Session value should be from market start to the time you want to square-off
Important: The end time should be at least 2 minutes before the intraday square-off time set by your broker
Comment below if you get good returns
Strategy: Tweaked Super trend with VWAP
Indicators used :
Super trend is simple and easy to use indicator and gives a precise reading about an on going trend.It is built with two parameters, namely period and multiplier.The Buy and Sell signal modifies once the indicator tosses over the closing price. When the Super trend closes above the Price, a Buy signal is generated, and when the Super trend closes below the Price, a Sell signal is generated. In this case we use it only for direction .
Multiplier is a vital input for Super trend. If the multiplier value is too high, then lesser number of signals is made.
Volume is important as we don’t want to get stuck with a stock which has few takers, even if you think it is priced attractively. Thus, the VWAP was created to take into account both volume as well as Price so that the potential trader would make the trading decision or not.
In simple terms, the Volume Weighted Average price is the cumulative average price with respect to the volume
Buying/Selling
when the closing price starts moving up/down and farther from the VWAP, there is pressure among the traders to sell/buy, a general belief kicks in that it might be that the stock is overvalued/undervalued .This is the time when we couple the Super trend to take our entries
Usage & Best setting :
Choose a good volatile stock and a time frame - 5m.
ST multiplier : 3
There is stop loss and take profit that can be used to optimise your trade
The template also includes daily square off based on your time.
[VJ] Hulk Smash IntraThis is a simple intraday strategy for working on Stocks or commodities based out on Super Trend and ever reliable ADX . You can modify the start time and end time based on your timezones. Session value should be from market start to the time you want to square-off
Important: The end time should be at least 2 minutes before the intraday square-off time set by your broker
Comment below if you get good returns
Strategy: Supertrend and ADX strength (Hulk Smash)
Indicators used :
Super trend is simple and easy to use indicator and gives a precise reading about an on going trend.It is built with two parameters, namely period and multiplier.The Buy and Sell signal modifies once the indicator tosses over the closing price. When the Super trend closes above the Price, a Buy signal is generated, and when the Super trend closes below the Price, a Sell signal is generated. In this case we use it only for direction .
ADX informs a trader when the market is trending.It filters out anti trend trades to help trend chasing indicators from frequent whipsaws
Multiplier is a vital input for Super trend. If the multiplier value is too high, then lesser number of signals is made.
Buying/Selling
• If the price is going UP, and the ADX indicator is also going UP, then we have the case for a bullish trend.
• The same is true if the price is going down and the ADX indicator is going UP. Then we have the case for a bearish trend.
• Value of ADX below 20 is called trading zone which implies non-trending market
• Trade with Strength only if the Super trend is validating
ADX Values
0 - 20 : Non Trending (Range bound market, phase of Accumulation/Distribution)
20-45 : Strong Signal (helpful for traders)
45-60 : Very strong trend (occur rarely, indicate exhaustion)
60 - 100 : Extremely strong trend (very rare, unsustainable trends, be ready for reversals)
Usage & Best setting :
Choose a good volatile stock and a time frame - 5m.
ADX Factor : vary as per info above
ST multiplier : 3
There is stop loss and take profit that can be used to optimise your trade
The template also includes daily square off based on your time.
Strategy TemplateTrying to include few basic things which is needed for strategy which can be used as template.
Few important components
Strategy parameters
Few important parameters include - initial_capital, default_qty_type, default_qty_value, commission_type, pyramiding and commission_value. All my strategies will have similar settings with initial captial set to 20000 to 100000. 100% of equity per trade with no pyramiding (set to 1) and minimal commission.
margin_long and margin_short can be used for leveraged trading. But, since we are not using pyramiding, it will make no effect.
Trade Limiting parameters
Two types of limiting is available in the scripts
Limiting trading direction : this is done through method strategy.risk.allow_entry_in and input parameter tradeDirection
Limiting trades to particular time window : This is achieved through adding start time and end time parameters of type input.time and check whether time is within this window
Custom Methods
customized security method to get higher timeframe data
customized moving average method to get moving average of any type
Custom Parameters
Moving average Type option list which I use quite often. Any strategy where there is need to use moving average, I try to scan through different moving average types and lengths to see which one is more appropriate for the given strategy. Hence, keeping this parameter in template to make it readily available when I start with new strategy
waitForCloseBeforeExit - this is used if trailing stop need to activated as soon as price hits the stop or only on close price. This is again something I switch quite often based on strategy. Hence, keeping this as part of the template.
Entry and Exit statements for long and short
These statements from line (57 to 62) can remain as is even with new strategy. Only thing to be set are variables - buyCondition, sellCondition, closeBuyCondition and closeSellCondition
Last but not the least
In pinescript, a long and short position cannot coexist in a strategy at any point of time. Any short positions created will automatically stop long positions and vice versa. Hence, it is important make short and long trades mutually exclusive. In this example, I have used 200 weekly moving average as trend bias. No short positions are taken when price is trading above 200 weekly moving average low/close and no long positions are taken when price is less than 200 weekly moving average high/close. Any rule built on top of this (In this case a simple supertrend rules) ensures that there are no conflicting signals and hence avoids confusing trades on the stratgy.
Trend ExplorerAre we in a bull or a bear market?
From the technical analysis point of view, the answer is "It depends". It depends from the parameters of your indicator, the timeframe of the pair you are looking and the volatility of that specific market you are looking to.
After I experimented with various trending indicators I decided to develop a framework that potentially could "embed" already existing logic from well known indicators (e.g. Supertrend OTT etc.).
The most important part is that I managed to abstract that logic away and experiment even further to produce some more robust, market and timeframe resolution agnostic results. While at the same time I was able to switch between market and timeframe resolution specific configuration to take some decision.
Finally, I decided to share this code with you folks! Developed this indicator "Trend Explorer" in an effort to make the aforementioned abstraction of all those trending indicators.
The goal is to enable the user to explore and combine different approaches in order to create a more robust and market general/specific, timeframe resolution invariant/fluctuating and volatility auto/manual adjusted indicator according to his needs.
The logic behind the abstraction is fairly simple. The trending indicator consists of two boundary lines the "bull trend low boundary" (green) and the "bear trend high boundary" (red). The indicator also has a control line (orange). Every time the control line crosses a boundary there is a trend reversal! The boundary lines are defined by the thresholds. To be more precise, boundaries are pulled upwards by thresholds (blue) during a bull market and downwards during a bear market. I challenge the user to experiment with the different ways of calculating the thresholds and the control. I am open to suggestions that might improve and extend the possibilities of this indicator. Any feedback, comments, general thoughts or bug reports are welcome.
Why did I chose those defaults?
For threshold calculation I chose MINMAX which calculates the local minimum and maximum using a sliding window. As far as I know it is not used in any existing trending indicator, but it seems reasonable for a trader to search for local min and max to make a decision. The width of the sliding window a.k.a the "period to remember" the local min and max is 30 days by default, just because I believe that for regular people it is a reasonable period of time to forget too.
Also, compared to the SUBADD method MINMAX does not seem to lag behind, especially when using averages in the SUBADD mode. Moreover, I consider MINMAX to be more general than the margins used by the SUBADD since margins should be configured based on the underlying market volatility.
For a source of min and max I chose the low and high values just because they are timeframe resolution invariant, meaning that they have the same (not exactly due to number precision and rounding, but very close) results for a single pair whether you use "4 hour" or "1 day" time interval! Another popular choice might be (close, close) since many traders wait for the daily candle to close in order to discard outliers. However, this approach is not resolution invariant and it depends from the time interval the user has selected.
Do you have any interesting trending indicator you would like to see how it performs in this framework logic? Let me know!
Do you have in mind any variation of Control or Thresholds calculation you would like to test? Please describe it in the comments below so I can add it in my implementation for you!
Did you find any other bug or you experienced any strange behavior? PM me with a description of the bug, the trading pair the timeframe resolution the exact time (candle) and all the necessary configurations for this indicator so I can reproduce it on my machine!
Please enjoy with caution,
Jason