4 Bar Momentum Reversal strategy█ STRATEGY DESCRIPTION
The "4 Bar Momentum Reversal Strategy" is a mean-reversion strategy designed to identify price reversals following a sustained downward move. It enters a long position when a reversal condition is met and exits when the price shows strength by exceeding the previous bar's high. This strategy is optimized for indices and stocks on the daily timeframe.
█ WHAT IS THE REFERENCE CLOSE?
The Reference Close is the closing price from X bars ago, where X is determined by the Lookback period. Think of it as a moving benchmark that helps the strategy assess whether prices are trending upwards or downwards relative to past performance. For example, if the Lookback is set to 4, the Reference Close is the closing price 4 bars ago (`close `).
█ SIGNAL GENERATION
1. LONG ENTRY
A Buy Signal is triggered when:
The close price has been lower than the Reference Close for at least `Buy Threshold` consecutive bars. This indicates a sustained downward move, suggesting a potential reversal.
The signal occurs within the specified time window (between `Start Time` and `End Time`).
2. EXIT CONDITION
A Sell Signal is generated when the current closing price exceeds the high of the previous bar (`close > high `). This indicates that the price has shown strength, potentially confirming the reversal and prompting the strategy to exit the position.
█ ADDITIONAL SETTINGS
Buy Threshold: The number of consecutive bearish bars needed to trigger a Buy Signal. Default is 4.
Lookback: The number of bars ago used to calculate the Reference Close. Default is 4.
Start Time and End Time: The time window during which the strategy is allowed to execute trades.
█ PERFORMANCE OVERVIEW
This strategy is designed for trending markets with frequent reversals.
It performs best in volatile conditions where price movements are significant.
Backtesting results should be analysed to optimize the Buy Threshold and Lookback parameters for specific instruments.
Komut dosyalarını "如何用wind搜索股票的发行价和份数" için ara
Adaptive Momentum Reversion StrategyThe Adaptive Momentum Reversion Strategy: An Empirical Approach to Market Behavior
The Adaptive Momentum Reversion Strategy seeks to capitalize on market price dynamics by combining concepts from momentum and mean reversion theories. This hybrid approach leverages a Rate of Change (ROC) indicator along with Bollinger Bands to identify overbought and oversold conditions, triggering trades based on the crossing of specific thresholds. The strategy aims to detect momentum shifts and exploit price reversions to their mean.
Theoretical Framework
Momentum and Mean Reversion: Momentum trading assumes that assets with a recent history of strong performance will continue in that direction, while mean reversion suggests that assets tend to return to their historical average over time (Fama & French, 1988; Poterba & Summers, 1988). This strategy incorporates elements of both, looking for periods when momentum is either overextended (and likely to revert) or when the asset’s price is temporarily underpriced relative to its historical trend.
Rate of Change (ROC): The ROC is a straightforward momentum indicator that measures the percentage change in price over a specified period (Wilder, 1978). The strategy calculates the ROC over a 2-period window, making it responsive to short-term price changes. By using ROC, the strategy aims to detect price acceleration and deceleration.
Bollinger Bands: Bollinger Bands are used to identify volatility and potential price extremes, often signaling overbought or oversold conditions. The bands consist of a moving average and two standard deviation bounds that adjust dynamically with price volatility (Bollinger, 2002).
The strategy employs two sets of Bollinger Bands: one for short-term volatility (lower band) and another for longer-term trends (upper band), with different lengths and standard deviation multipliers.
Strategy Construction
Indicator Inputs:
ROC Period: The rate of change is computed over a 2-period window, which provides sensitivity to short-term price fluctuations.
Bollinger Bands:
Lower Band: Calculated with a 18-period length and a standard deviation of 1.7.
Upper Band: Calculated with a 21-period length and a standard deviation of 2.1.
Calculations:
ROC Calculation: The ROC is computed by comparing the current close price to the close price from rocPeriod days ago, expressing it as a percentage.
Bollinger Bands: The strategy calculates both upper and lower Bollinger Bands around the ROC, using a simple moving average as the central basis. The lower Bollinger Band is used as a reference for identifying potential long entry points when the ROC crosses above it, while the upper Bollinger Band serves as a reference for exits, when the ROC crosses below it.
Trading Conditions:
Long Entry: A long position is initiated when the ROC crosses above the lower Bollinger Band, signaling a potential shift from a period of low momentum to an increase in price movement.
Exit Condition: A position is closed when the ROC crosses under the upper Bollinger Band, or when the ROC drops below the lower band again, indicating a reversal or weakening of momentum.
Visual Indicators:
ROC Plot: The ROC is plotted as a line to visualize the momentum direction.
Bollinger Bands: The upper and lower bands, along with their basis (simple moving averages), are plotted to delineate the expected range for the ROC.
Background Color: To enhance decision-making, the strategy colors the background when extreme conditions are detected—green for oversold (ROC below the lower band) and red for overbought (ROC above the upper band), indicating potential reversal zones.
Strategy Performance Considerations
The use of Bollinger Bands in this strategy provides an adaptive framework that adjusts to changing market volatility. When volatility increases, the bands widen, allowing for larger price movements, while during quieter periods, the bands contract, reducing trade signals. This adaptiveness is critical in maintaining strategy effectiveness across different market conditions.
The strategy’s pyramiding setting is disabled (pyramiding=0), ensuring that only one position is taken at a time, which is a conservative risk management approach. Additionally, the strategy includes transaction costs and slippage parameters to account for real-world trading conditions.
Empirical Evidence and Relevance
The combination of momentum and mean reversion has been widely studied and shown to provide profitable opportunities under certain market conditions. Studies such as Jegadeesh and Titman (1993) confirm that momentum strategies tend to work well in trending markets, while mean reversion strategies have been effective during periods of high volatility or after sharp price movements (De Bondt & Thaler, 1985). By integrating both strategies into one system, the Adaptive Momentum Reversion Strategy may be able to capitalize on both trending and reverting market behavior.
Furthermore, research by Chan (1996) on momentum-based trading systems demonstrates that adaptive strategies, which adjust to changes in market volatility, often outperform static strategies, providing a compelling rationale for the use of Bollinger Bands in this context.
Conclusion
The Adaptive Momentum Reversion Strategy provides a robust framework for trading based on the dual concepts of momentum and mean reversion. By using ROC in combination with Bollinger Bands, the strategy is capable of identifying overbought and oversold conditions while adapting to changing market conditions. The use of adaptive indicators ensures that the strategy remains flexible and can perform across different market environments, potentially offering a competitive edge for traders who seek to balance risk and reward in their trading approaches.
References
Bollinger, J. (2002). Bollinger on Bollinger Bands. McGraw-Hill Professional.
Chan, L. K. C. (1996). Momentum, Mean Reversion, and the Cross-Section of Stock Returns. Journal of Finance, 51(5), 1681-1713.
De Bondt, W. F., & Thaler, R. H. (1985). Does the Stock Market Overreact? Journal of Finance, 40(3), 793-805.
Fama, E. F., & French, K. R. (1988). Permanent and Temporary Components of Stock Prices. Journal of Political Economy, 96(2), 246-273.
Jegadeesh, N., & Titman, S. (1993). Returns to Buying Winners and Selling Losers: Implications for Stock Market Efficiency. Journal of Finance, 48(1), 65-91.
Poterba, J. M., & Summers, L. H. (1988). Mean Reversion in Stock Prices: Evidence and Implications. Journal of Financial Economics, 22(1), 27-59.
Wilder, J. W. (1978). New Concepts in Technical Trading Systems. Trend Research.
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
Pseudo Super Smoother [PSS]The Pseudo Super Smoother (PSS) is a a Finite Impulse Response (FIR) filter. It provides a smoothed representation of the underlying data. This indicator can be considered a variation of a moving average, offering a unique approach to filtering price or other data series.
The PSS is inspired by the Super Smoother filter, known for its ability to reduce noise while maintaining a relatively low delay. However, the Super Smoother is an Infinite Impulse Response (IIR) filter. The PSS attempts to approximate some characteristics of the Super Smoother using an FIR design, which offers inherent stability.
The indicator offers two distinct filter types, selectable via the "Filter Style" input: Type 1 and Type 2 . Type 1 provides a smoother output with a more gradual response to changes in the input data. It is characterized by a greater attenuation of high-frequency components. Type 2 exhibits increased reactivity compared to Type 1 , allowing for a faster response to shifts in the underlying data trend, albeit with a potential overshoot. The choice between these two types will depend on the specific application and the preference for responsiveness versus smoothness.
The PSS calculates the FIR filter coefficients based on a decaying exponential function, adjusted according to the selected filter type and the user-defined period. The filter then applies these coefficients to a window of past data, effectively creating a weighted average that emphasizes more recent data points to varying degrees. The PSS uses a specific initialization technique that uses the first non-null data point to pre-fill the input window, which helps it start right away.
The PSS is an approximation of the Super Smoother filter using an FIR design. While it try's to emulate some of the Super Smoother's smoothing characteristics, users should be aware that the frequency response and overall behavior will differ due to it being a rough approximation. The PSS should be considered an experimental indicator and used in conjunction with other analysis techniques. This is, effectively, just another moving average, but its novelty lies in its attempt to bridge the gap between FIR and IIR filter designs for a specific smoothing goal.
N-Degree Moment-Based Adaptive Detection🙏🏻 N-Degree Moment-Based Adaptive Detection (NDMBAD) method is a generalization of MBAD since the horizontal line fit passing through the data's mean can be simply treated as zero-degree polynomial regression. We can extend the MBAD logic to higher-degree polynomial regression.
I don't think I need to talk a lot about the thing there; the logic is really the same as in MBAD, just hit the link above and read if you want. The only difference is now we can gather cumulants not only from the horizontal mean fit (degree = 0) but also from higher-order polynomial regression fit, including linear regression (degree = 1).
Why?
Simply because residuals from the 0-degree model don't contain trend information, and while in some cases that's exactly what you need, in other cases, you want to model your trend explicitly. Imagine your underlying process trends in a steady manner, and you want to control the extreme deviations from the process's core. If you're going to use 0-degree, you'll be treating this beautiful steady trend as a residual itself, which "constantly deviates from the process mean." It doesn't make much sense.
How?
First, if you set the length to 0, you will end up with the function incrementally applied to all your data starting from bar_index 0. This can be called the expanding window mode. That's the functionality I include in all my scripts lately (where it makes sense). As I said in the MBAD description, choosing length is a matter of doing business & applied use of my work, but I think I'm open to talk about it.
I don't see much sense in using degree > 1 though (still in research on it). If you have dem curves, you can use Fourier transform -> spectral filtering / harmonic regression (regression with Fourier terms). The job of a degree > 0 is to model the direction in data, and degree 1 gets it done. In mean reversion strategies, it means that you don't wanna put 0-degree polynomial regression (i.e., the mean) on non-stationary trending data in moving window mode because, this way, your residuals will be contaminated with the trend component.
By the way, you can send thanks to @aaron294c , he said like mane MBAD is dope, and it's gonna really complement his work, so I decided to drop NDMBAD now, gonna be more useful since it covers more types of data.
I wanned to call it N-Order Moment Adaptive Detection because it abbreviates to NOMAD, which sounds cool and suits me well, because when I perform as a fire dancer, nomad style is one of my outfits. Burning Man stuff vibe, you know. But the problem is degree and order really mean two different things in the polynomial context, so gotta stay right & precise—that's the priority.
∞
EMAs CrossThis script generates a line that changes color when evaluating the values and intersections of the 7-, 14-, and 42-day exponential averages, indicating possible entry and exit points.
In general, yellow indicates the beginning of an uptrend, green confirms an uptrend, and brown indicates a downtrend.
Using this script together with the RSI can help you make decisions about the best times to enter and exit positions.
The script was created to generate an indicator in a separate window from the main chart, but adding this indicator to the main window can help you visualize and interpret market movements.
Watchlist & Symbols Distribution [Daveatt]TLDR;
I got bored so I just coded the TradingView watchlist interface in Pinescript :)
TLDR 2:
Sharing it open-source what took me 1 full day to code - haven't coded in Pinescript in a long time, so I'm a bit slow for now :)
█ OVERVIEW
This script offers a comprehensive market analysis tool inspired by TradingView's native watchlist interface features.
It combines an interactive watchlist with powerful distribution visualization capabilities and a performance comparison panel.
The script was developed with a focus on providing multiple visualization methods while working within PineScript's limitations.
█ DEVELOPMENT BACKGROUND
The pie chart implementation was greatly inspired by the ( "Crypto Map Dashboard" script / )
adapting its circular visualization technique to create dynamic distribution charts. However, due to PineScript's 500-line limitation per script, I had to optimize the code to allow users to switch between pie chart analysis and performance comparison modes rather than displaying both simultaneously.
█ SETUP AND DISPLAY
For optimal visualization, users need to adjust the chart's display settings manually.
This involves:
Expanding the indicator window vertically to accommodate both the watchlist and graphical elements
Adjusting the Y-axis scale by dragging it to ensure proper spacing for the comparison panel grid
Modifying the X-axis scale to achieve the desired time window display
Fine-tuning these adjustments whenever switching between pie chart and comparison panel modes
These manual adjustments are necessary due to PineScript's limitations in controlling chart scaling programmatically. While this requires some initial setup, it allows users to customize the display to their preferred viewing proportions.
█ MAIN FEATURES
Distribution Analysis
The script provides three distinct distribution visualization modes through a pie chart.
Users can analyze their symbols by exchanges, asset types (such as Crypto, Forex, Futures), or market sectors.
If you can't see it well at first, adjust your chart scaling until it's displayed nicely.
Asset Exchanges
www.tradingview.com
Asset Types
Asset Sectors
The pie charts feature an optional 3D effect with adjustable depth and angle parameters. To enhance visual customization, four different color schemes are available: Default, Pastel, Dark, and Neon.
Each segment of the pie chart includes interactive tooltips that can be configured to show different levels of detail. Importantly, the pie chart only visualizes the distribution of selected assets (those marked with a checkmark in the watchlist), providing a focused view of the user's current interests.
Interactive Watchlist
The watchlist component displays real-time data for up to 10 user-defined symbols. Each entry shows current price, price changes (both absolute and percentage), volume metrics, and a comparison toggle.
The table is dynamically updated and features color-coded entries that correspond to their respective performance lines in the comparison chart. The watchlist serves as both an information display and a control panel for the comparison feature.
Performance Comparison
One of the script's most innovative features is its performance comparison panel.
Using polylines for smooth visualization, it tracks the 30-day performance of selected symbols relative to a 0% baseline.
The comparison chart includes a sophisticated grid system with 5% intervals and a dynamic legend showing current performance values.
The polyline implementation allows for fluid, continuous lines that accurately represent price movements, providing a more refined visual experience than traditional line plots. Like the pie charts, the comparison panel only displays performance lines for symbols that have been selected in the watchlist, allowing users to focus on their specific assets of interest.
█ TECHNICAL IMPLEMENTATION
The script utilizes several advanced PineScript features:
Dynamic array management for symbol tracking
Polyline-based charting for smooth performance visualization
Real-time data processing with security calls
Interactive tooltips and labels
Optimized drawing routines to maintain performance
Selective visualization based on user choices
█ CUSTOMIZATION
Users can personalize almost every aspect of the script:
Symbol selection and comparison preferences
Visual theme selection with four distinct color schemes
Pie chart dimensions and positioning
Tooltip information density
Component visibility toggles
█ LIMITATIONS
The primary limitation stems from PineScript's 500-line restriction per script.
This constraint necessitated the implementation of a mode-switching system between pie charts and the comparison panel, as displaying both simultaneously would exceed the line limit. Additionally, the script relies on manual chart scale adjustments, as PineScript doesn't provide direct control over chart scaling when overlay=false is enabled.
However, these limitations led to a more focused and efficient design approach that gives users control over their viewing experience.
█ CONCLUSION
All those tools exist in the native TradingView watchlist interface and they're better than what I just did.
However, now it exists in Pinescript... so I believe it's a win lol :)
Value at Risk [OmegaTools]The "Value at Risk" (VaR) indicator is a powerful financial risk management tool that helps traders estimate the potential losses in a portfolio over a specified period of time, given a certain level of confidence. VaR is widely used by financial institutions, traders, and risk managers to assess the probability of portfolio losses in both normal and volatile market conditions. This TradingView script implements a comprehensive VaR calculation using several models, allowing users to visualize different risk scenarios and adjust their trading strategies accordingly.
Concept of Value at Risk
Value at Risk (VaR) is a statistical technique used to measure the likelihood of losses in a portfolio or financial asset due to market risks. In essence, it answers the question: "What is the maximum potential loss that could occur in a given portfolio over a specific time horizon, with a certain confidence level?" For instance, if a portfolio has a one-day 95% VaR of $10,000, it means that there is a 95% chance the portfolio will not lose more than $10,000 in a single day. Conversely, there is a 5% chance of losing more than $10,000. VaR is a key risk management tool for portfolio managers and traders because it quantifies potential losses in monetary terms, allowing for better-informed decision-making.
There are several ways to calculate VaR, and this indicator script incorporates three of the most commonly used models:
Historical VaR: This approach uses historical returns to estimate potential losses. It is based purely on past price data, assuming that the past distribution of returns is indicative of future risks.
Variance-Covariance VaR: This model assumes that asset returns follow a normal distribution and that the risk can be summarized using the mean and standard deviation of past returns. It is a parametric method that is widely used in financial risk management.
Exponentially Weighted Moving Average (EWMA) VaR: In this model, recent data points are given more weight than older data. This dynamic approach allows the VaR estimation to react more quickly to changes in market volatility, which is particularly useful during periods of market stress. This model uses the Exponential Weighted Moving Average Volatility Model.
How the Script Works
The script starts by offering users a set of customizable input settings. The first input allows the user to choose between two main calculation modes: "All" or "OCT" (Only Current Timeframe). In the "All" mode, the script calculates VaR using all available methodologies—Historical, Variance-Covariance, and EWMA—providing a comprehensive risk overview. The "OCT" mode narrows the calculation to the current timeframe, which can be particularly useful for intraday traders who need a more focused view of risk.
The next input is the lookback window, which defines the number of historical periods used to calculate VaR. Commonly used lookback periods include 21 days (approximately one month), 63 days (about three months), and 252 days (roughly one year), with the script supporting up to 504 days for more extended historical analysis. A longer lookback period provides a more comprehensive picture of risk but may be less responsive to recent market conditions.
The confidence level is another important setting in the script. This represents the probability that the loss will not exceed the VaR estimate. Standard confidence levels are 90%, 95%, and 99%. A higher confidence level results in a more conservative risk estimate, meaning that the calculated VaR will reflect a more extreme loss scenario.
In addition to these core settings, the script allows users to customize the visual appearance of the indicator. For example, traders can choose different colors for "Bullish" (Risk On), "Bearish" (Risk Off), and "Neutral" phases, as well as colors for highlighting "Breaks" in the data, where returns exceed the calculated VaR. These visual cues make it easy to identify periods of heightened risk at a glance.
The actual VaR calculation is broken down into several models, starting with the Historical VaR calculation. This is done by computing the logarithmic returns of the asset's closing prices and then using linear interpolation to determine the percentile corresponding to the desired confidence level. This percentile represents the potential loss in the asset over the lookback period.
Next, the script calculates Variance-Covariance VaR using the mean and standard deviation of the historical returns. The standard deviation is multiplied by a z-score corresponding to the chosen confidence level (e.g., 1.645 for 95% confidence), and the resulting value is subtracted from the mean return to arrive at the VaR estimate.
The EWMA VaR model uses the EWMA for the sigma parameter, the standard deviation, obtaining a specific dynamic in the volatility. It is particularly useful in volatile markets where recent price behavior is more indicative of future risk than older data.
For traders interested in intraday risk management, the script provides several methods to adjust VaR calculations for lower timeframes. By using intraday returns and scaling them according to the chosen timeframe, the script provides a dynamic view of risk throughout the trading day. This is especially important for short-term traders who need to manage their exposure during high-volatility periods within the same day. The script also incorporates an EWMA model for intraday data, which gives greater weight to the most recent intraday price movements.
In addition to calculating VaR, the script also attempts to detect periods where the asset's returns exceed the estimated VaR threshold, referred to as "Breaks." When the returns breach the VaR limit, the script highlights these instances on the chart, allowing traders to quickly identify periods of extreme risk. The script also calculates the average of these breaks and displays it for comparison, helping traders understand how frequently these high-risk periods occur.
The script further visualizes the risk scenario using a risk phase classification system. Depending on the level of risk, the script categorizes the market as either "Risk On," "Risk Off," or "Risk Neutral." In "Risk On" mode, the market is considered bullish, and the indicator displays a green background. In "Risk Off" mode, the market is bearish, and the background turns red. If the market is neither strongly bullish nor bearish, the background turns neutral, signaling a balanced risk environment.
Traders can customize whether they want to see this risk phase background, along with toggling the display of the various VaR models, the intraday methods, and the break signals. This flexibility allows traders to tailor the indicator to their specific needs, whether they are day traders looking for quick intraday insights or longer-term investors focused on historical risk analysis.
The "Risk On" and "Risk Off" phases calculated by this Value at Risk (VaR) script introduce a novel approach to market risk assessment, offering traders an advanced toolset to gauge market sentiment and potential risk levels dynamically. These risk phases are built on a combination of traditional VaR methodologies and proprietary logic to create a more responsive and intuitive way to manage exposure in both normal and volatile market conditions. This method of classifying market conditions into "Risk On," "Risk Off," or "Risk Neutral" is not something that has been traditionally associated with VaR, making it a groundbreaking addition to this indicator.
How the "Risk On" and "Risk Off" Phases Are Calculated
In typical VaR implementations, the focus is on calculating the potential losses at a given confidence level without providing an overall market outlook. This script, however, introduces a unique risk classification system that takes the output of various VaR models and translates it into actionable signals for traders, marking whether the market is in a Risk On, Risk Off, or Risk Neutral phase.
The Risk On and Risk Off phases are primarily determined by comparing the current returns of the asset to the average VaR calculated across several different methods, including Historical VaR, Variance-Covariance VaR, and EWMA VaR. Here's how the process works:
1. Threshold Setting and Effect Calculation: The script first computes the average VaR using the selected models. It then checks whether the current returns (expressed as a negative value to signify loss) exceed the average VaR value. If the current returns surpass the calculated VaR threshold, this indicates that the actual market risk is higher than expected, signaling a potential shift in market conditions.
2. Break Analysis: In addition to monitoring whether returns exceed the average VaR, the script counts the number of instances within the lookback period where this breach occurs. This is referred to as the "break effect." For each period in the lookback window, the script checks whether the returns surpass the calculated VaR threshold and increments a counter. The percentage of periods where this breach occurs is then calculated as the "effect" or break percentage.
3. Dual Effect Check (if "Double" Risk Scenario is selected): When the user chooses the "Double" risk scenario mode, the script performs two layers of analysis. First, it calculates the effect of returns exceeding the VaR threshold for the current timeframe. Then, it calculates the effect for the lower intraday timeframe as well. Both effects are compared to the user-defined confidence level (e.g., 95%). If both effects exceed the confidence level, the market is deemed to be in a high-risk situation, thus triggering a Risk Off phase. If both effects fall below the confidence level, the market is classified as Risk On.
4. Risk Phases Determination: The final risk phase is determined by analyzing these effects in relation to the confidence level:
- Risk On: If the calculated effect of breaks is lower than the confidence level (e.g., fewer than 5% of periods show returns exceeding the VaR threshold for a 95% confidence level), the market is considered to be in a relatively safe state, and the script signals a "Risk On" phase. This is indicative of bullish conditions where the potential for extreme loss is minimal.
- Risk Off: If the break effect exceeds the confidence level (e.g., more than 5% of periods show returns breaching the VaR threshold), the market is deemed to be in a high-risk state, and the script signals a "Risk Off" phase. This indicates bearish market conditions where the likelihood of significant losses is higher.
- Risk Neutral: If the break effect hovers near the confidence level or if there is no clear trend indicating a shift toward either extreme, the market is classified as "Risk Neutral." In this phase, neither bulls nor bears are dominant, and traders should remain cautious.
The phase color that the script uses helps visualize these risk phases. The background will turn green in Risk On conditions, red in Risk Off conditions, and gray in Risk Neutral phases, providing immediate visual feedback on market risk. In addition to this, when the "Double" risk scenario is selected, the background will only turn green or red if both the current and intraday timeframes confirm the respective risk phase. This double-checking process ensures that traders are only given a strong signal when both longer-term and short-term risks align, reducing the likelihood of false signals.
A New Way of Using Value at Risk
This innovative Risk On/Risk Off classification, based on the interaction between VaR thresholds and market returns, represents a significant departure from the traditional use of Value at Risk as a pure risk measurement tool. Typically, VaR is employed as a backward-looking measure of risk, providing a static estimate of potential losses over a given timeframe with no immediate actionable feedback on current market conditions. This script, however, dynamically interprets VaR results to create a forward-looking, real-time signal that informs traders whether they are operating in a favorable (Risk On) or unfavorable (Risk Off) environment.
By incorporating the "break effect" analysis and allowing users to view the VaR breaches as a percentage of past occurrences, the script adds a predictive element that can be used to time market entries and exits more effectively. This **dual-layer risk analysis**, particularly when using the "Double" scenario mode, adds further granularity by considering both current timeframe and intraday risks. Traders can therefore make more informed decisions not just based on historical risk data, but on how the market is behaving in real-time relative to those risk benchmarks.
This approach transforms the VaR indicator from a risk monitoring tool into a decision-making system that helps identify favorable trading opportunities while alerting users to potential market downturns. It provides a more holistic view of market conditions by combining both statistical risk measurement and intuitive phase-based market analysis. This level of integration between VaR methodologies and real-time signal generation has not been widely seen in the world of trading indicators, marking this script as a cutting-edge tool for risk management and market sentiment analysis.
I would like to express my sincere gratitude to @skewedzeta for his invaluable contribution to the final script. From generating fresh ideas to applying his expertise in reviewing the formula, his support has been instrumental in refining the outcome.
Volume Analysis - Heatmap and Volume ProfileHello All!
I have a new toy for you! Volume Analysis - Heatmap and Volume Profile . Honestly I started to work to develop Volume Heatmap then I decided to improve it and add more features such Volume profile, volume, difference in Buy/Sell volumes etc. I tried to put my abilities into this script and tried to use some new Pine Language™ features ( method, force_overlay, enum etc features ). I hope the usage of these new features would be an example for Pine Programmers.
Lets talk about how it works:
- It gets number of Rows/Columns from the user for each candle to create heatmap
- It calculates the number of the candles to analyze. Number of the candles may change by number of Rows/columns or if any volume / difference in volumes / volume profile is enabled
- It gets Closing/Opening price, Volume and Time info from lower time frame for each candle ( it can be up to 100K for each candle )
- After getting the data it calculates lower time frame to analyze
- Then it calculates how closing price moves, how much volume on each move and create boxes by the volume/move in each box
- The colors for each box calculated by volume info and closing price movements in the lower time frame
- It shows the boxes on Absolute places or Zero Line optionally
- it shows Volume, Cumulative volume, Difference between Buy/Sell volume for each column
- it changes empty box color by Chart background color, also you can change transparency
- At this time it creates Volume Profile with up to 25 rows
- As a new Pine Language™ feature, it can show Volume Profile in the indicator window or in Main chart, shows Value Area, Value Area High (VAH), Value Area Low (VAL), and draw it and POC (Point Of Control) in the indicator window and/or in the main chart
- Honestly the feature I like is that: For the markets that are not open 24/7, it combines the data from the lower time period without any gaps. For example, if you work for a market that is closed on Saturdays and Sundays, it ensures data integrity by omitting weekends and holidays. so for example if the data is like "ABC---DEF-X---YL-Z" then it makes this data like "ABCDEFXYLZ". In this way, there will be no data breaks in the displayed boxes, there will be no empty colons, and it will appear as if data is coming in at any time.
- Finally it shows Info Panel to give info, its background color automatically changes by the Chart background color
- Important! You should set your "Plan" accordingly, your plan is "Premium or Higher" or "Lower tier". so the script can understand the minimum time frame it can get data!!
I tried to share many screenshots below to explain it much better
How it looks?
it shows Highest Buy/Sell volumes brighter, move volume -> brighter
Volume Profile ( up to 25 row s) ( number of contained candles should be more than 1 )
Volume Profile can be shown in the main chart optionally
How the main chart looks:
Closing price shown and you can enable it, change colors & line width
Can include many candles according to Row&Column number you set
Optionally it can show cumulative volume for each candle
Closing prices from lower time frame
Shows Candle Body by changing background colors
It can shows all included candles on Zero line
You can change the colors of many things
You can set Empty box and border transparency
Table, Empty box Colors adjustment done automatically by chart background color
Sometimes we can not get data from some historical candles if time frame is high such 2days, 1 week etc, and it looks like:
It also checks if Chart time frame and Chart type is suitable
Enjoy!
Pink's Daily SMA Script🚗 This script provides a customizable overlay of seven simple moving averages (SMAs) on the chart. Users can control the display of each SMA by toggling them on or off. The lengths of these SMAs are adjustable, allowing for tailored analysis based on individual preferences.
📊 The script calculates daily SMA values using the request.security() function and plots them as horizontal lines on the chart. These SMAs are updated once per day, typically at the start of the pre-market session (9:00 AM in the "America/New_York" timezone). The script resets the SMA values at the start of each new day, ensuring fresh data for daily analysis.
🕒 In addition to the SMAs, the script includes an optional feature that highlights specific time ranges on the chart: from 11:00 AM to 11:05 AM and from 1:00 PM to 1:30 PM (based on the "America/New_York" timezone). Users can toggle these background highlights on or off, providing visual cues for key times during the trading day. The 11:00 AM window is highlighted in gray, while the 1:00 PM window is highlighted in blue.
🔖 The SMAs are labeled on the right side of the chart, with only one label visible at a time for each SMA. These labels display the length of the respective SMA, and their colors match the lines drawn on the chart, helping to distinguish between the different SMAs.
Special thanks to Pinks333 (www.tradingview.com)
Who provided the logic for the script and was willing to share her logic and open source the script.
Dynamic ALMA with signalsEnhanced ALMA with Signals
This TradingView indicator is designed to enhance your trading strategy by utilizing the Arnaud Legoux Moving Average (ALMA), a unique moving average that provides smoother price action while minimizing lag. The script not only plots the ALMA line but also dynamically adjusts its parameters based on market volatility to adapt to different trading conditions. Additionally, it highlights potential bounce points off the line, as well as breakout points, giving traders clear signals for potential support, resistance levels, and breakouts.
Key Features:
Dynamic ALMA Line with Glow Effect:
The core of this indicator is the ALMA line, which is dynamically adjusted to market volatility, providing more accurate signals in varying conditions. The line adapts to both trending and consolidating markets by adjusting its sensitivity in real time. A glow effect is created by plotting the ALMA line multiple times with increasing transparency, making it visually distinct.
Bounce Detection Signals with Volatility Filter:
The script detects and labels potential support and resistance bounces based on the crossover and crossunder of the price with the ALMA line, further filtered by a volatility condition. This helps in filtering out false signals during low-volatility conditions, making the signals more reliable.
Visual Enhancements:
Custom glow effects and labels for bounce detection enhance chart readability and help traders quickly identify key levels.
Inputs:
Base Window Size: Sets the number of bars used in calculating the ALMA, allowing traders to adjust the sensitivity of the moving average. This parameter is dynamically adjusted based on current market volatility.
Offset: Determines the position of the ALMA curve. Higher values move the curve further away from the price. This value remains constant for stability.
Sigma: Controls the smoothness of the ALMA curve; a higher sigma results in a smoother curve. This value also remains constant.
ATR Period and Threshold Multiplier: Used to calculate the Average True Range (ATR) for the volatility filter, which determines whether the market conditions are sufficiently volatile to consider bounce signals.
How It Works:
Dynamic ALMA Calculation:
The script calculates the ALMA (Arnaud Legoux Moving Average) using the ta.alma function, dynamically adjusting the window size based on market volatility measured by the ATR (Average True Range). This ensures that the ALMA line remains responsive in high-volatility environments and smooth in low-volatility conditions.
Glow Effect:
To create a glow effect around the ALMA line, the script plots the ALMA multiple times with varying degrees of transparency. This visual enhancement helps the ALMA line stand out on the chart.
Bounce Detection with Volatility Filter:
The script uses two conditions to detect potential bounces:
Support Bounce: Detected when the low of the bar crosses above the ALMA line (ta.crossover(low, alma)) and the close is above the ALMA, while the volatility filter confirms sufficient market activity. This suggests potential support at the ALMA line.
Resistance Bounce: Detected when the high of the bar crosses below the ALMA line (ta.crossunder(high, alma)) and the close is below the ALMA, while the volatility filter confirms sufficient market activity. This indicates potential resistance at the ALMA line.
Labeling Bounce Points:
When a bounce is detected, the script labels it on the chart:
Support Bounces (S): Labeled with a blue "S" below the bar where a support bounce is detected.
Resistance Bounces (R): Labeled with a white "R" above the bar where a resistance bounce is detected.
Usage:
This enhanced indicator helps traders visualize key support and resistance levels more effectively by dynamically adjusting the ALMA moving average to market conditions. By detecting and labeling potential bounce points and filtering these signals based on volatility, traders can better identify entry and exit points in their trading strategy. The dynamic adjustments and visual enhancements make it easier to spot critical levels quickly and adapt to changing market conditions.
Customize the inputs to fit your trading style, and use this enhanced ALMA indicator to gain a more refined understanding of market trends, potential reversals, and breakouts.
Rational Qaudratic Kernel Elder Force Index Introduction:
The Rational Quadratic Kernel Elder Force Index is a versatile and mathematically sophisticated technical indicator that enhances the traditional Elder Force Index (EFI) by applying a rational quadratic kernel smoothing technique. This advanced regression method is designed to provide traders with a more adaptive and accurate tool for measuring the strength behind price movements, incorporating the influence of volume. This indicator does not predict future price movements, but it offers a clearer view of market dynamics through its advanced smoothing mechanism.
Key Features:
Elder Force Index Foundation:
The core of this indicator is built on the Elder Force Index, a popular tool developed by Dr. Alexander Elder. The EFI is a momentum indicator that calculates the strength of price movements by combining both price change and volume.
Rational Quadratic Kernel Smoothing: The indicator incorporates a rational quadratic kernel for smoothing, providing traders with a more refined view of price action trends. This kernel is highly adjustable based on user inputs, allowing for flexible tuning to suit individual strategies.
Adaptive Time Frame Weighting:
Through the adjustable parameter Relative Weighting (r), traders can modify the influence of different time frames. Lower values give more weight to longer time frames, while higher values make the behavior resemble that of a Gaussian kernel.
Dynamic Visualization:
The indicator visually displays the smoothed force index as a color-coded line. It dynamically changes color based on market conditions—green when the smoothed force index is positive and red when it is negative—providing a clear and easy-to-read signal for traders.
How It Works:
The Elder Force Index is calculated by multiplying the price change between two bars with the volume of the current bar.
A rational quadratic kernel regression is applied to this raw EFI data. The smoothing process provides a more stable and reliable signal by reducing noise, particularly in volatile markets.
The user-defined parameters, such as the length of the smoothing window and the relative weighting factor, allow traders to customize the indicator to suit their specific trading style or asset class.
User Inputs:
Length:
Sets the smoothing window for the kernel regression. A longer length results in more significant smoothing.
Relative Weighting (r):
Controls the influence of different time frames in the smoothing process. A smaller value emphasizes longer-term data, while a higher value makes it behave more like a traditional Gaussian kernel.
Source:
Select the price source (default is the closing price) for the calculations.
Volume-Price PercentileDescription:
The "Volume-Price Percentile Live" indicator is designed to provide real-time analysis of the relationship between volume percentiles and price percentiles on any given timeframe. This tool helps traders assess market activity by comparing how current volume levels rank relative to historical volume data and how current price movements (specifically high-low ranges) rank relative to historical price data. The indicator visualizes the ratio of volume percentile to price percentile as a histogram, allowing traders to gauge the relative strength of volume against price movements in real time.
Functionality:
Volume Percentile: Calculates the percentile rank of the current volume within a user-defined rolling period (default is 30 bars). This percentile indicates where the current volume stands in comparison to historical volumes over the specified period.
Price Percentile: Calculates the percentile rank of the current candle's high-low difference within a user-defined rolling period (default is 30 bars). This percentile reflects the current price movement's strength relative to past movements over the specified period.
Percentile Ratio (VP Ratio): The indicator plots the ratio of the volume percentile to the price percentile. This ratio helps identify periods when volume is significantly higher or lower relative to price movement, providing insights into potential market imbalances or strength.
Real-Time Data: By fetching data from a lower timeframe (e.g., 1-minute), the indicator updates continuously within the current timeframe, offering live, intra-candle updates. This ensures that traders can see the histogram change in real-time as new data becomes available, without waiting for the current candle to close.
How to Use:
Adding the Indicator: To use this indicator, add it to your chart on TradingView by selecting it from the Indicators list once it is published publicly.
Setting Parameters:
Volume Period Length: This input sets the rolling window length for calculating the volume percentile (default is 30). You can adjust it based on the desired sensitivity or historical period relevance.
Candle Period Length: This input sets the rolling window length for calculating the price percentile based on the high-low difference of candles (default is 30). Adjust this to match your trading style or analysis period.
Interpreting the Histogram:
The histogram represents the volume percentile divided by the price percentile.
Above 1: A value greater than 1 indicates that volume is relatively strong compared to price movement, which may suggest high activity or potential accumulation/distribution phases.
Below 1: A value less than 1 suggests that price movement is relatively stronger than volume, indicating potential weakness in volume relative to price moves.
Near 1: Values close to 1 suggest a balanced relationship between volume and price movement.
Application: Use this indicator to identify potential breakout or breakdown scenarios, assess the strength of price movements, and confirm trends. When volume percentile consistently leads price percentile, it might signal sustained interest and support for the current price trend. Conversely, if volume percentile lags significantly, it might warn of potential trend weakness.
Best Practices:
Multiple Timeframe Analysis: While the indicator provides real-time updates on any timeframe, consider using it alongside higher timeframe analysis to confirm trends and volume behavior across different periods.
Customization: Adjust the period lengths based on the asset’s typical volume and price behavior, as well as your trading strategy (e.g., short-term scalping vs. long-term trend following).
Complement with Other Indicators: Use this indicator in conjunction with other volume-based tools, trend indicators, or momentum oscillators to gain a comprehensive view of market dynamics.
Gaussian Kernel Smoothing EMAGaussian Kernel Smoothing EMA
The Gaussian Kernel Smoothing EMA integrates the exponential moving average with kernel smoothing techniques to refine the trend tool. Kernel smoothing is a non-parametric technique used to estimate a smooth curve from a set of data points. It is particularly useful in reducing noise and capturing the underlying structure of data. The smoothed value at each point is calculated as a weighted average of neighboring points, with the weights determined by a kernel function.
The Gaussian kernel is a popular choice in kernel smoothing due to its properties of being smooth, symmetric, and having infinite support. This function gives higher weights to data points closer to the target point and lower weights to those further away, resulting in a smooth and continuous estimate. Since price isn't normally distributed a logarithmic transformation is performed to remove most of its skewness to be able to fit the Gaussian kernel.
This indicator also has a bandwidth, which in kernel smoothing controls the width of the window over which the smoothing is performed. It determines how much influence nearby data points have on the smoothed value. In this indicator, the bandwidth is dynamically adjusted based on the standard deviation of the log-transformed prices so that the smoothing adapts to the underlying variability and potential volatility.
Bandwidth Factor: The bandwidth factor in this indicator is used to adjust the degree of the smoothing applied to the MA. In kernel smoothing, Bandwidth controls the width of the window over which the smoothing is applied. It determines how many data points around a central point are considered when calculating a smooth value. A smaller bandwidth results in less smoothing, while a larger bandwidth smooths out more noise, leading to a broader, more general trend.
Support line based on RSIThis indicator builds a support line using the stock price and RSI.
Inputs:
1. Time window for the RSI:
the time window the RSI is calculated with, usually it's 14 but in here I recommend 30.
2. offset by percentage:
just adding or subtructing some percentage of the result, some stocks need a bit of offset to work
3. stability:
the higher it is the less the RSI effects the graph. for realy high stability the indicator the the stock price will be realy close.
formula: (close*(100-newRSI)/50)*(100+offset)/100
when:
newRSI = (RSI + (50 * stability1))/(stability+1)
recommended usage:
Usually, if the indicator becomes higher than the price, (the price lowers). the stock will go up again to around the last price where they met.
so, for example, if the stock price was 20 and going down. while the indicator was 18 and going up, then they met at 19 and later the indicator became 20 while the stock fell to 18. most chances are that the stock will come back to 19 where they met and at the same time the indicator will also get to 19.
In stocks that are unstable, like NVDA. this indicator can be used to see the trend and avoid the unstability of the stock.
Fear/Greed Zone Reversals [UAlgo]The "Fear/Greed Zone Reversals " indicator is a custom technical analysis tool designed for TradingView, aimed at identifying potential reversal points in the market based on sentiment zones characterized by fear and greed. This indicator utilizes a combination of moving averages, standard deviations, and price action to detect when the market transitions from extreme fear to greed or vice versa. By identifying these critical turning points, traders can gain insights into potential buy or sell opportunities.
🔶 Key Features
Customizable Moving Averages: The indicator allows users to select from various types of moving averages (SMA, EMA, WMA, VWMA, HMA) for both fear and greed zone calculations, enabling flexible adaptation to different trading strategies.
Fear Zone Settings:
Fear Source: Select the price data point (e.g., close, high, low) used for Fear Zone calculations.
Fear Period: This defines the lookback window for calculating the Fear Zone deviation.
Fear Stdev Period: This sets the period used to calculate the standard deviation of the Fear Zone deviation.
Greed Zone Settings:
Greed Source: Select the price data point (e.g., close, high, low) used for Greed Zone calculations.
Greed Period: This defines the lookback window for calculating the Greed Zone deviation.
Greed Stdev Period: This sets the period used to calculate the standard deviation of the Greed Zone deviation.
Alert Conditions: Integrated alert conditions notify traders in real-time when a reversal in the fear or greed zone is detected, allowing for timely decision-making.
🔶 Interpreting Indicator
Greed Zone: A Greed Zone is highlighted when the price deviates significantly above the chosen moving average. This suggests market sentiment might be leaning towards greed, potentially indicating a selling opportunity.
Fear Zone Reversal: A Fear Zone is highlighted when the price deviates significantly below the chosen moving average of the selected price source. This suggests market sentiment might be leaning towards fear, potentially indicating a buying opportunity. When the indicator identifies a reversal from a fear zone, it suggests that the market is transitioning from a period of intense selling pressure to a more neutral or potentially bullish state. This is typically indicated by an upward arrow (▲) on the chart, signaling a potential buy opportunity. The fear zone is characterized by high price volatility and overselling, making it a crucial point for traders to consider entering the market.
Greed Zone Reversal: Conversely, a Greed Zone is highlighted when the price deviates significantly above the chosen moving average. This suggests market sentiment might be leaning towards greed, potentially indicating a selling opportunity. When the indicator detects a reversal from a greed zone, it indicates that the market may be moving from an overbought condition back to a more neutral or bearish state. This is marked by a downward arrow (▼) on the chart, suggesting a potential sell opportunity. The greed zone is often associated with overconfidence and high buying activity, which can precede a market correction.
🔶 Why offer multiple moving average types?
By providing various moving average types (SMA, EMA, WMA, VWMA, HMA) , the indicator offers greater flexibility for traders to tailor the indicator to their specific trading strategies and market preferences. Different moving averages react differently to price data and can produce varying signals.
SMA (Simple Moving Average): Provides an equal weighting to all data points within the specified period.
EMA (Exponential Moving Average): Gives more weight to recent data points, making it more responsive to price changes.
WMA (Weighted Moving Average): Allows for custom weighting of data points, providing more flexibility in the calculation.
VWMA (Volume Weighted Moving Average): Considers both price and volume data, giving more weight to periods with higher trading volume.
HMA (Hull Moving Average): A combination of weighted moving averages designed to reduce lag and provide a smoother curve.
Offering multiple options allows traders to:
Experiment: Traders can try different moving averages to see which one produces the most accurate signals for their specific market.
Adapt to different market conditions: Different market conditions may require different moving average types. For example, a fast-moving market might benefit from a faster moving average like an EMA, while a slower-moving market might be better suited to a slower moving average like an SMA.
Personalize: Traders can choose the moving average that best aligns with their personal trading style and risk tolerance.
In essence, providing a variety of moving average types empowers traders to create a more personalized and effective trading experience.
🔶 Disclaimer
Use with Caution: This indicator is provided for educational and informational purposes only and should not be considered as financial advice. Users should exercise caution and perform their own analysis before making trading decisions based on the indicator's signals.
Not Financial Advice: The information provided by this indicator does not constitute financial advice, and the creator (UAlgo) shall not be held responsible for any trading losses incurred as a result of using this indicator.
Backtesting Recommended: Traders are encouraged to backtest the indicator thoroughly on historical data before using it in live trading to assess its performance and suitability for their trading strategies.
Risk Management: Trading involves inherent risks, and users should implement proper risk management strategies, including but not limited to stop-loss orders and position sizing, to mitigate potential losses.
No Guarantees: The accuracy and reliability of the indicator's signals cannot be guaranteed, as they are based on historical price data and past performance may not be indicative of future results.
US Market Real Value Adjusted for CPI and Dollar IndexUS Market Real Value Adjusted for CPI and Dollar Index
Provides quick access to this formula: (SP:SPX+NASDAQ_DLY:IXIC+TVC:DJI+CAPITALCOM:RTY)/4/(ECONOMICS:USCPI*TVC:DXY*100)
Overview:
This indicator provides a dynamic view of the US stock market's real value, adjusted for inflation and currency strength. It combines major stock indices including the S&P 500, NASDAQ, Dow Jones, and Russell 2000, and adjusts the composite index using the US Consumer Price Index (CPI) and the US Dollar Index (DXY). This adjustment helps to reveal the true market performance, stripped of inflationary effects and currency valuation changes.
Key Features:
Composite Index Calculation: Averages the prices of SPX, IXIC, DJI, and RTY to create a broad market overview.
Inflation Adjustment: Uses the CPI to adjust for the effects of inflation, ensuring that the real value changes in the stock market are highlighted.
Currency Strength Adjustment: Applies the DXY to account for fluctuations in the strength of the US dollar, providing insights into how currency variations impact market valuation.
Dynamic Base Calculation: Utilizes a rolling window to dynamically update base values, allowing for continuous reassessment of the market’s adjusted value as new data becomes available.
This indicator provides:
Real Value Insights: By adjusting for both inflation and currency strength, this indicator offers a more accurate measure of the underlying market conditions.
Dynamic Updates: With a rolling window approach, the indicator continually adapts, providing up-to-date information.
Strategic Decisions: Helps in identifying true market growth or decline periods, aiding in strategic investment planning.
Usage:
To use this indicator, simply add it to your chart, and it will automatically display the adjusted composite index. This index can be particularly useful for investors looking to understand underlying market trends beyond nominal price movements, helping in making more informed investment decisions when comparing certain tickers to an average of the major US stock market indexes, adjusted for inflation and the strength of the US dollar.
Example Use Case:
A typical use case might involve comparing periods of high inflation to see how the overall US stock market performed in real terms, not just nominal terms. This can indicate whether the market growth was genuine or merely a reflection of inflation. By comparing this result to an average of these major indexes without adjusting for inflation or currency strength changes, you can see how significantly these forces can impact real gains or losses.
test - ClassificationTensor-Based Classification Experiment
This innovative script represents an experimental foray into classification techniques, specifically designed to analyze returns within a compact time frame. By leveraging tensor-based analytics, it generates a comprehensive table that visually illustrates the distribution of counts across both current and historical bars, providing valuable insights into market patterns.
The script's primary objective is to classify returns over a small window, using this information to inform trading decisions. The output table showcases a normal distribution of count values for each bar in the lookback period, allowing traders to gain a deeper understanding of market behavior and identify potential opportunities.
Key Features:
Experimental classification approach utilizing tensor-based analytics
Compact time frame analysis (small window)
Comprehensive table displaying return counts across current and historical bars
Normal distribution visualization for better insight into market patterns
By exploring this script, traders can gain a deeper understanding of the underlying dynamics driving market movements and develop more effective trading strategies.
Market Sentiment Fear and Greed [AlgoAlpha]Unleash the power of sentiment analysis with the Market Sentiment Fear and Greed Indicator! 📈💡 This tool provides insights into market sentiment, helping you make informed trading decisions. Let's dive into its key features and how it works. 🚀✨
Key Features 🎯
🧠 Sentiment Analysis : Calculates market sentiment using volume and price data. 📊
📅 Customizable Lookback Window : Adjust the lookback period to fine-tune sensitivity. 🔧
🎨 Bullish and Bearish Colors : Visualize trends with customizable colors. 🟢🔴
🚀 Impulse Detection : Identifies bullish and bearish impulses for trend confirmation. 🔍
📉 Normalized Sentiment Index : Offers a normalized view of market sentiment. 📊
🔔 Alerts : Set alerts for key sentiment changes and trend impulses. 🚨
🟢🔴 Table Visualization : Displays sentiment strength using a gradient color table. 🗂️
How to Use 📖
Maximize your trading potential with this indicator by following these steps:
🔍 Add the Indicator : Search for "Market Sentiment Fear and Greed " in TradingView's Indicators & Strategies. Customize settings like the lookback window and trend breakout threshold to suit your trading strategy.
📊 Monitor Sentiment : Watch the sentiment gauge and plot changes to detect market sentiment shifts. Use the Normalized Sentiment Index for a more balanced view.
🚨 Set Alerts : Enable alerts for sentiment flips and trend impulses to stay ahead of market movements.
How It Works ⚙️
The indicator calculates market sentiment by averaging the volume and closing prices over a user-defined lookback period, creating a sentiment score. It differentiates between bullish and bearish sentiment by evaluating whether the closing price is higher or lower than the opening price, summing the respective volumes. The true sentiment is determined by comparing these summed values, with a positive score indicating bullish sentiment and a negative score indicating bearish sentiment. The indicator further normalizes this sentiment score by dividing it by the EMA of the highest high minus the lowest low over double the lookback period, ensuring values are constrained between -1 and 1. Bullish and bearish impulses are identified using Hull Moving Averages (HMA) of the positive and negative sentiments, respectively. When these impulses exceed a calculated threshold based on the standard deviation of the sentiment, it indicates a significant trend change. The script also includes a gradient color table to visually represent the strength of sentiment, and customizable alerts to notify users of key sentiment changes and trend impulses.
Unlock deeper insights into market sentiment and elevate your trading strategy with the Market Sentiment Fear and Greed Indicator! 📈✨
BB Position CalculatorPosition Size Calculator Instructions
Overview
The Position Size Calculator is designed to help traders automatically determine the appropriate lot size based on the dollar amount they are willing to risk. It includes features for automatic lot sizing, fixed lot risk calculations, take profit calculations (both automatic and fixed), max run-up, and max drawdown. Calculated values are displayed in ticks, points, and USD.
Key Features
• Automatic Lot Sizing: Automatically calculates lot size based on the amount of money you are willing to risk.
• Fixed Lot Risk Calculations: Provides risk calculations for fixed lot sizes.
• Take Profit Calculations: Offers both automatic and fixed take profit calculations.
• Max Run-Up and Max Drawdown: Monitors and displays the maximum run-up and drawdown of your trade.
• Detailed Metrics: Displays all calculated values in ticks, points, and USD.
Setup Instructions
1. Add and Remove for Each Position: The calculator is designed to be added to your chart for each new position. Once your preferences are set the first time, save them as your default to retain your settings for future use.
2. Adding the Indicator to Favorites:
• Use the TradingView keyboard shortcut “/” then type “pos.”
• Use the arrow key to select the Position Size Calculator and press enter.
• Close the indicator selection pop-up.
3. Setting the Trigger Price:
• A blue pop-up labeled “SET TRIGGER PRICE” will appear at the bottom of the chart.
• Click on the chart at the price level where you want to enter the trade.
4. Setting the Stop Loss:
• The pop-up will change to “SET STOP LOSS.”
• Click on the chart at the price level where your stop loss will be set.
5. Setting the Take Profit:
• The pop-up will change to “SET TAKE PROFIT.”
• Click on the chart at the price level where you want to take profit. If you have selected the option to overwrite with a set risk/reward ratio (R:R), the calculation will use this price level.
6. Setting the Trade Window Start:
• The pop-up will change to “SET TRADE WINDOW START.”
• Click on the bar in time where you want the indicator to start monitoring for price to trigger the position.
7. Adjusting the Position:
• Clicking on any part of the indicator will display draggable lines, allowing you to fine-tune the position that was previously plotted by the first four chart clicks.
Additional Notes
• Compatibility: This calculator has only been tested with futures trading.
• Customization: Once your preferences are set, save them as your default to make setup quicker for future trades.
• Support: If you have any questions or feature requests, please feel free to reach out.
Holding ValueTrading view requires me to add a larger description:
Short done by me: Show your holding value at each candlestick
Chatgpt:
This Pine Script plugin is designed to help traders and investors visualize the current value of their holdings in USD directly on TradingView charts. The plugin calculates the total value of the specified holdings based on the closing price of each candle and displays this value dynamically, formatted to show in thousands (k) or millions (m) with a maximum of two decimal places.
Features
Holdings Input: Allows the user to input the amount of the asset they hold.
Dynamic Calculation: Calculates the current value of holdings based on the closing price of each candle.
Formatted Display: Formats the value in thousands or millions with up to two decimal places.
Chart Label: Displays the formatted value as a label on the chart.
Data Window Display: Uses plotchar to display the current value in the data window without plotting it directly on the chart.
Distance from MA (%)Purpose:
This indicator calculates and plots the distance in percentage between the current price and a specified moving average. The distance is displayed in a separate window below the main price chart.
Features:
Configurable Moving Average Period: You can set the period for the moving average calculation.
Multiple Moving Average Methods: The indicator supports various moving average methods, including Simple Moving Average (SMA), Exponential Moving Average (EMA), Weighted Moving Average (WMA), and Volume Weighted Moving Average (VWMA).
Applied Price Selection: You can choose which price to use for the moving average calculation (e.g., close, open, high, low, etc.).
Parameters:
MA Period: The number of periods to use for the moving average calculation.
MA Method: The type of moving average to use (SMA, EMA, WMA, VWMA).
Applied Price: The price used for the moving average calculation.
Calculation:
Moving Average Calculation:
Depending on the selected method, the indicator calculates the moving average (MA) value for each bar using the specified period and applied price.
Distance in Percentage:
The distance is calculated as the difference between the current price and the moving average value, divided by the moving average value, and then multiplied by 100 to convert it to a percentage.
Formula: Distance %=(Applied Price−MA ValueMA Value)×100Distance %=(MA ValueApplied Price−MA Value)×100
Plotting:
The indicator plots the calculated distance in percentage as a line in a separate window below the main chart. The plot is colored red and has a linewidth of 2 for better visibility.
MathTransformLibrary "MathTransform"
Auxiliary functions for transforming data using mathematical and statistical methods
scaler_zscore(x, lookback_window)
Calculates Z-Score normalization of a series.
Parameters:
x (float) : : floating point series to normalize
lookback_window (int) : : lookback period for calculating mean and standard deviation
Returns: Z-Score normalized series
scaler_min_max(x, lookback_window, min_val, max_val, empiric_min, empiric_max, empiric_mid)
Performs Min-Max scaling of a series within a given window, user-defined bounds, and optional midpoint
Parameters:
x (float) : : floating point series to transform
lookback_window (int) : : int : optional lookback window size to consider for scaling.
min_val (float) : : float : minimum value of the scaled range. Default is 0.0.
max_val (float) : : float : maximum value of the scaled range. Default is 1.0.
empiric_min (float) : : float : user-defined minimum value of the input data. This means that the output could exceed the `min_val` bound if there is data in `x` lesser than `empiric_min`. If na, it's calculated from `x` and `lookback_window`.
empiric_max (float) : : float : user-defined maximum value of the input data. This means that the output could exceed the `max_val` bound if there is data in `x` greater than `empiric_max`. If na, it's calculated from `x` and `lookback_window`.
empiric_mid (float) : : float : user-defined midpoint value of the input data. If na, it's calculated from `empiric_min` and `empiric_max`.
Returns: rescaled series
log(x, base)
Applies logarithmic transformation to a value, base can be user-defined.
Parameters:
x (float) : : floating point value to transform
base (float) : : logarithmic base, must be greater than 0
Returns: logarithm of the value to the given base, if x <= 0, returns logarithm of 1 to the given base
exp(x, base)
Applies exponential transformation to a value, base can be user-defined.
Parameters:
x (float) : : floating point value to transform
base (float) : : base of the exponentiation, must be greater than 0
Returns: the result of raising the base to the power of the value
power(x, exponent)
Applies power transformation to a value, exponent can be user-defined.
Parameters:
x (float) : : floating point value to transform
exponent (float) : : exponent for the transformation
Returns: the value raised to the given exponent, preserving the sign of the original value
tanh(x, scale)
The hyperbolic tangent is the ratio of the hyperbolic sine and hyperbolic cosine. It limits an output to a range of −1 to 1.
Parameters:
x (float) : : floating point series
scale (float)
sigmoid(x, scale, offset)
Applies the sigmoid function to a series.
Parameters:
x (float) : : floating point series to transform
scale (float) : : scaling factor for the sigmoid function
offset (float) : : offset for the sigmoid function
Returns: transformed series using the sigmoid function
sigmoid_double(x, scale, offset)
Applies a double sigmoid function to a series, handling positive and negative values differently.
Parameters:
x (float) : : floating point series to transform
scale (float) : : scaling factor for the sigmoid function
offset (float) : : offset for the sigmoid function
Returns: transformed series using the double sigmoid function
logistic_decay(a, b, c, t)
Calculates logistic decay based on given parameters.
Parameters:
a (float) : : parameter affecting the steepness of the curve
b (float) : : parameter affecting the direction of the decay
c (float) : : the upper bound of the function's output
t (float) : : time variable
Returns: value of the logistic decay function at time t