Quantumvest - Auto LevelsAuthor: Arthur Wayne
Description: This script automatically plots levels according to Primetime Trading Academy guidelines.
Directions:
On the monthly chart, you should select two significant monthly support/resistance levels and input them into the script. It is recommended to mark these levels with the price label tool.
The script will then automatically plot 2 monthly 'wings' or additional monthly support/resistance levels above and below the original monthly high and low that are the same distance apart. Located half way in between the monthly levels, there will be weekly support/resistance levels. None of the values will go below 0. These levels should then be used on lower time-frames for technical analysis.
There is the option to customize the number of monthly wings, the width of the box surrounds the monthly s/r levels, the x-position of the level labels, as well as the colors for everything.
The biggest drawback is that levels will not save in between charts. This is a limitation of Pine Script and how TradingView does not offer the ability to create custom drawing tools, only indicators and strategies. This is why it is recommended to use the price label tool to keep track in between charts for different assets. Regardless, this script should make the process of drawing levels manually far more efficient than it was before.
Pesquisar nos scripts por "THE SCRIPT"
Join data and union of 2 hystorical markets
How to create a union from two contiguous Tradingview tickers (series)
Francesco Marzolo March 18, 2021
Go to the older ticker of the two, for example CME: SP1! and open it on Tradingview.
On the graph thus created, add this script.
In the indicator settings select the same ticker as the chart in Symbol1
while in Symbol2 the ticker from which to retrieve the most recent data, for example: SPX500
The operation this script does is examine each bar of the two tickers, where there is a value for the second it holds this one, where it does not exist in second ticker it keeps the value of the first one. This new series is called Merge. So now in the chart there will be 4 series:
- that of the original chart without script
- the same series loaded via script (Symbol1)
- series 2 of "new" data (Symbol2)
- the Merge series that "prefers" the Symbol2 data if present, otherwise it shows Symbol1
So now you have to change the visibility of the 4 series to see the differences:
- turn off the visibility of the chart indicator
- turn off the Symbol1 series in the script properties (old data only)
- switch off the Symbol2 series as well (only new data)
- switch on the Merge series (new data if existing, old if not present in the new ticker)
EMA CrossoversUseful for identifying and receiving alerts about uptrends and downtrends.
This script uses two Exponential Moving Averages (EMAs) to find price uptrends and downtrends. An Exponential Moving Average (EMA) is a type of moving average that places a greater weight and significance on the most recent data points. The script produces uptrend and downtrend signals based on crossovers and divergences between the two EMAs, the user will be able to spot a trend change (when the EMAs crossover) and to determine the strength of the current trend (when the EMAs diverge). It is also posible to get alerts for uptrends and downtrends on the web and mobile app with sound and pop-ups as well as via email. The optimal time to enter and exit the market can be concluded from this trend changes.
The user can set their own EMAs, by default they are set to 21 and 55 periods for medium and long term respectively. When the medium term EMA crosses below the long term EMA the asset is in a downtrend and the price will decline, and when the medium term EMA crosses above the long term EMA the asset is in an uptrend and price will increase.
This scripts plots the following indicators and signals on the chart to help the user to identify trends:
1.- Medium and long term EMAs as lines overlaid on the price chart.
2.- Up green triangles above bars when the price is on an uptrend and down red triangles below bars when the price is on a downtrend.
3.- Arrows with text to indicate the start of an uptrend or downtrend.
The user can enable and disable the indicators and signals as well as set colors and shapes to their liking.
This script also lets the user create alerts for uptrends and downtrends. To create a new alert using this script follow this instructions:
1.- Once you added this script to your chart, go to the alerts panel (right on web or bottom tool bar on the mobile app) and add a new alert (alarm clock icon with a plus sign).
2.- A modal window will open. On the “Condition” dropdown menu select “EMA Crossovers”.
3.- On the next dropdown menu (right below the “Condition” one) you can select from two types of alerts “Uptrend started” and “Downtrend started”.
4.- Lastly you can set all the normal alert options and create the alert.
EMA with Bar Count
---
### **Key Features and Functionalities**
#### 1. **Multi-Timeframe Exponential Moving Averages (EMA)**
- The script calculates and plots EMAs for various timeframes (e.g., 1 minute, 5 minutes, 60 minutes, daily, and custom intervals).
- Users can customize the length and resolution of each EMA using inputs.
- Different colors are assigned to each EMA for easy identification on the chart.
#### 2. **Background Coloring**
- Optional background coloring (`bgcolor`) indicates whether the current price is above or below the 1-hour 20 EMA.
- Green indicates the price is above, and red indicates the price is below the EMA.
#### 3. **Bar Count Labeling**
- The script tracks bar counts and displays labels at specific intervals (e.g., every 3 bars).
- Label size and text color can be customized through user inputs.
#### 4. **Inside and Outside Bar Detection**
- Detects and highlights "Inside Bars" and "Outside Bars" on the chart.
- **Inside Bar**: The current bar's high and low are within the previous bar's range.
- **Outside Bar**: The current bar's range exceeds the previous bar's range.
- These patterns are marked with shapes for visual identification.
#### 5. **Bullish/Bearish Candle Streaks**
- Identifies and marks streaks of three consecutive bullish or bearish candles.
- **Bullish Streaks**: Marked with green shapes above the bar.
- **Bearish Streaks**: Marked with red shapes above the bar.
#### 6. **Time-Based Marking**
- The script includes an option to highlight specific time intervals (e.g., 7:30 AM) with a colored vertical line or background shading.
- Configurable time inputs allow flexibility.
#### 7. **Micro Gap Detection**
- Highlights gaps between the opening price of the current bar and the closing price of the previous bar.
- Blue shapes indicate bullish gaps.
- Purple shapes indicate bearish gaps.
#### 8. **TR (Trading Range) Detection**
- Identifies bars with significant overlap based on a user-defined threshold.
- Displays "TR" labels when overlap conditions are met.
#### 9. **Bar Coloring**
- Optionally colors bars based on specific conditions:
- Green: Bullish breakout (high and low higher than the previous bar, closing above the midpoint).
- Red: Bearish breakout (high and low lower than the previous bar, closing below the midpoint).
#### 10. **50% Midpoint Line**
- Displays a horizontal line at the 50% midpoint of the bar's range, customizable for the current or last bar only.
#### 11. **Pattern Detection**
- Recognizes specific candlestick patterns (e.g., IOI, OII, IOO).
- Provides alerts for detected patterns or predefined thresholds.
#### 12. **Alerts**
- Configurable alerts for:
- Specific patterns (e.g., IOI, OII, IOO).
- Bar range exceeding a user-defined threshold.
- Bullish or bearish streaks.
#### 13. **Gap Detector**
- Identifies gaps between bars and marks them with shaded boxes.
- Bullish gaps are shaded green, while bearish gaps are shaded red.
#### 14. **Advanced Customization**
- Extensive user inputs allow traders to tailor the indicator to their trading style.
- Includes support for various levels of detail (e.g., debug mode, label visibility, etc.).
#### 15. **ZigZag and Wedge Patterns**
- Optional zigzag lines to connect swing highs and lows.
- Detects wedge patterns using customizable settings for pivot points and angle differences.
---
### **Use Case Scenarios**
1. **Trend Identification**: Use multi-timeframe EMAs to confirm overall market direction.
2. **Range Trading**: Trade within ranges using detected inside and outside bars as key levels.
3. **Breakout Trading**: Use patterns like IOI and OII to anticipate breakouts.
4. **Scalping**: Exploit bullish and bearish streaks or micro gaps for quick trades.
5. **Pattern-Based Alerts**: Set up alerts for specific market conditions or candlestick patterns.
### **Why This Indicator Is Useful**
- Combines multiple trading tools into a single, customizable script.
- Saves time by automating complex calculations and pattern detections.
- Improves decision-making with clear visual cues and configurable alerts.
Let me know if you'd like any additional explanations or adjustments!
Efficient Work [LucF]█ OVERVIEW
Efficient Work measures the ratio of price movement from close to close ( resulting work ) over the distance traveled to the high and low before settling down at the close ( total work ). The closer the two values are, the more Efficient Work approaches its maximum value of +1 for an up move or -1 for a down move. When price does not change, Efficient Work is zero.
Higher values of Efficient Work indicate more efficient price travel between the close of two successive bars, which I interpret to be more significant, regardless of the move's amplitude. Because it measures the direction and strength of price changes rather than their amplitude, Efficient Work may be thought of as a sentiment indicator.
█ CONCEPTS
This oscillator's design stems from a few key concepts.
Relative Levels
Other than the centerline, relative rather than absolute levels are used to identify levels of interest. Accordingly, no fixed levels correspond to overbought/oversold conditions. Relative levels of interest are identified using:
• A Donchian channel (historical highs/lows).
• The oscillator's position relative to higher timeframe values.
• Oscillator levels following points in time where a divergence is identified.
Higher timeframes
Two progressively higher timeframes are used to calculate larger-context values for the oscillator. The rationale underlying the use of timeframes higher than the chart's is that, while they change less frequently than the values calculated at the chart's resolution, they are more meaningful because more work (trader activity) is required to calculate them. Combining the immediacy of values calculated at the chart's resolution to higher timeframe values achieves a compromise between responsiveness and reliability.
Divergences as points of interest rather than directional clues
A very simple interpretation of what constitutes a divergence is used. A divergence is defined as a discrepancy between any bar's direction and the direction of the signal line on that same bar. No attempt is made to attribute a directional bias to divergences when they occur. Instead, the oscillator's level is saved and subsequent movement of the oscillator relative to the saved level is what determines the bullish/bearish state of the oscillator.
Conservative coloring scheme
Several additive coloring conditions allow the bull/bear coloring of the oscillator's main line to be restricted to specific areas meeting all the selected conditions. The concept is built on the premise that most of the time, an oscillator's value should be viewed as mere noise, and that somewhat like price, it only occasionally conveys actionable information.
█ FEATURES
Plots
• Three lines can be plotted. They are named Main line , Line 2 and Line 3 . You decide which calculation to use for each line:
• The oscillator's value at the chart's resolution.
• The oscillator's value at a medium timeframe higher than the chart's resolution.
• The oscillator's value at the highest timeframe.
• An aggregate line calculated using a weighed average of the three previous lines (see the Aggregate Weights section of Inputs to configure the weights).
• The coloring conditions, divergence levels and the Hi/Lo channel always apply to the Main line, whichever calculation you decide to use for it.
• The color of lines 2 and 3 are fixed but can be set in the "Colors" section of Inputs.
• You can change the thickness of each line.
• When the aggregate line is displayed, higher timeframe values are only used in its calculation when they become available in the chart's history,
otherwise the aggregate line would appear much later on the chart. To indicate when each higher timeframe value becomes available,
a small label appears near the centerline.
• Divergences can be shown as small dots on the centerline.
• Divergence levels can be shown. The level and fill are determined by the oscillator's position relative to the last saved divergence level.
• Bull/bear markers can be displayed. They occur whenever a new bull/bear state is determined by the "Main Line Coloring Conditions".
• The Hi/Lo (Donchian) channel can be displayed, and its period defined.
• The background can display the state of any one of 11 different conditions.
• The resolutions used for the higher timeframes can be displayed to the right of the last bar's value.
• Four key values are always displayed in the Data Window (fourth icon down to the right of your chart):
oscillator values for the chart, medium and highest timeframes, and the oscillator's instant value before it is averaged.
Main Line Coloring Conditions
• Nine different conditions can be selected to determine the bull/bear coloring of the main line. All conditions set to "ON" must be met to determine the bull/bear state.
• A volatility state can also be used to filter the conditions.
• When the coloring conditions and the filter do not allow for a bull/bear state to be determined, the neutral color is used.
Signal
• Seven different averages can be used to calculate the average of the oscillator's value.
• The average's period can be set. A period of one will show the instant value of the oscillator,
provided you don't use linear regression or the Hull MA as they do not work with a period of one.
• An external signal can be used as the oscillator's instant value. If an already averaged external value is used, set the period to one in this indicator.
• For the cases where an external signal is used, a centerline value can be set.
Higher Timeframes
• The two higher timeframes are named Medium timeframe and Highest timeframe . They can be determined using one of three methods:
• Auto-steps: the higher timeframes are determined using the chart's resolution. If the chart uses a seconds resolution, for example,
the medium and highest resolutions will be 15 and 60 minutes.
• Multiples: the timeframes are calculated using a multiple of the chart's resolution, which you can set.
• Fixed: the set timeframes do not change with the chart's resolution.
Repainting
• Repainting can be controlled separately for the chart's value and the higher timeframe values.
• The default is a repainting chart value and non-repainting higher timeframe values. The Aggregate line will thus repaint by default,
as it uses the chart's value along with the higher timeframes values.
Aggregate Weights
• The weight of each component of the Aggregate line can be set.
• The default is equal weights for the three components, meaning that the chart's value accounts for one third of the weight in the Aggregate.
High Volatility
• This provides control over the volatility filter used in the Main line's coloring conditions and the background display.
• Volatility is determined to be high when the short-term ATR is greater than the long-term ATR.
Colors
• You can define your own colors for all of the oscillator's plots.
• The default colors will perform well on both white and black chart backgrounds.
Alerts
• An alert can be defined for the script. The alert will trigger whenever a bull/bear marker appears in the indicator's display.
The particular combination of coloring conditions and the display of bull/bear markers when you create the alert will thus determine when the alert triggers.
Once the alerts are created, subsequent changes to the conditions controlling the display of markers will not affect the existing alert(s).
• You can create multiple alerts from this script, each triggering on different conditions.
Backtesting & Trading Engine Signal Line
• An invisible plot named "BTE Signal" is provided. It can be used as an entry signal when connected to the PineCoders Backtesting & Trading Engine as an external input.
It will generate an entry whenever a marker is displayed.
█ NOTES
• I do not know for sure if the calculations in Efficient Work are original. I apologize if they are not.
• Because this version of Efficient Work only has access to OHLC information, it cannot measure the total distance traveled through all of a bar's ticks, but the indicator nonetheless behaves in a manner consistent with the intentions underlying its design.
For Pine coders
This code was written using the following standards:
• The PineCoders Coding Conventions for Pine .
• A modified version of the PineCoders MTF Oscillator Framework and MTF Selection Framework .
Slippage Calculator Hello everyone,
This is the first script I publish, also my English is not the best my apologies.
This simple study script is an attempt to estimate the slippage during a trade. By no means it is a precise calculation, it is just an approach that can be improved.
You are welcome to take this simple script and use it and change it at your convenience just ask your acknowledge.
My approach considers the total fluctuation the price gets as a consequence for the total volume on that specific bar.
The volume on each bar is given in BTC, thus you get that by using the formula.
vol = volume * vwap
The total variation in price is considered as twice the size of the bar plus the gap between to consecutive bars. that is the
total fluctuation of price on each bar = (2 * (high - low) + abs(open - close )) which is not totally true since inside each bar price can fluctuate a lot more.
The script considers you are trading your total equity (eq_BTC ) each time. The fraction of your equity of the volume bar is eq_BTC / vol
Then eq_BTC / vol is the portion or the total fluctuation in price that is due to your entry or exit from the market.
(2 * (high - low) + abs(open - close )) * eq_BTC / vol
is the average change in price due you enter o exit a position.
** the 2 factor accounts for the two directions in the market buying and selling. There is more behind this formula I can explain you in more detail if you like.
I haven't seen anywhere a formula like this one, so it is intended to be a first attempt to get a better approach.
Finally the output of the scripts is how many ticks the price might change due to your trade on each bar
round(slippage/syminfo.mintick)
The script is focused in crypto but it can be used as well on forex markets.
Take care,
@yvponce
Weis Pip Wave jayyWhat you see here is the Weis pip wave. The Weis pip wave shows how far in price a Weis wave has traveled through the duration of a Weis wave. The Weis pip wave is used in combination with the Weis cumulative volume wave. The two waves must be set to the same "wave size" and using the same method as described by Weis.
Using the traditional Weis method simply enter the desired wave size in the box "Select Weis Wave Size". In the example shown, it is set to 5 points. Each wave for each security and each timeframe requires its own wave size. Although not the traditional method a more automatic way to set wave size would be to use ATR. This is not the true Weis method but it does give you similar waves and, importantly, without the hassle of selecting a wave size for every chart. Once the Weis wave size is set then the pip wave will be shown.
I have put a zigzag of a 5 point Weis wave on the above bar chart. I have added it to allow your eye to get a better appreciation for Weis wave pivot points. You will notice that the wave is not in straight lines connecting wave tops to bottoms this is a function of the limitations of Pinescript version 1. This script would need to be in version 4 to allow straight lines. I will elaborate on the Weis pip zigzag script.
What is a Weis wave? David Weis has been recognized as a Wyckoff method analyst he has written two books one of which, Trades About to Happen, describes the evolution of the now popular Weis wave. The method employed by Weis is to identify waves of price action and to compare the strength of the waves on characteristics of wave strength. Chief among the characteristics of strength is the cumulative volume of the wave. There are other markers that Weis uses as well for example how the actual price difference between the start of the Weis wave from start to finish. Weis also uses time, particularly when using a Renko chart. Weis specifically uses candle/bar closes to define all wave action.
David Weis did a futures.io video which is a popular source of information about his method.
Cheers jayy
PS This script was published a day ago, however, I had included some links to the website of a person that uses Weis pip waves and also a dropbox link that contains the Weis wave chart for May 27, 2020, published by David Weis. Providing those links is against TV policy and so the script was hidden by TV. This is the identical script with the identical settings but without the offending links. If you want to see the pip Weis method in practice then search Weis pip wave. I have absolutely no affiliation. If you want to see Weis chart in pdf then message me and I will give a link or the Weis pdf. Why would you want to see the Weis chart for May 27, 2020? Merely to confirm the veracity of my algorithm. You could compare my chart () from the same period to the Weis chart. Both waves are for the ES!1 4 hour chart and both for a wave size of 5.
Pivot Point SupertrendHello All,
There are many types of SuperTrend around. Recently I thought about a Supertrend based on Pivot Points then I wrote "Pivot Point SuperTrend" script. It looks it has better performance on keeping you in the trend more.
The idea is behind this script is finding pivot point, calculating average of them and like in supertrend creating higher/lower bands by ATR. As you can see in the algorithm the script gives weigth to past pivot points, this is done for smoothing it a bit.
As I wrote above it may keep you in the trend more, lets see an example:
As an option the script can show main center line and I realized that when you are in a position, this line can be used as early exit points. (maybe half of the position size)
While using Pivot Points, I added support resistance lines by using Pivot Point, as an option the script can show S/R lines:
And also it can show Pivot Points:
When you changed Pivot Point Period you can see its reaction, in following example PP period is 4 (default value is 2). Smaller PP periods more sensitive trendlines.
Alerts added for Buy/Sell entries and Trend Reversals. (when you set alerts use the option " Once Per Bar Close ")
ENJOY!
Linear Regression - Auto Adjust To Ideal Pearson's R (Min & Max)This is meant as a partner to my linear regression strategy script. This one however is just the indicator only so you can overlay the technique over other strategies.
To use this script you need to understand what Pearson's R is; which is how correlated a set of data is to a line within a given deviation (+ or -).
If the Pearson's R is negative (-) then the trend is going upwards. If the value is positive (+) then the trend is going downwards.
There is a lot of debate as to what the ideal negative and positive values are for the Pearson's R, so you can change these in the settings. What the script will do is attempt to automatically find (and draw the trend lines) based on a given minimum period and a maximum period (both set in the settings) that match the ideal Pearson's R settings selected.
Ideally the data is MOST correlated the closest it is to -1 or 1. This means the pattern is very reliable.
This script was designed and works very well with the bar replay mode. You may need a more professional version of TradingView to use this correctly. This mode allows you to see the script in action as it mutates and changes according to the new data being introduced.
I've pre-set the Pearson's R (+) and (-) ranges to what I think is ideal.
Delta Volume Columns [LucF]Displays delta volume columns using intrabar volume information. Each volume column is divided into three sections: buying, selling and neutral volume. Volume for each section is determined from the volume and price movement of each intrabar at a user-selected lower resolution.
Features include:
- Choice of color themes for either dark or light chart backgrounds
- Delta volume columns
- Volume Balance displayed as the difference between the MAs of buying and selling volume
- Display of divergences between a bar’s volume balance and the bar’s price movement (example: buying volume > selling volume but close < open). Divergences can be shown in 2 different color schemes (including green/red showing a tentative direction), on volume columns and/or on chart bars
- Display of bar by bar volume balance with highlighting of above average volume
- Display of the usual total volume MA
- Choice of the lower resolution used to retrieve intrabar information
- Alerts configurable on any combination of the markers, with control over long/short direction
- Choice of 3 different markers:
1. Double bumps: two consecutive bars where buying or selling volume is in the same direction and where volume > volume MA
2. Divergence confirmations: direction of the price bar following a price/volume balance divergence
3. Volume balance shifts: zero level crossings of the volume balance MA delta
The chart shows the two main modes of display:
- Top pane : shows the stacked volume columns with divergences in orange and the flattened volume balance MAs delta at the bottom of the volume columns. This volume balance is the same shown in the bottom pane. The top pane also shows the instant volume balance strip above the volume columns. The strip’s colors show which of the buying or selling volume was greater, and colors are brighter if the total volume was above the total volume MA.
- Bottom pane : shows the volume balance MAs delta with markers 1 and 2. Given that this graphic has no price momentum component, I find quite eerie how it often looks like a momentum-based signal.
The default 5 minute intrabar resolution is used in combination with the weekly chart, which is excessive.
This script uses a special characteristic of the security() function’s behavior when it is sent to a resolution lower than the chart’s resolution. Details are given in the script’s comments. This method has the advantage of working under more circumstances than some of the other loop-based methods, but it also has its limits.
IMPORTANT
This is what you need to know:
- The method used does not work on the realtime bar—only on historical bars. Consequently, the volume column shown on the realtime bar is a normal volume column plotted in green or red, following price movement. The column will only show delta volume information after it closes and becomes a historical bar.
- The indicator only works on some chart resolutions: 5, 10, 15 and 30 minutes, 1, 2, 4, 6, and 12 hours, 1 day, 1 week and 1 month. The script’s code can be modified to run on other resolutions, but chart resolutions must be divisible by the lower resolution used for intrabars.
- Intrabar resolutions can be selected from 1, 5, 15, 30, 45 minutes, 1, 2, 3, 4 hours, 1 day, 1 week and 1 month. The intrabar resolution must of course be smaller than the chart’s resolution.
- Contrary to my other indicators where alerts must be configured to trigger “Once Per Bar Close” in order to avoid false triggers (or repainting), all this indicator’s alerts are designed to trigger using previous bar information since the indicator’s calculations in the realtime bar are not exact. Markers are not plotted with a negative offset; they appear at the beginning of the realtime bar following confirmation of the marker’s condition on the previous bar. Alerts for this indicator should thus be configured to trigger “Once Per Bar” so they trigger at the beginning of the realtime bar. Note that the penalty is not that great, as it is simply the instant between the close of the previous realtime bar and the opening of the next. The advantage of using this technique is that the indicator does not repaint; a marker that appears at the beginning of the realtime bar will never disappear.
- The script only plots information that is reliable in the realtime bar, i.e., total volume and markers. All other plots are set to n/a to prevent misleading traders.
- When the difference between the chart’s resolution and the lower resolution is too important, volume columns will not calculate for all bars in the dataset.
On Delta Volume
Buying or selling volume are misnomers, as every unit of volume transacted is both bought and sold by 2 different traders. There is no such thing as “buy only” or “sell only” volume, but trader lingo is riddled with original fabulations.
Without access to order book information, traders work with the assumption that when price moves up during a bar, there was more buying pressure than selling pressure. The built-in volume indicator available on TradingView uses this logic to color the volume columns green or red. While this script’s numbers are more precise because it analyses a number of intrabars to calculate its information, it uses the exact same imperfect logic to calculate its buying/selling/neutral sections.
Until Pine scripts can have access to how much volume was transacted at the bid/ask prices, our so-called buying/selling volume information will always be a mere proxy.
Divergences
You may wonder how there can be divergences between buying/selling volume information and price movement. This will sometimes be due to the methodology’s shortcomings we have just discussed, but divergences may also occur in instances where because of order book structure, it takes less volume to increase the price of an asset than it takes to decrease it.
As usual, divergences are points of interest because they reveal imbalances, which may or may not become turning points. I do not share the overwhelming enthusiasm traders have for divergences. To your pattern-hungry brain, the orange bars this indicator shows on chart will—as divergences on other indicators do–appear to often indicate turnarounds. My opinion is that reality is generally quite sobering, as many who have tried building automated rules based on divergences will tell you. I do not have hard numbers on the lack of performance of divergences—only many failed attempts to make them perform, which a few experienced strategy modelers I know share with me. Please don’t try to read too much into them. While they look great on past data, I find they are often difficult to use in realtime to make bets with good odds.
Thanks to:
- A guy called Kuan who commented on a Backtest Rookies presentation of an intrabar delta volume indicator using a for loop. The heart of “my” indicator is code borrowed from Kuan; I just built a hopefully useful wrapper around it.
- @theheirophant, my partner in the exploration of the sometimes weird abysses of security() ’s behavior at lower resolutions.
BarstateThe TradingView system has two types of bars. Bars that are historical and bars that are real-time.
When programming complex scripts and strategies that use higher timeframe data there can be difficult programming conditions due to these two bar states.
Especially in the case of after-hours, end of day, low volume trading and thinly traded stocks the bar state status can sometimes be historical and sometimes be real-time in different timeframes or even the same timeframe.
This script displays what state a bar is in by shading the background of the chart.
The script is being made publicly available to help my script users know about and understand 'barstate'. The script allows users to see the 'barstate' in order to help report bugs and conduct their own workarounds.
My testing has indicated that the 'barstate' status is sometimes spurious especially on thinly traded symbols. Additionally, the Tradingview back-end calls the script only after price changes to reduce system load. As a result, these two characteristics can cause unexpected Pine Script results.
Crinkebine
November 2018
vdubongCustom script I fabricated which I use for Binary Trading on the 1m & 3m charts together with Price action & Time management but the principles are the same for all mediums. Use Price action buy/sell in the clear zones. Use the outer 'pink' horizontal lines (highs / lows / pivots points) to place SL's.
I personally run an additional BB 50/2 for clearer BB higher highs & lower low perspective, but it's not part of the script. Script variables are fully customisable.
I don't take ownership of any part of the script, I not a programmer /script writer just a dabbler. Enjoy :) - VDUBONG UPDATED
Opening Range Breakout (15 mins Range)Take the guesswork out of your trading with the Opening Range Breakout Pro script. This tool automatically marks the high and low of the first 15 minutes of the NYSE session, then highlights the first candle to break out above or below this range—removing ambiguity from your trade entries.
The opening range is one of the most powerful concepts in day trading. By identifying the price range set during the market’s first minutes, you gain a clear framework for your trades. When price breaks out above the range, it often signals a strong bullish move; a break below signals bearish momentum. This script visually marks these moments, so you can react quickly and confidently.
Why use Opening Range Breakout Pro?
• Defined Entry and Exit Points: The script gives you clear, objective breakout levels—no more guessing when to enter a trade.
• Removes Emotional Trading: With visual cues for breakouts, you can follow a systematic approach and avoid hesitation or FOMO.
• Backtested, Time-Tested Strategy: The opening range breakout has been used by professional traders for decades to capture early trends and maximize profit potential.
• High Reward Potential: By capitalizing on the volatility and momentum of the opening session, traders often catch the best moves of the day.
• Easy to Use: Just add to your chart—no configuration needed. The script works on any NYSE stock, on a 5-minute chart.
How it works:
• Draws the opening 15-minute high and low as orange lines.
• Labels the range prices for quick reference.
• Marks the first candle to close above the range with an orange ▲, and the first to close below with an orange ▼.
Take control of your trading day, remove uncertainty, and trade with confidence—just like the pros.
EMA 200 Monitor - Bybit CoinsEMA 200 Monitor - Bybit Coins
📊 OVERVIEW
The EMA 200 Monitor - Bybit Coins is an advanced indicator that automatically monitors 30 of the top cryptocurrencies traded on Bybit, alerting you when they are close to the 200-period Exponential Moving Average on the 4-hour timeframe.
This indicator was developed especially for traders who use the EMA 200 as a key support/resistance level in their swing trading and position trading strategies.
🎯 WHAT IT'S FOR
Multi-Asset Monitoring: Simultaneous monitoring of 30 cryptocurrencies without having to switch between charts
Opportunity Identification: Detects when coins are approaching the 200 EMA, a crucial technical level
Automated Alerts: Real-time notifications when a coin reaches the configured proximity
Time Efficiency: Eliminates the need to manually check chart collections
⚙️ HOW IT WORKS
Main Functionality
The indicator uses the request.security() function to fetch price data and calculate the 200 EMA of each monitored asset. With each new bar, the script:
Calculates the distance between the current price and the 200 EMA for each coin
Identifies proximity based on the configured percentage (default: 2%)
Displays results in a table organized on the chart
Generates automatic alerts when proximity is detected
Monitored Coins
Major : BTC, ETH, BNB, ADA, XRP, SOL, DOT, DOGE, AVAX
DeFi : UNI, LINK, ATOM, ICP, NEAR, OP, ARB, INJ
Memecoins : SHIB, PEPE, WIF, BONK, FLOKI
Emerging : SUI, TON, APT, POL (ex-MATIC)
📋 AVAILABLE SETTINGS
Adjustable Parameters
EMA Length (Default: 200): Exponential Moving Average Period
Proximity Percentage (Default: 2%): Distance in percentage to consider "close"
Show Table (Default: Active): Show/hide results table
Table Position: Position of the table on the chart (9 options available)
Color System
🔴 Red: Distance ≤ 1% (very close)
🟠 Orange: Distance ≤ 1.5% (close)
🟡 Yellow: Distance ≤ 2% (approaching)
🚀 HOW TO USE
Initial Configuration
Add the indicator to the 4-hour timeframe chart
Set the parameters according to your strategy
Position the table where there is no graphic preference
Setting Alerts
Click "Create Alert" in TradingView
Select the "EMA 200 Monitor" indicator
Set the notification frequency and method
Activate the alert to receive automatic notifications
Results Interpretation
The table shows:
Coin: Asset name (e.g. BTC, ETH)
Price: Current currency quote
EMA 200: Current value of the moving average
Distance: Percentage of proximity to the core code
💡 STRATEGIES TO USE
Reversal Trading
Entry: When price touches or approaches the EMA 200
Stop: Below/above the EMA with a safety margin
Target: Previous resistance/support levels
Breakout Trading
Monitoring: Watch for currencies consolidating near the EMA 200
Entry: When the media is finally broken
Confirmation: Volume and close above/below the EMA
Swing Trading
Identification: Use the monitor to detect setups in formation
Timing: Wait for the EMA 200 to approach for detailed analysis
Management: Use the EMA as a reference for stops dynamics
⚠️ IMPORTANT CONSIDERATIONS
Technical Limitations
Request Bybit data: Access to exchange symbols required
Specific timeframe: Optimized for 4-hour analysis
Minimum delay: Data updated with each new bar
Usage Recommendations
Combine with technical analysis: Use together with other indicators
Confirm the configuration: Check the graphic patterns before trading
Manage risk: Always use stop loss and adequate position sizing
Backtesting: Test your strategy before applying with real capital
Disclaimer
This indicator is a technical analysis tool and does not constitute investment advice. Always do your own analysis and manage detailed information about the risks of your operations.
🔧 TECHNICAL INFORMATION
Pine Script version: v6
Type: Indicator (overlay=true)
Compatibility: All TradingView plans
Resources used: request.security(), arrays, tables
Performance: Optimized for multiple simultaneous queries
📈 COMPETITIVE ADVANTAGES
✅ Simultaneous monitoring of 30 major assets ✅ Clear visual interface with intuitive core system ✅ Customizable alerts for different details ✅ Optimized code for maximum performance ✅ Flexible configuration adaptable to different strategies ✅ Real-time update without the need for manual refresh
Developed for traders who value efficiency and accuracy in identifying market opportunities based on the EMA 20
Tight Range Display with Background🌟 Tight Range Transparency Display with Background
What Is This Indicator?
Hey traders! Ever wanted a simple way to spot those quiet, low-volatility moments in the market that often signal a big move is coming? The Tight Range Transparency Display with Background does exactly that! This indicator highlights periods where the price is moving in a tight range—think of it as the calm before the storm. It paints the chart background blue to show these zones, with the shade getting darker the tighter the range becomes. It’s like having a visual cue to say, “Hey, something might be brewing here!”
Why You’ll Love It
Spot Key Moments Easily: The blue background makes it super easy to see when the market is in a tight range, which often happens before breakouts or big trends.
Customizable Settings: You can tweak the range thresholds to match your trading style—whether you’re looking for super tight zones or slightly broader ones.
Visual Clarity: The background gets darker when the range is tighter, giving you a quick sense of how compressed the price action is.
Perfect for Any Market: Works on stocks, forex, crypto, or any chart you trade, across any timeframe.
How to Use It
Add It to Your Chart:
Just copy this script into TradingView’s Pine Editor and hit "Add to Chart." It’ll overlay right on your price chart.
Tweak the Settings:
Open the indicator settings and use the dropdown menus to pick your preferred "Tight Range %" and "Wide Range %." For example, set a Tight Range % of 2.0% to catch smaller ranges, or go higher like 10.0% for broader ones.
You can also adjust the ATR Period (default is 5) to make the indicator more or less sensitive to recent price swings.
Watch for the Blue Background:
When the price enters a tight range, the chart background turns blue. The darker the blue, the tighter the range—meaning a potential breakout could be closer!
Trade Smarter:
Use these tight range zones to prepare for potential breakouts. For example, if you see a dark blue background, it might be a good time to watch for a big price move.
Pair this with other tools like support/resistance levels or volume spikes to confirm your trades.
Who Is This For?
Swing Traders: Perfect for spotting consolidation zones before a big swing.
Breakout Traders: Tight ranges often lead to breakouts—use this to time your entries.
Smart Money Followers: If you’re into smart money concepts, tight ranges can signal accumulation or distribution phases.
Beginners & Pros Alike: It’s easy to use for new traders but powerful enough for seasoned pros.
Real-World Example
Imagine you’re trading a stock on a 1-hour chart. You notice the background turns blue, and it’s getting darker over a few bars. This tells you the price range is tightening—maybe the stock is consolidating after a big move. You check your other indicators, see a volume spike, and spot a breakout above resistance. Boom! You catch the next big trend, all because this indicator helped you focus on the right moment.
Tips for Best Results
Try Different Timeframes: Tight ranges on a 15-minute chart might signal short-term moves, while a daily chart could highlight bigger trends.
Adjust for Your Market: For volatile markets like crypto, you might want a higher Tight Range % (e.g., 10.0%). For calmer markets like forex, try a lower setting (e.g., 2.0%).
Combine with Other Tools: Use this alongside trendlines, moving averages, or volume indicators to confirm your setups.
Why I Made This
I created this indicator because I wanted a simple, visual way to spot those critical low-volatility zones without cluttering my chart. The dynamic background color makes it intuitive to see when the market is “coiling up” for a potential move. I hope it helps you find better trading opportunities just like it does for me!
Let’s Connect
If you find this indicator helpful, I’d love to hear about it! Drop a comment or a rating to let me know how it’s working for you. Got ideas to make it even better? Feel free to message me on TradingView—I’m always open to suggestions.
Published On
Date: May 22, 2025
Happy trading, and may your charts always be in your favor! 🚀
How to Publish on TradingView
Open Pine Editor:
On TradingView, open a chart and go to the Pine Editor tab at the bottom.
Paste the Code:
Copy the script you provided and paste it into the Pine Editor.
Compile:
Click "Add to Chart" to ensure it compiles without errors.
Publish:
Click the "Publish Script" button (paper plane icon) in the Pine Editor.
Select "Publish New Script."
Add the Description:
Title: "Tight Range Transparency Display with Background"
Description: Copy the content above into the description field.
Visibility: Choose "Public" to share with everyone (or "Invite-Only" for restricted access).
Tags: Add tags like "tight range", "breakout", "smart money", "volatility", "swing trading".
Screenshot: Add a screenshot of the indicator on a chart, showing the blue background during a tight range.
Submit:
Click "Publish" to submit. TradingView will review it and make it live if it meets their guidelines.
Additional Notes
Screenshot Tip: Use a chart where the blue background is clearly visible (e.g., during a consolidation period) to make the indicator’s effect stand out.
Engage with Users: After publishing, respond to comments and feedback to build a positive reputation on TradingView.
This content is designed to be approachable and engaging, helping traders understand the value of your indicator and encouraging them to try it out.
Harmony in Havoc - The Entropy of VoVix Harmony in Havoc – The Entropy of VoVix
There are moments in the market when chaos and order are not opposites, but partners in a dance.
Harmony in Havoc is not just an indicator—it’s a window into that dance.
Most tools try to tame the market by smoothing it, boxing it in, or chasing after what’s already happened. This script does the opposite: it listens for the music beneath the noise, the rare moments when volatility and unpredictability align, and the market’s next movement is about to begin.
What is Harmony in Havoc?
VoVix Spike:
The pulse of volatility-of-volatility. Not just how much the market is moving, but how violently its own heartbeat is changing.
Entropy:
A real-time measure of surprise. When entropy is high, the market is not just moving—it’s breaking its own patterns, rewriting its own rules.
Progression Bar & Status:
The yellow bar is your visual gauge of tension. As it fills, the market is winding up.
Wait: The world is calm.
Get ready!: The storm is building.
Take Action!!: The probability of a regime eruption is at its peak.
Yellow Background:
When the background glows, the market is at its most unstable—this is not a buy or sell signal, but a quant alert.
How does it work?
Every tick, Harmony in Havoc measures the distance between the market’s current volatility and its own unpredictability. When the VoVix spike approaches or exceeds the entropy threshold, the system knows:
“This is the moment when the improbable becomes possible.”
Why is this different?
It doesn’t tell you what to do.
It doesn’t chase price.
It doesn’t care about trends, bands, or the past.
Instead, it gives you a quantitative sense of anticipation—a way to see when the market is most likely to break from its own history, and when the edge is at its sharpest.
How to use it:
Watch for the yellow background and “Take Action!!” status.
Use it as a regime filter, a volatility dashboard, or a warning system for your own strategies.
Tune the inputs for your asset and timeframe—make it your own.
Inputs—explained for you:
VoVix Fast/Slow ATR & Stdev:
Control how sensitive the system is to volatility shocks. Lower = more signals, higher = only the rarest events.
Entropy Window & Bins:
Control how “surprised” the entropy engine is by current volatility. Shorter window = more responsive, more bins = finer detail.
Show/Hide Controls:
Toggle the VoVix spike, entropy line, and their glows to customize your visual experience.
Bottom line:
This is not a buy or sell script.
This is a quant regime detector for those who want to feel the market’s tension—to sense when harmony and havoc are about to collide.
Disclaimer:
Trading is risky. This script is for research and informational purposes only, not financial advice. Backtest, paper trade, and know your risk before going live. Past performance is not a guarantee of future results.
*I've only tested this on 1 and 5 min frames.
Use with discipline. Trade your edge.
— Dskyz, for DAFE Trading Systems
3 days ago
Release Notes
* Now mobile friendly. I've added a toggle to switch the dashboard on/off, and added a mobile information line that shows the same information on the dashboard. This is to allow the script to stay visually in balance and this also has a toggle.
* Background color added that coresponds with Buy or Sell areas.
FA Dashboard: Valuation, Profitability & SolvencyFundamental Analysis Dashboard: A Multi-Dimensional View of Company Quality
This script presents a structured and customizable dashboard for evaluating a company’s fundamentals across three key dimensions: Valuation, Profitability, and Solvency & Liquidity.
Unlike basic fundamental overlays, this dashboard consolidates multiple financial indicators into visual tables that update dynamically and are grouped by category. Each ratio is compared against configurable thresholds, helping traders quickly assess whether a company meets certain value investing criteria. The tables use color-coded checkmarks and fail marks (✔️ / ❌) to visually signal pass/fail evaluations.
▶️ Key Features
Valuation Ratios:
Earnings Yield: EBIT / EV
EV / EBIT and EV / FCF: Enterprise value metrics for profitability
Price-to-Book, Free Cash Flow Yield, PEG Ratio
Profitability Ratios:
Return on Invested Capital (ROIC), ROE, Operating, Net & Gross Margins, Revenue Growth
Solvency & Liquidity Ratios:
Debt to Equity, Debt to EBITDA, Current Ratio, Quick Ratio, Altman Z-Score
Each of these metrics is calculated using request.financial() and can be viewed using either annual (FY) or quarterly (FQ) data, depending on user preference.
🧠 How to Use
Add the script to any stock chart.
Select your preferred data period (FY or FQ).
Adjust thresholds if desired to match your personal investing strategy.
Review the visual dashboard to see which metrics the company passes or fails.
💡 Why It’s Useful
This tool is ideal for traders or long-term investors looking to filter stocks using fundamental criteria. It draws inspiration from principles used by Benjamin Graham, Warren Buffett, and Joel Greenblatt, offering a fast and informative way to screen quality businesses.
This is not a repackaged built-in or autogenerated script. It’s a custom-built, interactive tool tailored for fundamental analysis using official financial data provided via Pine Script’s request.financial().
Order Flow Hawkes Process [ScorsoneEnterprises]This indicator is an implementation of the Hawkes Process. This tool is designed to show the excitability of the different sides of volume, it is an estimation of bid and ask size per bar. The code for the volume delta is from www.tradingview.com
Here’s a link to a more sophisticated research article about Hawkes Process than this post arxiv.org
This tool is designed to show how excitable the different sides are. Excitability refers to how likely that side is to get more activity. Alan Hawkes made Hawkes Process for seismology. A big earthquake happens, lots of little ones follow until it returns to normal. Same for financial markets, big orders come in, causing a lot of little orders to come. Alpha, Beta, and Lambda parameters are estimated by minimizing a negative log likelihood function.
How it works
There are a few components to this script, so we’ll go into the equation and then the other functions used in this script.
hawkes_process(params, events, lkb) =>
alpha = clamp(array.get(params, 0), 0.01, 1.0)
beta = clamp(array.get(params, 1), 0.1, 10.0)
lambda_0 = clamp(array.get(params, 2), 0.01, 0.3)
intensity = array.new_float(lkb, 0.0)
events_array = array.new_float(lkb, 0.0)
for i = 0 to lkb - 1
array.set(events_array, i, array.get(events, i))
for i = 0 to lkb - 1
sum_decay = 0.0
current_event = array.get(events_array, i)
for j = 0 to i - 1
time_diff = i - j
past_event = array.get(events_array, j)
decay = math.exp(-beta * time_diff)
past_event_val = na(past_event) ? 0 : past_event
sum_decay := sum_decay + (past_event_val * decay)
array.set(intensity, i, lambda_0 + alpha * sum_decay)
intensity
The parameters alpha, beta, and lambda all represent a different real thing.
Alpha (α):
Definition: Alpha represents the excitation factor or the magnitude of the influence that past events have on the future intensity of the process. In simpler terms, it measures how much each event "excites" or triggers additional events. It is constrained between 0.01 and 1.0 (e.g., clamp(array.get(params, 0), 0.01, 1.0)). A higher alpha means past events have a stronger influence on increasing the intensity (likelihood) of future events. Initial value is set to 0.1 in init_params. In the hawkes_process function, alpha scales the contribution of past events to the current intensity via the term alpha * sum_decay.
Beta (β):
Definition: Beta controls the rate of exponential decay of the influence of past events over time. It determines how quickly the effect of a past event fades away. It is constrained between 0.1 and 10.0 (e.g., clamp(array.get(params, 1), 0.1, 10.0)). A higher beta means the influence of past events decays faster, while a lower beta means the influence lingers longer. Initial value is set to 0.1 in init_params. In the hawkes_process function, beta appears in the decay term math.exp(-beta * time_diff), which reduces the impact of past events as the time difference (time_diff) increases.
Lambda_0 (λ₀):
Definition: Lambda_0 is the baseline intensity of the process, representing the rate at which events occur in the absence of any excitation from past events. It’s the "background" rate of the process. It is constrained between 0.01 and 0.3 .A higher lambda_0 means a higher natural frequency of events, even without the influence of past events. Initial value is set to 0.1 in init_params. In the hawkes_process function, lambda_0 sets the minimum intensity level, to which the excitation term (alpha * sum_decay) is added: lambda_0 + alpha * sum_decay
Alpha (α): Strength of event excitation (how much past events boost future events).
Beta (β): Rate of decay of past event influence (how fast the effect fades).
Lambda_0 (λ₀): Baseline event rate (background intensity without excitation).
Other parts of the script.
Clamp
The clamping function is a simple way to make sure parameters don’t grow or shrink too much.
ObjectiveFunction
This function defines the objective function (negative log-likelihood) to minimize during parameter optimization.It returns a float representing the negative log-likelihood (to be minimized).
How It Works:
Calls hawkes_process to compute the intensity array based on current parameters.Iterates over the lookback period:lambda_t: Intensity at time i.event: Event magnitude at time i.Handles na values by replacing them with 0.Computes log-likelihood: event_clean * math.log(math.max(lambda_t_clean, 0.001)) - lambda_t_clean.Ensures lambda_t_clean is at least 0.001 to avoid log(0).Accumulates into log_likelihood.Returns -log_likelihood (negative because the goal is to minimize, not maximize).
It is used in the optimization process to evaluate how well the parameters fit the observed event data.
Finite Difference Gradient:
This function calculates the gradient of the objective function we spoke about. The gradient is like a directional derivative. Which is like the direction of the rate of change. Which is like the direction of the slope of a hill, we can go up or down a hill. It nudges around the parameter, and calculates the derivative of the parameter. The array of these nudged around parameters is what is returned after they are optimized.
Minimize:
This is the function that actually has the loop and calls the Finite Difference Gradient each time. Here is where the minimizing happens, how we go down the hill. If we are below a tolerance, we are at the bottom of the hill.
Applied
After an initial guess the parameters are optimized with a mix of bid and ask levels to prevent some over-fitting for each side while keeping some efficiency. We initialize two different arrays to store the bid and ask sizes. After we optimize the parameters we clamp them for the calculations. We then get the array of intensities from the Hawkes Process of bid and ask and plot them both. When the bids are greater than the ask it represents a bullish scenario where there are likely to be more buy than sell orders, pushing up price.
Tool examples:
The idea is that when the bid side is more excitable it is more likely to see a bullish reaction, when the ask is we see a bearish reaction.
We see that there are a lot of crossovers, and I picked two specific spots. The idea of this isn’t to spot crossovers but avoid chop. The values are either close together or far apart. When they are far, it is a classification for us to look for our own opportunities in, when they are close, it signals the market can’t pick a direction just yet.
The value works just as well on a higher timeframe as on a lower one. Hawkes Process is an estimate, so there is a leading value aspect of it.
The value works on equities as well, here is NASDAQ:TSLA on a lower time frame with a lookback of 5.
Inputs
Users can enter the lookback value and timeframe.
No tool is perfect, the Hawkes Process value is also not perfect and should not be followed blindly. It is good to use any tool along with discretion and price action.
Tetris with Auto-PlayThis indicator is implemented in Pine Script™ v6 and serves as a demonstration of TradingView's capabilities. The core concept is to simulate a classic Tetris game by creating a grid-based environment and managing game state entirely within Pine Script.
Key Technical Aspects:
Grid Representation:
The script defines a custom grid structure using a user-defined type that holds the grid’s dimensions and a one-dimensional array to simulate a two-dimensional board. This structure is used to track occupied cells, clear full rows, and determine stack height.
Piece Management:
A second custom type is used to represent the state of a tetromino piece, including its type, rotation, and position. The code includes functions to calculate the block offsets for each tetromino based on its rotation state.
Collision Detection and Piece Locking:
Dedicated functions check for collisions against the grid borders and existing blocks. When a collision is detected during a downward move, the piece is locked into the grid, and any complete lines are cleared.
AIgo-Driven Placement:
The script incorporates a simple heuristic to determine the best placement for the next tetromino. It simulates different rotations and horizontal positions, evaluating each based on aggregated column height, cleared lines, holes, and bumpiness. This decision-making process is encapsulated in an AI-like function that returns the optimal rotation and placement.
Rendering Using Tables:
The visual representation is managed via TradingView’s table objects. The game board is rendered with a bordered layout, while a separate preview table displays the next piece and the current score. Each cell is updated with text and background colors that correspond to the state of the game.
Execution Flow and Timing:
The main execution loop handles real-time updates by dropping pieces at set intervals and checking for game-over conditions. The code leverages persistent variables and time comparisons to control game speed and manage transitions between piece drops.
Executing:
Add the indicator to the chart
It starts playing itself till game over
There are no parameters to change in this version but the grid in the code directly
p.s. Sadly we have no interactive buttons in the current pinescript versions to play ourself, but its about the possibilitys what we could do ;-)
Maybe in a future version there is more possible, if i find time to enhance and expand the idea
Have fun :-)
Uwen FX: UWEN StrategyThis Pine Script defines a trading indicator called "Uwen FX: UWEN Strategy" Where ideas coming from Arab Syaukani and modified by Fiki Hafana. It combines a CCI-based T3 Smoothed Indicator with a MACD overlay. Here's a breakdown of what it does:
Key Components of the Script:
1. CCI (Commodity Channel Index) with T3 Smoothing
Uses a T3 smoothing algorithm on the CCI to generate a smoother momentum signal. The smoothing formula is applied iteratively using weighted averages. The final result (xccir) is plotted as a histogram, colored green for bullish signals and red for bearish signals.
2. MACD (Moving Average Convergence Divergence)
The MACD is scaled to match the range of the smoothed CCI for better visualization. Signal Line and MACD Line are plotted if showMACD is enabled. The normalization ensures that MACD values align with the CCI-based indicator.
3. Bar Coloring for Trend Indication
Green bars indicate a positive trend (pos = 1).
Red bars indicate a negative trend (pos = -1).
Blue bars appear when the trend is neutral.
How It Can Be Used:
Buy Signal: When the xccir (smoothed CCI) turns green, indicating bullish momentum.
Sell Signal: When xccir turns red, indicating bearish momentum.
MACD Confirmation: Helps confirm the trend direction by aligning with xccir.
I will add more interesting features if this indicator seems profitable
Auto Fib Retracement with Buy/SellKey Features of the Advanced Script:
Multi-Timeframe (MTF) Analysis:
We added an input for the higher timeframe (higher_tf), where the trend is checked on a higher timeframe to confirm the primary trend direction.
Complex Trend Detection:
The trend is determined not only by the current timeframe but also by the trend on the higher timeframe, giving a more comprehensive and reliable signal.
Dynamic Fibonacci Levels:
Fibonacci lines are plotted dynamically, extending them based on price movement, with the Fibonacci retracement drawn only when a trend is identified.
Background Color & Labels:
A background color is added to give a clear indication of the trend direction. Green for uptrend, red for downtrend. It makes it visually easier to understand the current market structure.
"Buy" or "Sell" labels are shown directly on the chart to mark possible entry points.
Strategy and Backtesting:
The script includes strategy commands (strategy.entry and strategy.exit), which allow for backtesting the strategy in TradingView.
Stop loss and take profit conditions are added (loss=100, profit=200), which can be adjusted according to your preferences.
Next Steps:
Test with different timeframes: Try changing the higher_tf to different timeframes (like "60" or "240") and see how it affects the trend detection.
Adjust Fibonacci settings: Modify how the Fibonacci levels are calculated or add more Fibonacci levels like 38.2%, 61.8%, etc.
Optimize Strategy Parameters: Fine-tune the entry/exit logic by adjusting stop loss, take profit, and other strategy parameters.
This should give you a robust foundation for creating advanced trend detection strategies
Cryptolabs Global Liquidity Cycle Momentum IndicatorCryptolabs Global Liquidity Cycle Momentum Indicator (LMI-BTC)
This open-source indicator combines global central bank liquidity data with Bitcoin price movements to identify medium- to long-term market cycles and momentum phases. It is designed for traders who want to incorporate macroeconomic factors into their Bitcoin analysis.
How It Works
The script calculates a Liquidity Index using balance sheet data from four central banks (USA: ECONOMICS:USCBBS, Japan: FRED:JPNASSETS, China: ECONOMICS:CNCBBS, EU: FRED:ECBASSETSW), augmented by the Dollar Index (TVC:DXY) and Chinese 10-year bond yields (TVC:CN10Y). This index is:
- Logarithmically scaled (math.log) to better represent large values like central bank balances and Bitcoin prices.
- Normalized over a 50-period range to balance fluctuations between minimum and maximum values.
- Compared to prior-year values, with the number of bars dynamically adjusted based on the timeframe (e.g., 252 for 1D, 52 for 1W), to compute percentage changes.
The liquidity change is analyzed using a Chande Momentum Oscillator (CMO) (period: 24) to measure momentum trends. A Weighted Moving Average (WMA) (period: 10) acts as a signal line. The Bitcoin price is also plotted logarithmically to highlight parallels with liquidity cycles.
Usage
Traders can use the indicator to:
- Identify global liquidity cycles influencing Bitcoin price trends, such as expansive or restrictive monetary policies.
- Detect momentum phases: Values above 50 suggest overbought conditions, below -50 indicate oversold conditions.
- Anticipate trend reversals by observing CMO crossovers with the signal line.
It performs best on higher timeframes like daily (1D) or weekly (1W) charts. The visualization includes:
- CMO line (green > 50, red < -50, blue neutral), signal line (white), Bitcoin price (gray).
- Horizontal lines at 50, 0, and -50 for improved readability.
Originality
This indicator stands out from other momentum tools like RSI or basic price analysis due to:
- Unique Data Integration: Combines four central bank datasets, DXY, and CN10Y as macroeconomic proxies for Bitcoin.
- Dynamic Prior-Year Analysis: Calculates liquidity changes relative to historical values, adjustable by timeframe.
- Logarithmic Normalization: Enhances visibility of extreme values, critical for cryptocurrencies and macro data.
This combination offers a rare perspective on the interplay between global liquidity and Bitcoin, unavailable in other open-source scripts.
Settings
- CMO Period: Default 24, adjustable for faster/slower signals.
- Signal WMA: Default 10, for smoothing the CMO line.
- Normalization Window: Default 50 periods, customizable.
Users can modify these parameters in the Pine Editor to tailor the indicator to their strategy.
Note
This script is designed for medium- to long-term analysis, not scalping. For optimal results, combine it with additional analyses (e.g., on-chain data, support/resistance levels). It does not guarantee profits but supports informed decisions based on macroeconomic trends.
Data Sources
- Bitcoin: INDEX:BTCUSD
- Liquidity: ECONOMICS:USCBBS, FRED:JPNASSETS, ECONOMICS:CNCBBS, FRED:ECBASSETSW
- Additional: TVC:DXY, TVC:CN10Y
VMA [Extreme Advanced Custom Table for BTCUSD]This indicator implements a Variable Moving Average (VMA) with a 33-period length—selected in homage to the Tesla 369 concept—to dynamically adjust to market conditions. It not only calculates the adaptive VMA but also displays a custom table of key metrics directly on the chart. Here’s how to use it:
Apply to Your Chart:
Add the indicator to your chart (optimized for BTCUSD, though it can be used on other symbols) and choose your desired source (e.g., close).
Customize Your Visuals:
Trend & Price Lines: Toggle the trend colors, price line, and bar coloring based on the VMA’s direction.
Channels & Slope: Enable the volatility channel and slope line to visualize market volatility and the VMA’s momentum.
Pivot Points & Super VMA: Activate pivot high/low markers for potential reversal points and a Super VMA (SMA of VMA) for an extra smoothing layer.
Table Customization: Adjust the table’s position, colors, and font sizes as needed for your viewing preference.
Monitor Key Metrics:
The dynamic table displays essential information:
VMA Value & Trend: See the current VMA and whether the trend is Bullish, Bearish, or Neutral.
Volatility Index (vI) & Slope: Quickly assess market volatility and the VMA’s slope (both absolute and percentage).
Price-VMA Difference & Correlation: Evaluate how far the price is from the VMA and its correlation.
Higher Timeframe VMA: Compare the current VMA with its higher timeframe counterpart (set via the “Higher Timeframe” input).
Alerts for Key Conditions:
Built-in alert conditions notify you when:
The trend changes (bullish/bearish).
The VMA slope becomes extreme.
The price and VMA correlation falls below a defined threshold.
The VMA crosses its higher timeframe average.
How to Use the Script:
Add to Your Chart:
Open TradingView and apply the indicator to your BTCUSD (or any other) chart.
The indicator will overlay on your chart, plotting the VMA along with optional elements such as the price line, volatility channels, and higher timeframe VMA.
Customize Your Settings:
Inputs:
Choose your data source (e.g., close price).
Adjust the VMA length (default is 33) if desired.
Visual Options:
Toggle trend colors, bar coloring, and additional visuals (price line, volatility channels, slope line, pivot points, and Super VMA) to suit your trading style.
Table Customization:
Set the table position, colors, border width, and font size to ensure key metrics are easily visible.
Higher Timeframe:
You can change the higher timeframe input (default is Daily) to better fit your analysis routine.
Interpret the Indicator:
Trend Analysis:
Watch the color-coded VMA line. A rising (orange) VMA suggests bullish momentum, while a falling (red) one indicates bearish conditions.
What Sets This Script Apart:
Dynamic Adaptation:
Unlike a fixed-period moving average, the VMA adjusts its sensitivity in real time by integrating a volatility measure, making it more adaptive to market swings.
Multi-Layered Analysis:
With integrated volatility channels, pivot points, slope analysis, and a higher timeframe VMA, this tool gives you a fuller picture of market dynamics.
Immediate Data at a Glance:
The real-time table consolidates multiple key metrics into one view, saving time and reducing the need for additional indicators.
Custom Alerts:
Pre-built alert conditions allow for timely notifications, ensuring you don’t miss critical market changes.
VWMA with Buy/Sell Signalshe VWMA (Volume Weighted Moving Average) is a technical indicator that averages prices over a specified period while giving more weight to periods with higher trading volumes. This makes the VWMA more sensitive to price movements during high-volume trading compared to a simple moving average (SMA).
Adding Buy/Sell Signals to a VWMA-based script involves identifying trends or crossover points that indicate potential entry (Buy) or exit (Sell) opportunities.
Core Features of the Script:
VWMA Calculation:
Uses the typical price ((High + Low + Close) / 3) or closing price for computation.
Weighting is based on the volume traded in each period.