Relative Strength Index custom lines and fillingI changed this RSI oscillator to give everyone ability to change position of strategic lines as RSI has a lot more to offer than only overbought and oversold boundries. You can change overbought and oversold line and make one more space depend what you are looking for. For me and as default it is 40-60 range. I put a center line at 50.
In den Scripts nach "泰国一寺庙被曝藏有40多具尸体" suchen
Linear Regression Trend Channel with Entries & AlertsPlease Use this Indicator If you understand the risk posed by linear regression trend channel
Features
Provides trend channel (best value for period is 40 on 5 minute timeframe
Provides BUY/SELL entries based on current channel
Provides custom color for channel
Best used with MattyPips strategy indicators
Risks : Please note, this script is the likes of Bollinger bands and poses a risk of falling in a trend range.
Entries may keep running on the same direction while the market is moving.
Dynamic Support and ResistanceSupport is a price level where a downtrend can be expected to pause due to a concentration of demand or buying interest. As the price of assets or securities drops, demand for the shares increases, thus forming the support line.
Meanwhile, resistance zones arise due to selling interest when prices have increased.s their name implies, dynamic support and resistance levels change their level with each new price-tick.To draw dynamic support and resistance levels, traders usually use moving averages which are automatically drawn by your trading platform. The 200-day exponential moving average (EMA), 100-day EMA, and 20-30-40-50-day EMA are very popular dynamic support and resistance levels.also in some references Williams Fractal level used for dynamic support and resistance levels. and it also includes other support and resistance levels that are projected based on the pivot point calculation. All these levels help traders see where the price could experience support or resistance. Similarly, if the price moves through these levels it lets the trader know the price is trending in that direction.
Ribbon_Arshiin this indicator
moving average 20-25-30-35-40-50-100-200 with fractal added to the chart.
Crypto McClellan OscillatorMcClellan Oscillator for cryptocurrency, taking into account only the top 40 cryptos.
Original code was by LazyBear.
Strategy - Bobo PAPATRHi I've revamped this bot mentioned in the linked idea to make it work with v4 of pine. In doing so there are some very significant changes to how it works. The main one is that it no longer uses traditional daily pivot calculations to calculate the bands. It creates a more dynamic intraday set of pivot points based on recent price action rather than yesterday's ohlc. As published, the bot is tuned for a 15 min time frame. But it actually works well on lower time frames you just need to adjust the lookback periods in settings a bit to re tune it. It's also tuned to ES really but will need tweaking for a different instrument at the very least.
The basic concept is recent price action is used to calculate a 'middle' around which red and green bands are located. Their position or width is largely determined by recent volatility. The middle line is again calculated from recent price action. The three lines from that form a tradeable range with green at the top and red at the bottom. The strategy is simple enough, it shorts as it sinks from outside red, and longs when rising above green. The basic principle being that once you enter that range you have a high probability of hitting the middle before you hit your stop loss. So the basic principle is you are trying to capture the inherent ranginess of liquid indices like S&P 500. That back and forth movement that happens. The bot is capturing this by fading extremes of a recent range but the problem with that is you'dd get murdered in a strong trend. To mitigate that there is a trend calculation running in the background the will prevent trading against firm trends mostly. So the bot should trade mostly in rangy conditions because that is what it is trying to do.
Bot will close issue close signals automatically upon crossing the middle, it also will close automatically at predefined stops or limits. These values are denominated in market mintick values. For example the CFD SPX500 has a mintick of 0.1. Therefore a stop value of 100 will equate to 10 points on the index. If trading the same market via ES1! the mintick value is different - 0.25. So in this case a value of 40 is required to set the stop at 10 points.
Anyway shout if you have questions. Hope it's useful.
TVC:SPX OANDA:SPX500USD
Custom EMA AngleThis script shows the angle of 6 EMAs to perform trade analysis. The EMA angle is also known as its Rate Of Change ( ROC ). The 6 EMAs (I, II, III , IV, V and VI ) default lengthes come from one of the Fibonacci Phi^3 and Phi^3/2 sub series (17, 34, 72, 144, 305 and 610), but can be changed to any values, particularly to the traditionally used 20, 40, 50, 100, 200 and 300. Up to my knowledge, Fibonacci Phi^3 and Phi^3/2 sub series lengthes were first proposed by Bo Williams.
Angle calculation is performed by calculating the tangent over a delta interval. Normalization is required to make the angle independent of the price range.
This script is meant to be used together with the corresponding EMAs on the candle pane. Non normalized view shows a more realistic angle condition but, if intended to be used with the CEMAS indicator, normalized view should be used.
Custom EMA + FIBOThis script combines 6 EMAs with 3 Donchian Channel 78.6% and 21.4% intermediary level lines to perform trade analysis. The 6 EMAs (I, II, III , IV, V and VI ) default lengthes come from one of the Fibonacci Phi^3 and Phi^3/2 sub series (17, 34, 72, 144, 305 and 610), but can be changed to any values, particularly to the traditionally used 20, 40, 50, 100, 200 and 300. Up to my knowledge, Fibonacci Phi^3 and Phi^3/2 sub series lengthes were first proposed by Bo Williams.
The 3 Donchian Channels used have default lengthes 72, 305 and 1292, calculated after the first length default value of 72. For each of the 3 Donchian Channels only an upper line, set by default at 78.6%, is plotted in green and its complement, set to 21.4%, is plotted in red. When the closing price is above 3 green lines, we say it is Forbidden to Sell ( PV ), and when the closing price is below 3 red lines, we say it is Forbidden to Buy ( PC ). Those conditions are flagged on the chart. These PV-PC conditions were, up to my knowledge, first proposed by Bo Williams.
EMAs min/max [3,5,8,10,12,15,35,40,50,60]A very simple script for your trading. I compare ema for many times and draw point for buy/sell.
Check it!
Pure Stochastic long onlyJust a stochastic for giving you a smart and quick signals of entering and exiting.
Your enter is K>D in the low band and close > last bar's high.
An Ema has been added for targeting and stops.
You exit also in case of high values of K or in case D crosses over K but in the "upper".
Length, periods and level of bands are personalized.
The system goes long only, because it fits at best for shares only; I leave you the attemp of writing code for other classes and for going short, in particular.
SUGGESTIONS:
Keep Oversold period high (> 20, also 40-45)
Keep Emaperiodfast higher (> 5)
Rsi Stops - JDThis simple indicator gives you a bias on the market that can be used as a filter, an entry indicator for pullbacks,...
It shows the special relationship I discovered between the rsi and the 27 period ema
and the relation between the 40/60 levels of the rsi and the atr offset of the 27 ema line
Enjoy!
JD.
#NotTradingAdvice
#DYOR
Support Resistance - DynamicThis is Dynamic Support / Resistance script.
How it Works?
It finds Pivot Points and creates channels for each Pivot Point. Channel size is calculated by (Highest - Lowest) * %Channel_size in Loopback Period. After creating channels it calculates that how many Pivot Points in the channels. more Pivot Points in channel means stronger Support/Resistance. in the option menu there is S/R Strength, this is the minimum number of Pivot Points that each channel must contain to be S/R. calculation starts from last pivot point and go back for "loopback period" which is 300 by default. so last Pivot Points have more priority. Finally after calculating Support/Resistance it draws lines.
Number of Support/Resistance line is Dynamic and up to 20 lines, that means number of lines changes dynamically. you can see how the script puts Suppport/Resistance lines dynamically by "Replay" button. (if I have time I will try to put a video)
Currently the scripts checks up to 40 pivot points in loopback period. it shows up to 20 S/Rs only for visible area in the chart.
There is option to Show S/R lines as Solid, Dotted or Dashed.
Enjoy!
Never Buy rules Whatever may be the market cap .... doesn't matter
if you are planning to buy a script, please check 200 day avg, MACD and RSI levels
1. Never buy a stock trading below the 200-day Moving Average
2. Never Buy a stock with MACD below 0
3. Never buy stock with an RSI below 40
Script is written in simple terms, easy to understand and modify.
Zahorchak MeasureCreator: Michael G. Zahorchak.
References:
The Art of Low Risk Investing by Michael G. Zahorchak, 1977. Unfortunately, it's all but impossible to find a copy these days.
The Complete Guide to Market Breadth Indicators by Gregory L. Morris, 2006. A fantastic resource for those interested in Technical Analysis or creating their own trend based system.
Two articles by Greg Morris on the Zahorchak Measure. I can't link to them under the House Rules, but they are easily searchable.
The Zahorchak Measure (ZM) is designed to give you a market bias (either uptrend or downtrend) which you can use to determine a trade bias for ETF's or stocks.
ZM works by taking multiple moving averages of the NYSE Composite, a moving average of the NYSE advance decline line, and examining the relationship between those elements. Broadly, the market is considered to be in a uptrend when ZM is above zero, and a downtrend when below. However, there are many ways to interpret the indicator.
The version created by Greg Morris is more akin to a binary indicator in that ZM jumps from number to number. This version is smoothed to create an oscillator as it reduces whipsaws (at the expense of lag). You can set the EMA Length to 1 to go back to the original.
Some notes:
Michael Zahorchak called it the "Zahorchak Method", whereas Greg Morris uses the term "Measure". I'm not totally clear on the change, but Mr. Morris made some changes (covered below), so that may explain the altered name.
The original indicator used moving averages of 5, 15, and 40 weeks. I have converted these to daily numbers as that's the time frame I most commonly trade. You can convert the numbers back by dividing by 5.
The original indicator used the Dow Industrials for the moving averages, however Greg Morris switched to the NYSE Composite due to the advance decline line being based on the NYSE.
Greg Morris removed the 5 period moving average of the NYSE Composite, as it created increased volatility at market tops and bottoms. I tested ZM with the 5 period MA added back in, and I believe removing it creates a superior indicator.
I've added both Multi Time Frame functionality, and the ability to alter moving average lengths. Play around and see what you can come up with.
ZM oscillates between -10 and +10. There are some interesting levels creating between these two numbers (apart from the obvious zero level) - see what you can come up with.
All credit goes to Michael Zahorchak and Greg Morris for the indicator creation. I have simply reproduced their work for the TradingView community as this great indicator wasn't available.
Any queries let me know in the comments or PM me.
DD.
Volume Scale by Price (VSP)Volume Scale by Price (VSP) show volume of bar in y-axis (price-axis) with options below:
1. Number of histogram
* Number of histogram = 0 => do not plot volume histogram
* Number of histogram = 1 => plot volume of 21 lasted bar (bar to bar )
* Number of histogram = 2 => plot volume of 21 bar next histogram 1 (bar to bar )
2. Line width
* Columns width of histogram
3. Volume scale ratio
* Scaling histogram with justifiable ratio depend on time frame and symbol
4. Histogram color
* Color of histogram
BO - Bar M15 Signal* This script show the signal base on volatility of previous bar M15 to trade Binary Option.
* Rule of Signal is below:
A. Rule 1: Wait for prices created temporary peak and bottom
Row 18: 10 minutes till close
B. Rule 2: Reversal previous bar's direction
1. Put Signal - Row 22 - 25:
- Delay 5' after bar M15 open
- previous bar's direction is upward
- price less than previous close
- temporary bottom greater than previous open
2. Call Signal - Row 29 - 32:
- Delay 5' after bar M15 open
- previous bar's direction is downward
- price greater than previous close
- temporary peak less than previous open
C. Rule 3: Follow previous bar's direction
1. Put Signal - Row 37 - 40:
- Delay 5' after bar M15 open
- previous bar's direction is downward
- price greater than previous open
- temporary peak less than previous peak
2. Call Signal - Row 43 - 46:
- Delay 5' after bar M15 open
- previous bar's direction is upward
- price less than previous open
- temporary bottom greater than previous bottom
Data structure map[string, float]The script shows a workaround for map in pine-script via drawings.
There are few restrictions with them:
1. The size of the map cannot be more that amount of allowed drawings (about 40 by now)
2. Because the map shares the space of drawings throughout the whole script, using drawings with the map must be careful, with handly creating and removing of each drawing, because otherwise pine's garbage collector might break the stack. I'd recommend not using more drawings with the map.
3. setters and getters must be called on every bar, because of implementation of functions in pine there are inner serieses, which must be updated on every bar. So wherever you have a setter or getter in the code - it must be called on every bar. But if it's just an update, then you should pass 'false' as a param of the funtion.
The script shows a way to work with the map: filling it with some tickers and values for each of it and then plot the value if the symbol on the chart equals to one of the tickers in the map.
And there are some examples of updating of the value and removing of the item from the map.
Data structure ListThe script shows a workaround for list in pine-script via drawings.
There are few restrictions with them:
1. The size of the list cannot be more that amount of allowed drawings (about 40 by now)
2. Because the list shares the space of drawings throughout the whole script, using drawings with the list must be careful, with handly creating and removing of each drawing, because otherwise pine's garbage collector might break the list
3. Setters and Getters must be called on every bar, because of implementation of functions in pine there are inner serieses, which must be updated on every bar. So wherever you have a setter or getter in the code - it must be called on every bar. But if it's just an update, then you should pass 'false' as a param of the funtion.
And an example of using the list - reversing of the list. When the list have been created, it's filled on every bar and then gets reversed. Plots show result before and after reversing of the list.
There are also some pieces of commented code showing possible way of working with another funtions of the list.
Data Structure StackThe script shows a workaround for stack in pine-script via drawings.
There are few restrictions with them:
1. The depth of the stack cannot be more that amount of allowed drawings (about 40 by now)
2. Because the stack shares the space of drawings throughout the whole script, using drawings with the stack must be careful, with handly creating and removing of each drawing, because otherwise pine's garbage collector might break the stack
3. push() and pop() must be called on every bar, because of implementation of functions in pine there are inner serieses, which must be updated on every bar. So wherever you have a setter or getter in the code - it must be called on every bar. But if it's just an update, then you should pass 'false' as a param of the funtion.
And the example of using the stack: if the stack is empty - then fill it and taking by a value per bar till the stack is emty and then fill it again.
Insertion sort and binary searchThe script shows a workaround for arrays in pine-script via drawings.
There are few restrictions with them:
1. The length of the array cannot be more that amount of allowed drawings (about 40 by now)
2. Because the "array" shares the space of drawings throughout the whole script, using drawings with the "array" must be careful, with handly creating and removing of each drawing, because otherwise pine's garbage collector might break the "array"
3. Getter and Setter must be called on every bar, because of implementation of functions in pine there are inner serieses, which must be updated on every bar. So wherever you have a setter or getter in the code - it must be called on every bar. But if it's just an update, then you should pass 'false' as a param of the funtion.
The script also shows an example of implementation of Insertion sort of the array in pine: when the array have been created, it's filled with pseudo-random numbers and sorted on every bar. There are plotting of the array's numbers before/after soring to show the sorting result.
There's also an example of implementation of binary search: after generation elements of the array, the first element is kept in local variable and after sorting of the array, the scripts is looking for new element's position via binary search and then plot that new index in an array (last plotted value with the green color)
Workaround for Arrays in pine and Bubble sortThe script shows a workaround for arrays in pine-script via drawings.
There are few restrictions with them:
1. The length of the array cannot be more that amount of allowed drawings (about 40 by now)
2. Because the "array" shares the space of drawings throughout the whole script, using drawings with the "array" must be careful, with handly creating and removing of each drawing, because otherwise pine's garbage collector might break the "array"
3. Getter and Setter must be called on every bar, because of implementation of functions in pine there are inner serieses, which must be updated on every bar. So wherever you have a setter or getter in the code - it must be called on every bar. But if it's just an update, then you should pass 'false' as a param of the funtion.
The script also shows an example of implementation of bubble sort of the array in pine: when the array have been created, it's filled with pseudo-random numbers and sorted on every bar. There are plotting of the array's numbers before/after soring to show the sorting result.