TPTR_Dynamic_Ratio_CorrelatorThe script provides a way to compute ratio between two indexes (or stocks) of your choice, and paints a "up-arrow" below the first candle where and when the value of the ratio exceeds your threshold of choice.
It also creates a table summarizing the value of your securities, and the value of the ratio below.
The script will also alert you with a message (automatically) when the ratio of your security_1 and security_2 exceeds the ratio.
Dynamic
Moving Average with Dynamic Color Gradient (WaveTrend Momentum)Similar scripts exist but I haven't seen one using WaveTrend and I haven't seen one that hand picks evenly divided colors between GREEN-YELLOW-RED.
The green is exact green, the yellow is exact yellow, and the red is exact red.
Not complicated, just useful.
Green to Red Gradient for Dynamic / Color Changing IndicatorsI have evenly divided every color between green and red.
This gradient is useful for pine coders who are creating color changing, dynamic, or gradient indicators.
Bollinger bands dynamic alertsThis triple Bollinger script is very useful for options traders to determine the trend condition. When the trend stays within 1 sigma limits it is termed as "congestion", breakout of congestion starts the "trending" phase and the big breakout termed "Blowout" happens when the underlying crosses the 2sigma and reaches 3 sigma limits in very short time at steep trend angles. The script provides dynamic alerts as soon as the underlying breaks out of these zones and enables options traders to stay in the trade longer. www.tradingview.com
Dynamic Moving AveragesThis indicator uses what I call Dynamic Moving Averages to identify trends. The reason these moving averages are dynamic is that they track different sources based on the trend. Allow me to explain...
Low = identifies the least sellers were willing to sell for in a given period.
High = Identifies the most buyers were willing to buy for in a given period.
Avg Low = Shows the least sellers were willing to sell for over several periods.
Avg High = Shows the least buyers were willing to buy for over several periods.
If, in an uptrend, the closing price closes below the Avg Low, a trend change could be coming to the downside. If, in a downtrend, the closing price closes above the Avg high, a trend change could be coming to the upside.
This indicator uses a single moving average to identify the trend. If price is above this MA, we are in an uptrend. Below it, we are in a downtrend. I recommend using that 50 length as your trend. Any moving averages that are Dynamic, will track the low when above the Trend MA and track the High when below the trend MA.
When Price crosses a Dynamic Moving Average, the trend is likely changing. I recommend using 3 MAs at a time (trend + 2 shorter MAs), but I have provided 7 in total.
Papercuts Dynamic EMA - Relative Parameter FunctionThe goal of this is to link two parameters of different known low and high values so one affects the other.
In this case, I want to link Relative Volume to the length of an EMA, so it responds faster in times of high volume.
As an animator I am used to linking values in this way with Maya using a set driven key, took some work to figure it out in pine.
Looking up this concept, it has a few names, Relative values, linear interpolation, or rescale values.
Thanks to pinecoders for writing the EMA funciton that can accept length variables!
Here's a quick look at the root function to link the two values.
f_relativeVal(_source, in_bot, in_top, out_bot, out_top) =>
// float _source: input signal
// float in_bot : minimum range of input signal.
// float in_top : maximum range of input signal.
// float out_bot : minimum range of output signal.
// float out_top : maximum range of output signal.
clampSrc = _source > in_top ? in_top : _source < in_bot ? in_bot : _source //claps source to create a controlled range
//relInput = (clampSrc - in_bot) / (in_top - in_bot) * 100
inDiffIncrement = (in_top - in_bot)
outDiffIncrement = (out_top - out_bot)
out_bot + (clampSrc - in_bot) * outDiffIncrement / inDiffIncrement // rescale input range to output range
Directional Strength Panel█ OVERVIEW
The panel display trend momentum of selected coins/symbol (up to 6) based on the Arnaud Legoux Moving Average (ALMA). I'm using ALMA to measure the trend because it resolves 2 main issue of the more common moving averages, smoothing and responsiveness. By removing the minor fluctuations in price without sacrificing the responsiveness, the trend become much more clearer and easier to be measured.
In essence, as the meter approaches 100, it means the ALMA is pointing up (0 means pointing down)
█ Features
- Adjustable ALMA settings with options to turn on/off display the ALMA on current chart
- Select 6 symbols of your choice to be monitored in the settings (You have to manually update the label to display)
- Working on all timeframes
- Switch the panel color to suit background chart theme (Light/Dark)
█ Developer Notes
I'm working with table a lot lately and decided to publish this as a sample if anyone wishes to edit the script to display whatever they want. main calculation in get_data() function should be clamped to value between 0-100. As for the panel size, you can edit the row_max (currently set to 20 and 40) if you need it to be smaller or bigger (**i feel anything smaller than 16 is ugly)
█ Disclaimer
Past performance is not an indicator of future results.
My opinions and research are my own and do not constitute financial advice in any way whatsoever.
Nothing published by me constitutes an investment recommendation, nor should any data or Content published by me be relied upon for any investment/trading activities.
I strongly recommends that you perform your own independent research and/or speak with a qualified investment professional before making any financial decisions.
Any ideas to further improve this indicator are welcome :)
Dynamic SMAThis script uses dynamic length to create a different sma type.
The length of the "Dynamic SMA" - "dSMA" can be:
'RSI', 'Stoch', 'ATR', 'MFI' or '%R'
For example 'RSI' -> the length of the sSMA will be the RSI itself
The biggest challenge was:
'Pine cannot determine the referencing length of a series. Try using max_bars_back' error
The writer of 'referencing length of a series' issue gave following solution:
bar_index == 0 ? 4999 : len
or in case of values which don't go above 100:
bar_index == 0 ? 100 : len
This assigns the necessary buffer to the function.
I'm most grateful for the given solution!
These dSMA's can give Support/Resistance levels, also crossovers of different dSMA's can give extra information
Examples:
RSI
ATR (close / atr(len)
Stoch
MFI
%R
"show regular SMA" will show the "SMA" with the same length (with default lighter color)
Dynamic Momentum Oscillator (DYNAMO) by M.YALCINIn July 1996 Futures magazine, E. Marshall Wall introduces the Dynamic Momentum Oscillator (Dynamo). Please refer to this article for interpretation.
The Dynamo oscillator is a normalizing function that adjusts the values of a standard oscillator for trendiness by taking the difference between the value of the oscillator and a moving average of the oscillator and then subtracting that value from the oscillator midpoint.
Dynamo Oscillator is calculated according to:
Dynamo = Mc - ( MAo - O )
where:
Mc = the midpoint of the oscillator
MAo = a moving average of the oscillator
O = the oscillator
Usage:
This concept can be applied to most oscillators to improve their results.
This example applies it to an RSI oscillator in MetaStock:
50-(Mov(RSI(14),21,S)-RSI(14))
where:
Mc = RSI's midpoint = 50
MAo = Moving average of the RSI = Mov(RSI(14),21,S
O= RSI Oscillator = RSI(14)
Also with this indicator, you can adjust the moving average type and RSI calculation types dynamically.
Dynamic EnvelopeA dynamic envelope is designed to build an actual envelope that consider the volatility of a trading instrument.
A dynamic envelope is an ideal counter-trend indicator, it takes into account the nature of the movement of the instrument. At the same time, it does not require adjustment of parameters over time, it adjusts itself to volatility.
The indicator can be effectively used on any markets and instruments.
Динамический конверт предназначен для построения актуального конверта, который учитывает волатильность торгового инструмента.
Динамический конверт - это идеальный контртрендовый индикатор, он учитывает характер движения инструмента. При этом он не требует подгонки параметров со временем, он сам подстраивается под волатильность.
Индикатор можно эффективно использовать на любых рынках и инструментах.
WMA DynamicDemonstration of a new feature that allows to change lookback period dynamically, used with WMAs. Rather than WMA any one can be used here (SMA, Alma,...) as long as its second argument supports dynamic change. If not, you have to use your own implementation of MA.
Adaptive MomentumAdaptive momentum indicator that uses the NEW Dynamic Length Arguments! Shows how to use volatility to shorten or lengthen the momentum period.
Based on pinescript blog example but with my own modifications.
Bright Green: Sharp movement above zero line
Bright Red: Sharp movement below zero line
Light Green: Slower movement above zero line
Light Red: Slower movement below zero line.
Yellow: Reversal might occur (near the zero line either side).
Thumb rule: Below zero line - SELL. Above zero line - BUY
McGinley Dynamic (Improved) - John R. McGinley, Jr.For all the McGinley enthusiasts out there, this is my improved version of the "McGinley Dynamic", originally formulated and publicized in 1990 by John R. McGinley, Jr. Prior to this release, I recently had an encounter with a member request regarding the reliability and stability of the general algorithm. Years ago, I attempted to discover the root of it's inconsistency, but success was not possible until now. Being no stranger to a good old fashioned computational crisis, I revisited it with considerable contemplation.
I discovered a lack of constraints in the formulation that either caused the algorithm to implode to near zero and zero OR it could explosively enlarge to near infinite values during unusual price action volatility conditions, occurring on different time frames. A numeric E-notation in a moving average doesn't mean a stock just shot up in excess of a few quintillion in value from just "10ish" moments ago. Anyone experienced with the usual McGinley Dynamic, has probably encountered this with dynamically dramatic surprises in their chart, destroying it's usability.
Well, I believe I have found an answer to this dilemma of 'susceptibility to miscalculation', to provide what is most likely McGinley's whole hearted intention. It required upgrading the formulation with two constraints applied to it using min/max() functions. Let me explain why below.
When using base numbers with an exponent to the power of four, some miniature numbers smaller than one can numerically collapse to near 0 values, or even 0.0 itself. A denominator of zero will always give any computational device a horribly bad day, not to mention the developer. Let this be an EASY lesson in computational division, I often entertainingly express to others. You have heard the terminology "$#|T happens!🙂" right? In the programming realm, "AnyNumber/0.0 CAN happen!🤪" too, and it happens "A LOT" unexpectedly, even when it's highly improbable. On the other hand, numbers a bit larger than 2 with the power of four can tremendously expand rapidly to the numeric limits of 64-bit processing, generating ginormous spikes on a chart.
The ephemeral presence of one OR both of those potentials now has a combined satisfactory remedy, AND you as TV members now have it, endowed with the ever evolving "Power of Pine". Oh yeah, this one plots from bar_index==0 too. It also has experimental settings tweaks to play with, that may reveal untapped potential of this formulation. This function now has gain of function capabilities, NOT to be confused with viral gain of function enhancements from reckless BSL-4 leaking laboratories that need to be eternally abolished from this planet. Although, I do have hopes this imd() function has the potential to go viral. I believe this improved function may have utility in the future by developers of the TradingView community. You have the source, and use it wisely...
I included an generic ema() plot for a basic comparison, ultimately unveiling some of this algorithm's unique characteristics differing on a variety of time frames. Also another unconstrained function is included to display some the disparities of having no limitations on a divisor in the calculation. I strongly advise against the use of umd() in any published script. There is simply just no reason to even ponder using it. I also included notes in the script to warn against this. It's funny now, but some folks don't always read/understand my advisories... You have been warned!
NOTICE: You have absolute freedom to use this source code any way you see fit within your new Pine projects, and that includes TV themselves. You don't have to ask for my permission to reuse this improved function in your published scripts, simply because I have better things to do than answer requests for the reuse of this simplistic imd() function. Sufficient accreditation regarding this script and compliance with "TV's House Rules" regarding code reuse, is as easy as copying the entire function as is. Fair enough? Good! I have a backlog of "computational crises" to contend with, including another one during the writing of this elaborate description.
When available time provides itself, I will consider your inquiries, thoughts, and concepts presented below in the comments section, should you have any questions or comments regarding this indicator. When my indicators achieve more prevalent use by TV members, I may implement more ideas when they present themselves as worthy additions. Have a profitable future everyone!
Dynamic Range here comes open source version of notorious JFT Indicator ( the indicator access you can get in some bucks ) on various telegram channels however they will not give code.
Now how it works
1. 2 ranges derived from indicator are supposed to be a consolidation zone and any close above or below is supposed to give a good move.
2. I personally consider it as may be addition to price analysis. ( i don't believe much in indicators,even simple MA gives fruitful results when there is good move in market )
3. Range can be drawn on chart with various resolution ( Daily/Monthly/Weekly )
PS: I coded myself based on data analysis shown by access only indicator. In case you use it for your publication don't forget to give credits.
Thanks,
daytraderph
Dynamic Money Flow with color switch [aamonkey]"Dynamic Money Flow is a volume indicator based on Marc Chaikin's Money Flow with a few improvements.
It can be used to confirm break-outs and trends." (RezzaHmt)
This is the script from RezzaHmt called "Dynamic Money Flow".
All I did is the color change of the line because I find it easier to read that way.
Here you can find the original script explaining the theory behind this indicator:
Automatic Fibonacci Pivot Point S/R LevelsThis is a great tool to find confluences between Fibonacci Pivot point on various time frames.
Fib Pivots used
23.6%
38.2%
50%
61.8%
76.4%
100%
127.2%
141.4%
161.8%
200%
If price is between two levels on the update the lines shift
Yearly Pivots shown on 1m - Daily timeframes
PIvots recalculate on every day
Monthly pivots show on 1m - 60m timeframes
Pivots recalculate every hour
Weekly pivots show on 1m - 15m timeframes
Pivots recalculate every 30m
There is a lot of code but it got the job done.
It would easy to interchange if you prefer different types of pivots
It would be easy to add an on/off if you dont want so many levels on your smaller time frames
If anyone can streamline it please do
Combo Strategy 123 Reversal & Dynamic Pivot Point This is combo strategies for get a cumulative signal.
First strategy
This System was created from the Book "How I Tripled My Money In The
Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
The strategy buys at market, if close price is higher than the previous close
during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
The strategy sells at market, if close price is lower than the previous close price
during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
Second strategy
This Pivot points is calculated on the current day.
Pivot points simply took the high, low, and closing price from the previous period and
divided by 3 to find the pivot. From this pivot, traders would then base their
calculations for three support, and three resistance levels. The calculation for the most
basic flavor of pivot points, known as ‘floor-trader pivots’, along with their support and
resistance levels.
WARNING:
- For purpose educate only
- This script to change bars colors.
Combo Strategy 123 Reversal & Dynamic Momentum Index This is combo strategies for get a cumulative signal.
First strategy
This System was created from the Book "How I Tripled My Money In The
Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
The strategy buys at market, if close price is higher than the previous close
during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
The strategy sells at market, if close price is lower than the previous close price
during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
Second strategy
This indicator plots Dynamic Momentum Index indicator. The Dynamic Momentum
Index (DMI) was developed by Tushar Chande and Stanley Kroll. The indicator
is covered in detail in their book The New Technical Trader.
The DMI is identical to Welles Wilder`s Relative Strength Index except the
number of periods is variable rather than fixed. The variability of the time
periods used in the DMI is controlled by the recent volatility of prices.
The more volatile the prices, the more sensitive the DMI is to price changes.
In other words, the DMI will use more time periods during quiet markets, and
less during active markets. The maximum time periods the DMI can reach is 30
and the minimum is 3. This calculation method is similar to the Variable
Moving Average, also developed by Tushar Chande.
The advantage of using a variable length time period when calculating the RSI
is that it overcomes the negative effects of smoothing, which often obscure short-term moves.
The volatility index used in controlling the time periods in the DMI is based
on a calculation using a five period standard deviation and a ten period average
of the standard deviation.
WARNING:
- For purpose educate only
- This script to change bars colors.
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!
ATR based Stop and Take-Profit levels in realtime Little tool to quickly identify stops and take-profit levels based on Average True Range. User can change ATR multipiers, as well as the ATR length used. Green and red lines show these levels; plot is visible over last 8 bars only to reduce clutter. Label showing the current ATR, up above the last bar
Dynamic RSIThe Dynamic RSI indicator is a kind of exponential RSI. The overbought and oversold levels (respectively HiLine and LoLine) are calculated according to the recent highest and lowest values of the Dynamic RSI line.
How To Use Dynamic ZonesExample of how to apply and use Dynamic Zones with an indicator by injecting it's source into my adaptation of the original idea by Leo Zamansky, Ph.D., and David Stendahl.
• Load your desired oscillating indicator on your chart (CCI, RSI, etc).
• Load my "How To Use Dynamic Zones" indicator on your chart.
• In the "How To Use Dynamic Zones" indicator settings choose your desired oscillating indicator as the Oscillator Source.
You will now have dynamic overbought and oversold levels. I have also included alerts which may be used to indicate when these conditions occur.
If desired you may repeat the above process by loading additional indicators along with additional copies of my indicator to use with each oscillator.
Oscillator Source: CLOSE uses your chosen indicator as a source or you may use price as a source
Sample Length: 70 uses number of previous values for evaluating
Hi is Above X% of Sample: 88 sets overbought zone
Lo is Below X% of Sample: 88 sets oversold zone
The simplest explanation of what these default settings are doing is that they take 70 previous values of your chosen indicator, then create an overbought level that is above 88% of those previous values and an oversold level that is below 88% of those previous values. As new bars form the levels are dynamically reevaluated and updated.
---
"This investing style follows a very simple form of logic: Enter the market only when an oscillator has moved far above or below traditional trading levels. However, these oscillator driven systems lack the ability to evolve with the market because they use fixed buy and sell zones. Traders typically use one set of buy and sell zones for a bull market and substantially different zones for a bear market. And therein lies the problem.
Once traders begin introducing their market opinions into trading equations, by changing the zones, they negate the system’s mechanical nature. The objective is to have a system automatically define its own buy and sell zones and thereby profitably trade in any market — bull or bear. Dynamic zones offer a solution to the problem of fixed buy and sell zones for any oscillator-driven system."
Reference: Stocks & Commodities V15:7 (306-310): Dynamic Zones by Leo Zamansky, Ph.D., and David Stendahl
---
NOTICE: This is an example script and not meant to be used as an actual strategy. By using this script or any portion thereof, you acknowledge that you have read and understood that this is for research purposes only and I am not responsible for any financial losses you may incur by using this script!
Customizable Trend Direction (Open-Source)Hello everyone
I received a ton of requests for this script so I decided to share it
I did it for a client who didn't want to pay (you can all blame... or even thank him for this script) in the end and I don't want to sell it on my website.
Not because it's not interesting but because my website will be a place to showcase and rent the Algorithm Builders mostly
What is it about?
Basically, it shows how you could convert a plotshape into a label.new object. Very interesting if you want someday to convert your V3 script into V4
With this script, it shows that you can in V4 ( but couldn't do in V3 ) do the followings :
- change dynamically the size (from tiny to huge) of any object
- change dynamically the text (from whatever to whatever) of any object
Screenshot of the user interface
imgur.com
Other use cases
I did it with the Trend Direction but could work with anything really.
- Any indicator with a visual signal. You can know personalized from a user interface the text, size and also the vertical shift. I didn't do it for that one but label.new takes a (x,y) coordinates so playing with y is fairly easy to achieve a dynamic vertical shift
- Even with this script Plotchar-How-to-draw-external-symbols-on-a-chart/ but would require to be updated with a label.new object and with a shape.none parameter so that we'll only see the icon/symbol displayed
- The colors also can be change dynamically using presets Presets-Selector-FRIDAY-NIGHT-CHALLENGE/ . If you have an indicator showing a BULLISH and a BEARISH signal, then you could, for instance, configure colors presets according to the timeframe of the chart or the indicator input, etc (sky is the limit ^^)
Be sure to hit the thumbs up at it motivates me to research what Pinescript can offer and share with the community
Dave
____________________________________________________________
- I'm an officially approved PineEditor/LUA/MT4 approved mentor on codementor. You can request a coaching with me if you want and I'll teach you how to build kick-ass indicators and strategies
Jump on a 1 to 1 coaching with me
- You can also hire for a custom dev of your indicator/strategy/bot/chrome extension/python