Trend Reversal System with SR levelsHello All,
This is the Trend Reversal System with Support/Resistance levels script. long time ago I published it as closed source but now I upgraded it and and published as open-source with a different name. I hope it would be useful for you all while trading/analyzing.
The script has some parts in it: Setup, Count, SR levels, Risk levels & Targets . Now lets check them:
Setup Part: it has two part, Buy or Sell Setup. one of them can be active only. Buy setup: if current close checks if current is lower/equal than the close of the 5. bar. if yes then the script increases number of buy setup. and if it reaches 9 then the script checks if current low is lower/equal than the lows of last 3. and 4. bars, or if the low of the last bar is lower/equal than the lows of last 3. and 4. bars. if yes then the script increases the buy setup by 1. if these conditions met then it puts the label 'S' , same for Sell setup. S labels on both setup are potential reversals.
Count Part: If buy or sell setup reaches the 9 then Count part starts from 1. lets see buy count: If current close is lower/equal than the low of the 3. bar and buy count is lower than 12 or low of the bar 13 is less than or equal to the close of bar 8 then buy count increase or it's completed. if it's completed then the script puts C label, and it's potential reversal. of course there are some conditions that can cancel the count buy/sell or recycle/restart.
By using Setup and Count levels the script can show Support/Resistance Levels, Risk levels & Targets. SR levels are potential reversal levels.
Lets see some example screenshots:
Support/Resistance levels:
Potential Reversal levels and how setup/counts are shown:
Count part can recycle and the script shows it as 'R' , ( you can see the conditions for Recycle in the script ):
Count can be cancelled and and it's shown as 'x'
If the scripts find 9 on Setup or 13 on Count then it checks if it's a good level to buy/sell and if it decides it's good level then it shows TRSSetup Buy/Sell or TRSCount Buy/Sell and also shows the target. in following example the script checks and decide it's a good level to take long position. it can be aggressive or conservative, Conservative is recommended.
Enjoy!
Cari dalam skrip untuk "the script"
Volume FootprintThe Volume Footprint chart is analyzing volume data from inside the candle and split them into Up and Down Volume in the same way as Volume Profile analyzes the volume data from a fragment of the chart.
The visualization is little different:
Down Volume (sells) are shown on the left side of a candle.
Up Volume (Buys) are shown on the right side of a candle.
User can pick data precision used by Volume Footprint. We recomend to use the highest possible precision.
Unfortunatelly Trading View has many limitations.
If after adding script nothing is visible with error: "'The study references too many candles in history'" you need to use lower precision - It can be changed in script settings.
This script is a part of a toolkit called "Volume Footprint", containing few tools:
Volume Footprint - Scripts drawing Volume Footprint chart.
Volume Footprint Statistics - Script showing table with basic statistics about Up and Down volume inside the candles.
Volume Delta In Candle - Chart showing history of delta (difference between Up and Down volume) changes inside the current candle.
Volume Cumulative Delta - Chart showing history of cumulative delta (sum of difference between Up and Down volume in trading period equal to chart interval).
This script can be used by any user. You do not need to have PRO or PREMIUM account to use it.
Script with limited access, contact author to get authorization
User Interface:
Script is grouping Up and Down Volume into slots based on price. Slots height is controled by "Slot height" param in settings.
On left side of a candle Down Volume is shown and on right side Up Volume is shown.
Before Down Volume may appear imbalance symbols:
⠀↓ - 3 times
⠀↡ - 5 times
⠀⇊ - 10 times
After Up Volume may appear imbalance symbols:
⠀↑ - 3 time
⠀↟ - 5 times
⠀⇈ - 10 times
Above the candle we can show some basic statistics of that candle:
"V:" - Row with volume statistics:
⠀∑ - Total volume,
⠀Δ - Difference between Up and Down Volume.
⠀min Δ - Smallest difference between Up and Down Volume in that candle
⠀max Δ - Biggest difference between Up and Down Volume in that candle
Script settings:
Slot height = 10^ - Price slot height on the chart:
⠀ 0 - 1$
⠀ 1 - 10$
⠀ 2 - 100$
⠀ 3 - 1000$
⠀-1 - 0.1$
⠀-2 - 0.01$
⠀-3 - 0.001$
Data precision - One of 6 levels of data precision: ▉▇▆▅▃▁, where ▉ means the highest precision and ▁ the lowest available precision. On 15 minute chart highest precision should be available, but on 1D it will probably hit TradingView limitations and script will not be even launched by the platform with error: "'The study references too many candles in history'". The general recommendation is to use the highest available precision for a given instrument and interval.
Precise warnings - Option to show precise warnings about missing volume in candle footprint (warning connected with one of TradingView limitations).
Draw candles - Option of drawing candles fiting to volume labels and 2 fields for picking colors of up and down candles. The general recommendation is to hide chart candles and turn on this option.
Show stats - Showing stats over the candle: ∑, Δ, min Δ, max Δ. You can use 'Volume Footprint Statistics' script instead
Font size - Used to draw all the data over the chart: T(iny), S(mall), N(ormal), L(arge)
Centered - If checked volume labels are stick to candle (centered).
Color values - Option to draw labels with use of Up or Down color, depending which value (Volume Up or Volume Down) is bigger in the price slot.
Filter - Filtering option than allow hinding labels with small values:
⠀0 - filter turned off.
⠀1-5 - filtering with transparency
⠀6-10 - Filtering with hiding values.
Show zeros - It can show zeros or leave empty places
Highlight biggest slot - Option to highlight price slot with biggest volume in the candle.
Imbalances - Showing imbalance symbols before Down or after Up Volume
Only over average - Showing imbalances symbols only for volume not smaller than the average value.
Value area - Option to identify group of slots with biggest volume in each candle. A group is a smallest set of neighboring slots that have at least n(param) % of candle volume .
⠀ Value Area Minimal Volume (%) - Value area size as % of candle volume .
⠀ Color - Color of the Value area.
⠀ Show borders - Showing border lines of value areas over the candle.
⠀ Track - Option to track value areas. Potencial Support-Resistance zones.
⠀ Only active - Hide areas that were crossed by the price.
Show Values - Show volume value over tracked value areas.
Troubleshooting:
In case of any problems, send error details to the author of the script.
Known issues:
"The study references too many candles in history" - Change "Data precision" settings to some lower value.
Exponential MA Channel, Daily Timeframe (Crypto)Moving averages are some of the most common tools for traders. Some of the most widely used ones are simple moving averages (e.g. 20SMA, 50 SMA, 100 SMA, 200SMA,...). There are endless combinations of moving averages that can be used. I prefer to use exponential moving averages because they react more quickly to price data (essentially they filter back through the data over a discrete number of timesteps, with more recent history receiving the highest weighting in the final calculation).
This script uses a combination of the 21EMA, 53 EMA, and 100EMA. The idea of this script is to provide insight into when an asset might be close to a local top/bottom by monitoring price within the middle channel (yellow, blue, and orange lines), as well as identifying longer timeframe opportunities to buy/sell by examining the upper (green) and lower (red) bands. Disclaimer: this is not a guarantee that if price enters a region, that it will be a top or bottom, it is simply an indicator to get an idea based on price history.
As far as I know, this particular combination of exponential moving averages has not yet been published. I do not have an infinite amount of time to check through the entire library of published scripts. If someone else has already done this, I was unaware. Numerical computations were performed on ETHBTC price data in order to find the coefficients used in this script. Essentially, each EMA has a multiplier of either 1, a fraction of 1, or a number larger than 1 (these are the numbers in the script being multiplied by 'out1', 'out2', 'out3'; feel free to change these and see how this changes the indicator). I have found it to be useful for myself, and hope other people can tinker with this idea. My only wish is to allow other people to use this starting point to explore for themselves. I hope that I am allowed to publish this script without it being taken down so that others can freely use it.
Recommendations: although this was fit specifically for ETHBTC, it appears useful for many crypto pairs, specifically alt-BTC pairs and crypto-USD pairs. For example, I have found it useful for BTCUSD, ETHUSD, LINKUSD, LINKBTC, ETHBTC, ADABTC, etc. Only use on the DAILY timeframe.
High time frame Pivot Anchored VWAP V1.0Purpose:
-----------
To provide VWAPs anchored on the high and low pivots. I have seen scripts which anchor VWAP on a session or time frame or indeed a time, but not yet one that anchors on pivot points.
Value:
--------
As many have stated, price action tends toward VWAPs. I named the VWAPs anchored on high pivots the Selling VWAP, representing the volume weighted average of the sellers. And the VWAPs anchored on the low pivots, Buying VWAP, representing the volume weighted average of the buyers.
One of these two governs the current price action.
What is unique about this script:
---------------------------------------
- Locates pivots also found in higher time frames (it does not use the Security Function, technically it does not locate high time frame pivots)
- It uses a simple technique to locate the pivots that avoids using "For Loops" , typically used with HTF Pivots and at times can cause time outs
- VWAPs are then anchored on the pivots
- High Pivots are anchored with a VWAP using the High price as the source
- Low Pivots are anchored with a VWAP using the Low price as the source
How to Use It
-----------------
- Choose the higher time frame pivots of interest, the script uses current time frame multiplier
- so on a 1 minute chart, 60 is 1 hour. On a 5 min chart the same multiplier would be 5 hours.
- Choose how many of the higher time frame bars define the pivot, the right side and left side
- the default is 8 and 4, for a 60 multiplier on a 1min chart it implies 4hrs right of the pivot and 8 hrs left of the pivot.
- A Vidya moving average is included
- When the ma crosses over the Selling VWAP then the system is dominated by the buyers and the Buying VWAP provides support
- When the ma crosses under the Buying VWAP then the system is dominated by the sellers and the Selling VWAP provides resistance
It helps by keeping you in a trade, also by using the support/resistance to add to a position.
I make those decisions in the script, and display only the dominating VWAP
Acknowledgements
------------------------
PineCoders for their functions on managing resolution.
LucF for his work on high time frame pivots.
Future considerations
--------------------------
- Provide option to show both VWAPs
- Use a different ma, such as VWMA, or provide a choice.
- Open the script, version 1.0 being what it is
Tape [LucF]█ OVERVIEW
This script prints an ersatz of a trading console's "tape" section to the right of your chart. It displays the time, price and volume of each update of the chart's feed. It also calculates volume delta for the bar. As it calculates from realtime information, it will not display information on historical bars.
█ FEATURES
Calculations
Each new line in the tape displays the last price/volume update from the TradingView feed that's building your chart. These updates do not necessarily correspond to ticks from the originating broker/exchange's matching engine. Multiple broker/exchange ticks are often aggregated in one chart update.
The script first determines if price has moved up or down since the last update. The polarity of the price change, in turn, determines the polarity of the volume for that specific update. If price does not move between consecutive updates, then the last known polarity is used. Using this method, we can calculate a running volume delta accumulation for the bar, which becomes the bar's final volume delta value when the bar closes (you can inspect values of elapsed realtime bars in the Data Window or the indicator's values). Note that these values will all reset if the script re-executes because of a change in inputs or a chart refresh.
While this method of calculating volume delta is not perfect, it is currently the most precise way of calculating volume delta available on TradingView at the moment. Calculating more precise results would require scripts to have access to bid/ask levels from any chart timeframe. Charts at seconds timeframes do use exchange/broker ticks when the feeds you are using allow for it, and this indicator will run on them, but tick data is not yet available from higher timeframes, for now. Also note that the method used in this script is far superior to the intrabar inspection technique used on historical bars in my other "Delta Volume" indicators. This is because volume delta here is calculated from many more realtime updates than the available intrabars in history.
Inputs
You can use the script's inputs to configure:
• The number of lines displayed in the tape.
• If new lines appear at the top or bottom.
• If you want to hide lines with low volume.
• The precision of volume values.
• The size of the text and the colors used to highlight either the tape's text or background.
• The position where you want the tape on your chart.
• Conditions triggering three different markers.
Display
Deltas are shown at the bottom of the tape. They are reset on each bar. Time delta displays the time elapsed since the beginning of the bar, on intraday timeframes only. Contrary to the price change display by TradingView at the top left of charts, which is calculated from the close of the previous bar, the price delta in the tape is calculated from the bar's open, because that's the information used in the calculation of volume delta. The time will become orange when volume delta's polarity diverges from that of the bar. The volume delta value represents the current, cumulative value for the bar. Its color reflects its polarity.
When new realtime bars appear on the chart, a ↻ symbol will appear before the volume value in tape lines.
Markers
There are three types of markers you can choose to display:
• Marker 1 on volume bumps. A bump is defined as two consecutive and increasing/decreasing plus/minus delta volume values,
when no divergence between the polarity of delta volume and the bar occurs on the second bar.
• Marker 2 on volume delta for the bar exceeding a limit of your choice when there is no divergence between the polarity of delta volume and the bar. These trigger at the bar's close.
• Marker 3 on tape lines with volume exceeding a threshold. These trigger in realtime. Be sure to set a threshold high enough so that it doesn't generate too many alerts.
These markers will only display briefly under the bar, but another marker appears next to the relevant line in the tape.
The marker conditions are used to trigger alerts configured on the script. Alert messages will mention the marker(s) that triggered the specific alert event, along with the relevant volume value that triggered the marker. If more than one marker triggers a single alert, they will overprint under the bar, which can make it difficult to distinguish them.
For more detailed on-chart analysis of realtime volume delta, see my Delta Volume Realtime Action .
█ NOTES FOR CODERS
This script showcases two new Pine features:
• Tables, which allow Pine programmers to display tabular information in fixed locations of the chart. The tape uses this feature.
See the Pine User Manual's page on Tables for more information.
• varip -type variables which we can use to save values between realtime updates.
See the " Using `varip` variables " publication by PineCoders for more information.
Risk Management: Position Size & Risk RewardHere is a Risk Management Indicator that calculates stop loss and position sizing based on the volatility of the stock. Most traders use a basic 1 or 2% Risk Rule, where they will not risk more than 1 or 2% of their capital on any one trade. I went further and applied four levels of risk: 0.25%, 0.50%, 1% and 2%. How you apply these different levels of risk is what makes this indicator extremely useful. Here are some common ways to apply this script:
• If the stock is extremely volatile and has a better than 50% chance of hitting the stop loss, then risk only 0.25% of your capital on that trade.
• If a stock has low volatility and has less than 20% change of hitting the stop loss, then risk 2% of your capital on that trade.
• Risking anywhere between 0.25% and 2% is purely based on your intuition and assessment of the market.
• If you are on a losing streak and you want to cut back on your position sizing, then lowering the Risk % can help you weather the storm.
• If you are on a winning streak and your entries are experiencing a higher level of success, then gradually increase the Risk % to reap bigger profits.
• If you want to trade outside the noise of the market or take on more noise/risk, you can adjust the ATR Factor.
• … and whatever else you can imagine using it to benefit your trading.
The position size is calculated using the Capital and Risk % fields, which is the percentage of your total trading capital (a.k.a net liquidity or Capital at Risk). If you instead want to calculate the position size based on a specific amount of money, then enter the amount in the Custom Risk Amt input box. Any amount greater than 0 in the Custom Risk Amt field will override the values in the Capital and Risk % fields.
The stop loss is calculated by using the ATR. The default setting is the 14 RMA, but you can change the length and smoothing of the true range moving average to your liking. Selecting a different length and smoothing affects the stop loss and position size, so choose these values very carefully.
The ATR Factor is a multiplier of the ATR. The ATR Factor can be used to adjust the stop loss and move it outside of the market noise. For the more volatile stock, increase the factor to lower the stop loss and reduce the chance of getting stopped out. For stocks with less volatility , you can lower the factor to raise the stop loss and increase position size. Adjusting the ATR Factor can also be useful when you want the stop loss to be at or below key levels of support.
The Market Session is the hours the market is open. The Market Session only affects the Opening Range Breakout (ORB) option, so it’s important to change these values if you’re trading the ORB and you’re outside of Eastern Standard Time or you’re trading in a foreign exchange.
The ORB is a bonus to the script. When enabled, the indicator will only appear in the first green candle of the day (09:30:00 or 09:30 AM EST or the start time specified in Market Session). When using the ORB, the stop loss is based on the spread of the first candle at the Open. The spread is the difference between the High and Low of the green candle. On 1-day or higher timeframes, the indicator will be the spread of the last (or current) candle.
The output of the indicator is a label overlaying the chart:
1. ATR (14 RMA x2) – This indicated that the stop loss is determined by the ATR. The x2 is the ATR Factor. If ORB is selected, then the first line will show SPREAD, instead of ATR.
2. Capital – This is your total capital or capital at risk.
3. Risk X% of Capital – The amount you’re risking on a % of the Capital. If a Custom Risk Amt is entered, then Risk Amount will be shown in place of Capital and Risk % of Capital.
4. Entry – The current price.
5. Stop Loss – The stop loss price.
6. -1R – The stop loss price and the amount that will be lost of the stop loss is hit.
7. – These are the target prices, or levels where you will want to take profit.
This script is primarily meant for people who are new to active trading and who are looking for a sound risk management strategy based on market volatility . This script can also be used by the more experienced trader who is using a similar system, but also wants to see it applied as an indicator on TradingView. I’m looking forward to maintaining this script and making it better in future revisions. If you want to include or change anything you believe will be a good change or feature, then please contact me in TradingView.
Daily GAP StatsI did not write the script from scratch but rather started editing code of an existing one. The original code came from a script called GAP DETECTOR by @Asch-
First up: I am a trader, not a programmer and therefore my code most likely is inefficient. If someone with more expertise would like to help and optimize it - feel free to get in touch, I am always happy to learn some new tricks. :)
This script does 2 things:
- It shows daily gaps stats based on user inputs
- It shows color coded labels on gap days with additional information in tooltips ( important: make sure to read 'known issues/limitations' at the end )
User Inputs
==========
Although the input dialog is pretty straight forward, I do a quick rundown:
- Length: max lookback time
- Gap Direction: self explanatory
- Show All Gaps | Cont Only | Reversal Only | Off:
This refers to the way labels are displayed on gap days (again: make sure to read known issues/limitations!)
- Show All Gaps: does what it says
- Cont Only: only shows gaps where price continued in the gap direction. If you filter for gap ups and chose 'Cont only' you will only see labels on gap days where price closed above the open (and vice versa if you scan for gap downs).
- Reversal Only: you will only see labels for closes below the open on gap up days (and the opposite on gap down days)
- Off: self explanatory
- Gap Measure in ATR/PCT: self explanatory, ATR is calculated over a 10d period
- Gap Size (Abs Values): no negative values allowed here. If you filter for gap downs and enter 3 it means it will show gaps where the stock fell more than 3 ATR/PCT on the open.
- RVOL Factor: along with significant gaps should come significant volume. RVOL = volume of the gap day / 20d average volume
- Viewing Options: Placing the stats label in the window is a bit tricky (see knonw issues/limitations) and I was not sure which way I liked better. See for yourself what works best for you.
Known Isusses/Limitations:
=======================
- Positioning of the stats table:
As to my knowledge, Tradingview only allows label positioning relative to price and not relative to the chart window. I tried to always display the gap stats table in the upper right corner, using 52wk high as y-coordinate. This works ok most of the time, but is not pretty. If anybody has some fancy way to tag the label in a fixed position, please get in touch.
- Max number of labels per script:
TradingView has a limitation that allows a maxium of ~50 labels per script. If there are more labels, TradingView will automatically cut the oldest ones, without any notification. I have found this behaviour to be rather inconsistent - sometimes it'll dump labels even if there are a lot fewer than 50. Hopefully TradingView will drop this limitation at one point in the future.
Important: The inconsistent display of the gap day labels has NO INFLUENCE on the calculations in the gap stats table - the count and the calculations are complete and correct!
Polynomial Regression Bands + Channel [DW]This is an experimental study designed to calculate polynomial regression for any order polynomial that TV is able to support.
This study aims to educate users on polynomial curve fitting, and the derivation process of Least Squares Moving Averages (LSMAs).
I also designed this study with the intent of showcasing some of the capabilities and potential applications of TV's fantastic new array functions.
Polynomial regression is a form of regression analysis in which the relationship between the independent variable x and the dependent variable y is modeled as a polynomial of nth degree (order).
For clarification, linear regression can also be described as a first order polynomial regression. The process of deriving linear, quadratic, cubic, and higher order polynomial relationships is all the same.
In addition, although deriving a polynomial regression equation results in a nonlinear output, the process of solving for polynomials by least squares is actually a special case of multiple linear regression.
So, just like in multiple linear regression, polynomial regression can be solved in essentially the same way through a system of linear equations.
In this study, you are first given the option to smooth the input data using the 2 pole Super Smoother Filter from John Ehlers.
I chose this specific filter because I find it provides superior smoothing with low lag and fairly clean cutoff. You can, of course, implement your own filter functions to see how they compare if you feel like experimenting.
Filtering noise prior to regression calculation can be useful for providing a more stable estimation since least squares regression can be rather sensitive to noise.
This is especially true on lower sampling lengths and higher degree polynomials since the regression output becomes more "overfit" to the sample data.
Next, data arrays are populated for the x-axis and y-axis values. These are the main datasets utilized in the rest of the calculations.
To keep the calculations more numerically stable for higher periods and orders, the x array is filled with integers 1 through the sampling period rather than using current bar numbers.
This process can be thought of as shifting the origin of the x-axis as new data emerges.
This keeps the axis values significantly lower than the 10k+ bar values, thus maintaining more numerical stability at higher orders and sample lengths.
The data arrays are then used to create a pseudo 2D matrix of x power sums, and a vector of x power*y sums.
These matrices are a representation the system of equations that need to be solved in order to find the regression coefficients.
Below, you'll see some examples of the pattern of equations used to solve for our coefficients represented in augmented matrix form.
For example, the augmented matrix for the system equations required to solve a second order (quadratic) polynomial regression by least squares is formed like this:
(∑x^0 ∑x^1 ∑x^2 | ∑(x^0)y)
(∑x^1 ∑x^2 ∑x^3 | ∑(x^1)y)
(∑x^2 ∑x^3 ∑x^4 | ∑(x^2)y)
The augmented matrix for the third order (cubic) system is formed like this:
(∑x^0 ∑x^1 ∑x^2 ∑x^3 | ∑(x^0)y)
(∑x^1 ∑x^2 ∑x^3 ∑x^4 | ∑(x^1)y)
(∑x^2 ∑x^3 ∑x^4 ∑x^5 | ∑(x^2)y)
(∑x^3 ∑x^4 ∑x^5 ∑x^6 | ∑(x^3)y)
This pattern continues for any n ordered polynomial regression, in which the coefficient matrix is a n + 1 wide square matrix with the last term being ∑x^2n, and the last term of the result vector being ∑(x^n)y.
Thanks to this pattern, it's rather convenient to solve the for our regression coefficients of any nth degree polynomial by a number of different methods.
In this script, I utilize a process known as LU Decomposition to solve for the regression coefficients.
Lower-upper (LU) Decomposition is a neat form of matrix manipulation that expresses a 2D matrix as the product of lower and upper triangular matrices.
This decomposition method is incredibly handy for solving systems of equations, calculating determinants, and inverting matrices.
For a linear system Ax=b, where A is our coefficient matrix, x is our vector of unknowns, and b is our vector of results, LU Decomposition turns our system into LUx=b.
We can then factor this into two separate matrix equations and solve the system using these two simple steps:
1. Solve Ly=b for y, where y is a new vector of unknowns that satisfies the equation, using forward substitution.
2. Solve Ux=y for x using backward substitution. This gives us the values of our original unknowns - in this case, the coefficients for our regression equation.
After solving for the regression coefficients, the values are then plugged into our regression equation:
Y = a0 + a1*x + a1*x^2 + ... + an*x^n, where a() is the ()th coefficient in ascending order and n is the polynomial degree.
From here, an array of curve values for the period based on the current equation is populated, and standard deviation is added to and subtracted from the equation to calculate the channel high and low levels.
The calculated curve values can also be shifted to the left or right using the "Regression Offset" input
Changing the offset parameter will move the curve left for negative values, and right for positive values.
This offset parameter shifts the curve points within our window while using the same equation, allowing you to use offset datapoints on the regression curve to calculate the LSMA and bands.
The curve and channel's appearance is optionally approximated using Pine's v4 line tools to draw segments.
Since there is a limitation on how many lines can be displayed per script, each curve consists of 10 segments with lengths determined by a user defined step size. In total, there are 30 lines displayed at once when active.
By default, the step size is 10, meaning each segment is 10 bars long. This is because the default sampling period is 100, so this step size will show the approximate curve for the entire period.
When adjusting your sampling period, be sure to adjust your step size accordingly when curve drawing is active if you want to see the full approximate curve for the period.
Note that when you have a larger step size, you will see more seemingly "sharp" turning points on the polynomial curve, especially on higher degree polynomials.
The polynomial functions that are calculated are continuous and differentiable across all points. The perceived sharpness is simply due to our limitation on available lines to draw them.
The approximate channel drawings also come equipped with style inputs, so you can control the type, color, and width of the regression, channel high, and channel low curves.
I also included an input to determine if the curves are updated continuously, or only upon the closing of a bar for reduced runtime demands. More about why this is important in the notes below.
For additional reference, I also included the option to display the current regression equation.
This allows you to easily track the polynomial function you're using, and to confirm that the polynomial is properly supported within Pine.
There are some cases that aren't supported properly due to Pine's limitations. More about this in the notes on the bottom.
In addition, I included a line of text beneath the equation to indicate how many bars left or right the calculated curve data is currently shifted.
The display label comes equipped with style editing inputs, so you can control the size, background color, and text color of the equation display.
The Polynomial LSMA, high band, and low band in this script are generated by tracking the current endpoints of the regression, channel high, and channel low curves respectively.
The output of these bands is similar in nature to Bollinger Bands, but with an obviously different derivation process.
By displaying the LSMA and bands in tandem with the polynomial channel, it's easy to visualize how LSMAs are derived, and how the process that goes into them is drastically different from a typical moving average.
The main difference between LSMA and other MAs is that LSMA is showing the value of the regression curve on the current bar, which is the result of a modelled relationship between x and the expected value of y.
With other MA / filter types, they are typically just averaging or frequency filtering the samples. This is an important distinction in interpretation. However, both can be applied similarly when trading.
An important distinction with the LSMA in this script is that since we can model higher degree polynomial relationships, the LSMA here is not limited to only linear as it is in TV's built in LSMA.
Bar colors are also included in this script. The color scheme is based on disparity between source and the LSMA.
This script is a great study for educating yourself on the process that goes into polynomial regression, as well as one of the many processes computers utilize to solve systems of equations.
Also, the Polynomial LSMA and bands are great components to try implementing into your own analysis setup.
I hope you all enjoy it!
--------------------------------------------------------
NOTES:
- Even though the algorithm used in this script can be implemented to find any order polynomial relationship, TV has a limit on the significant figures for its floating point outputs.
This means that as you increase your sampling period and / or polynomial order, some higher order coefficients will be output as 0 due to floating point round-off.
There is currently no viable workaround for this issue since there isn't a way to calculate more significant figures than the limit.
However, in my humble opinion, fitting a polynomial higher than cubic to most time series data is "overkill" due to bias-variance tradeoff.
Although, this tradeoff is also dependent on the sampling period. Keep that in mind. A good rule of thumb is to aim for a nice "middle ground" between bias and variance.
If TV ever chooses to expand its significant figure limits, then it will be possible to accurately calculate even higher order polynomials and periods if you feel the desire to do so.
To test if your polynomial is properly supported within Pine's constraints, check the equation label.
If you see a coefficient value of 0 in front of any of the x values, reduce your period and / or polynomial order.
- Although this algorithm has less computational complexity than most other linear system solving methods, this script itself can still be rather demanding on runtime resources - especially when drawing the curves.
In the event you find your current configuration is throwing back an error saying that the calculation takes too long, there are a few things you can try:
-> Refresh your chart or hide and unhide the indicator.
The runtime environment on TV is very dynamic and the allocation of available memory varies with collective server usage.
By refreshing, you can often get it to process since you're basically just waiting for your allotment to increase. This method works well in a lot of cases.
-> Change the curve update frequency to "Close Only".
If you've tried refreshing multiple times and still have the error, your configuration may simply be too demanding of resources.
v4 drawing objects, most notably lines, can be highly taxing on the servers. That's why Pine has a limit on how many can be displayed in the first place.
By limiting the curve updates to only bar closes, this will significantly reduce the runtime needs of the lines since they will only be calculated once per bar.
Note that doing this will only limit the visual output of the curve segments. It has no impact on regression calculation, equation display, or LSMA and band displays.
-> Uncheck the display boxes for the drawing objects.
If you still have troubles after trying the above options, then simply stop displaying the curve - unless it's important to you.
As I mentioned, v4 drawing objects can be rather resource intensive. So a simple fix that often works when other things fail is to just stop them from being displayed.
-> Reduce sampling period, polynomial order, or curve drawing step size.
If you're having runtime errors and don't want to sacrifice the curve drawings, then you'll need to reduce the calculation complexity.
If you're using a large sampling period, or high order polynomial, the operational complexity becomes significantly higher than lower periods and orders.
When you have larger step sizes, more historical referencing is used for x-axis locations, which does have an impact as well.
By reducing these parameters, the runtime issue will often be solved.
Another important detail to note with this is that you may have configurations that work just fine in real time, but struggle to load properly in replay mode.
This is because the replay framework also requires its own allotment of runtime, so that must be taken into consideration as well.
- Please note that the line and label objects are reprinted as new data emerges. That's simply the nature of drawing objects vs standard plots.
I do not recommend or endorse basing your trading decisions based on the drawn curve. That component is merely to serve as a visual reference of the current polynomial relationship.
No repainting occurs with the Polynomial LSMA and bands though. Once the bar is closed, that bar's calculated values are set.
So when using the LSMA and bands for trading purposes, you can rest easy knowing that history won't change on you when you come back to view them.
- For those who intend on utilizing or modifying the functions and calculations in this script for their own scripts, I included debug dialogues in the script for all of the arrays to make the process easier.
To use the debugs, see the "Debugs" section at the bottom. All dialogues are commented out by default.
The debugs are displayed using label objects. By default, I have them all located to the right of current price.
If you wish to display multiple debugs at once, it will be up to you to decide on display locations at your leisure.
When using the debugs, I recommend commenting out the other drawing objects (or even all plots) in the script to prevent runtime issues and overlapping displays.
Funamental and financialsEarnings and Quarterly reporting and fundamental data at a glance.
A study of the financial data available by the "financial" functions in pinescript/tradingview
As far as I know, this script is unique. I found very few public examples of scripts using the fundamental data. and none that attempt to make the data available in a useful form
as an indicator / chart data. The only fitting category when publishing would be "trend analysis" We are going to look at the trend of the quarterly reports.
The intent is to create an indicator that instantly show the financial health of a company, and the trends in debt, cash and earnings
Normal settings displays all information on a per share basis, and should be viewed on a Daily chart
Percentage of market valuation can be used to compare fundamentals to current share price.
And actual to show the full numbers for verification with quarterly reporting and debuggging (actual is divided by 1.000.000 to keep numbers readable)
Credits to research study by Alex Orekhov (everget) for the Symbol Info Helper script
without it this would still be an unpublished mess, the use of textboxes allow me to remove many squiggly plot lines of fundamental data
Known problems and annoyances
1. Takes a long time to load. probably the amount of financial calls is the culprit. AFAIK not something i can to anything about in the script.
2. Textboxes crowd each other. dirty fix with hardcoded offsets. perhaps a few label offset options in the settings would do?
3. Only a faint idea of how to put text boxes on every quarter. Need time... (pun intended)
Have fun, and if you make significant improvements on this, please publish, or atleast leave a comment or message so I can consider adding it to this script.
© sjakk 2020-june-08
Accumulation/Distribution Open Interest Money Flow Hi, this script is the version of Accumulation / Distribution Money Flow (ADMF) that uses Open Interes ts in the required markets instead of Volume.
Can be set from the menu. (Futures/Others)
NOTE: I only modified this script.
The original script belongs to cl8DH.
Original of the script:
I think it will make a difference in the future and commodity markets.
Since the system uses CFTC data, use only for 1W timeframe.
With my best regards..
EasyBee59 v3.0EasyBee59 v3.0 for TradingView does tedious CC59 counting in your investment chart for you automatically. It then print out positive or negative number on each price bar. A bar +1 and bar -1 is often followed by an uptrend and downtrend, respectively. It creates respectable support and resistance ( SNR ) levels based on CC59 counting results of -9 and +9. A pair of SMA lines with colors changing based on their trend are also generated. By default, a pair of Yellow-Green lines shows up at onset of an uptrend and those with Pink-Red at onset of a downtrend. In addition, it prints out reminders about important parameters that are happening so that you would not forget to consider them before placing trade orders. Smart phone and PC notifications of events occurring in the chart can be sent to you by server-side alerts so that you don't have to stay in front of the screen all the time.
Tools:
* Draw +9 SNR and -9 SNR (Orange and sky-blue support and resistance levels created at count +9 and -9).
* Draw a Fast SMA line (Increasing yellow / decreasing pink).
* Draw a Slow SMA line (Increasing green / decreasing red).
* Print CC59 numbers (Positive series from +1 to +21, negative series from -1 to -21).
* Print Yellow/Green and Pink/Red labels (YG for onset of an uptrend and PR for that of a downtrend).
* Use Max/Min Finder (Find price bars with max/min price among its nearest neighbours).
* Print K20% (Stochastic K value crossing 20%).
* Print K50% (Stochastic K value crossing 50%).
* Print K80% (Stochastic K value crossing 80%).
* Use Gap Finder (Find locations in chart where price bars are not touching or orverlapping).
* Use K-Max/K-Min Finder (Find local max/min points of stochastic14-1-3).
* Use CAH Finder (Find Close Above High where the bar close above the high of its previous bar).
* Use CBL Finder (Find Close Below Low where the bar close below the low of its previous bar).
* Forex: Draw -D High/Low levels (High and low price of the previous day).
* Forex: Draw D-Open level (Open price of today).
* Forex: Set mySession (in NY time) (Default from 8 pm to 2 am).
* Forex: Paint mySession (Brown background during mySession time interval).
* Server-side alerts (Notify you on smart phones and PCs of events occurring in the chart.
=================================================================================================
The script EasyBee59 v3.0 for TradingView is locked and protected. Please send 100 USD to unlock and use this script (free future upgrades and online supports and tutorials). For more informaton please contact the author (DrGraph or Nimit Chomnawang, PhD) via TradingView private chat
or in the comment field below.
=================================================================================================
How to install the script:
------------------------------
*Go to the bottom of this page and click on "Add to Favorite Scripts".
*Remove older version of the script by clicking on the "X" button behind the indicator line at the top left corner of the chart window.
*Open a new chart at and click on the "Indicators" tab.
*Click on the "Favorites" tab and choose "EasyBee59 v3.0".
*Right click anywhere on the graph, choose "Color Theme", the select "Dark".
*Right click anywhere on the graph, choose "Settings".
*In "Symbol" tab, set "Precesion" to 1/100 for stock price or 1/100000 for forex and set "Time Zone" to your local time.
*In "Status line" tab, uncheck "Indicator Arguments" and "Indicator Values".
*In "Scales" tab, check "Indicator Last Value Label".
*In "Events" tab, check "Show Dividends on Chart", "Show Splits on Chart" and "Show Earnings on Chart".
*At the bottom of settings window, click on "Template", "Save As...", then name this theme of graph setting for future call up such as "DrGraph chart setting".
*Click OK.
In the free Basic TradingView subscription, you can add two more indicators to the chart. That means you may add Stoch and Vol indicators with same parameters as those setup in EasyBee59 to your graph. DrGraph regularly publishes his educational ideas on using features provided in EasyBee59 for profitable investments. You can follow him for how to use the tools in trading stocks, forex, and crypto currencies.
BACKTEST SCRIPT 0.999 ALPHATRADINGVIEW BACKTEST SCRIPT by Lionshare (c) 2015
THS IS A REAL ALTERNATIVE FOR LONG AWAITED TV NATIVE BACKTEST ENGINE.
READY FOR USE JUST RIGHT NOW.
For user provided trading strategy, executes the trades on pricedata history and continues to make it over live datafeed.
Calculates and (plots on premise) the next performance statistics:
profit - i.e. gross profit/loss.
profit_max - maximum value of gross profit/loss.
profit_per_trade - each trade's profit/loss.
profit_per_stop_trade - profit/loss per "stop order" trade.
profit_stop - gross profit/loss caused by stop orders.
profit_stop_p - percentage of "stop orders" profit/loss in gross profit/loss.
security_if_bought_back - size of security portfolio if bought back.
trades_count_conseq_profit - consecutive gain from profitable series.
trades_count_conseq_profit_max - maxmimum gain from consecutive profitable series achieved.
trades_count_conseq_loss - same as for profit, but for loss.
trades_count_conseq_loss_max - same as for profit, but for loss.
trades_count_conseq_won - number of trades, that were won consecutively.
trades_count_conseq_won_max - maximum number of trades, won consecutively.
trades_count_conseq_lost - same as for won trades, but for lost.
trades_count_conseq_lost_max - same as for won trades, but for lost.
drawdown - difference between local equity highs and lows.
profit_factor - profit-t-loss ratio.
profit_factor_r - profit(without biggest winning trade)-to-loss ratio.
recovery_factor - equity-to-drawdown ratio.
expected_value - median gain value of all wins and loss.
zscore - shows how much your seriality of consecutive wins/loss diverges from the one of normal distributed process. valued in sigmas. zscore of +3 or -3 sigmas means nonrandom realitonship of wins series-to-loss series.
confidence_limit - the limit of confidence in zscore result. values under 0.95 are considered inconclusive.
sharpe - sharpe ratio - shows the level of strategy stability. basically it is how the profit/loss is deviated around the expected value.
sortino - the same as sharpe, but is calculated over the negative gains.
k - Kelly criterion value, means the percentage of your portfolio, you can trade the scripted strategy for optimal risk management.
k_margin - Kelly criterion recalculated to be meant as optimal margin value.
DISCLAIMER :
The SCRIPT is in ALPHA stage. So there could be some hidden bugs.
Though the basic functionality seems to work fine.
Initial documentation is not detailed. There could be english grammar mistakes also.
NOW Working hard on optimizing the script. Seems, some heavier strategies (especially those using the multiple SECURITY functions) call TV processing power limitation errors.
Docs are here:
docs.google.com
KK_Intraday MAsHey guys,
today I was browsing through intraday Charts looking at some moving averages. Basically what I wanted to see was whether the currency pair was trading below or above the moving average of the day/week/month. For a better understanding: The daily MA on a 15 minute Forex Chart would be the 96 MA.
I encountered the problem that i always had to change the settings for my MAs when changing the Time Interval, so I coded this here up. It is pretty simple but maybe somebody else has the same problem and can put it to use.
The script has some settings as listed below:
Choice which MAs to plot, (Daily, Weekly, Monthly)
Choice which type of MA to use (Simple, Exponential, Weighted)
Neccesary Settings for the correct calculation (e.g. Number of trading hours per day). These settings depend on the instrument you are using and should always be checked before using this script.
There are a few things to Note when using this script:
This script works for intraday charts only.
The monthly MA doesn't work on any Time Interval smaller than 15 minutes. Can't do anything about it unfortunately.
This is my first published Script, use it with caution and let me know what you think about it!
Stock Relative Strength Rotation Graph🔄 Visualizing Market Rotation & Momentum (Stock RSRG)
This tool visualizes the sector rotation of your watchlist on a single graph. Instead of checking 40 different charts, you can see the entire market cycle in one view. It plots Relative Strength (Trend) vs. Momentum (Velocity) to identify which assets are leading the market and which are lagging.
📜 Credits & Disclaimer
Original Code: Adapted from the open-source " Relative Strength Scatter Plot " by LuxAlgo.
Trademark: This tool is inspired by Relative Rotation Graphs®. Relative Rotation Graphs® is a registered trademark of JOOS Holdings B.V. This script is neither endorsed, nor sponsored, nor affiliated with them.
📊 How It Works (The Math)
The script calculates two metrics for every symbol against a benchmark (Default: SPX):
X-Axis (RS-Ratio): Is the trend stronger than the benchmark? (>100 = Yes)
Y-Axis (RS-Momentum): Is the trend accelerating? (>100 = Yes)
🧩 The 4 Market Quadrants
🟩 Leading (Top-Right): Strong Trend + Accelerating. (Best for holding).
🟦 Improving (Top-Left): Weak Trend + Accelerating. (Best for entries).
⬜ Weakening (Bottom-Right): Strong Trend + Decelerating. (Watch for exits).
🟥 Lagging (Bottom-Left): Weak Trend + Decelerating. (Avoid).
✨ Significant Improvements
This open-source version adds unique features not found in standard rotation scripts:
📝 Quick-Input Engine: Paste up to 40 symbols as a single comma-separated list (e.g., NVDA, AMD, TSLA). No more individual input boxes.
🎯 Quadrant Filtering: You can now hide specific quadrants (like "Lagging") to clear the noise and focus only on actionable setups.
🐛 Trajectory Trails: Visualizes the historical path of the rotation so you can see the direction of momentum.
🛠️ How to Use
Paste Watchlist: Go to settings and paste your symbols (e.g., US Sectors: XLK, XLF, XLE...).
Find Entries: Look for tails moving from Improving ➔ Leading.
Find Exits: Be cautious when tails move from Leading ➔ Weakening.
Zoom: Use the "Scatter Plot Resolution" setting to zoom in or out if dots are bunched up.
MGC1! - TPO & Volume Profile (High Precision)The official TPO takes into account the entire height of the candle (High to Low). If a candle goes from 4270 to 4280, the TPO adds a “mark” on all intermediate prices, not just at the close. That's why your VAH was too low: the script was “missing” the entire upper area of the wicks and bodies.
I rewrote the script engine so that it scans the inside of the candles (High to Low).
Here is the “High Precision” script. It is more computationally intensive (because it loops on each tick), but it will stick much closer to the official TPO values.
Corrective Script: MGC1! TPO Precision (High-Low Scan)
Copy this, replace the old one, and read the settings below carefully.
Translated with DeepL.com (free version)
Pulse & Trend AnalysisPulse & Trend Analysis
The Pulse & Trend Analysis indicator is designed to help traders quickly identify potential trend shifts using the crossover and crossunder of EMA 20 and EMA 50.
When EMA 20 crosses above or below EMA 50, the indicator highlights it visually with colored arrows and “Pulse” signals, making trend changes easy to spot.
How the Script Works?
When EMA 20 crosses above EMA 50 and corresponding Candle close into Green color, the script generates a Pulse Positive signal,
shown with: Blue Arrow Up, Text: “PULSE POSITIVE”
When EMA 20 crosses below EMA 50 and corresponding Candle close into Red color, the script generates a Pulse Negative signal, shown with:
Red Arrow Down, Text: “PULSE NEGATIVE”
These signals help traders visually detect potential bullish or bearish momentum shifts.
How Users Can Benefit From This Indicator?
The Trend & Pulse Analysis indicator allows traders to quickly understand the prevailing market direction by analyzing the interaction between EMA 20 and EMA 50. When a Pulse Positive (bullish crossover) occurs, it signals increasing upward momentum, helping traders focus on long opportunities. Similarly, a Pulse Negative (bearish crossunder) highlights weakening trend strength and supports short-side setups.
This indicator becomes even more powerful when combined with Demand & Supply Zones.
By integrating trend direction, momentum pulses, and zone-based confluence, users can make more informed decisions.
What Makes This Indicator Unique?
The Trend & Pulse Analysis indicator stands out because it adds an important layer of price-action confirmation to traditional EMA crossover signals. Unlike standard crossover tools that trigger signals on every EMA interaction, this indicator filters out weak setups by checking candle strength and direction at the moment of crossover.
A Pulse Positive signal is triggered only when the crossover occurs on a bullish (green) candle.
A Pulse Negative signal is triggered only when the cross under occurs on a bearish (red) candle.
This built-in candle-confirmation mechanism makes the signals more reliable, reduces noise, and gives traders higher-confidence trend continuation.
Additionally, when combined with supply & demand concepts—
Pulse Positive with Demand Zone → strengthens bullish conviction
Pulse Negative with Supply Zone → strengthens bearish conviction
This fusion of EMA trend logic + candle confirmation + supply-demand confluence is what makes the indicator truly unique and powerful for smart traders.
How This Indicator Is Original?
The Trend & Pulse Analysis indicator is completely original because it is built on a custom-designed logic that goes beyond a simple EMA crossover system. While standard indicators only detect crossover/crossunder of moving averages, this tool introduces a dual-filter confirmation approach:
Directional Candle Validation
A Pulse Positive signal is triggered only when EMA20 crosses above EMA50 AND the same candle closes bullish (green).
A Pulse Negative signal is triggered only when EMA20 crosses below EMA50 AND the same candle closes bearish (red).
Custom Pulse System (Not a Standard EMA Indicator)
The “Pulse Positive / Pulse Negative” framework is a uniquely designed concept that combines trend direction, momentum shift, and candle strength.
Manual Programming & Original Condition Set
Every rule, filter, and plotting condition is hand-coded — not copied from open-source scripts.
The system uses:
Custom plotting rules
Custom conditional checks
Custom text + arrow logic
Combined trend + candle behavior analysis
This makes the indicator fully original and not a replica of any existing public script.
Disclaimer:
This indicator is created for educational and analytical purposes.
It does not provide buy or sell signals, financial advice, or guaranteed trading outcomes.
All trading decisions are solely your responsibility.
Market trading involves risk; always use proper risk management.
Trend CompassAbout This Script
Trend Compass Pro is a multi-layered market analysis tool designed to unify three essential components of price behavior: momentum, trend strength, and directional structure.
It is built to provide traders with a clear and readable visualization of market conditions without relying on external scripts or unnecessary visual clutter.
How It Works
1. Momentum Layer — RSI
The script uses a fast-period Relative Strength Index (RSI) to measure short-term momentum sensitivity.
Its line is dynamically colored based on candle direction (bullish, bearish, neutral), which makes momentum shifts easy to interpret at a glance.
2. Strength Layer — ADX
The next layer applies a standard ADX calculation to measure the strength of the prevailing trend, independent of direction.
A threshold level marks when the trend becomes strong or meaningful.
The ADX line is also color-synchronized with candle direction to highlight moments when trend strength aligns with price momentum.
A visual fill between the RSI and ADX lines appears when both layers agree — green for bullish strength, red for bearish strength.
3. Direction Layer — Trend Compass (Original Logic)
This is the core component of the script and is fully original.
It works by comparing a fast EMA with a slow EMA across three separate internal timeframes, representing:
Short-term trend
Medium-term trend
Long-term trend
Each timeframe outputs a simple directional state based on EMA spread, displayed as three horizontal color-coded bands (levels 25, 50, 75).
These colors show when trend direction is aligned or mixed across different timescales.
Why These Elements Are Combined
The script is not a random combination of indicators.
Each layer solves a distinct analytical need:
RSI → short-term market mood
ADX → strength behind the move
Trend Compass → structural direction across multiple trend horizons
Together, they provide a consolidated and readable picture of how direction, strength, and momentum interact.
How to Use It
When all three layers show bullish agreement → strong and confirmed uptrend
When all three align bearish → strong downtrend
When mixed → transitional or weak environment
When Trend Compass is neutral → market lacks directional structure
This makes the script suitable for trend trading, breakout confirmation, and momentum-aligned entries.
Publishing Notes
A clean chart was used when publishing this script.
No additional indicators or unrelated drawings were included.
All visible elements originate directly from the script and serve the purpose of understanding its function.
Trend Compass combines momentum (RSI), trend strength (ADX), and multi-timeframe direction (EMA-based Trend Compass) into a single clean panel.
The script highlights periods when momentum and strength agree and shows trend direction across three internal time horizons.
It offers a clear way to confirm trend continuation, strength, and reversals without clutter.
Unlock a complete trend-reading system with Trend Compass — a smart fusion of RSI momentum, ADX strength, and a unique triple-layer trend engine.
Identify strong trends instantly, filter noise, and trade only when momentum, strength, and direction align.
Malama's Quantum Swing Modulator# Multi-Indicator Swing Analysis with Probability Scoring
## What Makes This Script Original
This script combines pivot point detection with a **weighted scoring system** that dynamically adjusts indicator weights based on market regime (trending vs. ranging). Unlike standard multi-indicator approaches that use fixed weightings, this implementation uses ADX to detect market conditions and automatically rebalances the influence of RSI, MFI, and price deviation components accordingly.
## Core Methodology
**Dynamic Weight Allocation System:**
- **Trending Markets (ADX > 25):** Prioritizes momentum (50% weight) with reduced oscillator influence (20% each for RSI/MFI)
- **Ranging Markets (ADX < 25):** Emphasizes mean reversion signals (40% each for RSI/MFI) with no momentum bias
- **Price Wave Component:** Uses EMA deviation normalized by ATR to measure distance from central tendency
**Pivot-Based Level Analysis:**
- Detects swing highs/lows using configurable left/right lookback periods
- Maintains the most recent pivot levels as key reference points
- Calculates proximity scores based on current price distance from these levels
**Volume Confirmation Logic:**
- Defines "volume entanglement" when current volume exceeds SMA by user-defined factor
- Integrates volume confirmation into confidence scoring rather than signal generation
## Technical Implementation Details
**Scoring Algorithm:**
The script calculates separate bullish and bearish "superposition" scores using:
```
Bullish Score = (RSI_bull × weight) + (MFI_bull × weight) + (price_wave × weight × position_filter) + (momentum × weight)
```
Where:
- RSI_bull = 100 - RSI (inverted for oversold bias)
- MFI_bull = 100 - MFI (inverted for oversold bias)
- Position_filter = Only applies when price is below EMA for bullish signals
- Momentum component = Only active in trending markets
**Confidence Calculation:**
Base confidence starts at 25% and increases based on:
- Market regime alignment (trending/ranging appropriate conditions)
- Volume confirmation presence
- Oscillator extreme readings (RSI < 30 or > 70 in ranging markets)
- Price position relative to wave function (EMA)
**Probability Output:**
Final probability = (Base Score × 0.6) + (Proximity Score × 0.4)
This balances indicator confluence with proximity to identified levels.
## Key Differentiators
**vs. Standard Multi-Indicator Scripts:** Uses regime-based dynamic weighting instead of fixed combinations
**vs. Simple Pivot Indicators:** Adds quantified probability and confidence scoring to pivot levels
**vs. Basic Oscillator Combinations:** Incorporates market structure analysis through ADX regime detection
## Visual Components
**Wave Function Display:** EMA with ATR-based uncertainty bands for trend context
**Pivot Markers:** Clear visualization of detected swing highs and lows
**Analysis Table:** Real-time probability, confidence, and action recommendations for current pivot levels
## Practical Application
The dynamic weighting system helps avoid common pitfalls of multi-indicator analysis:
- Reduces oscillator noise during strong trends by emphasizing momentum
- Increases mean reversion sensitivity during sideways markets
- Provides quantified probability rather than subjective signal interpretation
## Important Limitations
- Requires sufficient historical data for pivot detection and volume calculations
- Probability scores are based on current market regime and may change as conditions evolve
- The scoring system is designed for confluence analysis, not standalone trading decisions
- Past probability accuracy does not guarantee future performance
## Technical Requirements
- Works on all timeframes but requires adequate lookback history
- Volume data required for entanglement calculations
- Best suited for liquid instruments where volume patterns are meaningful
This approach provides a systematic framework for evaluating swing trading opportunities while acknowledging the probabilistic nature of technical analysis.
Nef33 Forex & Crypto Trading Signals PRO
1. Understanding the Indicator's Context
The indicator generates signals based on confluence (trend, volume, key zones, etc.), but it does not include predefined SL or TP levels. To establish them, we must:
Use dynamic or static support/resistance levels already present in the script.
Incorporate volatility (such as ATR) to adjust the levels based on market conditions.
Define a risk/reward ratio (e.g., 1:2).
2. Options for Determining SL and TP
Below, I provide several ideas based on the tools available in the script:
Stop Loss (SL)
The SL should protect you from adverse movements. You can base it on:
ATR (Volatility): Use the smoothed ATR (atr_smooth) multiplied by a factor (e.g., 1.5 or 2) to set a dynamic SL.
Buy: SL = Entry Price - (atr_smooth * atr_mult).
Sell: SL = Entry Price + (atr_smooth * atr_mult).
Key Zones: Place the SL below a support (for buys) or above a resistance (for sells), using Order Blocks, Fair Value Gaps, or Liquidity Zones.
Buy: SL below the nearest ob_lows or fvg_lows.
Sell: SL above the nearest ob_highs or fvg_highs.
VWAP: Use the daily VWAP (vwap_day) as a critical level.
Buy: SL below vwap_day.
Sell: SL above vwap_day.
Take Profit (TP)
The TP should maximize profits. You can base it on:
Risk/Reward Ratio: Multiply the SL distance by a factor (e.g., 2 or 3).
Buy: TP = Entry Price + (SL Distance * 2).
Sell: TP = Entry Price - (SL Distance * 2).
Key Zones: Target the next resistance (for buys) or support (for sells).
Buy: TP at the next ob_highs, fvg_highs, or liq_zone_high.
Sell: TP at the next ob_lows, fvg_lows, or liq_zone_low.
Ichimoku: Use the cloud levels (Senkou Span A/B) as targets.
Buy: TP at senkou_span_a or senkou_span_b (whichever is higher).
Sell: TP at senkou_span_a or senkou_span_b (whichever is lower).
3. Practical Implementation
Since the script does not automatically draw SL/TP, you can:
Calculate them manually: Observe the chart and use the levels mentioned.
Modify the code: Add SL/TP as labels (label.new) at the moment of the signal.
Here’s an example of how to modify the code to display SL and TP based on ATR with a 1:2 risk/reward ratio:
Modified Code (Signals Section)
Find the lines where the signals (trade_buy and trade_sell) are generated and add the following:
pinescript
// Calculate SL and TP based on ATR
atr_sl_mult = 1.5 // Multiplier for SL
atr_tp_mult = 3.0 // Multiplier for TP (1:2 ratio)
sl_distance = atr_smooth * atr_sl_mult
tp_distance = atr_smooth * atr_tp_mult
if trade_buy
entry_price = close
sl_price = entry_price - sl_distance
tp_price = entry_price + tp_distance
label.new(bar_index, low, "Buy: " + str.tostring(math.round(bull_conditions, 1)), color=color.green, textcolor=color.white, style=label.style_label_up, size=size.tiny)
label.new(bar_index, sl_price, "SL: " + str.tostring(math.round(sl_price, 2)), color=color.red, textcolor=color.white, style=label.style_label_down, size=size.tiny)
label.new(bar_index, tp_price, "TP: " + str.tostring(math.round(tp_price, 2)), color=color.blue, textcolor=color.white, style=label.style_label_up, size=size.tiny)
if trade_sell
entry_price = close
sl_price = entry_price + sl_distance
tp_price = entry_price - tp_distance
label.new(bar_index, high, "Sell: " + str.tostring(math.round(bear_conditions, 1)), color=color.red, textcolor=color.white, style=label.style_label_down, size=size.tiny)
label.new(bar_index, sl_price, "SL: " + str.tostring(math.round(sl_price, 2)), color=color.red, textcolor=color.white, style=label.style_label_up, size=size.tiny)
label.new(bar_index, tp_price, "TP: " + str.tostring(math.round(tp_price, 2)), color=color.blue, textcolor=color.white, style=label.style_label_down, size=size.tiny)
Code Explanation
SL: Calculated by subtracting/adding sl_distance to the entry price (close) depending on whether it’s a buy or sell.
TP: Calculated with a double distance (tp_distance) for a 1:2 risk/reward ratio.
Visualization: Labels are added to the chart to display SL (red) and TP (blue).
4. Practical Strategy Without Modifying the Code
If you don’t want to modify the script, follow these steps manually:
Entry: Take the trade_buy or trade_sell signal.
SL: Check the smoothed ATR (atr_smooth) on the chart or calculate a fixed level (e.g., 1.5 times the ATR). Also, review nearby key zones (OB, FVG, VWAP).
TP: Define a target based on the next key zone or multiply the SL distance by 2 or 3.
Example:
Buy at 100, ATR = 2.
SL = 100 - (2 * 1.5) = 97.
TP = 100 + (2 * 3) = 106.
5. Recommendations
Test in Demo: Apply this logic in a demo account to adjust the multipliers (atr_sl_mult, atr_tp_mult) based on the market (forex or crypto).
Combine with Zones: If the ATR-based SL is too wide, use the nearest OB or FVG as a reference.
Risk/Reward Ratio: Adjust the TP based on your tolerance (1:1, 1:2, 1:3)
VPSA-VTDDear Sir/Madam,
I am pleased to present the next iteration of my indicator concept, which, in my opinion, serves as a highly useful tool for analyzing markets using the Volume Spread Analysis (VSA) method or the Wyckoff methodology.
The VPSA (Volume-Price Spread Analysis), the latest version in the family of scripts I’ve developed, appears to perform its task effectively. The combination of visualizing normalized data alongside their significance, achieved through the application of Z-Score standardization, proved to be a sound solution. Therefore, I decided to take it a step further and expand my project with a complementary approach to the existing one.
Theory
At the outset, I want to acknowledge that I’m aware of the existence of other probabilistic models used in financial markets, which may describe these phenomena more accurately. However, in line with Occam's Razor, I aimed to maintain simplicity in the analysis and interpretation of the concepts below. For this reason, I focused on describing the data using the Gaussian distribution.
The data I read from the chart — primarily the closing price, the high-low price difference (spread), and volume — exhibit cyclical patterns. These cycles are described by Wyckoff's methodology, while VSA complements and presents them from a different perspective. I will refrain from explaining these methods in depth due to their complexity and broad scope. What matters is that within these cycles, various events occur, described by candles or bars in distinct ways, characterized by different spreads and volumes. When observing the chart, I notice periods of lower volatility, often accompanied by lower volumes, as well as periods of high volatility and significant volumes. It’s important to find harmony within this apparent chaos. I think that chart interpretation cannot happen without considering the broader context, but the more variables I include in the analytical process, the more challenges arise. For instance, how can I determine if something is large (wide) or small (narrow)? For elements like volume or spread, my script provides a partial answer to this question. Now, let’s get to the point.
Technical Overview
The first technique I applied is Min-Max Normalization. With its help, the script adjusts volume and spread values to a range between 0 and 1. This allows for a comparable bar chart, where a wide bar represents volume, and a narrow one represents spread. Without normalization, visually comparing values that differ by several orders of magnitude would be inconvenient. If the indicator shows that one bar has a unit spread value while another has half that value, it means the first bar is twice as large. The ratio is preserved.
The second technique I used is Z-Score Standardization. This concept is based on the normal distribution, characterized by variables such as the mean and standard deviation, which measures data dispersion around the mean. The Z-Score indicates how many standard deviations a given value deviates from the population mean. The higher the Z-Score, the more the examined object deviates from the mean. If an object has a Z-Score of 3, it falls within 0.1% of the population, making it a rare occurrence or even an anomaly. In the context of chart analysis, such strong deviations are events like climaxes, which often signal the end of a trend, though not always. In my script, I assigned specific colors to frequently occurring Z-Score values:
Below 1 – Blue
Above 1 – Green
Above 2 – Red
Above 3 – Fuchsia
These colors are applied to both spread and volume, allowing for quick visual interpretation of data.
Volume Trend Detector (VTD)
The above forms the foundation of VPSA. However, I have extended the script with a Volume Trend Detector (VTD). The idea is that when I consider market structure - by market structure, I mean the overall chart, support and resistance levels, candles, and patterns typical of spread and volume analysis as well as Wyckoff patterns - I look for price ranges where there is a lack of supply, demand, or clues left behind by Smart Money or the market's enigmatic identity known as the Composite Man. This is essential because, as these clues and behaviors of market participants — expressed through the chart’s dynamics - reflect the actions, decisions, and emotions of all players. These behaviors can help interpret the bull-bear battle and estimate the probability of their next moves, which is one of the key factors for a trader relying on technical analysis to make a trade decision.
I enhanced the script with a Volume Trend Detector, which operates in two modes:
Step-by-Step Logic
The detector identifies expected volume dynamics. For instance, when looking for signs of a lack of bullish interest, I focus on setups with decreasing volatility and volume, particularly for bullish candles. These setups are referred to as No Demand patterns, according to Tom Williams' methodology.
Simple Moving Average (SMA)
The detector can also operate based on a simple moving average, helping to identify systematic trends in declining volume, indicating potential imbalances in market forces.
I’ve designed the program to allow the selection of candle types and volume characteristics to which the script will pay particular attention and notify me of specific market conditions.
Advantages and Disadvantages
Advantages:
Unified visualization of normalized spread and volume, saving time and improving efficiency.
The use of Z-Score as a consistent and repeatable relative mechanism for marking examined values.
The use of colors in visualization as a reference to Z-Score values.
The possibility to set up a continuous alert system that monitors the market in real time.
The use of EMA (Exponential Moving Average) as a moving average for Z-Score.
The goal of these features is to save my time, which is the only truly invaluable resource.
Disadvantages:
The assumption that the data follows a normal distribution, which may lead to inaccurate interpretations.
A fixed analysis period, which may not be perfectly suited to changing market conditions.
The use of EMA as a moving average for Z-Score, listed both as an advantage and a disadvantage depending on market context.
I have included comments within the code to explain the logic behind each part. For those who seek detailed mathematical formulas, I invite you to explore the code itself.
Defining Program Parameters:
Numerical Conditions:
VPSA Period for Analysis – The number of candles analyzed.
Normalized Spread Alert Threshold – The expected normalized spread value; defines how large or small the spread should be, with a range of 0-1.00.
Normalized Volume Alert Threshold – The expected normalized volume value; defines how large or small the volume should be, with a range of 0-1.00.
Spread Z-SCORE Alert Threshold – The Z-SCORE value for the spread; determines how much the spread deviates from the average, with a range of 0-4 (a higher value can be entered, but from a logical standpoint, exceeding 4 is unnecessary).
Volume Z-SCORE Alert Threshold – The Z-SCORE value for volume; determines how much the volume deviates from the average, with a range of 0-4 (the same logical note as above applies).
Logical Conditions:
Logical conditions describe whether the expected value should be less than or equal to or greater than or equal to the numerical condition.
All four parameters accept two possibilities and are analogous to the numerical conditions.
Volume Trend Detector:
Volume Trend Detector Period for Analysis – The analysis period, indicating the number of candles examined.
Method of Trend Determination – The method used to determine the trend. Possible values: Step by Step or SMA.
Trend Direction – The expected trend direction. Possible values: Upward or Downward.
Candle Type – The type of candle taken into account. Possible values: Bullish, Bearish, or Any.
The last available setting is the option to enable a joint alert for VPSA and VTD.
When enabled, VPSA will trigger on the last closed candle, regardless of the VTD analysis period.
Example Use Cases (Labels Visible in the Script Window Indicate Triggered Alerts):
The provided labels in the chart window mark where specific conditions were met and alerts were triggered.
Summary and Reflections
The program I present is a strong tool in the ongoing "game" with the Composite Man.
However, it requires familiarity and understanding of the underlying methodologies to fully utilize its potential.
Of course, like any technical analysis tool, it is not without flaws. There is no indicator that serves as a perfect Grail, accurately signaling Buy or Sell in every case.
I would like to thank those who have read through my thoughts to the end and are willing to take a closer look at my work by using this script.
If you encounter any errors or have suggestions for improvement, please feel free to contact me.
I wish you good health and accurately interpreted market structures, leading to successful trades!
CatTheTrader
Previous 5 Day Market CloseThis indicator can be used with a strategy known as gap close reversal. Gap close reversal is a trading strategy based on the idea that when a market experiences a gap (a significant difference between the previous day's close and the current day's open), there's a tendency for the price to fill or "close" the gap by moving back to the previous day's closing price. Traders often look for such opportunities as potential entry or exit points.
Here's how you can use this script for gap close reversal trading:
Identify Gaps: Look for instances where the current day's open price significantly deviates from the previous day's close, resulting in a gap on the chart. This could be a gap-up (where the open is higher than the previous close) or a gap-down (where the open is lower than the previous close).
Plot the Script: Apply the "Past 5 Days Close" script to your chart. This will plot the closing prices of the past five trading days as lines on the chart. These lines will serve as reference points for potential gap close levels.
Look for Reversal Signals: Monitor the price action as the market opens and observe how it behaves in relation to the previous day's close and the lines plotted by the script. If the price starts to move towards one of the past closing prices after a gap, it could indicate a potential reversal.
Confirm with Other Indicators: Use additional technical indicators or chart patterns to confirm the potential reversal signal. For example, you might look for bullish or bearish candlestick patterns, support or resistance levels, or momentum indicators aligning with the reversal.
Gorb WallIntroduction:
Gorb Wall is a trading tool that offers a unique approach to market trend analysis. It extends the capabilities of the Gorb Algo indicator by presenting a multi-ticker, multi-timeframe dashboard, enabling traders to capture crucial market movements across various financial instruments without flipping through charts.
Overview:
Multi-Ticker Analysis: Monitor and analyze multiple financial instruments simultaneously.
Customizable Timeframes: Tailor the script to various timeframes to suit your trading strategy.
Gorb Algo Market Trend: An algorithm that adapts to market conditions, providing insights into trend changes.
User-Friendly Dashboard: Easily configure and customize the dashboard placement on your chart.
Color-Coded Trend Indicators: Visual cues to quickly assess bullish or bearish trends.
Optimized for Performance: Efficiently coded to ensure smooth running on TradingView without overloading resources.
How Gorb Wall Works:
The script utilizes Gorb Algo's market trend algorithm to process price and volume data across selected tickers and timeframes.
It applies a complex calculation to identify trends, using a combination of volatility analysis, momentum measurements, and trend strength indicators.
The output is a simplified visual representation on the dashboard, where colored circles indicate the trend direction, providing an at-a-glance market overview.
Unique Features:
Proprietary Algorithm: The heart of Gorb Wall lies in its unique Gorb Algo Market Trend algorithm. Unlike standard trend-following indicators, this proprietary algorithm integrates multiple technical analysis concepts (e.g., moving averages, volume data, price action, and oscillators) to provide a more comprehensive market trend analysis.
Multi-Dimensional Analysis: The script analyzes market trends by simultaneously processing data across multiple tickers and timeframes, offering a broader view of market movements than traditional single-ticker indicators.
We recommend exploring & choosing which tickers/timeframes best suits your needs and style of trading, and use that to combine with our suite of indicators.
Settings:
All skill-level friendly presets, easy to enable features with one-click
Dashboard Placement: Choose from top/bottom left/right for dashboard positioning.
Trend Speed Mode: Select the algorithm speed - Fast, Medium, Slow, Slowest.
Bullish/Bearish Trend Colors: Customize colors for trend indicators.
Additional Tickers: Input options for monitoring multiple financial instruments.
Timeframe Selection: Choose from a range of timeframes for each ticker.
How to Use
In the image below, we can see a basic example of how this indicator functions.
The dashboard displays up to three different tickers per the user's choice, with 4 different timeframes the user can choose. It that runs the algorithm line on the specified ticker & timeframe and plots a colored circle that identifies that tickers trend on the specified timeframes.
There are two colors, white for bullish trend and purple for bearish trend. These are the two consistent colors across our suit of indicators to help simplify trading by using simple color matching for confluence. Below is a continued breakdown on using this indicator:
Dynamic Trend Visualization in Real-Time Updates
The dashboard dynamically updates trend colors (white for bullish, purple for bearish) based on real-time market data, offering immediate insights into market sentiment. The next three images below these the live change in data as price action begins developing over multiple timeframes.
In the image above, we are on the 5min AAPL chart, we have SPY, QQQ, and VIX as our tickers on the dashboard with 1min, 2min, 3min, and 10min timeframes chosen. We begin to see VIX flip bullish, which can usually mean down side for indices.
We then see as AAPL's price begins to slow and reverse, we see SPY's trend following on the smaller timeframes first with VIX still leading the way indicating possible bearish change.
In the image above, we can see that price dips down and SPY & QQQ market trends have flipped bearish on all timeframes, while VIX continues to be bullish(validating the downwards price action)
Customizable Settings
Users can adjust settings such as dashboard placement, trend speed mode, and color themes to suit individual trading styles.
In the image below, we can see the dashboard placement setting offers four different locations the user can move the dashboard. Just like in Gorb Algo , the user can choose which trendline speed they want to use to best fit their trading strategy.
In the image below, we can see the "bullish trend" & "bearish trend" colors setting. These colors by default match the rest of our suite of indicators, white is bullish and purple is bearish. Users can change these color settings to meet their preferences.
In the image below, we can see there are three market ticker options that the user can change. This allows users to monitor their favorite tickers across or easily flip through multiple tickers in order to gauge their current market trends without having to change their chart
In the image below, we can see the 4 timeframes that are on the dashboard. The user has the ability to change each of those four, to whatever timeframe best suits their trading needs. There are 12 different timeframe options to choose from.
Quick Dashboard Review
Using color-coded trend detection, this quickly gauges market trends and provides a visual to easily identify these changes in real-time across multiple timeframes. When a circle changes color, this means that price has flipped that direction, causing a change in the Gorb Algo market trendline. As stated above, white is for bullish trend and purple is for bearish trend, but these colors can be changed to fit the users trading strategy and style. Each timeframe the user chooses will be updated in real-time, including the higher time frames like the daily & weekly. They have been modified to pull data a same speed the lower timeframes are.
This helps provide quick visual identification of real market trend changes as price action develops. It is best used in conjunction with other forms of technical analysis for a holistic trading approach.
Conclusion:
This indicator is designed to streamline market trend analysis, offering traders an innovative, efficient, and easy-to-use tool for making informed trading decisions. This tool complements our suite of indicators, providing unique market insights that are not typically available in traditional open-source scripts.
How to get access:
You can see the Author's instructions to get access to this indicator
RISK DISCLAIMER
All content, tools, scripts & education provided by Gorb Algo are for informational & educational purposes only. Trading is risky and most lose their money, past performance does not guarantee future results.
Advanced Dynamic Threshold RSI [Elysian_Mind]Advanced Dynamic Threshold RSI Indicator
Overview
The Advanced Dynamic Threshold RSI Indicator is a powerful tool designed for traders seeking a unique approach to RSI-based signals. This indicator combines traditional RSI analysis with dynamic threshold calculation and optional Bollinger Bands to generate weighted buy and sell signals.
Features
Dynamic Thresholds: The indicator calculates dynamic thresholds based on market volatility, providing more adaptive signal generation.
Performance Analysis: Users can evaluate recent price performance to further refine signals. The script calculates the percentage change over a specified lookback period.
Bollinger Bands Integration: Optional integration of Bollinger Bands for additional confirmation and visualization of potential overbought or oversold conditions.
Customizable Settings: Traders can easily customize key parameters, including RSI length, SMA length, lookback bars, threshold multiplier, and Bollinger Bands parameters.
Weighted Signals: The script introduces a unique weighting mechanism for signals, reducing false positives and improving overall reliability.
Underlying Calculations and Methods
1. Dynamic Threshold Calculation:
The heart of the Advanced Dynamic Threshold RSI Indicator lies in its ability to dynamically calculate thresholds based on multiple timeframes. Let's delve into the technical details:
RSI Calculation:
For each specified timeframe (1-hour, 4-hour, 1-day, 1-week), the Relative Strength Index (RSI) is calculated using the standard 14-period formula.
SMA of RSI:
The Simple Moving Average (SMA) is applied to each RSI, resulting in the smoothing of RSI values. This smoothed RSI becomes the basis for dynamic threshold calculations.
Dynamic Adjustment:
The dynamically adjusted threshold for each timeframe is computed by adding a constant value (5 in this case) to the respective SMA of RSI. This dynamic adjustment ensures that the threshold reflects changing market conditions.
2. Weighted Signal System:
To enhance the precision of buy and sell signals, the script introduces a weighted signal system. Here's how it works technically:
Signal Weighting:
The script assigns weights to buy and sell signals based on the crossover and crossunder events between RSI and the dynamically adjusted thresholds. If a crossover event occurs, the weight is set to 2; otherwise, it remains at 1.
Signal Combination:
The weighted buy and sell signals from different timeframes are combined using logical operations. A buy signal is generated if the product of weights from all timeframes is equal to 2, indicating alignment across timeframe.
3. Experimental Enhancements:
The Advanced Dynamic Threshold RSI Indicator incorporates experimental features for educational exploration. While not intended as proven strategies, these features aim to offer users a glimpse into unconventional analysis. Some of these features include Performance Calculation, Volatility Calculation, Dynamic Threshold Calculation Using Volatility, Bollinger Bands Module, Weighted Signal System Incorporating New Features.
3.1 Performance Calculation:
The script calculates the percentage change in the price over a specified lookback period (variable lookbackBars). This provides a measure of recent performance.
pctChange(src, length) =>
change = src - src
pctChange = (change / src ) * 100
recentPerformance1H = pctChange(close, lookbackBars)
recentPerformance4H = pctChange(request.security(syminfo.tickerid, "240", close), lookbackBars)
recentPerformance1D = pctChange(request.security(syminfo.tickerid, "1D", close), lookbackBars)
3.2 Volatility Calculation:
The script computes the standard deviation of the closing price to measure volatility.
volatility1H = ta.stdev(close, 20)
volatility4H = ta.stdev(request.security(syminfo.tickerid, "240", close), 20)
volatility1D = ta.stdev(request.security(syminfo.tickerid, "1D", close), 20)
3.3 Dynamic Threshold Calculation Using Volatility:
The dynamic thresholds for RSI are calculated by adding a multiplier of volatility to 50.
dynamicThreshold1H = 50 + thresholdMultiplier * volatility1H
dynamicThreshold4H = 50 + thresholdMultiplier * volatility4H
dynamicThreshold1D = 50 + thresholdMultiplier * volatility1D
3.4 Bollinger Bands Module:
An additional module for Bollinger Bands is introduced, providing an option to enable or disable it.
// Additional Module: Bollinger Bands
bbLength = input(20, title="Bollinger Bands Length")
bbMultiplier = input(2.0, title="Bollinger Bands Multiplier")
upperBand = ta.sma(close, bbLength) + bbMultiplier * ta.stdev(close, bbLength)
lowerBand = ta.sma(close, bbLength) - bbMultiplier * ta.stdev(close, bbLength)
3.5 Weighted Signal System Incorporating New Features:
Buy and sell signals are generated based on the dynamic threshold, recent performance, and Bollinger Bands.
weightedBuySignal = rsi1H > dynamicThreshold1H and rsi4H > dynamicThreshold4H and rsi1D > dynamicThreshold1D and crossOver1H
weightedSellSignal = rsi1H < dynamicThreshold1H and rsi4H < dynamicThreshold4H and rsi1D < dynamicThreshold1D and crossUnder1H
These features collectively aim to provide users with a more comprehensive view of market dynamics by incorporating recent performance and volatility considerations into the RSI analysis. Users can experiment with these features to explore their impact on signal accuracy and overall indicator performance.
Indicator Placement for Enhanced Visibility
Overview
The design choice to position the "Advanced Dynamic Threshold RSI" indicator both on the main chart and beneath it has been carefully considered to address specific challenges related to visibility and scaling, providing users with an improved analytical experience.
Challenges Faced
1. Differing Scaling of RSI Results:
RSI values for different timeframes (1-hour, 4-hour, and 1-day) often exhibit different scales, especially in markets like gold.
Attempting to display these RSIs on the same chart can lead to visibility issues, as the scaling differences may cause certain RSI lines to appear compressed or nearly invisible.
2. Candlestick Visibility vs. RSI Scaling:
Balancing the visibility of candlestick patterns with that of RSI values posed a unique challenge.
A single pane for both candlesticks and RSIs may compromise the clarity of either, particularly when dealing with assets that exhibit distinct volatility patterns.
Design Solution
Placing the buy/sell signals above/below the candles helps to maintain a clear association between the signals and price movements.
By allocating RSIs beneath the main chart, users can better distinguish and analyze the RSI values without interference from candlestick scaling.
Doubling the scaling of the 1-hour RSI (displayed in blue) addresses visibility concerns and ensures that it remains discernible even when compared to the other two RSIs: 4-hour RSI (orange) and 1-day RSI (green).
Bollinger Bands Module is optional, but is turned on as default. When the module is turned on, the users can see the upper Bollinger Band (green) and lower Bollinger Band (red) on the main chart to gain more insight into price actions of the candles.
User Flexibility
This dual-placement approach offers users the flexibility to choose their preferred visualization:
The main chart provides a comprehensive view of buy/sell signals in relation to candlestick patterns.
The area beneath the chart accommodates a detailed examination of RSI values, each in its own timeframe, without compromising visibility.
The chosen design optimizes visibility and usability, addressing the unique challenges posed by differing RSI scales and ensuring users can make informed decisions based on both price action and RSI dynamics.
Usage
Installation
To ensure you receive updates and enhancements seamlessly, follow these steps:
Open the TradingView platform.
Navigate to the "Indicators" tab in the top menu.
Click on "Community Scripts" and search for "Advanced Dynamic Threshold RSI Indicator."
Select the indicator from the search results and click on it to add to your chart.
This ensures that any future updates to the indicator can be easily applied, keeping you up-to-date with the latest features and improvements.
Review Code
Open TradingView and navigate to the Pine Editor.
Copy the provided script.
Paste the script into the Pine Editor.
Click "Add to Chart."
Configuration
The indicator offers several customizable settings:
RSI Length: Defines the length of the RSI calculation.
SMA Length: Sets the length of the SMA applied to the RSI.
Lookback Bars: Determines the number of bars used for recent performance analysis.
Threshold Multiplier: Adjusts the multiplier for dynamic threshold calculation.
Enable Bollinger Bands: Allows users to enable or disable Bollinger Bands integration.
Interpreting Signals
Buy Signal: Generated when RSI values are above dynamic thresholds and a crossover occurs.
Sell Signal: Generated when RSI values are below dynamic thresholds and a crossunder occurs.
Additional Information
The indicator plots scaled RSI lines for 1-hour, 4-hour, and 1-day timeframes.
Users can experiment with additional modules, such as machine-learning simulation, dynamic real-life improvements, or experimental signal filtering, depending on personal preferences.
Conclusion
The Advanced Dynamic Threshold RSI Indicator provides traders with a sophisticated tool for RSI-based analysis, offering a unique combination of dynamic thresholds, performance analysis, and optional Bollinger Bands integration. Traders can customize settings and experiment with additional modules to tailor the indicator to their trading strategy.
Disclaimer: Use of the Advanced Dynamic Threshold RSI Indicator
The Advanced Dynamic Threshold RSI Indicator is provided for educational and experimental purposes only. The indicator is not intended to be used as financial or investment advice. Trading and investing in financial markets involve risk, and past performance is not indicative of future results.
The creator of this indicator is not a financial advisor, and the use of this indicator does not guarantee profitability or specific trading outcomes. Users are encouraged to conduct their own research and analysis and, if necessary, consult with a qualified financial professional before making any investment decisions.
It is important to recognize that all trading involves risk, and users should only trade with capital that they can afford to lose. The Advanced Dynamic Threshold RSI Indicator is an experimental tool that may not be suitable for all individuals, and its effectiveness may vary under different market conditions.
By using this indicator, you acknowledge that you are doing so at your own risk and discretion. The creator of this indicator shall not be held responsible for any financial losses or damages incurred as a result of using the indicator.
Kind regards,
Ely






















