Volume Positive & Negative Levels [ChartPrime]Volume Positive & Negative Levels
Overview:
The Volume Positive & Negative Levels indicator by ChartPrime is designed to provide traders with a clear visualization of volume activity across different price levels. By plotting volume levels as histograms, this tool helps identify significant areas of buying (positive volume) and selling (negative volume) pressure, enhancing the ability to spot potential support and resistance zones.
Key Features:
⯁ Lookback Period:
- The `lookbackPeriod` parameter, set to 500 bars, determines the range over which the volume analysis is conducted, ensuring a comprehensive view of the market’s volume activity. The maximum lookback period is 500 bars or the bars currently visible on the chart, whichever is smaller.
⯁ Dynamic Volume Calculation:
- Volume is calculated dynamically based on the price action, with positive volume indicating buying pressure (close > open) and negative volume indicating selling pressure (close < open).
⯁ Color Coding for Clarity:
- Positive Volume: Represented with a distinct color (`#ad9a2c`), making it easy to identify areas of buying interest.
- Negative Volume: Highlighted with another color (`#ad2cad`), simplifying the detection of selling pressure.
Volume Threshold and Bins:
- The indicator allows users to set a volume threshold (`volume_level`) to highlight significant volume levels, with the default set at 70.
- The number of bins (`numBins`) defines the granularity of the volume profile, with a higher number providing more detail.
⯁ Volume Profile Visualization:
- The volume profile is plotted as a histogram, with the height of each bar proportional to the volume at that price level. This visualization helps in quickly assessing the strength of volume at various price points.
⯁ Interactive Labels and Threshold Indicators:
- Labels: The indicator uses labels to mark significant volume levels, providing quick reference points for traders.
- Threshold Lines: Lines are drawn at specified volume thresholds, with colors and widths dynamically adjusted based on the volume levels.
⯁ User Inputs:
- Volume Threshold (`volume_level`): Sets the minimum volume required to highlight significant levels.
- Number of Bins (`numBins`): Determines the resolution of the volume profile.
- Line Width (`line_withd`): Specifies the width of the lines used in the visualization.
The Volume Positive & Negative Levels indicator is a powerful tool for traders looking to gain deeper insights into market dynamics. By providing a clear visual representation of volume activity across different price levels, it helps traders identify key support and resistance zones, spot trends, and make more informed trading decisions. Whether you are a day trader or a swing trader, this indicator enhances your ability to analyze volume data effectively, improving your overall trading strategy.
Cari dalam skrip untuk "摩根标普500指数基金的收益如何"
Comprehensive Correlation Meter with Multiple MarketsThe Comprehensive Correlation Meter is designed to provide traders and investors with insights into the relationships between multiple financial instruments. This script expands upon an existing idea on TradingView about correlation by introducing the ability to analyze the correlation between three markets, offering deeper insights into market relationships. It helps users understand how these markets move in relation to each other, aiding in risk management and portfolio diversification.
Key Features:
Multiple Market Analysis: This script allows you to analyze the correlation between your primary market and two other selected markets.
Customizable Inputs: Users can select any symbols for the reference and third markets, and these selections must be confirmed before use.
Correlation Coefficients: Calculates and plots the correlation coefficients for:
Current Market vs. Reference Market
Third Market vs. Reference Market
Current Market vs. Third Market
An average correlation of all three markets combined.
Visual Aids: Plots reference lines at +1, 0, and -1 to indicate maximum positive correlation, no correlation, and maximum negative correlation.
How It Works:
Input Symbols: Select the symbols for the reference and third markets. The current market is based on the chart you are viewing.
Data Collection: The script collects the closing prices of the selected markets and calculates the percentage changes.
Correlation Calculation: Using the collected data, the script computes the covariance and standard deviations to determine the correlation coefficients.
Visualization: The correlation coefficients and covariances are plotted for visual analysis.
How to Use:
Select Symbols:
Use the input fields to specify the reference and third market symbols. Confirm your selections to proceed.
Customize Display:
Choose whether to display the covariance, reference market, current market, and third market.
Select which correlation coefficients to display.
Interpret Results:
A correlation coefficient close to +1 indicates a strong positive correlation.
A coefficient close to -1 indicates a strong negative correlation.
A coefficient around 0 indicates little to no correlation.
Use these insights to manage risk and diversify your portfolio effectively.
Example Use Case:
Suppose you are trading the S&P 500 and want to understand its correlation with the NASDAQ 100 and a particular stock, such as Apple. By setting the S&P 500 as the reference market, the NASDAQ 100 as the third market, and observing the current market (Apple), you can see how these instruments move in relation to each other. This can help you decide on hedging strategies or identify opportunities for diversification. However this is Not a Financial advise
[EVI]Enhanced Volume IndicatorEnglish Version
Enhanced Volume Indicator (EVI)
The Enhanced Volume Indicator (EVI) is an advanced yet user-friendly tool designed to measure and visualize the strength of market volume using the statistical power of standard deviation. By offering a clear and dynamic representation of volume fluctuations, the EVI enables traders to effortlessly identify significant market movements and potential trading opportunities.
Key Features:
Sophisticated Volume Strength Assessment: The EVI leverages the standard deviation of historical candle volumes to evaluate and categorize the current volume intensity. This sophisticated methodology allows for the precise detection of when current volume levels significantly deviate from their historical norms.
Intuitive Visual Cues: Volume bars are color-coded to represent varying levels of volume intensity, ranging from very weak to very strong. This intuitive visual differentiation aids traders in quickly grasping the market's underlying volume dynamics at a glance.
Proactive Threshold Alerts: Stay ahead of the market with the EVI’s built-in alert functionality. Receive real-time notifications of critical volume changes, ensuring that you remain informed of significant market developments even while away from your trading desk.
How It Works:
The EVI calculates the Simple Moving Average (SMA) and Standard Deviation (STDEV) of volume over a user-defined period (default set to 500 candles). Utilizing these statistical measures, the indicator establishes various volume thresholds by applying predefined multipliers for extreme, high, medium, and low volume levels. The volume bars are then color-coded based on these thresholds, providing traders with a clear visual representation of volume intensity. Additionally, horizontal lines indicating these thresholds are plotted on the chart for easy reference, further enhancing the indicator’s usability.
This version of the EVI is particularly suited for traders who prefer simplicity and efficiency over complexity, making it an excellent alternative to the more intricate Volume Delta Divergence (VDD) indicator. The EVI delivers powerful volume insights in a straightforward and accessible manner, ensuring that even those who favor less complexity can benefit from robust volume analysis.
Ideal for traders seeking to capture major market moves or pinpoint potential reversals, the Enhanced Volume Indicator (EVI) is a must-have tool. Elevate your trading strategy with the EVI and ensure you never miss out on significant volume breakouts again.
Korean Version
Enhanced Volume Indicator (EVI)
Enhanced Volume Indicator (EVI)는 시장 볼륨의 강도를 표준편차의 통계적 힘을 사용하여 측정하고 시각화하는 고급적이면서도 사용하기 쉬운 도구입니다. EVI는 볼륨 변동의 명확하고 동적인 표현을 제공하여 트레이더가 중요한 시장 움직임과 잠재적인 거래 기회를 쉽게 식별할 수 있도록 합니다.
주요 기능:
정교한 볼륨 강도 평가: EVI는 이전 캔들의 볼륨 표준편차를 활용하여 현재 볼륨 강도를 평가하고 분류합니다. 이 정교한 방법론은 현재 볼륨 수준이 과거 평균에서 크게 벗어날 때를 정확하게 감지할 수 있도록 합니다.
직관적인 시각적 신호: 볼륨 바는 매우 약한 것부터 매우 강한 것까지 다양한 볼륨 강도를 나타내는 색상으로 코딩됩니다. 이 직관적인 시각적 차별화는 트레이더가 시장의 기본적인 볼륨 동향을 한눈에 쉽게 파악할 수 있도록 돕습니다.
선제적 임계값 알림: EVI의 내장 알림 기능으로 시장을 앞서가십시오. 중요한 볼륨 변화에 대한 실시간 알림을 받아 거래 데스크를 떠나 있는 동안에도 중요한 시장 발전에 대해 계속 정보를 얻을 수 있습니다.
작동 원리:
EVI는 사용자가 정의한 기간(기본값은 500 캔들)의 볼륨에 대한 단순 이동평균(SMA)과 표준편차(STDEV)를 계산합니다. 이러한 통계적 측정을 활용하여, 인디케이터는 극단적, 높은, 중간 및 낮은 볼륨 수준에 대한 사전 정의된 배수를 적용하여 다양한 볼륨 임계값을 설정합니다. 그런 다음, 볼륨 바는 이러한 임계값을 기반으로 색상 코딩되어 트레이더에게 볼륨 강도의 명확한 시각적 표현을 제공합니다. 또한, 이러한 임계값을 나타내는 수평선이 차트에 참조용으로 표시되어 인디케이터의 사용성을 더욱 향상시킵니다.
이 버전의 EVI는 복잡함보다는 단순함과 효율성을 선호하는 트레이더에게 특히 적합하여, 더 복잡한 Volume Delta Divergence (VDD) 인디케이터에 대한 훌륭한 대안이 됩니다. EVI는 강력한 볼륨 정보를 간단하고 접근 가능한 방식으로 제공하여, 복잡함을 싫어하는 사용자도 강력한 볼륨 분석의 혜택을 누릴 수 있도록 합니다.
주요 시장 움직임을 포착하거나 잠재적인 반전을 식별하려는 트레이더에게 이상적인 Enhanced Volume Indicator (EVI)는 반드시 갖추어야 할 도구입니다. EVI로 트레이딩 전략을 강화하고 중요한 볼륨 돌파를 절대 놓치지 마세요.
The Next Pivot (With History) [Mxwll]Introducing "The Next Pivot (With History)"!
With permission from the author @KioseffTrading
The script "The Next Pivot" has been restructured to show historical projections!
Features
Find the most similar price sequence per time frame change.
Forecast almost any public indicator! Not just price!
Forecast any session i.e. 4Hr, 1Hr, 15m, 1D, 1W
Forecast ZigZag for any session
Spearmen
Pearson
Absolute Difference
Cosine Similarity
Mean Squared Error
Kendall
Forecasted linear regression channel
The image above shows/explains some of the indicator's capabilities!
Additionally, you can project almost any indicator!
Should load times permit it, the script can search all bar history for a correlating sequence. This won't always be possible, contingent on the forecast length, correlation length, and the number of bars on the chart.
If a load time error occurs, simple reduce the "Bars Back To Search" parameter!
The script can only draw 500 bars into the future. For whatever time frame you are on and the session you wish to project, ensure it will not exceeded a 500-bar forecast!
Reasonable Assessment
The script uses various similarity measures to find the "most similar" price sequence to what's currently happening. Once found, the subsequent price move (to the most similar sequence) is recorded and projected forward.
So,
1: Script finds most similar price sequence
2: Script takes what happened after and projects forward
While this may be useful, the projection is simply the reaction to a possible one-off "similarity" to what's currently happening. Random fluctuations are likely and, if occurring, similarities between the current price sequence and the "most similar" sequence are plausibly coincidental.
Thanks!
VIX and SKEW RSI Moving AveragesSKEW and VIX are both indicators of market volatility and risk, but they represent different aspects.
VIX (CBOE Volatility Index) :.
The VIX is a well-known indicator for predicting future market volatility. It is calculated primarily based on S&P 500 options premiums and indicates the degree of market instability and risk.
Typically, when the VIX is high, market participants view the future as highly uncertain and expect sharp volatility in stock prices. It is generally considered an indicator of market fear.
SKEW Index :.
The SKEW is a measure of how much market participants estimate the risk of future declines in stock prices, calculated by the CBOE (Chicago Board Options Exchange) and derived from the premium on S&P 500 options.
If the SKEW is high, market participants consider the risk of future declines in stock prices to be high. This generally indicates a "fat tail at the base" of the market and suggests that the market perceives it as very risky.
These indicators are used by market participants to indicate their concerns and expectations about future stock price volatility. In general, when the VIX is high and the SKEW is high, the market is considered volatile and risky. Conversely, when the VIX is low and the SKEW is low, the market is considered relatively stable and low risk.
Inverse Relationship between SKEW and VIX
It is often observed that there is an inverse correlation between SKEW and VIX. In general, the relationship is as follows
High VIX and low SKEW: When the VIX is high and the SKEW is low, the market is considered volatile while the risk of future stock price declines is low. This indicates that the market is exposed to sharp volatility, but market participants do not expect a major decline.
Low VIX and High SKEW: A low VIX and high SKEW indicates that the market is relatively stable, while the risk of future declines in stock prices is considered high. This indicates that the market is calm, but market participants are wary of a sharp future decline.
This inverse correlation is believed to be the result of market participants' psychology and expectations affecting the movements of the VIX and SKEW. For example, when the VIX is high, it is evident that the market is volatile, and under such circumstances, people tend to view the risk of a sharp decline in stock prices as low. Conversely, when the VIX is low, the market is considered relatively stable and the risk of future declines is likely to be higher.
SKEWVIX RSIMACROSS
In order to compare the trends of the SKEW and VIX, the 50-period moving average of the Relative Strength Index (RSI) was used for verification. the RSI is an indicator of market overheating or overcooling, and the 50-period moving average can be used to determine the medium- to long-term trend. This analysis reveals how the inverse correlation between the SKEW and the VIX relates to the long-term moving average of the RSI.
how to use
Moving Average Direction
Rising blue for VIXRSI indicates increased uncertainty in the market
Rising red for SKEWRSI indicates optimism and beyond
RSI moving average crossing
When the SKEW is dominant, market participants are considered less concerned about a black swan event (significant unexpected price volatility). This suggests that the market is stable and willing to take risks. On the other hand, when the VIX is dominant, it indicates increased market volatility. Investors are more concerned about market uncertainty and tend to take more conservative positions to avoid risk. The direction of the moving averages and the crossing of the moving averages of the two indicators can give an indication of the state of the market.
SKEW>VIX Optimistic/Goldilocks
VIX>SKEW Uncertainty/turbulence
The market can be judged as follows.
BestRegards
Buffett IndicatorThis is an open-source version of the Buffett indicator. The old version was code-protected and broken, so I created another version.
It's computed simply as the entire SPX 500 capitalization divided by the US GDP. Since TradingView does not have data for the SPX 500 capitalization, I used quarterly values of SPX devisors as a proxy.
I tried to create another version of the Buffett indicator for other countries/indexes, but I can't find the data. If you can help me find data for index divisors, I can add more choices to this indicator.
It's interesting to see how this indicator's behavior has changed in the last few years. Levels that looked crazy are not so crazy anymore.
Disclaimer
Please remember that past performance may not be indicative of future results.
Due to various factors, including changing market conditions, the strategy may no longer perform as well as in historical backtesting.
This post and the script don’t provide any financial advice.
ATR Bands (Keltner Channel), Wick and SRSI Signals [MW]Introduction
This indicator uses a novel combination of ATR Bands, candle wicks crossing the ATR upper and lower bands, and baseline, and combines them with the Stochastic SRSI oscillator to provide early BUY and SELL signals in uptrends, downtrends, and in ranging price conditions.
How it’s unique
People generally understand Bollinger Bands and Keltner Channels. Buy at the bottom band, sell at the top band. However, because the bands themselves are not static, impulsive moves can render them useless. People also generally understand wicks. Candles with large wicks can represent a change in pattern, or volatile price movement. Combining those two to determine if price is reaching a pivot point is relatively novel. When Stochastic RSI (SRSI) filtering is also added, it becomes a genuinely unique combination that can be used to determine trade entries and exits.
What’s the benefit
The benefit of the indicator is that it can help potentially identify pivots WHEN THEY HAPPEN, and with potentially minimal retracement, depending on the trader’s time window. Many indicators wait for a trend to be established, or wait for a breakout to occur, or have to wait for some form of confirmation. In the interpretation used by this indicator, bands, wicks, and SRSI cycles provide both the signal and confirmation.
It takes into account 3 elements:
Price approaching the upper or lower band or the baseline - MEANING: Price is becoming extended based on calculations that use the candle trading range.
A candle wick of a defined proportion (e.g. wick is 1/2 the size of a full candle OR candle body) crosses a band or baseline, but the body does not cross the band or baseline - MEANING: Buyers and sellers are both very active.
The Stochastic RSI reading is above 80 for SELL signals and below 20 for BUY signals - MEANING: Additional confirmation that price is becoming extended based on the current cyclic price pattern.
How to Use
SIGNALS
Buy Signals - Green(ish):
B Signal - Potential pivot up from the lower band when using the preferred multiplier
B1 Signal - Potential pivot up from the lower band when using phi * multiplier
B2 Signal - Potential pivot up from the lower band when using 1/2 * multiplier
B3 Signal - Potential pivot up from baseline
Sell Signals - Red(ish):
S Signal - Potential pivot down from the upper band when using the preferred multiplier
S1 Signal - Potential pivot down from the upper band when using
S2 Signal - Potential pivot down from the upper band when using 1/2 * multiplier
S3 Signal - Potential pivot down from the baseline
DISCUSSION
During an uptrend or downtrend, signals from the baseline can help traders identify areas where they may enter the trending move with the least amount of drawdown. In both cases, entry points can occur with baseline signals in the direction of the trend.
For example, in an uptrend (when the price is forming higher highs and higher lows, or when the baseline is rising), price tends to oscillate between the upper band and baseline. In this case, the baseline BUY signal (B3) can show an entry point.
In a downtrend (when the price is forming lower highs and lower lows, or when the baseline is falling), price tends to oscillate between the baseline and the lower band. In this case, the baseline SELL signal (S3) can show an entry point.
During consolidation, when price is ranging, price tends to oscillate between the upper and lower bands, while crossing through the baseline unperturbed. Here, entry points can occur at the upper and lower bands.
When all conditions are met at the lower band during consolidation, a BUY signal (B), can occur. This signal may also occur prior to a break out of consolidation to the upside.
When all conditions are met at the upper band during consolidation, a SELL signal (S), can occur. This signal may also occur prior to a break out of consolidation to the downside.
Additional B1, B2, and S1, and S2 signals can be displayed that use the bands based on a multiplier that is half that of the primary one, and phi (0.618) times the primary multiplier as a way to quickly check for signals occurring along different, but related, bands.
Calculations
ATR Bands, or Keltner Channels, are a technical analysis tool that are used to measure market volatility and identify overbought or oversold conditions in the trading of financial instruments, such as stocks, bonds, commodities, and currencies. ATR Bands consist of three lines plotted on a price chart:
Middle Band, Basis, or Baseline: This is typically a simple moving average (SMA) of the closing prices over a certain period. It represents the intermediate-term trend of the asset's price.
Upper Band: This is calculated by adding a certain number of ATRs to the middle band (SMA). The upper band adjusts itself with the increase in volatility.
Lower Band: This is calculated by subtracting the same number of ATRs from the middle band (SMA). Like the upper band, the lower band adjusts to changes in volatility.
The candle wick signals occur if the wick is at the specified ratio compared to either the entire candle or the candle body. The upper band, lower band, and baseline signals happen if the wick is the specified ratio of the total candle size. For the major signals for upper and lower bands, these occur when the wick extends outside of the bands while closing a candle inside of the bands. For the baseline signals, they occur if a wick crosses a baseline but closes on the other side.
Settings
CHANNEL SETTINGS
Baseline EMA Period (Default: 21): Period length of the moving average basis line.
ATR Period (Default: 21): The number of periods over which the Average True Range (ATR) is calculated.
Basis MA Type (Default: SMA): The moving average type for the basis line.
Multiplier (Default: 2.5: The deviation multiplier used to calculate the band distance from the basis line.
ADDITIONAL CHANNELS
Half of Multiplier Offset (Default: True): Toggles the display of the ATR bands that are set a distance of half of the ATR multiplier.
Quarter of Multiplier Offset (Default: false): Toggles the display of the ATR bands that are set a distance of one quarter of the ATR multiplier.
Phi (Φ) Offset (Default: false): Toggles the display of the ATR bands that are set a distance of phi (Φ) times the ATR multiplier.
WICK SETTINGS FOR CANDLE FILTERS
Wick Ratio for Bands (Default: 0.4): The ratio of wick size to total candle size for use at upper and lower bands.
Wick Ratio for Baseline (Default: 0.4): The ratio of wick size to total candle size for use at baseline.
Use Candle Body (rather than full candle size) (Default: false): Determines whether wick calculations use the candle body or the entire candle size.
VISUAL PREFERENCES - SIGNALS
Show Signals (Default: true): Allows signal labels to be shown.
Show Signals from 1/2 Band Offset (Default: false): Toggle signals originating from 1/2 offset upper and lower bands.
Show Signals from Phi (Φ) Band Offset (Default: false): Toggle signals originating from phi (Φ) offset upper and lower bands.
Show Baseline Signals (Default: false): Toggle Baseline signals.
VISUAL PREFERENCES - BANDS
Show ATR (Keltner) Bands (Default: true): Use a background color inside the Bollinger Bands.
Fill Bands (Default: true): Use a background color inside the Bollinger Bands.
STOCHASTIC SETTINGS
Use Stochastic RSI Filtering (Default: False): This will only trigger some SELL signals when the stochastic RSI is above 80, and BUY signals when below 20.
K (Default: 3): The smoothing level for the Stochastic RSI.
RSI Length (Default: 14): The period length for the RSI calculation.
Stochastic Length (Default: 8): The period length over which the stochastic calculation is performed.
Other Usage Notes and Limitations
To understand future price movement, this indicator assumes that 3 things must be known:
Evidence of a change of market structure. This can be demonstrated by increased volatility, consolidation, volume spikes (which can be tracked with the MW Volume Impulse Indicator) or, in the case of this indicator, candle wicks.
The potential cause of the change. It could be a VWAP line (which can be tracked with the Multi VWAP , and Multi VWAP from Gaps indicators), an event, an important support or resistance level, a key moving average, or many other things. This indicator assumes the ATR bands can be a cause.
The current position in the price cycle. Oscillators like the RSI, and MACD, are typical measures of price oscillation (other oscillators like the Price and Volume Stochastic Divergence indicator can also be useful). This indicator uses the Stochastic RSI oscillator to determine overbought and oversold conditions.
When evidence of the change appears, and the potential cause of the change is identified, and the price oscillation is at a favorable position for the desired trading direction, this indicator will generate a signal.
ATR Bands (or Keltner Channels) are used to determine when price might “revert to the mean”. Crossing, or being near the upper or lower band, can indicate an overbought or oversold condition, which could lead to a price reversal. By tracking the behavior of candle wicks during these events, we can see how active the battle is between buyers and sellers.
If the top of a wick is large, it may indicate that sellers are aggressively attempting to bring the price down. Conversely, if the bottom wick is large, it can indicate that buyers are actively trying to counter the price action caused by selling pressure.
When this wicking action occurs at times when price is not near the upper band, lower band, or baseline, it could indicate the presence of an important level. That could mean a nearby VWAP line, a supply or demand zone, a round price number, or a number of other factors. In any case, this wick may be the first indication of a price reversal.
Shorter baseline periods may be better for short period trading like scalping or day trading, while longer period baselines can show signals that are better suited to swing trading, or longer term investing.
It's important for traders to be aware of the limitations of any indicator and to use them as part of a broader, well-rounded trading strategy that includes risk management, fundamental analysis, and other tools that can help with reducing false signals, determining trend direction, and providing additional confirmation for a trade decision. Diversifying strategies and not relying solely on one type of indicator or analysis can help mitigate some of these risks.
The TradingView platform allows a maximum of 500 labels per chart. This means that if your settings allow for a lot of signals, labels for earlier ones may not appear if the total number of labels exceeds 500 for the chart.
Bollinger Band Wick and SRSI Signals [MW]Introduction
This indicator uses a novel combination of Bollinger Bands, candle wicks crossing the upper and lower Bollinger Bands and baseline, and combines them with the Stochastic SRSI oscillator to provide early BUY and SELL signals in uptrends, downtrends, and in ranging price conditions.
How it’s unique
People generally understand Bollinger Bands and Keltner Channels. Buy at the bottom band, sell at the top band. However, because the bands themselves are not static, impulsive moves can render them useless. People also generally understand wicks. Candles with large wicks can represent a change in pattern, or volatile price movement. Combining those two to determine if price is reaching a pivot point is relatively novel. When Stochastic RSI (SRSI) filtering is also added, it becomes a genuinely unique combination that can be used to determine trade entries and exits.
What’s the benefit
The benefit of the indicator is that it can help potentially identify pivots WHEN THEY HAPPEN, and with potentially minimal retracement, depending on the trader’s time window. Many indicators wait for a trend to be established, or wait for a breakout to occur, or have to wait for some form of confirmation. In the interpretation used by this indicator, bands, wicks, and SRSI cycles provide both the signal and confirmation.
It takes into account 3 elements:
Price approaching the upper or lower band or the baseline - MEANING: Price is becoming extended based on calculations that use the candle trading range.
A candle wick of a defined proportion (e.g. wick is 1/2 the size of a full candle OR candle body) crosses a band or baseline, but the body does not cross the band or baseline - MEANING: Buyers and sellers are both very active.
The Stochastic RSI reading is above 80 for SELL signals and below 20 for BUY signals - MEANING: Additional confirmation that price is becoming extended based on the current cyclic price pattern.
How to Use
SIGNALS
Buy Signals - Green(ish):
B Signal - Potential pivot up from the lower band when using the preferred multiplier
B1 Signal - Potential pivot up from baseline
Sell Signals - Red(ish):
S Signal - Potential pivot down from the upper band when using the preferred multiplier
S1 Signal - Potential pivot down from the baseline
DISCUSSION
During an uptrend or downtrend, signals from the baseline can help traders identify areas where they may enter the trending move with the least amount of drawdown. In both cases, entry points can occur with baseline signals in the direction of the trend.
For example, in an uptrend (when the price is forming higher highs and higher lows, or when the baseline is rising), price tends to oscillate between the upper band and baseline. In this case, the baseline BUY signal (B3) can show an entry point.
In a downtrend (when the price is forming lower highs and lower lows, or when the baseline is falling), price tends to oscillate between the baseline and the lower band. In this case, the baseline SELL signal (S3) can show an entry point.
During consolidation, when price is ranging, price tends to oscillate between the upper and lower bands, while crossing through the baseline unperturbed. Here, entry points can occur at the upper and lower bands.
When all conditions are met at the lower band during consolidation, a BUY signal (B), can occur. This signal may also occur prior to a break out of consolidation to the upside.
When all conditions are met at the upper band during consolidation, a SELL signal (S), can occur. This signal may also occur prior to a break out of consolidation to the downside.
Additional, B1 and S1 signals can be displayed that use the baseline as the pivot level.
Settings
SIGNALS
Show Bollinger Band Signals (Default: True): Allows signal labels to be shown.
Hide Baseline Signals (Default: False): Baseline signals are on by default. This will turn them off.
Show Wick Signals (Defau
lt: True): Displays signals when wicking occurs.
BOLLINGER BAND SETTINGS
Period length for Bollinger Band Basis (Default: 21): Length of the Bollinger Band (BB) moving average basis line.
Basis MA Type (Default: SMA): The moving average type for the BB Basis line.
Source (Default: “close”): The source of time series data.
Standard Deviation Multiplier (Default: 2.5: The deviation multiplier used to calculate the band distance from the basis line.
WICK SETTINGS FOR BOLLINGER BANDS
Wick Ratio for Bands (Default: 0.3): The ratio of wick size to total candle size for use at upper and lower bands.
Wick Ratio for Baseline (Default: 0.3): The ratio of wick size to total candle size for use at baseline.
WICK SETTINGS FOR CANDLE SIGNALS
Upper Wick Threshold (Default: 50): The percent of upper wick compared to the full candle size or candle body size.
Lower Wick Threshold (Default: 50): The percent of lower wick compared to the full candle size or candle body size.
Use Candle Body (Default: false): Toggles the use of the full candle size versus the candle body size when calculating the wick signal.
VISUAL PREFERENCES
Fill Bands (Default: true): Use a background color inside the Bollinger Bands.
Show Signals (Default: true): Toggle the Bollinger Band upper band, lower band, and baseline signals.
Show Bollinger Bands (Default: true): Show the Bollinger Bands.
STOCHASTIC SETTINGS
Use Stochastic RSI Filtering (Default: False): This will only trigger some SELL signals when the stochastic RSI is above 80, and BUY signals when below 20.
K (Default: 3): The smoothing level for the Stochastic RSI.
RSI Length (Default: 14): The period length for the RSI calculation.
Stochastic Length (Default: 8): The period length over which the stochastic calculation is performed.
Calculations
Bollinger Bands are a technical analysis tool that are used to measure market volatility and identify overbought or oversold conditions in the trading of financial instruments, such as stocks, bonds, commodities, and currencies. Bollinger Bands consist of three lines plotted on a price chart:
Middle Band, Basis, or Baseline: This is typically a simple moving average (SMA) of the closing prices over a certain period. It represents the intermediate-term trend of the asset's price.
Upper Band: This is calculated by adding a certain number of standard deviations to the middle band (SMA). The upper band adjusts itself with the increase in volatility.
Lower Band: This is calculated by subtracting the same number of standard deviations from the middle band (SMA). Like the upper band, the lower band adjusts to changes in volatility.
The candle wick signals occur if the wick is at the specified ratio compared to either the entire candle or the candle body. The upper band, lower band, and baseline signals happen if the wick is the specified ratio of the total candle size. For the major signals for upper and lower bands, these occur when the wick extends outside of the bands while closing a candle inside of the bands. For the baseline signals, they occur if a wick crosses a baseline but closes on the other side.
Other Usage Notes and Limitations
To understand future price movement, this indicator assumes that 3 things must be known:
Evidence of a change of market structure. This can be demonstrated by increased volatility, consolidation, volume spikes (which can be tracked with the MW Volume Impulse Indicator) or, in the case of this indicator, candle wicks.
The potential cause of the change. It could be a VWAP line (which can be tracked with the Multi VWAP , and Multi VWAP from Gaps indicators), an event, an important support or resistance level, a key moving average, or many other things. This indicator assumes the ATR bands can be a cause.
The current position in the price cycle. Oscillators like the RSI, and MACD, are typical measures of price oscillation (other oscillators like the Price and Volume Stochastic Divergence indicator can also be useful). This indicator uses the Stochastic RSI oscillator to determine overbought and oversold conditions.
When evidence of the change appears, and the potential cause of the change is identified, and the price oscillation is at a favorable position for the desired trading direction, this indicator will generate a signal.
ATR Bands (or Keltner Channels) are used to determine when price might “revert to the mean”. Crossing, or being near the upper or lower band, can indicate an overbought or oversold condition, which could lead to a price reversal. By tracking the behavior of candle wicks during these events, we can see how active the battle is between buyers and sellers.
If the top of a wick is large, it may indicate that sellers are aggressively attempting to bring the price down. Conversely, if the bottom wick is large, it can indicate that buyers are actively trying to counter the price action caused by selling pressure.
When this wicking action occurs at times when price is not near the upper band, lower band, or baseline, it could indicate the presence of an important level. That could mean a nearby VWAP line, a supply or demand zone, a round price number, or a number of other factors. In any case, this wick may be the first indication of a price reversal.
Shorter baseline periods may be better for short period trading like scalping or day trading, while longer period baselines can show signals that are better suited to swing trading, or longer term investing.
It's important for traders to be aware of the limitations of any indicator and to use them as part of a broader, well-rounded trading strategy that includes risk management, fundamental analysis, and other tools that can help with reducing false signals, determining trend direction, and providing additional confirmation for a trade decision. Diversifying strategies and not relying solely on one type of indicator or analysis can help mitigate some of these risks.
The TradingView platform allows a maximum of 500 labels per chart. This means that if your settings allow for a lot of signals, labels for earlier ones may not appear if the total number of labels exceeds 500 for the chart.
Market Internals & InfoThis script provides various information on Market Internals and other related info. It was a part of the Daily Levels script but that script was getting very large so I decided to separate this piece of it into its own indicator. I plan on adding some additional features in the near future so stay tuned for those!
The script provides customizability to show certain market internals, tickers, and even Market Profile TPO periods.
Here is a summary of each setting:
NASDAQ and NYSE Breadth Ratio
- Ratio between Up Volume and Down Volume for NASDAQ and NYSE markets. This can help inform about the type of volume flowing in and out of these exchanges.
Advance/Decline Line (ADL)
The ADL focuses specifically on the number of advancing and declining stocks within an index, without considering their trading volume.
Here's how the ADL works:
It tracks the daily difference between the number of stocks that are up in price (advancing) and the number of stocks that are down in price (declining) within a particular index.
The ADL is a cumulative measure, meaning each day's difference is added to the previous day's total.
If there are more advancing stocks, the ADL goes up.
If there are more declining stocks, the ADL goes down.
By analyzing the ADL, investors can get a sense of how many stocks are participating in a market move.
Here's what the ADL can tell you:
Confirmation of Trends: When the ADL moves in the same direction as the underlying index (e.g., ADL rising with a rising index), it suggests broad participation in the trend and potentially stronger momentum.
Divergence: If the ADL diverges from the index (e.g., ADL falling while the index is rising), it can be a warning sign. This suggests that fewer stocks are participating in the rally, which could indicate a weakening trend.
Keep in mind:
The ADL is a backward-looking indicator, reflecting past market activity.
It's often used in conjunction with other technical indicators for a more complete picture.
TRIN Arms Index
The TRIN index, also called the Arms Index or Short-Term Trading Index, is a technical analysis tool used in the stock market to gauge market breadth and sentiment. It essentially compares the number of advancing stocks (gaining in price) to declining stocks (losing price) along with their trading volume.
Here's how to interpret the TRIN:
High TRIN (above 1.0): This indicates a weak market where declining stocks and their volume are dominating the market. It can be a sign of a potential downward trend.
Low TRIN (below 1.0): This suggests a strong market where advancing stocks and their volume are in control. It can be a sign of a potential upward trend.
TRIN around 1.0: This represents a more balanced market, where it's difficult to say which direction the market might be headed.
Important points to remember about TRIN:
It's a short-term indicator, primarily used for intraday trading decisions.
It should be used in conjunction with other technical indicators for a more comprehensive market analysis. High or low TRIN readings don't guarantee future price movements.
VIX/VXN
VIX and VXN are both indexes created by the Chicago Board Options Exchange (CBOE) to measure market volatility. They differ based on the underlying index they track:
VIX (Cboe Volatility Index): This is the more well-known index and is considered the "fear gauge" of the stock market. It reflects the market's expectation of volatility in the S&P 500 index over the next 30 days.
VXN (Cboe Nasdaq Volatility Index): This is a counterpart to the VIX, but instead gauges volatility expectations for the Nasdaq 100 index over the coming 30 days. The tech-heavy Nasdaq can sometimes diverge from the broader market represented by the S&P 500, hence the need for a separate volatility measure.
Both VIX and VXN are calculated based on the implied volatilities of options contracts listed on their respective indexes. Here's a general interpretation:
High VIX/VXN: Indicates a high level of fear or uncertainty in the market, suggesting investors expect significant price fluctuations in the near future.
Low VIX/VXN: Suggests a more complacent market with lower expectations of volatility.
Important points to remember about VIX and VXN:
They are forward-looking indicators, reflecting market sentiment about future volatility, not necessarily current market conditions.
High VIX/VXN readings don't guarantee a market crash, and low readings don't guarantee smooth sailing.
These indexes are often used by investors to make decisions about portfolio allocation and hedging strategies.
Inside/Outside Day
This provides a quick indication of it we are still trading inside or outside of yesterdays range and will show "Inside Day" or "Outside Day" based upon todays range vs. yesterday's range.
Custom Ticker Choices
Ability to add up to 5 other tickers that can be tracked within the table
Show Market Profile TPO
This only shows on timeframes less than 30m. It will show both the current TPO period and the remaining time within that period.
Table Customization
Provided drop downs to change the text size and also the location of the table.
Material Design ColorsThis library provides a standard set of colors defined in Material Design 2.0.
🔵 API
Step 1: Import this library.
import algotraderdev/material/1
// remember to check the latest version of this library and replace the 1 above.
Step 2: Get the color you like. Check the source code or the screenshot above to see all the supported colors.
material.red()
Each color function (except for `black()` and `white()`) accepts an optional `variant` parameter. You can choose any of 50, 100, 200, 300, 400, 500, 600, 700, 800, and 900. By default, 500 is chosen if this parameter is not provided.
Normalized Market IndicatorsExplanation of the Code:
Data Retrieval: The script retrieves the closing prices of the S&P 500 (sp500) and VIX (vix).
Normalization: The script normalizes these values using a simple z-score normalization (subtracting the 50-period simple moving average and dividing by the 50-period standard deviation). This makes the scales of the two datasets more comparable.
Plotting with Secondary Axis: The normalized values of the S&P 500 and VIX are plotted on the same chart. They will share the same y-axis scale as the main chart (e.g. Netflix, GOLD, Forex).
Points to Note:
Normalization Method: The method of normalization (z-score in this case) is a choice and can be adjusted based on your needs. The idea is to bring the data to a comparable scale.
Timeframe and Symbol Codes: Ensure the timeframe and symbol codes are appropriate for your data source and trading strategy.
Overlaying on Price Chart: Since these values are normalized and plotted on a seperate chart, they won't directly correspond to the price levels of the main chart (e.g. Netflix, GOLD, Forex).
ottlibLibrary "ottlib"
█ OVERVIEW
This library contains functions for the calculation of the OTT (Optimized Trend Tracker) and its variants, originally created by Anıl Özekşi (Anil_Ozeksi). Special thanks to him for the concept and to Kıvanç Özbilgiç (KivancOzbilgic) and dg_factor (dg_factor) for adapting them to Pine Script.
█ WHAT IS "OTT"
The OTT (Optimized Trend Tracker) is a highly customizable and very effective trend-following indicator that relies on moving averages and a trailing stop at its core. Moving averages help reduce noise by smoothing out sudden price movements in the markets, while trailing stops assist in detecting trend reversals with precision. Initially developed as a noise-free trailing stop, the current variants of OTT range from rapid trend reversal detection to long-term trend confirmation, thanks to its extensive customizability.
It's well-known variants are:
OTT (Optimized Trend Tracker).
TOTT (Twin OTT).
OTT Channels.
RISOTTO (RSI OTT).
SOTT (Stochastic OTT).
HOTT & LOTT (Highest & Lowest OTT)
ROTT (Relative OTT)
FT (Original name is Fırsatçı Trend in Turkish which translates to Opportunist Trend)
█ LIBRARY FEATURES
This library has been prepared in accordance with the style, coding, and annotation standards of Pine Script version 5. As a result, explanations and examples will appear when users hover over functions or enter function parameters in the editor.
█ USAGE
Usage of this library is very simple. Just import it to your script with the code below and use its functions.
import ismailcarlik/ottlib/1 as ottlib
█ FUNCTIONS
• f_vidya(source, length, cmoLength)
Short Definition: Chande's Variable Index Dynamic Average (VIDYA).
Details: This function computes Chande's Variable Index Dynamic Average (VIDYA), which serves as the original moving average for OTT. The 'length' parameter determines the number of bars used to calculate the average of the given source. Lower values result in less smoothing of prices, while higher values lead to greater smoothing. While primarily used internally in this library, it has been made available for users who wish to utilize it as a moving average or use in custom OTT implementations.
Parameters:
source (float) : (series float) Series of values to process.
length (simple int) : (simple int) Number of bars to lookback.
cmoLength (simple int) : (simple int) Number of bars to lookback for calculating CMO. Default value is `9`.
Returns: (float) Calculated average of `source` for `length` bars back.
Example:
vidyaValue = ottlib.f_vidya(source = close, length = 20)
plot(vidyaValue, color = color.blue)
• f_mostTrail(source, multiplier)
Short Definition: Calculates trailing stop value.
Details: This function calculates the trailing stop value for a given source and the percentage. The 'multiplier' parameter defines the percentage of the trailing stop. Lower values are beneficial for catching short-term reversals, while higher values aid in identifying long-term trends. Although only used once internally in this library, it has been made available for users who wish to utilize it as a traditional trailing stop or use in custom OTT implementations.
Parameters:
source (float) : (series int/float) Series of values to process.
multiplier (simple float) : (simple float) Percent of trailing stop.
Returns: (float) Calculated value of trailing stop.
Example:
emaValue = ta.ema(source = close, length = 14)
mostValue = ottlib.f_mostTrail(source = emaValue, multiplier = 2.0)
plot(mostValue, color = emaValue >= mostValue ? color.green : color.red)
• f_ottTrail(source, multiplier)
Short Definition: Calculates OTT-specific trailing stop value.
Details: This function calculates the trailing stop value for a given source in the manner used in OTT. Unlike a traditional trailing stop, this function modifies the traditional trailing stop value from two bars prior by adjusting it further with half the specified percentage. The 'multiplier' parameter defines the percentage of the trailing stop. Lower values are beneficial for catching short-term reversals, while higher values aid in identifying long-term trends. Although primarily used internally in this library, it has been made available for users who wish to utilize it as a trailing stop or use in custom OTT implementations.
Parameters:
source (float) : (series int/float) Series of values to process.
multiplier (simple float) : (simple float) Percent of trailing stop.
Returns: (float) Calculated value of OTT-specific trailing stop.
Example:
vidyaValue = ottlib.f_vidya(source = close, length = 20)
ottValue = ottlib.f_ottTrail(source = vidyaValue, multiplier = 1.5)
plot(ottValue, color = vidyaValue >= ottValue ? color.green : color.red)
• ott(source, length, multiplier)
Short Definition: Calculates OTT (Optimized Trend Tracker).
Details: The OTT consists of two lines. The first, known as the "Support Line", is the VIDYA of the given source. The second, called the "OTT Line", is the trailing stop based on the Support Line. The market is considered to be in an uptrend when the Support Line is above the OTT Line, and in a downtrend when it is below.
Parameters:
source (float) : (series float) Series of values to process. Default value is `close`.
length (simple int) : (simple int) Number of bars to lookback. Default value is `2`.
multiplier (simple float) : (simple float) Percent of trailing stop. Default value is `1.4`.
Returns: ( [ float, float ]) Tuple of `supportLine` and `ottLine`.
Example:
= ottlib.ott(source = close, length = 2, multiplier = 1.4)
longCondition = ta.crossover(supportLine, ottLine)
shortCondition = ta.crossunder(supportLine, ottLine)
• tott(source, length, multiplier, bandsMultiplier)
Short Definition: Calculates TOTT (Twin OTT).
Details: TOTT consists of three lines: the "Support Line," which is the VIDYA of the given source; the "Upper Line," a trailing stop of the Support Line adjusted with an added multiplier; and the "Lower Line," another trailing stop of the Support Line, adjusted with a reduced multiplier. The market is considered in an uptrend if the Support Line is above the Upper Line and in a downtrend if it is below the Lower Line.
Parameters:
source (float) : (series float) Series of values to process. Default value is `close`.
length (simple int) : (simple int) Number of bars to lookback. Default value is `40`.
multiplier (simple float) : (simple float) Percent of trailing stop. Default value is `0.6`.
bandsMultiplier (simple float) : Multiplier for bands. Default value is `0.0006`.
Returns: ( [ float, float, float ]) Tuple of `supportLine`, `upperLine` and `lowerLine`.
Example:
= ottlib.tott(source = close, length = 40, multiplier = 0.6, bandsMultiplier = 0.0006)
longCondition = ta.crossover(supportLine, upperLine)
shortCondition = ta.crossunder(supportLine, lowerLine)
• ott_channel(source, length, multiplier, ulMultiplier, llMultiplier)
Short Definition: Calculates OTT Channels.
Details: OTT Channels comprise nine lines. The central line, known as the "Mid Line," is the OTT of the given source's VIDYA. The remaining lines are positioned above and below the Mid Line, shifted by specified multipliers.
Parameters:
source (float) : (series float) Series of values to process. Default value is `close`
length (simple int) : (simple int) Number of bars to lookback. Default value is `2`
multiplier (simple float) : (simple float) Percent of trailing stop. Default value is `1.4`
ulMultiplier (simple float) : (simple float) Multiplier for upper line. Default value is `0.01`
llMultiplier (simple float) : (simple float) Multiplier for lower line. Default value is `0.01`
Returns: ( [ float, float, float, float, float, float, float, float, float ]) Tuple of `ul4`, `ul3`, `ul2`, `ul1`, `midLine`, `ll1`, `ll2`, `ll3`, `ll4`.
Example:
= ottlib.ott_channel(source = close, length = 2, multiplier = 1.4, ulMultiplier = 0.01, llMultiplier = 0.01)
• risotto(source, length, rsiLength, multiplier)
Short Definition: Calculates RISOTTO (RSI OTT).
Details: RISOTTO comprised of two lines: the "Support Line," which is the VIDYA of the given source's RSI value, calculated based on the length parameter, and the "RISOTTO Line," a trailing stop of the Support Line. The market is considered in an uptrend when the Support Line is above the RISOTTO Line, and in a downtrend if it is below.
Parameters:
source (float) : (series float) Series of values to process. Default value is `close`.
length (simple int) : (simple int) Number of bars to lookback. Default value is `50`.
rsiLength (simple int) : (simple int) Number of bars used for RSI calculation. Default value is `100`.
multiplier (simple float) : (simple float) Percent of trailing stop. Default value is `0.2`.
Returns: ( [ float, float ]) Tuple of `supportLine` and `risottoLine`.
Example:
= ottlib.risotto(source = close, length = 50, rsiLength = 100, multiplier = 0.2)
longCondition = ta.crossover(supportLine, risottoLine)
shortCondition = ta.crossunder(supportLine, risottoLine)
• sott(source, kLength, dLength, multiplier)
Short Definition: Calculates SOTT (Stochastic OTT).
Details: SOTT is comprised of two lines: the "Support Line," which is the VIDYA of the given source's Stochastic value, based on the %K and %D lengths, and the "SOTT Line," serving as the trailing stop of the Support Line. The market is considered in an uptrend when the Support Line is above the SOTT Line, and in a downtrend when it is below.
Parameters:
source (float) : (series float) Series of values to process. Default value is `close`.
kLength (simple int) : (simple int) Stochastic %K length. Default value is `500`.
dLength (simple int) : (simple int) Stochastic %D length. Default value is `200`.
multiplier (simple float) : (simple float) Percent of trailing stop. Default value is `0.5`.
Returns: ( [ float, float ]) Tuple of `supportLine` and `sottLine`.
Example:
= ottlib.sott(source = close, kLength = 500, dLength = 200, multiplier = 0.5)
longCondition = ta.crossover(supportLine, sottLine)
shortCondition = ta.crossunder(supportLine, sottLine)
• hottlott(length, multiplier)
Short Definition: Calculates HOTT & LOTT (Highest & Lowest OTT).
Details: HOTT & LOTT are composed of two lines: the "HOTT Line", which is the OTT of the highest price's VIDYA, and the "LOTT Line", the OTT of the lowest price's VIDYA. A high price surpassing the HOTT Line can be considered a long signal, while a low price dropping below the LOTT Line may indicate a short signal.
Parameters:
length (simple int) : (simple int) Number of bars to lookback. Default value is `20`.
multiplier (simple float) : (simple float) Percent of trailing stop. Default value is `0.6`.
Returns: ( [ float, float ]) Tuple of `hottLine` and `lottLine`.
Example:
= ottlib.hottlott(length = 20, multiplier = 0.6)
longCondition = ta.crossover(high, hottLine)
shortCondition = ta.crossunder(low, lottLine)
• rott(source, length, multiplier)
Short Definition: Calculates ROTT (Relative OTT).
Details: ROTT comprises two lines: the "Support Line", which is the VIDYA of the given source, and the "ROTT Line", the OTT of the Support Line's VIDYA. The market is considered in an uptrend if the Support Line is above the ROTT Line, and in a downtrend if it is below. ROTT is similar to OTT, but the key difference is that the ROTT Line is derived from the VIDYA of two bars of Support Line, not directly from it.
Parameters:
source (float) : (series float) Series of values to process. Default value is `close`.
length (simple int) : (simple int) Number of bars to lookback. Default value is `200`.
multiplier (simple float) : (simple float) Percent of trailing stop. Default value is `0.1`.
Returns: ( [ float, float ]) Tuple of `supportLine` and `rottLine`.
Example:
= ottlib.rott(source = close, length = 200, multiplier = 0.1)
isUpTrend = supportLine > rottLine
isDownTrend = supportLine < rottLine
• ft(source, length, majorMultiplier, minorMultiplier)
Short Definition: Calculates Fırsatçı Trend (Opportunist Trend).
Details: FT is comprised of two lines: the "Support Line", which is the VIDYA of the given source, and the "FT Line", a trailing stop of the Support Line calculated using both minor and major trend values. The market is considered in an uptrend when the Support Line is above the FT Line, and in a downtrend when it is below.
Parameters:
source (float) : (series float) Series of values to process. Default value is `close`.
length (simple int) : (simple int) Number of bars to lookback. Default value is `30`.
majorMultiplier (simple float) : (simple float) Percent of major trend. Default value is `3.6`.
minorMultiplier (simple float) : (simple float) Percent of minor trend. Default value is `1.8`.
Returns: ( [ float, float ]) Tuple of `supportLine` and `ftLine`.
Example:
= ottlib.ft(source = close, length = 30, majorMultiplier = 3.6, minorMultiplier = 1.8)
longCondition = ta.crossover(supportLine, ftLine)
shortCondition = ta.crossunder(supportLine, ftLine)
█ CUSTOM OTT CREATION
Users can create custom OTT implementations using f_ottTrail function in this library. The example code which uses EMA of 7 period as moving average and calculates OTT based of it is below.
Source Code:
//@version=5
indicator("Custom OTT", shorttitle = "COTT", overlay = true)
import ismailcarlik/ottlib/1 as ottlib
src = input.source(close, title = "Source")
length = input.int(7, title = "Length", minval = 1)
multiplier = input.float(2.0, title = "Multiplier", minval = 0.1)
support = ta.ema(source = src, length = length)
ott = ottlib.f_ottTrail(source = support, multiplier = multiplier)
pSupport = plot(support, title = "Moving Average Line (Support)", color = color.blue)
pOtt = plot(ott, title = "Custom OTT Line", color = color.orange)
fillColor = support >= ott ? color.new(color.green, 60) : color.new(color.red, 60)
fill(pSupport, pOtt, color = fillColor, title = "Direction")
Result:
█ DISCLAIMER
Trading is risky and most of the day traders lose money eventually. This library and its functions are only for educational purposes and should not be construed as financial advice. Past performances does not guarantee future results.
forex_factory_events_id_BLibrary "forex_factory_events_id_B"
Supporting Utility Library for the Live Economic Calendar by toodegrees Indicator; database with the second 500 Forex Factory News Event types.
ff_titleB(ID)
Converts a number to Forex Factory News title (second 500).
Parameters:
ID (string) : Identifier of the Forex Factory News Event. Please see the library for more information.
Returns: Returns the title of the Forex Factory News Event.
forex_factory_events_id_ALibrary "forex_factory_events_id_A"
Supporting Utility Library for the Live Economic Calendar by toodegrees Indicator; database with the first 500 Forex Factory News Event types.
ff_titleA(ID)
Converts a number to Forex Factory News title (first 500).
Parameters:
ID (string) : Identifier of the Forex Factory News Event. Please see the library for more information.
Returns: Returns the title of the Forex Factory News Event.
S&P500 Investment AverageThis script lets you choose the best time to invest in the S&P 500, thanks to a line showing an average growth of 8.32% over 50 years, starting from the price of $86.84 on January 1, 1974.
Thanks to this line indicating the price of the S&P 500 based on the average growth of the index. You'll be able to tell when the index is overvalued or undervalued.
When the price is below 20% of the line, it's a good time to invest your cash for the crash. And when it's back in the black, it's time to reduce your DCA.
You can also specify a specific date in the settings to watch the percentage whenever you like.
COT MCIThe COT MCI script is a market indicator based on the data from the Commitment of Traders Reports.
Integration of COT Report Data:
The script sources COT data from futures contracts, including:
Treasury Bonds (ZB), Dollar Index (DX), 10-Year Treasury Notes (ZN)
Commodities like Soybeans (ZS), Soy Meal (ZM), Soy Oil (ZL), Corn (ZC), Wheat (ZW), Kansas City Wheat (KE), Pork (HE), Cattle (LE)
Precious Metals such as Gold (GC), Silver (SI), Palladium (PA), Platinum (PL)
Industrial Metals like Copper (HG), Aluminum (AUP), Steel (HRC)
Energy Products like Crude Oil (CL), Heating Oil (HO), Gasoline (RB), Natural Gas (NG), Brent Crude (BB)
Currencies such as AUD (6A), GBP (6B), CAD (6C), EUR (6E), JPY (6J), CHF (6S), NZD (6N), BRL (6L), MXN (6M), RUB (6R), ZAR (6Z)
Others: Sugar (SB), Coffee (KC), Cocoa (CC), Cotton (CT), Ethanol (EH), Rice (ZR), Oats (ZO), Whey (DC), Orange Juice (OJ), Lumber (LBS), Livestock (GF), E-mini S&P 500 (ES), E-mini Russell 2000 (RTY), E-mini Dow Jones (YM), E-mini NASDAQ-100 (NQ), VIX Futures (VX), S&P 500 (SP), DJIA (DJIA)
Cryptocurrencies such as Bitcoin (BTC) and Ethereum (ETH)
Functions and Logic of the Script:
COT Calculation: Determines the net positions for commercial actors and large speculators. Also Available are short and long positions of commercials or large speculators.
Position Change Analysis: Analyzes the percentage changes in net positions and open interest data over a period of 6 weeks (Weekly Chart).
Average Value Calculation: Determines short-term and long-term trend averages.
Trend Analysis: Buy and sell signals (represented in colors) are based on linear regressions and average calculations.
Usage and Application Examples:
Ideal for traders looking for a detailed analysis of market dynamics and position changes in the futures market. Suitable for decision-making in transaction timing and assessing market sentiment.
Usage Notes:
Users should be familiar with the interpretation of COT data and basic concepts of futures trading. Particularly suitable for medium to long-term trading strategies.
Intersection PointThis publication focusses at the intersection of 2 lines, and a trend estimation derived from a comparison of Intersection Point value against current price value.
The formula to calculate the Intersection Point (IP) is:
change1 = ta.change (valueLine1)
change2 = ta.change (valueLine2)
sf = (valueLine2 - valueLine1 ) / (change1 - change2)
I = valueLine1 + change1 * sf
🔶 USAGE
🔹 Future / Past Intersection
The position where 2 lines would intersect in the future is shown here by extending both lines and a yellow small line to indicate its location:
Of course this can change easily when price changes.
If "Back" is enabled, the IP in history can be seen:
The yellow line which indicates the IP is only visible when it is not further located then +/- 500 bars from current bar.
If this point is further away, lines towards the IP still will be visible (max 500 bars further) without the IP.
🔹 Trend
The calculated intersection price is compared with the latest close and used for estimating the trend direction.
When close is above the intersection price (I), this is an indication the market is trending up, if close is below I, this would indicate the market is trending down.
The included bands can be useful for entry/SL/TP,...
🔶 DETAILS
🔹 Map.new()
All values are put in a map.new() with the function value()
The latest Intersection is also placed in this map with the function addLastIntersectValue() and retrieved at the last bar (right top)
🔹 Intersection Point Line
The intersection price can be made visible by enabling "Intersection Price" in SETTINGS -> STYLE. To ensure lines aren't drawn all over the place, this value is limited to maximum high + 200 days-ATR and minimum low - 200 days-ATR.
🔶 SETTINGS
🔹 Choose the value for both lines :
Type : choose between
• open, high, low, close,
• SMA, EMA, HullMA, WMA, VWMA, DEMA, TEMA
• The Length setting sets 1 of these Moving Averages when chosen
• src 1 -> You can pick an external source here
🔹 Length Intersection Line : Max length of line:
Intersection Line will update untillthe amount of bars reach the "Length Intersection Line"
💜 PURPLE BARS 😈
• Since TradingView has chosen to give away our precious Purple coloured Wizard Badge, bars are coloured purple 😊😉
Fear & Greed Index (Zeiierman)█ Overview
The Fear & Greed Index is an indicator that provides a comprehensive view of market sentiment. By analyzing various market factors such as market momentum, stock price strength, stock price breadth, put and call options, junk bond demand, market volatility, and safe haven demand, the Index can depict the overall emotions driving market behavior, categorizing them into two main sentiments: Fear and Greed.
Fear: Indicates a market scenario where investors are scared, possibly leading to a sell-off or a stagnant market. In such conditions, the indicator helps in identifying potential buying opportunities as assets may be undervalued.
Greed: Represents a state where investors are overly confident and buying aggressively, which can lead to inflated asset prices. The indicator in such cases can signal overbought conditions, advising caution or potential short opportunities.
█ How It Works
The Fear & Greed Index is an aggregate of seven distinct indicators, each gauging a specific dimension of stock market activity. These indicators include market momentum, stock price strength, stock price breadth, put and call options, junk bond demand, market volatility, and safe haven demand. The Index assesses the deviation of each individual indicator from its average, in relation to its typical fluctuations. In compiling the final score, which ranges from 0 to 100, the Index assigns equal weight to each indicator. A score of 100 denotes the highest level of Greed, while a score of 0 represents the utmost level of fear.
S&P 500's Momentum: The Index monitors the S&P 500's position relative to its 125-day moving average. Positive momentum (price above the average) signals growing confidence among investors (Greed), while negative momentum (price below the average) indicates rising fear.
Stock Price Strength: By comparing the number of stocks hitting 52-week highs to those at 52-week lows on the NYSE, the Index gauges market breadth. An extreme number of highs indicates Greed, whereas an extreme number of lows suggests Fear.
Stock Price Breadth (Market Volume): Using the McClellan Volume Summation Index, which considers the volume of advancing versus declining stocks, the Index assesses whether the market is broadly participating in a trend, or if a smaller subset of stocks is driving it.
Put and Call Options: The put/call ratio helps gauge investor sentiment. A rising ratio, particularly above 1, indicates increasing fear, as more investors are buying puts to protect against a decline. A falling ratio suggests growing confidence.
Market Volatility (VIX): The VIX measures expected market volatility. Higher values generally indicate Fear, while lower values point to Greed. The Fear & Greed Index compares the VIX to its 50-day moving average to understand its trend.
Safe Haven Demand: The performance of stocks versus bonds over a 20-day period helps understand where investors are putting their money. Bonds outperforming stocks is a sign of Fear, while the opposite suggests Greed.
Junk Bond Demand: By comparing the yields on junk bonds to safer investment-grade bonds, the Index gauges risk appetite. A narrower yield spread suggests Greed (investors are taking more risk), while a wider spread indicates Fear.
The Fear & Greed Index combines these components, scales, and averages them to produce a single value between 0 (Extreme Fear) and 100 (Extreme Greed).
█ How to Use
The Fear & Greed Index serves as a tool to evaluate the prevailing sentiments in the market. Investors, often driven by emotions, can react impulsively, and sentiment indicators like the Fear & Greed Index aim to highlight these emotional states, helping investors recognize personal biases that might impact their investment choices. When integrated with fundamental analysis and additional analytical instruments, the Index becomes a valuable resource for understanding and interpreting market moods and tendencies.
The Fear & Greed Index operates on the principle that excessive fear can result in stocks trading well below their intrinsic values,
while uncontrolled Greed can push prices above what they should be.
-----------------
Disclaimer
The information contained in my Scripts/Indicators/Ideas/Algos/Systems does not constitute financial advice or a solicitation to buy or sell any securities of any type. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
My Scripts/Indicators/Ideas/Algos/Systems are only for educational purposes!
Volume Profile with a few polylinesThe base of "Volume Profile with a few polylines" is another script of mine, Volume Profile (Maps) .
The structure of maps is used to gather the data. However, the drawings is done with polylines.
This enables coders to draw an entire volume profile with just a few polylines, while the range is broader.
This results in the benefit to draw more "lines" than with line.new() / box.new() alone.
🔶 CONCEPTS
🔹 Polylines
polyline.new creates a new polyline instance and displays it on the chart, sequentially connecting all of the points in the `points` array with line segments.
The segments in the drawing can be straight or curved depending on the `curved` parameter.
In this script, points are connected, starting from the bottom. The created line moves up until there is a price level where a volume value needs to be displayed,
at which the line goes to the left to the concerning volume value, coming back at the same price level until the line returns to its initial x-axis,
after which the line will continue to rise until all values are displayed.
A polyline can contain maximum 10000 points (10K).
Since the line has to go back and forth, each price/volume line takes 3 points.
In the case that 20K bars all have a different price, we would need 60K points, or just 6 polylines. A maximum of 100 polylines can be displayed.
The 3 highest volume values are displayed with line.new(), each with their own colour.
🔹 Maps
A map object is a collection that consists of key - value pairs
Each key is unique and can only appear once. When adding a new value with a key that the map already contains, that value replaces the old value associated with the key .
You can change the value of a particular key though, for example adding volume (value) at the same price (key), the latter technique is used in this script.
Volume is added to the map, associated with a particular price (default close, can be set at high, low, open,...)
When the map already contains the same price (key), the value (volume) is added to the existing volume at the associated price.
A map can contain maximum 50K values, which is more than enough to hold 20K bars (Basic 5K - Premium plan 20K), so the whole history can be put into a map.
🔹 Rounding function
This publication contains 2 round functions, which can be used to widen the Volume Profile
Round
• "Round" set at zero -> nothing changes to the source number
• "Round" set below zero -> x digit(s) after the decimal point, starting from the right side, and rounded.
• "Round" set above zero -> x digit(s) before the decimal point, starting from the right side, and rounded.
Example: 123456.789
0->123456.789
1->123456.79
2->123456.8
3->123457
-1->123460
-2->123500
Step
Another option is custom steps.
After setting "Round" to "Step", choose the desired steps in price,
Examples
• 2 -> 1234.00, 1236.00, 1238.00, 1240.00
• 5 -> 1230.00, 1235.00, 1240.00, 1245.00
• 100 -> 1200.00, 1300.00, 1400.00, 1500.00
• 0.05 -> 1234.00, 1234.05, 1234.10, 1234.15
•••
🔶 FEATURES
🔹 Volume * currency
Let's take as example BTCUSD, relative to USD, 10 volume at a price of 100 BTCUSD will be very different than 10 volume at a price of 30000 (1K vs. 300K)
If you want volume to be associated with USD, enable Volume * currency . Volume will then be multiplied by the price:
• 10 volume, 1 BTC = 100 -> 1000
• 10 volume, 1 BTC = 30K -> 300K
Polylines has the attributes curved & closed.
When "curved" is enabled the drawing will connect all points from the `points` array using curved line segments.
When "closed" is enabled the drawing will also connect the first point to the last point from the `points` array, resulting in a closed polyline.
They are default disabled, but can be enabled:
🔶 DETAILS
🔹 Put
When the map doesn't contain a price, it will be added, using map.put(id, key, value)
In our code:
map.put(originalMap, price, volume)
or
originalMap.put(price, volume)
A key (price) is now associated with a value (volume) -> key : value
Since all keys are unique, we don't have to know its position to extract the value, we just need to know the key -> map.get(id, key)
We use map.get() when a certain key already exists in the map, and we want to add volume with that value.
if originalMap.contains(price)
originalMap.put(price, originalMap.get(price) + volume)
-> At the last bar, all prices (source) are now associated with volume.
🔶 SETTINGS
Source : Set source of choice; default close , can be set as high , low , open , ...
Volume & currency : Enable to multiply volume with price (see Features )
Amount of bars : Set amount of bars which you want to include in the Volume Profile
🔹 Round -> ' Round/Step '
Round -> see Concepts
Step -> see Concepts
🔹 Display Volume Profile
Offset: shifts the Volume Profile (max. 500 bars to the right of last bar, see Features )
Max width Volume Profile: largest volume will be x bars wide, the rest is displayed as a ratio against largest volume (see Features )
Colours
Curved: make lines curved
Closed: connect last with first point
🔶 LIMITATIONS
• Lines won't go further than first bar (coded).
• The Volume Profile can be placed maximum 500 bar to the right of last price.
Machine Learning: Optimal RSI [YinYangAlgorithms]This Indicator, will rate multiple different lengths of RSIs to determine which RSI to RSI MA cross produced the highest profit within the lookback span. This ‘Optimal RSI’ is then passed back, and if toggled will then be thrown into a Machine Learning calculation. You have the option to Filter RSI and RSI MA’s within the Machine Learning calculation. What this does is, only other Optimal RSI’s which are in the same bullish or bearish direction (is the RSI above or below the RSI MA) will be added to the calculation.
You can either (by default) use a Simple Average; which is essentially just a Mean of all the Optimal RSI’s with a length of Machine Learning. Or, you can opt to use a k-Nearest Neighbour (KNN) calculation which takes a Fast and Slow Speed. We essentially turn the Optimal RSI into a MA with different lengths and then compare the distance between the two within our KNN Function.
RSI may very well be one of the most used Indicators for identifying crucial Overbought and Oversold locations. Not only that but when it crosses its Moving Average (MA) line it may also indicate good locations to Buy and Sell. Many traders simply use the RSI with the standard length (14), however, does that mean this is the best length?
By using the length of the top performing RSI and then applying some Machine Learning logic to it, we hope to create what may be a more accurate, smooth, optimal, RSI.
Tutorial:
This is a pretty zoomed out Perspective of what the Indicator looks like with its default settings (except with Bollinger Bands and Signals disabled). If you look at the Tables above, you’ll notice, currently the Top Performing RSI Length is 13 with an Optimal Profit % of: 1.00054973. On its default settings, what it does is Scan X amount of RSI Lengths and checks for when the RSI and RSI MA cross each other. It then records the profitability of each cross to identify which length produced the overall highest crossing profitability. Whichever length produces the highest profit is then the RSI length that is used in the plots, until another length takes its place. This may result in what we deem to be the ‘Optimal RSI’ as it is an adaptive RSI which changes based on performance.
In our next example, we changed the ‘Optimal RSI Type’ from ‘All Crossings’ to ‘Extremity Crossings’. If you compare the last two examples to each other, you’ll notice some similarities, but overall they’re quite different. The reason why is, the Optimal RSI is calculated differently. When using ‘All Crossings’ everytime the RSI and RSI MA cross, we evaluate it for profit (short and long). However, with ‘Extremity Crossings’, we only evaluate it when the RSI crosses over the RSI MA and RSI <= 40 or RSI crosses under the RSI MA and RSI >= 60. We conclude the crossing when it crosses back on its opposite of the extremity, and that is how it finds its Optimal RSI.
The way we determine the Optimal RSI is crucial to calculating which length is currently optimal.
In this next example we have zoomed in a bit, and have the full default settings on. Now we have signals (which you can set alerts for), for when the RSI and RSI MA cross (green is bullish and red is bearish). We also have our Optimal RSI Bollinger Bands enabled here too. These bands allow you to see where there may be Support and Resistance within the RSI at levels that aren’t static; such as 30 and 70. The length the RSI Bollinger Bands use is the Optimal RSI Length, allowing it to likewise change in correlation to the Optimal RSI.
In the example above, we’ve zoomed out as far as the Optimal RSI Bollinger Bands go. You’ll notice, the Bollinger Bands may act as Support and Resistance locations within and outside of the RSI Mid zone (30-70). In the next example we will highlight these areas so they may be easier to see.
Circled above, you may see how many times the Optimal RSI faced Support and Resistance locations on the Bollinger Bands. These Bollinger Bands may give a second location for Support and Resistance. The key Support and Resistance may still be the 30/50/70, however the Bollinger Bands allows us to have a more adaptive, moving form of Support and Resistance. This helps to show where it may ‘bounce’ if it surpasses any of the static levels (30/50/70).
Due to the fact that this Indicator may take a long time to execute and it can throw errors for such, we have added a Setting called: Adjust Optimal RSI Lookback and RSI Count. This settings will automatically modify the Optimal RSI Lookback Length and the RSI Count based on the Time Frame you are on and the Bar Indexes that are within. For instance, if we switch to the 1 Hour Time Frame, it will adjust the length from 200->90 and RSI Count from 30->20. If this wasn’t adjusted, the Indicator would Timeout.
You may however, change the Setting ‘Adjust Optimal RSI Lookback and RSI Count’ to ‘Manual’ from ‘Auto’. This will give you control over the ‘Optimal RSI Lookback Length’ and ‘RSI Count’ within the Settings. Please note, it will likely take some “fine tuning” to find working settings without the Indicator timing out, but there are definitely times you can find better settings than our ‘Auto’ will create; especially on higher Time Frames. The Minimum our ‘Auto’ will create is:
Optimal RSI Lookback Length: 90
RSI Count: 20
The Maximum it will create is:
Optimal RSI Lookback Length: 200
RSI Count: 30
If there isn’t much bar index history, for instance, if you’re on the 1 Day and the pair is BTC/USDT you’ll get < 4000 Bar Indexes worth of data. For this reason it is possible to manually increase the settings to say:
Optimal RSI Lookback Length: 500
RSI Count: 50
But, please note, if you make it too high, it may also lead to inaccuracies.
We will conclude our Tutorial here, hopefully this has given you some insight as to how calculating our Optimal RSI and then using it within Machine Learning may create a more adaptive RSI.
Settings:
Optimal RSI:
Show Crossing Signals: Display signals where the RSI and RSI Cross.
Show Tables: Display Information Tables to show information like, Optimal RSI Length, Best Profit, New Optimal RSI Lookback Length and New RSI Count.
Show Bollinger Bands: Show RSI Bollinger Bands. These bands work like the TDI Indicator, except its length changes as it uses the current RSI Optimal Length.
Optimal RSI Type: This is how we calculate our Optimal RSI. Do we use all RSI and RSI MA Crossings or just when it crosses within the Extremities.
Adjust Optimal RSI Lookback and RSI Count: Auto means the script will automatically adjust the Optimal RSI Lookback Length and RSI Count based on the current Time Frame and Bar Index's on chart. This will attempt to stop the script from 'Taking too long to Execute'. Manual means you have full control of the Optimal RSI Lookback Length and RSI Count.
Optimal RSI Lookback Length: How far back are we looking to see which RSI length is optimal? Please note the more bars the lower this needs to be. For instance with BTC/USDT you can use 500 here on 1D but only 200 for 15 Minutes; otherwise it will timeout.
RSI Count: How many lengths are we checking? For instance, if our 'RSI Minimum Length' is 4 and this is 30, the valid RSI lengths we check is 4-34.
RSI Minimum Length: What is the RSI length we start our scans at? We are capped with RSI Count otherwise it will cause the Indicator to timeout, so we don't want to waste any processing power on irrelevant lengths.
RSI MA Length: What length are we using to calculate the optimal RSI cross' and likewise plot our RSI MA with?
Extremity Crossings RSI Backup Length: When there is no Optimal RSI (if using Extremity Crossings), which RSI should we use instead?
Machine Learning:
Use Rational Quadratics: Rationalizing our Close may be beneficial for usage within ML calculations.
Filter RSI and RSI MA: Should we filter the RSI's before usage in ML calculations? Essentially should we only use RSI data that are of the same type as our Optimal RSI? For instance if our Optimal RSI is Bullish (RSI > RSI MA), should we only use ML RSI's that are likewise bullish?
Machine Learning Type: Are we using a Simple ML Average, KNN Mean Average, KNN Exponential Average or None?
KNN Distance Type: We need to check if distance is within the KNN Min/Max distance, which distance checks are we using.
Machine Learning Length: How far back is our Machine Learning going to keep data for.
k-Nearest Neighbour (KNN) Length: How many k-Nearest Neighbours will we account for?
Fast ML Data Length: What is our Fast ML Length? This is used with our Slow Length to create our KNN Distance.
Slow ML Data Length: What is our Slow ML Length? This is used with our Fast Length to create our KNN Distance.
If you have any questions, comments, ideas or concerns please don't hesitate to contact us.
HAPPY TRADING!
Z ScoreWhat Is Z-Score?
Z-score is a statistical measurement that describes a value's relationship to the mean of a group of values. Z-score is measured in terms of standard deviations from the mean. If a Z-score is 0, it indicates that the data point's score is identical to the mean score. A Z-score of 1.0 would indicate a value that is one standard deviation from the mean. Z-scores may be positive or negative, with a positive value indicating the score is above the mean and a negative score indicating it is below the mean.
CBOE Volatility Index
VIX is the ticker symbol and the popular name for the Chicago Board Options Exchange's CBOE Volatility Index, a popular measure of the stock market's expectation of volatility based on S&P 500 index options. It is calculated and disseminated on a real-time basis by the CBOE, and is often referred to as the fear index or fear gauge. To summarize, VIX is a volatility index derived from S&P 500 options for the 30 days following the measurement date, with the price of each option representing the market's expectation of 30-day forward-looking volatility. The resulting VIX index formulation provides a measure of expected market volatility on which expectations of further stock market volatility in the near future might be based
Z Scores of VIX
When the Z-scored VIX indicator exceeds the +2 standard deviation mark, the system forecasts mean reversion and decreasing volatility and the possibility of an upward trend in S&P500.
When the Z-scored VIX indicator falls below -2 standard deviations, the system predicts future increasing volatility and the possibility of a downward trend in S&P500.
ZWAP (ZigZag Anchored VWAP) [Kioseff Trading]Hello!
Quick script showcasing the new polyline function for Pine Script!
Features
Up to 100 high/low pivot points auto anchored VWAP
Visible range auto anchored VWAP
Curved ZigZag (Adjustable!)
With the new polyline function, auto-anchored VWAP at specific price points is more viable.
When using line.new() only 500 lines can exist on the chart concurrently and, since VWAP is calculated on every update, a "proper" VWAP drawn using line.new() can extend 500 bars at most, to which no additional VWAP lines can be drawn after.
Of course, when using the plot() function a VWAP line will draw on every bar; however, this method isn't highly compatible with auto-anchoring VWAP lines.
However!
A polyline, from beginning to end irrespective of the number of coordinates used, constitutes 1 polyline; 100 can exist simultaneously with 10,000 xy coordinates per line.
The image above shows an attempt to draw the same auto-anchored VWAP lines using the line.new() function. Not an ideal outcome!
The image above shows the same attempt using the polyline.new() function!
Very nice (:
The image above shows the indicator auto anchoring to zig zag turning points.
Subsequent to a new anchoring, VWAP is calculated for the following bars - up to the current bar.
Thank you for checking this out; if you have any ideas to spice it up feel free to comment!
ATR Based EMA Price Targets [SS]As requested...
This is a spinoff of my EMA 9/21 cross indicator with price targets.
A few of you asked for a simple EMA crossover version and that is what this is.
I have, of course, added a bit of extra functionality to it, assuming you would want to transition from another EMA indicator to this one, I tried to leave it somewhat customizable so you can get the same type of functionality as any other EMA based indicator just with the added advantage of having an ATR based assessment added on. So lets get into the details:
What it does:
Same as my EMA 9/21, simply performs a basic ATR range analysis on a ticker, calculating the average move it does on a bullish or bearish cross.
How to use it:
So there are quite a few functions of this indicator. I am going to break them down one by one, from most basic to the more complex.
Plot functions:
EMA is Customizable: The EMA is customizable. If you want the 200, 100, 50, 31, 9, whatever you want, you just have to add the desired EMA timeframe in the settings menu.
Standard Deviation Bands are an option: If you like to have standard deviation bands added to your EMA's, you can select to show the standard deviation band. It will plot the standard deviation for the desired EMA timeframe (so if it is the EMA 200, it will plot the Standard Deviation on the EMA 200).
Plotting Crossovers: You can have the indicator plot green arrows for bullish crosses and red arrows for bearish crosses. I have smoothed out this function slightly by only having it signal a crossover when it breaks and holds. I pulled this over to the alert condition functions as well, so you are not constantly being alerted when it is bouncing over and below an EMA. Only once it chooses a direction, holds and moves up or down, will it alert to a true crossover.
Plotting labels: The indicator will default to plotting the price target labels and the EMA label. You can toggle these on and off in the EMA settings menu.
Trend Assessment Settings:
In addition to plotting the EMA itself and signaling the ATR ranges, the EMA will provide you will demographic information about the trend and price action behaviour around the EMA. You can see an example in the image below:
This will provide you with a breakdown of the statistics on the EMA over the designated lookback period, such as the number of crosses, the time above and below the EMA and the amount the EMA has remained within its standard deviation bands.
Where this is important is the proportion assessment. And what the proportion assessment is doing is its measuring the amount of time the ticker is spending either above or below the EMA.
Ideally, you should have relatively equal and uniform durations above and below. This would be a proportion of between 0.5 and 1.5 Above to Below. Now, you don't have to remember this because you can ask the indicator to do the assessment for you. It will be displayed at the bottom of your chart in a table that you can toggle on and off:
Example of a Uniform Assessment:
Example of a biased assessment:
Keep in mind, if you are using those very laggy EMAs (like the 50, 200, 100 etc.) on the daily timeframe, you aren't going to get uniformity in the data. This is because, stocks are technically already biased to the upside over time. Thus, when you are looking at the big picture, the bull bias thesis of the stock market is in play.
But for the smaller and moderate timeframes, owning to the randomness of price action, you can generally get uniformity in data representation by simply adjusting your lookback period.
To adjust your lookback period, you simply need to change the timeframe for the ATR lookback length. I suggest no less than 500 and probably no more than 1,500 candles, and work within this range. But you can use what the indicator indicates is appropriate.
Of course, all of these charts can be turned off and you are left with a clean looking EMA indicator:
And an example with the standard deviation bands toggled on:
And that, my friends, is the indicator.
Hopefully this is what you wanted, let me know if you have any suggestions.
Enjoy and safe trades!