VWAP with CharacterizationThis indicator is a visual representation of the VWAP (Volume Weighted Average Price), it calculates the weighted average price based on trading volume. Essentially, it provides a measure of the average price at which an asset has traded during a given period, but with a particular focus on trading volume. In our case, the indicator calculates the VWAP for the current trading symbol, using a predefined simple moving average (SMA) with a period of 14. This volume-weighted moving average offers a clearer view of the behavior of the VWAP and, of consequence of market dynamics.
One of the distinctive features of this indicator is its ability to provide a more "linear" representation of the data. This means that the data is "smoothed" to remove noise, allowing you to more easily identify the direction of the market trend. This smoother representation is especially useful because the financial market can be subject to significant fluctuations and volatility, and this indicator can help get a more stable view of the trend.
The indicator also offers a visualization of the market trend in a very intuitive way. Using an evaluation of the highs and lows of the last 10 days, determine whether the market is in an uptrend, downtrend, or no trend at all. To make this evaluation even clearer and more immediate, the indicator line is colored dynamically. When the trend is bullish, the line is blue, while in case of a bearish trend, it takes on a distinctive color, such as pink. If the trend is not defined, the line will be colored differently, for example light yellow. This coloration gives traders an immediate visual indication of the prevailing trend, allowing them to make more informed decisions regarding trading operations.
One potential strategy involves watching candles when they cross the VWAP line strongly. If, for example, a candlestick breaks above the VWAP line, we may look for retest areas near key support levels to gauge a potential long entry. In other words, we would consider that the price may have the potential to rise further after breaking above the VWAP line, and we would look to enter a long position to take advantage of this opportunity.
On the other hand, if a candlestick crosses below the VWAP line, we might consider looking for retest areas near the VWAP line itself, which now serves as potential resistance. This could indicate a possible short entry opportunity, as the price may struggle to break above the resistance represented by the VWAP line after breaking it down. In this case, we would look to take advantage of the expected continuation of the downtrend.
In both cases, the idea is to exploit significant movements across the VWAP line as signals of potential reversal or continuation of the trend. This strategy can help identify key entry points based on price behavior relative to the VWAP line.
Buscar en scripts para "trendline"
Volume Profile - BearJust another Volume Profile but you can fit into your chart better by moving back and forth horizontally. also note you can fix the number of bars to show the volume by that way you can use a fib retracment to line up high/low volume nodes with fib levels... see where price as bad structure. or just play with the colors to make a cool gradient?
Volume Profile is a technical analysis tool used by traders to analyze the distribution of trading volume at different price levels within a specified time frame. It helps traders identify key support and resistance levels, potential areas of price reversals, and areas of high trading interest. Here's how to read Volume Profile on a trading chart:
1. **Choose a Time Frame**: Decide on the time frame you want to analyze. Volume Profile can be applied to various time frames, such as daily, hourly, or even minute charts. The choice depends on your trading style and goals.
2. **Plot the Volume Profile**: Once you have your chart open, add the Volume Profile indicator. Most trading platforms offer this tool. It typically appears as a histogram or a series of horizontal bars alongside the price chart.
3. **Identify Key Elements**:
a. **Value Area**: The Value Area represents the price range where the majority of trading volume occurred. It is often divided into three parts: the Point of Control (POC) and the upper and lower value areas. The POC is the price level where the most trading activity occurred and is considered a significant support or resistance level.
b. **High-Volume Nodes**: High-volume nodes are price levels where there was a significant amount of trading volume. These nodes can act as support or resistance levels because they represent areas where many traders had their positions.
c. **Low-Volume Areas**: Conversely, low-volume areas are price levels with little trading activity. These areas may not provide strong support or resistance because they lack significant trader interest.
4. **Interpretation**:
- If the price is trading above the POC and the upper value area, it suggests bullish sentiment, and these levels may act as support.
- If the price is trading below the POC and the lower value area, it suggests bearish sentiment, and these levels may act as resistance.
- High-volume nodes can also act as support or resistance, depending on the price's current position relative to them.
5. **Confirmation**: Volume Profile should be used in conjunction with other technical analysis tools and indicators to confirm trading decisions. Consider using trendlines, moving averages, or other price patterns to validate your trading strategy.
6. **Adjust for Different Time Frames**: Keep in mind that Volume Profile analysis can yield different results on different time frames. For example, a support level on a daily chart may not hold on a shorter time frame due to intraday volatility.
7. **Practice and Experience**: Like any trading tool, reading Volume Profile requires practice and experience. Analyze historical charts, paper trade, and refine your strategies over time to gain proficiency.
8. **Stay Informed**: Stay updated with market news and events that can impact trading volume. Sudden news can change the significance of volume levels.
Adaptive Trend Indicator [Quantigenics]Our Adaptive Trend Indicator is an advanced trading indicator using price and time series analysis to adapt to market trends. It calculates a weighted average of the median price and twice-smoothed average price, then applies a linear regression over twice the user-defined period, generating a trend line. This trend line represents the prevailing market direction and adjusts dynamically based on price fluctuations. When the Adaptive Trend value increases compared to the previous value, the line turns aqua, signaling an upward trend. Conversely, if it decreases, the line turns red, indicating a downward trend. This color coding provides visual guidance for traders. By combining advanced statistical techniques with real-time adaptation, the Adaptive Trend indicator provides timely trend information, supporting traders in navigating various market conditions.
Additionally, this indicator may be applied multiple times to the same chart. Traders may adjust the length of each instance to show a group of trendlines that can indicate when price action is overbought or oversold as well as support or resistance at different indicator lengths. Example below.
CRYPTO:BTCUSD
CRYPTO:BTCUSD
NASDAQ:TSLA
We hope you enjoy this indicator. Happy Trading!
Volume Delta CandlesThis indicator is designed to visualize the volume delta, which represents the difference between buying and selling volumes during each candle period. The indicator plots custom candlesticks on the chart, with OHLC values calculated based on the volume delta.
Calculations:
To calculate the volume delta, the indicator first determines the buying and selling volumes. If the closing price is higher than the opening price (close > open), the volume is considered as buying volume. If the closing price is lower than the opening price (close < open), the volume is considered as selling volume. Otherwise, the volume is set to zero. The volume delta is then calculated as the difference between the buying volume and the selling volume.
The custom OHLC values are derived from the volume delta. The custom open is obtained by subtracting the volume delta from the closing price. The custom close is obtained by adding the volume delta to the closing price. The custom high is set as the maximum value between the closing price and the custom open, ensuring that the candle represents the highest value within the range. The custom low is set as the minimum value between the closing price and the custom open, ensuring that the candle represents the lowest value within the range.
Interpretation:
The indicator's custom candles provide visual insights into the volume delta. Each candlestick's color (lime for positive volume delta, fuchsia for negative volume delta) indicates the dominance of buying or selling pressure during that period. When the volume delta is positive, it suggests that buying volume exceeded selling volume, possibly indicating a bullish sentiment. Conversely, when the volume delta is negative, it indicates that selling volume was higher, potentially signaling a bearish sentiment. The indicator also plots a zero line to represent the equilibrium point, where buying and selling volumes are equal.
Potential Uses and Limitations:
Traders can use the indicator to gain insights into the strength and direction of buying and selling pressures. Positive volume delta during an uptrend could suggest the presence of strong buying interest, potentially supporting further bullish moves. On the other hand, negative volume delta during a downtrend could indicate intensified selling pressure, hinting at potential further declines. Traders might use the indicator in conjunction with other technical analysis tools, such as support and resistance levels, trendlines, or oscillators, to confirm potential reversal points or trend continuations.
It's essential to interpret the indicator in the context of the overall market environment. While volume delta can provide valuable insights into short-term buying and selling imbalances, it is just one aspect of market analysis. Traders should consider other factors, such as market structure, fundamental events, and overall sentiment, to make informed trading decisions. Additionally, the indicator's efficacy might vary across different market conditions, and it may produce false signals during low-volume periods or choppy markets.
Conclusion:
By visualizing volume delta through custom candlesticks, traders can gauge market sentiment and potentially identify key reversal or continuation points. As with any technical indicator, it is advisable to use the Volume Delta Candles in combination with other tools to gain a comprehensive understanding of market conditions and make well-informed trading choices. Additionally, traders should practice proper risk management techniques to protect their capital while using the indicator in their trading strategy.
Fair Value Gap ChartThe Fair Value Gap chart is a new charting method that displays fair value gap imbalances as Japanese candlesticks, allowing traders to quickly see the evolution of historical market imbalances.
The script is additionally able to compute an exponential moving average using the imbalances as input.
🔶 USAGE
The Fair Value Gap chart allows us to quickly display historical fair value gap imbalances. This also allows for filtering out potential noisy variations, showing more compact trends.
Most like other charting methods, we can draw trendlines/patterns from the displayed results, this can be helpful to potentially predict future imbalances locations.
Users can display an exponential moving average computed from the detected fvg's imbalances. Imbalances above the ema can be indicative of an uptrend, while imbalances under the ema are indicative of a downtrend.
Note that due to pinescript limitations a maximum of 500 lines can be displayed, as such displaying the EMA prevent candle wicks from being displayed.
🔶 DETAILS
🔹 Candle Structure
The Fair Value Gap Chart is constructed by keeping a record of all detected fair value gaps on the chart. Each fvg is displayed as a candlestick, with the imbalance range representing the body of the candle, and the range of the imbalance interval being used for the wicks.
🔹 EMA Source Input
The exponential moving average uses the imbalance range to get its input source, the extremity of the range used depends on whether the fvg is bullish or bearish.
When the fvg is bullish, the maximum of the imbalance range is used as ema input, else the minimum of the fvg imbalance is used.
Sessioned EMA - Frozen EMA in post market hoursWhy I develop this indicator?
In future indices, post market data with little volume distort the moving average seriously. This indicator is to eliminate the distortion of data during low volume post market hours.
How to use?
There is a time session setting in the indicator, you can set the cash hour time, moving average outside the session will be frozen.
What this indicator gives you
This indicator give you a more make sense ema pattern, the ema lines are more respected by the prices when you set the session properly.
Setup
1. Session setting
In US indices, such as NQ, ES etc, when there was data release at 0830 hr, huge volume transaction order appears, that makes the 0830 price data important that should be included in your ema trend line calculating. If that is the case, I will set the session begin from 0830, otherwise, I start the session at 0930. Golden rule : Price with huge volume counts.
2. Time zone
The coding is decided for GMT+8 time zone, you may amend the code to fit your timezone.
QFL Screener [ ZCrypto ]The QFL Screener is a robust tool inspired by Quickfingersluc's trading strategy.
Known as the Base Strategy or Mean Reversals, QFL focuses on identifying moments of panic selling and buying , presenting opportunities to enter trades at deeply discounted prices.
The QFL Screener is designed to enhance your trading efficiency by simultaneously scanning 40 symbols.
You have the flexibility to enable or disable specific symbols from the screening process, allowing you to tailor the screener to your preferred markets and instruments.
The Screener has a built-in alerts system . As soon as the QFL conditions align for any of the scanned symbols, you'll receive instant notifications, empowering you to take prompt action and seize potential trading opportunities.
In addition, I've incorporated a visual element to complement the alerts. Once the conditions are true, a green arrow shape will appear directly on the chart, providing a clear and intuitive signal of the QFL opportunity.
To provide a clear overview, our screener presents a comprehensive table that highlights when the QFL condition becomes true for each symbol. This table acts as a visual guide, enabling you to monitor the status of multiple symbols at a glance, streamlining your trading decision-making process.
With the QFL Screener, you gain an edge in identifying profitable trade setups based on Quickfingersluc's renowned approach. Experience the convenience of simultaneous screening, real-time alerts, and an intuitive table display, all in one user-friendly tool.
Monday_Weekly_Range/ErkOzi/Deviation Level/V1"Hello, first of all, I believe that the most important levels to look at are the weekly Fibonacci levels. I have planned an indicator that automatically calculates this. It models a range based on the weekly opening, high, and low prices, which is well-detailed and clear in my scans. I hope it will be beneficial for everyone.
***The logic of the Monday_Weekly_Range indicator is to analyze the weekly price movement based on the trading range formed on Mondays. Here are the detailed logic, calculation, strategy, and components of the indicator:
***Calculation of Monday Range:
The indicator calculates the highest (mondayHigh) and lowest (mondayLow) price levels formed on Mondays.
If the current bar corresponds to Monday, the values of the Monday range are updated. Otherwise, the values are assigned as "na" (undefined).
***Calculation of Monday Range Midpoint:
The midpoint of the Monday range (mondayMidRange) is calculated using the highest and lowest price levels of the Monday range.
***Fibonacci Levels:
// Calculate Fibonacci levels
fib272 = nextMondayHigh + 0.272 * (nextMondayHigh - nextMondayLow)
fib414 = nextMondayHigh + 0.414 * (nextMondayHigh - nextMondayLow)
fib500 = nextMondayHigh + 0.5 * (nextMondayHigh - nextMondayLow)
fib618 = nextMondayHigh + 0.618 * (nextMondayHigh - nextMondayLow)
fibNegative272 = nextMondayLow - 0.272 * (nextMondayHigh - nextMondayLow)
fibNegative414 = nextMondayLow - 0.414 * (nextMondayHigh - nextMondayLow)
fibNegative500 = nextMondayLow - 0.5 * (nextMondayHigh - nextMondayLow)
fibNegative618 = nextMondayLow - 0.618 * (nextMondayHigh - nextMondayLow)
fibNegative1 = nextMondayLow - 1 * (nextMondayHigh - nextMondayLow)
fib2 = nextMondayHigh + 1 * (nextMondayHigh - nextMondayLow)
***Fibonacci levels are calculated using the highest and lowest price levels of the Monday range.
Common Fibonacci ratios such as 0.272, 0.414, 0.50, and 0.618 represent deviation levels of the Monday range.
Additionally, the levels are completed with -1 and +1 to determine at which level the price is within the weekly swing.
***Visualization on the Chart:
The Monday range, midpoint, Fibonacci levels, and other components are displayed on the chart using appropriate shapes and colors.
The indicator provides a visual representation of the Monday range and Fibonacci levels using lines, circles, and other graphical elements.
***Strategy and Usage:
The Monday range represents the starting point of the weekly price movement. This range plays an important role in determining weekly support and resistance levels.
Fibonacci levels are used to identify potential reaction zones and trend reversals. These levels indicate where the price may encounter support or resistance.
You can use the indicator in conjunction with other technical analysis tools and indicators to conduct a more comprehensive analysis. For example, combining it with trendlines, moving averages, or oscillators can enhance the accuracy.
When making investment decisions, it is important to combine the information provided by the indicator with other analysis methods and use risk management strategies.
Thank you in advance for your likes, follows, and comments. If you have any questions, feel free to ask."
tlc with False BreakoutThe strategy aims to identify a trend line channel with the potential for a false breakout. Here's an explanation of the strategy:
The script starts by defining the input parameters. The lookback parameter determines the number of previous bars to consider for detecting the trend lines, and the threshold parameter controls the sensitivity of the trend line detection.
The script then initializes variables to store the trend lines, tap count, and the false breakout signal.
Inside the loop, the script iterates over the specified number of bars (lookback) to identify the trend lines. It checks if the current high is greater than the previous and next highs to identify an upper trend line and sets it using the line.new function. Similarly, it checks if the current low is smaller than the previous and next lows to identify a lower trend line and sets it.
The script also keeps track of the price levels of the upper and lower trend lines using the variables upperTrendLinePrice and lowerTrendLinePrice. These price levels are obtained using the line.get_y1 function.
After the fourth tap (when tapCount is equal to 4), the script checks if the current close price is above the upper trend line or below the lower trend line. If this condition is met, it sets the falseBreakout variable to true, indicating a potential false breakout.
Finally, the script plots a shape marker (plotshape) when a false breakout occurs. This is represented by an orange label displayed below the bar.
At the end of the script, the line.delete function is used to remove the old trend lines when the script reaches the last bar (barstate.islast).
By using this strategy, you can visually identify trend line channels where the upper and lower lines touch higher highs or lower highs and higher lows or lower lows. Additionally, it provides a false breakout signal when the price breaks above the upper trend line or below the lower trend line on the fifth tap.
On-Balance Accumulation Distribution (Volume-Weighted)The On-Balance Accumulation Distribution (OBAD) indicator is designed to analyze the accumulation and distribution of assets based on volume-weighted price movements. The indicator helps traders identify periods of buying and selling pressure and assess the strength of market trends. By incorporating volume and price data, the OBAD indicator provides valuable insights into the flow of funds in the market.
To calculate the OBAD, the indicator multiplies the volume, price, and volume factor (user-defined) with the price change and aggregates the values over a specified length. This results in a histogram and a line plot representing the OBAD values. The OBAD signal line is derived by applying a simple moving average (SMA) to the OBAD values over a shorter period (9 by default). The crossover of the OBAD line and signal line can indicate potential entry or exit points.
The OBAD indicator utilizes coloration to enhance its visual representation and interpretation. The OBAD background is colored based on the relationship between the OBAD values and the OBAD signal line. When the OBAD values are above the signal line, the background is displayed in lime, suggesting a bullish accumulation scenario. Conversely, when the OBAD values are below the signal line, the background is colored fuchsia, indicating a bearish distribution pattern. The bar coloration is also applied to provide further visual cues, with lime representing bullish conditions and fuchsia denoting bearish conditions. When the OBAD signal line is above 0, it is colored green. Conversely, if the signal line is below 0, it is colored maroon.
The length parameter in the OBAD indicator determines the number of periods used in the calculation. Shorter lengths, such as 10 or 20, can make the indicator more responsive to recent price and volume changes, providing quicker signals. This can be beneficial for short-term traders or in fast-paced markets. Conversely, longer lengths, such as 50 or 100, smooth out the indicator and provide a broader view of accumulation and distribution over a more extended period. This may suit longer-term traders or when analyzing trends in less volatile markets. Traders should experiment with different lengths to find the optimal balance between responsiveness and smoothness that aligns with their trading goals.
The volume factor parameter allows traders to adjust the weighting of volume in the OBAD calculation. By modifying this factor, traders can emphasize the impact of volume on the indicator. Increasing the volume factor amplifies the influence of volume in the OBAD calculation, making it more sensitive to volume changes. This can be advantageous when volume is considered a significant driver of price movements, such as during news events or market catalysts. On the other hand, decreasing the volume factor reduces the impact of volume, making the indicator less sensitive to volume fluctuations. Traders can experiment with different volume factors to align the indicator's responsiveness with their analysis of volume patterns and its importance in their trading decisions.
The signal line period parameter determines the number of periods used to calculate the moving average of the OBAD values. Adjusting this parameter can help smooth out the indicator and filter out short-term noise or provide more timely signals. A shorter signal line period, such as 5 or 7, provides more sensitive and frequent crossovers with the OBAD values, potentially offering early entry or exit signals. This can be useful for traders seeking shorter-term trades or more agile trading strategies. Conversely, a longer signal line period, such as 9 or 14, smooths out the indicator and provides more stable signals. This may suit traders who prefer longer-term trends or a more conservative approach. Traders should consider their trading timeframe and the desired balance between responsiveness and stability when adjusting the signal line period.
The OBAD indicator can be applied in various trading strategies and scenarios. It helps traders identify potential trend reversals, confirm existing trends, and generate entry and exit signals. For example, when the OBAD histogram transitions from fuchsia to lime, it may suggest a shift from selling to buying pressure, signaling a potential buying opportunity. Traders can also use the OBAD indicator in conjunction with other technical analysis tools, such as trendlines or support/resistance levels, to confirm signals and make more informed trading decisions.
-- Trend Reversal Identification : The OBAD indicator can be useful in identifying potential trend reversals. When the OBAD values cross above the signal line after being below it, it may suggest a shift from bearish distribution to bullish accumulation. Conversely, when the OBAD values cross below the signal line after being above it, it may indicate a transition from bullish accumulation to bearish distribution. Traders can use these crossovers as potential signals to enter or exit trades in anticipation of a trend reversal.
-- Confirmation of Trend Strength : The OBAD indicator can act as a confirmation tool for assessing the strength of existing trends. When the OBAD values remain consistently above the signal line, it confirms the presence of strong bullish accumulation and validates the upward trend. Similarly, when the OBAD values stay consistently below the signal line, it confirms the presence of strong bearish distribution and validates the downward trend. Traders can use this confirmation to have more confidence in the prevailing trend and adjust their trading strategies accordingly.
-- Divergence Analysis : Divergence between the price and the OBAD indicator can provide valuable insights. Bullish divergence occurs when the price forms lower lows while the OBAD indicator forms higher lows, suggesting a potential trend reversal to the upside. Conversely, bearish divergence occurs when the price forms higher highs while the OBAD indicator forms lower highs, indicating a potential trend reversal to the downside. Traders can use these divergences as additional confirmation signals in their trading decisions.
-- Volume Analysis : The OBAD indicator incorporates volume data, making it particularly useful for volume analysis. Traders can analyze the relationship between OBAD values and volume levels to gauge the strength and validity of price movements. Higher OBAD values accompanied by higher volume can indicate strong accumulation or distribution, providing confirmation for potential trade setups. On the other hand, lower OBAD values accompanied by low volume may suggest a lack of participation and potentially signal caution in trading decisions.
It is important to note that the OBAD indicator, like any other technical indicator, has certain limitations. It relies on historical price and volume data, which may not always accurately reflect current market conditions or future price movements. Traders should exercise caution and use the OBAD indicator in conjunction with other analysis techniques and risk management strategies. Additionally, customization of the OBAD parameters, such as adjusting the length or volume factor, can provide flexibility to adapt the indicator to different market conditions and trading preferences.
Overall, the OBAD indicator serves as a valuable tool for traders to gauge the accumulation and distribution patterns in the market. Its calculation based on volume-weighted price movements and the coloration enhancements make it visually appealing and intuitive to interpret. By incorporating the OBAD indicator into trading strategies and considering its limitations, traders can potentially improve their decision-making process and enhance their trading outcomes.
MTF Stationary Extreme IndicatorThe Multiple Timeframe Stationary Extreme Indicator is designed to help traders identify extreme price movements across different timeframes. By analyzing extremes in price action, this indicator aims to provide valuable insights into potential overbought and oversold conditions, offering opportunities for trading decisions.
The indicator operates by calculating the difference between the latest high/low and the high/low a specified number of periods back. This difference is expressed as a percentage, allowing for easy comparison and interpretation. Positive values indicate an increase in the extreme, while negative values suggest a decrease.
One of the unique features of this indicator is its ability to incorporate multiple timeframes. Traders can choose a higher timeframe to analyze alongside the current timeframe, providing a broader perspective on market dynamics. This feature enables a comprehensive assessment of extreme price movements, considering both short-term and longer-term trends.
By observing extreme movements on different timeframes, traders can gain deeper insights into market conditions. This can help in identifying potential areas of confluence or divergence, supporting more informed trading decisions. For example, when extreme movements align across multiple timeframes, it may indicate a higher probability of a significant price reversal or continuation.
To use the Multiple Timeframe Stationary Extreme Indicator effectively, traders should consider a few key points:
- Choose the Timeframes : Select the appropriate timeframes based on your trading strategy and objectives. The current timeframe represents the focus of your analysis, while the higher timeframe provides a broader context. Ensure the chosen timeframes align with your trading style and the asset you are trading.
- Interpret Extreme Movements : Pay attention to extreme movements that breach certain levels. Values above zero indicate a rise in the extreme, potentially signaling overbought conditions. Conversely, values below zero suggest a decrease, potentially indicating oversold conditions. Use these extreme movements as potential entry or exit signals, in conjunction with other indicators or confirmation signals.
- Validate with Price Action : Confirm the extreme movements observed on the indicator with price action. Look for confluence between the indicator's extreme levels and key support or resistance levels, trendlines, or chart patterns. This can provide added confirmation and increase the reliability of the signals generated by the indicator.
- Consider Volatility Filters : The indicator can be enhanced by incorporating volatility filters. By adjusting the sensitivity of the extreme differences calculation based on market volatility, traders can adapt the indicator to different market conditions. Higher volatility may require a longer lookback period, while lower volatility may call for a shorter one. Experiment with volatility filters to fine-tune the indicator's performance.
- Combine with Other Analysis Techniques : The Multiple Timeframe Stationary Extreme Indicator is most effective when used as part of a comprehensive trading strategy. Combine it with other technical analysis tools, such as trend indicators, oscillators, or chart patterns, to form a well-rounded approach. Consider risk management techniques and money management principles to optimize your trading strategy.
---------------------------------------------------------------------------------------------------------------------------------------------------------------
Remember that trading indicators, including the Multiple Timeframe Stationary Extreme Indicator, should not be used in isolation. They serve as tools to assist in decision-making, but they require proper context, analysis, and confirmation. Always conduct thorough analysis and consider market conditions, news events, and other relevant factors before making trading decisions.
It's recommended to backtest the indicator on historical data to assess its performance and effectiveness for your trading approach. This will help you understand its strengths and limitations, allowing you to refine and optimize your usage of the indicator.
Psychological levels (Bank levels) PsychoLevels v3 - TartigradiaPsychological levels (Bank levels) plots the closest "round" price levels above and below current price, based on neuroscience research of how humans intuitively calculate in logarithms.
Psychological levels, also called bank levels, are "round" price numbers, by truncating after the nth leftmost digits, around which price often experience resistance or support, because traders and investors tend to set orders around these round numbers.
The calculation done here is fully automatic and dynamic, contrary to other similar scripts, this one uses a mathematical calculation that extracts the 1, 2 or 3 leftmost digits and calculate the previous and next level by incrementing/decrementing these digits. This means it works for any symbol under any price range.
This approach is based on neuroscience research, which found that human brains intuitively approximate numbers on a logarithmic scale, adults and children alike, and similarly to macaques, for more info see Numerical Cognition , Weber-Fechner Law , Zipf law .
For example, if price is at 0.0421, the next major price level is 0.05 and medium one is 0.043. For another asset currently priced at 19354, the next and previous major price levels are 20000 and 10000 respectively, and the next/previous medium levels are 20000 and 19000, and the next/previous weak levels are 19400 and 19300.
IMPORTANT: Please enable "Scale price chart only" in the chart's scale's options, as otherwise major levels may make the chart's scale very small and hard to read.
How it works
At any time, there are 3 levels of strength (1 leftmost digit, 2 leftmost digits, 3 leftmost digits) represented by different sizes, and 3 directional levels for each of these strengths (level above, level below, and half-level) represented by different colors and positions, around current price.
Indeed, contrary to other similar price levels scripts, we do not plot ALL price levels at all times, because otherwise the chart becomes wayyy too cluttered, and also it's highly processing intensive to plot so many lines. So we here use a dynamical approach: we plot only the relevant levels, the closest ones according to current price.
Hence, when a level disappears, it does not mean that it does not exist anymore, but simply that we are not drawing it right now because it is not pertinent for the current price movement (ie, too far away).
Breakouts can be detected in two different ways depending on if SMA is set to a value higher than 1 or not: if SMA == 1, then there is no smoothing, so the levels adapt instantaneously to the current price, so to detect breakout, you should refer to the levels at the previous tick and whether they were broken by current tick's price; if SMA > 1, then there is some smoothing, and so the levels will stay in-place even if there is a breakout, so it's easier to spot breakouts without having to look at the previous ticks, but on the other hand you won't see the new levels for the new price range until after a few more ticks for the smoothing window to adapt. Hence, by default, smoothing is disabled, so that you can see the currently pertinent levels at all time, even right after or during a breakout.
By default, the strong above level is in green, strong below level is in red, medium above level is in blue, medium below level is in yellow, and weak levels aren't displayed but can be. Half levels are also displayed, in a darker color. Strong levels are increments of the first leftmost digit (eg, 10000 to 20000), medium levels are increments of the second leftmost digit (eg, 19000 to 20000), and weak levels of the third leftmost digit (eg, 19100 to 19200). Instead of plotting all the psychological levels all at once as a grid, which makes the chart unintelligible, here the levels adapt dynamically around the current price, so that they show the above/below/half levels relatively to the current price.
Indeed, "half-levels" are also displayed (eg, medium level can also display 19500 instead of only 19000 or 20000). This was made because otherwise the gap between two levels was too big, especially for the strongest levels (eg, there was no major level between 20000 and 30000, but with a half-step we also get a half-level at 25000, and empirically price tends to respect these half levels - I also tried quarter levels but empirically the results were not good). In addition to this hard-coded half-level, you can also create more subdivisions (eg, quarter levels) by setting the simple moving average to a value higher than 1.
The script can be made to run on the daily timeframe whatever the current chart's timeframe is, to reduce the variability in levels, to make it less noisy than intraday price movement. But by default, the chart resolution is used, because I empirically found that the levels found with this indicator work on all time resolutions quite well.
The step can be adjusted to increase the gap between levels, eg, if you want to display one every 2 levels then input step = 2 (eg, 22000, 24000, 26000, etc), or if you want to display quarter levels, input 0.25 (eg, 22000, 22250, 22500, etc). The default values should fit most use cases and cover most psychological levels.
How to read
Focust first on bigger dotted levels, they are stronger and more likely to cause a rebound or a major event or price to stay at this level.
Remember that it's not enough to just look at levels, the context is important, because levels have various effects depending on current price movement: if price is above a level, the level is a support on which price can rebound; if price is below a level, the level is a resistance on which price can rebound (or break); and finally sometimes price also stays hovering around a level for some time.
Levels closer to 9 are less weaker, and levels closer to 0 are stronger, according to Zipf law. This is now reflected since v3 in the transparency, levels that are closer to 9 will be more transparent.
The switch in color for the same level illustrates how a level switches from being a support to a resistance and inversely. Eg, if a major level turns from green to red, then it changed from being a resistance (above) to a support (below).
As is well known in trading, longer standing levels are stronger. This indicator provides a direct illustration: in practice, the number of consecutive dots on the same line influences the strength of the level: the longer the chain of dots, the more you can expect this price level to be significant. The length does not mean the level will necessarily hold, but that other traders are likely to monitor if it holds, and if not then price will break down. Hence, longer levels are good spots to place stop losses, or to enter trades depending on your strategy. In general, a single dot is not enough to consider a level significant, but 2 or more is a good enough level, and 10+ is a strong level. Intuitively, this makes sense, and is what pro traders do: the longer a level is tested, the stronger it is. This indicator can visually represent this intuition and allows to use it as a more systematic trading signal.
Motivation
I initially made the first version of the PsychoLevels indicator mainly to train with PineScript, but I found it surprisingly accurate to define levels that are respected by price movements. So I guess it can be useful for new traders and experienced traders alike, as it's easy to forget that psychological levels can often be as strong if not stronger than technical levels. It can also be used to quickly screen other minor assets for trading opportunities. For example, a hybrid strategy would be to manually define levels on BTCUSD but using this script to automatically define levels in crypto altcoins and quickly screen them for a trade opportunity that can be greater than with BTCUSD but with the same trend.
Personally, although initially I did not believe an automated tool would work well for this purpose, I could now empirically verify that it is quite reliable for the purpose of detecting levels, and so I use it all the time to find the levels automatically and help me monitor them like a hawk, so that I only have to draw uber major levels, the ones that last between cycles and that are hard to autodetect, but otherwise all daily/weekly levels are usually covered. However, trendlines must still be drawn manually or with another indicator (but note that up to now I have found none that worked well enough), as PsychoLevels only draws levels (ie, horizontal lines, not oblique ones!).
Differences with the previous version PsychoLevels v2
price levels now have a transparency according to their importance for the human brain: numbers closer to 9 are weaker, and numbers closer to 0 are stronger and represent a major psychological threshold (eg, that's why prices marked as $9.99 sell better than $10.00). This option can be disabled to get the exact same behavior as v2.
modularized and typed code
PsychoLevels v2 can be found here:
Trend Reversal System with SR levelsHello All,
This is the Trend Reversal System with Support/Resistance levels script. long time ago I published it as closed source but now I upgraded it and and published as open-source with a different name. I hope it would be useful for you all while trading/analyzing.
The script has some parts in it: Setup, Count, SR levels, Risk levels & Targets . Now lets check them:
Setup Part: it has two part, Buy or Sell Setup. one of them can be active only. Buy setup: if current close checks if current is lower/equal than the close of the 5. bar. if yes then the script increases number of buy setup. and if it reaches 9 then the script checks if current low is lower/equal than the lows of last 3. and 4. bars, or if the low of the last bar is lower/equal than the lows of last 3. and 4. bars. if yes then the script increases the buy setup by 1. if these conditions met then it puts the label 'S' , same for Sell setup. S labels on both setup are potential reversals.
Count Part: If buy or sell setup reaches the 9 then Count part starts from 1. lets see buy count: If current close is lower/equal than the low of the 3. bar and buy count is lower than 12 or low of the bar 13 is less than or equal to the close of bar 8 then buy count increase or it's completed. if it's completed then the script puts C label, and it's potential reversal. of course there are some conditions that can cancel the count buy/sell or recycle/restart.
By using Setup and Count levels the script can show Support/Resistance Levels, Risk levels & Targets. SR levels are potential reversal levels.
Lets see some example screenshots:
Support/Resistance levels:
Potential Reversal levels and how setup/counts are shown:
Count part can recycle and the script shows it as 'R' , ( you can see the conditions for Recycle in the script ):
Count can be cancelled and and it's shown as 'x'
If the scripts find 9 on Setup or 13 on Count then it checks if it's a good level to buy/sell and if it decides it's good level then it shows TRSSetup Buy/Sell or TRSCount Buy/Sell and also shows the target. in following example the script checks and decide it's a good level to take long position. it can be aggressive or conservative, Conservative is recommended.
Enjoy!
Extended Session High/Low - Intraday and daily chartsThis script plots the extended session highest high and lowest low levels. It works on any time frame from 1 minute to daily.
Please note that during the extended session, TradingView stops updating the daily chart. This means that once the script is loaded on a daily chart, it will not be updated until the market opens, unless you manually reload the layout (Ctrl+R). For this reason, it is recommended to use a multi-timeframe layout, so when the pre/post market line is near the extended session high/low on the daily chart, you can compare these values with those on an intraday chart of the same ticker.
The extended session high/low are important for day traders because they represent the maximum and minimum limits within which the trades have taken place during the extended trading hours. This can make them levels of support/resistance that can be useful for planning trend following, reversal and range-bound strategies.
By displaying the extended session high/low on the daily chart, traders can also see if there are any significant levels nearby that are related to the daily time frame, such as trendlines, support/resistance levels, or moving averages. This can help the trader evaluate whether there is enough room for a price movement in the direction of his trading strategy.
Trend Bands [starlord_xrp]This indicator uses multiple trendlines to determine the overall trend and trend changes. It also highlights areas of potential pullbacks to entry.
Swing Counter [theEccentricTrader]█ OVERVIEW
This indicator counts the number of confirmed swing high and swing low scenarios on any given candlestick chart and displays the statistics in a table, which can be repositioned and resized at the user's discretion.
█ CONCEPTS
Green and Red Candles
• A green candle is one that closes with a high price equal to or above the price it opened.
• A red candle is one that closes with a low price that is lower than the price it opened.
Swing Highs and Swing Lows
• A swing high is a green candle or series of consecutive green candles followed by a single red candle to complete the swing and form the peak.
• A swing low is a red candle or series of consecutive red candles followed by a single green candle to complete the swing and form the trough.
Peak and Trough Prices (Basic)
• The peak price of a complete swing high is the high price of either the red candle that completes the swing high or the high price of the preceding green candle, depending on which is higher.
• The trough price of a complete swing low is the low price of either the green candle that completes the swing low or the low price of the preceding red candle, depending on which is lower.
Peak and Trough Prices (Advanced)
• The advanced peak price of a complete swing high is the high price of either the red candle that completes the swing high or the high price of the highest preceding green candle high price, depending on which is higher.
• The advanced trough price of a complete swing low is the low price of either the green candle that completes the swing low or the low price of the lowest preceding red candle low price, depending on which is lower.
Green and Red Peaks and Troughs
• A green peak is one that derives its price from the green candle/s that constitute the swing high.
• A red peak is one that derives its price from the red candle that completes the swing high.
• A green trough is one that derives its price from the green candle that completes the swing low.
• A red trough is one that derives its price from the red candle/s that constitute the swing low.
Historic Peaks and Troughs
The current, or most recent, peak and trough occurrences are referred to as occurrence zero. Previous peak and trough occurrences are referred to as historic and ordered numerically from right to left, with the most recent historic peak and trough occurrences being occurrence one.
Upper Trends
• A return line uptrend is formed when the current peak price is higher than the preceding peak price.
• A downtrend is formed when the current peak price is lower than the preceding peak price.
• A double-top is formed when the current peak price is equal to the preceding peak price.
Lower Trends
• An uptrend is formed when the current trough price is higher than the preceding trough price.
• A return line downtrend is formed when the current trough price is lower than the preceding trough price.
• A double-bottom is formed when the current trough price is equal to the preceding trough price.
█ FEATURES
Inputs
• Start Date
• End Date
• Position
• Text Size
• Show Sample Period
• Show Plots
• Show Lines
Table
The table is colour coded, consists of three columns and nine rows. Blue cells denote neutral scenarios, green cells denote return line uptrend and uptrend scenarios, and red cells denote downtrend and return line downtrend scenarios.
The swing scenarios are listed in the first column with their corresponding total counts to the right, in the second column. The last row in column one, row nine, displays the sample period which can be adjusted or hidden via indicator settings.
Rows three and four in the third column of the table display the total higher peaks and higher troughs as percentages of total peaks and troughs, respectively. Rows five and six in the third column display the total lower peaks and lower troughs as percentages of total peaks and troughs, respectively. And rows seven and eight display the total double-top peaks and double-bottom troughs as percentages of total peaks and troughs, respectively.
Plots
I have added plots as a visual aid to the swing scenarios listed in the table. Green up-arrows with ‘HP’ denote higher peaks, while green up-arrows with ‘HT’ denote higher troughs. Red down-arrows with ‘LP’ denote higher peaks, while red down-arrows with ‘LT’ denote lower troughs. Similarly, blue diamonds with ‘DT’ denote double-top peaks and blue diamonds with ‘DB’ denote double-bottom troughs. These plots can be hidden via indicator settings.
Lines
I have also added green and red trendlines as a further visual aid to the swing scenarios listed in the table. Green lines denote return line uptrends (higher peaks) and uptrends (higher troughs), while red lines denote downtrends (lower peaks) and return line downtrends (lower troughs). These lines can be hidden via indicator settings.
█ HOW TO USE
This indicator is intended for research purposes and strategy development. I hope it will be useful in helping to gain a better understanding of the underlying dynamics at play on any given market and timeframe. It can, for example, give you an idea of any inherent biases such as a greater proportion of higher peaks to lower peaks. Or a greater proportion of higher troughs to lower troughs. Such information can be very useful when conducting top down analysis across multiple timeframes, or considering entry and exit methods.
What I find most fascinating about this logic, is that the number of swing highs and swing lows will always find equilibrium on each new complete wave cycle. If for example the chart begins with a swing high and ends with a swing low there will be an equal number of swing highs to swing lows. If the chart starts with a swing high and ends with a swing high there will be a difference of one between the two total values until another swing low is formed to complete the wave cycle sequence that began at start of the chart. Almost as if it was a fundamental truth of price action, although quite common sensical in many respects. As they say, what goes up must come down.
The objective logic for swing highs and swing lows I hope will form somewhat of a foundational building block for traders, researchers and developers alike. Not only does it facilitate the objective study of swing highs and swing lows it also facilitates that of ranges, trends, double trends, multi-part trends and patterns. The logic can also be used for objective anchor points. Concepts I will introduce and develop further in future publications.
█ LIMITATIONS
Some higher timeframe candles on tickers with larger lookbacks such as the DXY , do not actually contain all the open, high, low and close (OHLC) data at the beginning of the chart. Instead, they use the close price for open, high and low prices. So, while we can determine whether the close price is higher or lower than the preceding close price, there is no way of knowing what actually happened intra-bar for these candles. And by default candles that close at the same price as the open price, will be counted as green. You can avoid this problem by utilising the sample period filter.
The green and red candle calculations are based solely on differences between open and close prices, as such I have made no attempt to account for green candles that gap lower and close below the close price of the preceding candle, or red candles that gap higher and close above the close price of the preceding candle. I can only recommend using 24-hour markets, if and where possible, as there are far fewer gaps and, generally, more data to work with. Alternatively, you can replace the scenarios with your own logic to account for the gap anomalies, if you are feeling up to the challenge.
The sample size will be limited to your Trading View subscription plan. Premium users get 20,000 candles worth of data, pro+ and pro users get 10,000, and basic users get 5,000. If upgrading is currently not an option, you can always keep a rolling tally of the statistics in an excel spreadsheet or something of the like.
█ NOTES
I feel it important to address the mention of advanced peak and trough price logic. While I have introduced the concept, I have not included the logic in my script for a number of reasons. The most pertinent of which being the amount of extra work I would have to do to include it in a public release versus the actual difference it would make to the statistics. Based on my experience, there are actually only a small number of cases where the advanced peak and trough prices are different from the basic peak and trough prices. And with adequate multi-timeframe analysis any high or low prices that are not captured using basic peak and trough price logic on any given time frame, will no doubt be captured on a higher timeframe. See the example below on the 1H FOREXCOM:USDJPY chart (Figure 1), where the basic peak price logic denoted by the indicator plot does not capture what would be the advanced peak price, but on the 2H FOREXCOM:USDJPY chart (Figure 2), the basic peak logic does capture the advanced peak price from the 1H timeframe.
Figure 1.
Figure 2.
█ RAMBLINGS
“Never was there an age that placed economic interests higher than does our own. Never was the need of a scientific foundation for economic affairs felt more generally or more acutely. And never was the ability of practical men to utilize the achievements of science, in all fields of human activity, greater than in our day. If practical men, therefore, rely wholly on their own experience, and disregard our science in its present state of development, it cannot be due to a lack of serious interest or ability on their part. Nor can their disregard be the result of a haughty rejection of the deeper insight a true science would give into the circumstances and relationships determining the outcome of their activity. The cause of such remarkable indifference must not be sought elsewhere than in the present state of our science itself, in the sterility of all past endeavours to find its empirical foundations.” (Menger, 1871, p.45).
█ BIBLIOGRAPHY
Menger, C. (1871) Principles of Economics. Reprint, Auburn, Alabama: Ludwig Von Mises Institute: 2007.
kama
█ Description
An adaptive indicator could be defined as market conditions following indicator, in summary, the parameter of the indicator would be adjusted to fit its optimum value to the current price action. KAMA, Kaufman's Adaptive Moving Average, an adaptive trendline indicator developed by Perry J. Kaufman, with the notion of using the fastest trend possible based on the smallest calculation period for the existing market conditions, by applying an exponential smoothing formula to vary the speed of the trend (changing smoothing constant each period), as cited from Trading Systems and Methods p.g. 780 (Perry J. Kaufman). In this indicator, the proposed notion is on the Efficiency Ratio within the computation of KAMA, which will use a Dominant Cycle instead, an adaptive filter developed by John F. Ehlers, on determining the n periods, aiming to achieve an optimum lookback period, with respect to the original Efficiency Ratio calculation period of less than 14, and 8 to 10 is preferable.
█ Kaufman's Adaptive Moving Average
kama_ = kama + smoothing_constant * (price - kama )
where:
price = current price (source)
smoothing_constant = (efficiency_ratio * (fastest - slowest) + slowest)^2
fastest = 2/(fastest length + 1)
slowest = 2/(slowest length + 1)
efficiency_ratio = price - price /sum(abs(src - src , int(dominant_cycle))
█ Feature
The indicator will have a specified default parameter of: length = 14; fast_length = 2; slow_length = 30; hp_period = 48; source = ohlc4
KAMA trendline i.e. output value if price above the trendline and trendline indicates with green color, consider to buy/long position
while, if the price is below the trendline and the trendline indicates red color, consider to sell/short position
Hysteresis Band
Bar Color
other example
Rainbow Collection - VioletMoving averages come in all shapes and types. The most basic type is the simple moving average which is simply the sum divided by the quantity. Therefore, the simple moving average is the sum of the values divided by their number.
In technical analysis, you generally use moving averages to understand the underlying trend and to find trading signals. In the case of the Violet indicator, we are using a Hull moving average which is a special variation based on different weights to minimize lag.
The Violet indicator is therefore used as follows:
* A bullish signal is generated whenever the close price surpasses the 20-period Hull moving average while the previous close prices from periods were all below their respective Hull moving average of the period.
*A bearish signal is generated whenever the close price breaks the 20-period Hull moving average while the previous close prices from periods were all above their respective Hull moving average of the period.
The aim of the Violet indicator is to capture reversals as early as possible through a combination of lagged conditions based on the Fibonacci sequence.
Shorting when Bollinger Band Above Price with RSI (by Coinrule)The Bollinger Bands are among the most famous and widely used indicators. A Bollinger Band is a technical analysis tool defined by a set of trendlines plotted two standard deviations (positively and negatively) away from a simple moving average ( SMA ) of a security's price, but which can be adjusted to user preferences. They can suggest when an asset is oversold or overbought in the short term, thus providing the best time for buying and selling it.
The relative strength index ( RSI ) is a momentum indicator used in technical analysis. RSI measures the speed and magnitude of a security's recent price changes to evaluate overvalued or undervalued conditions in the price of that security. The RSI can do more than point to overbought and oversold securities. It can also indicate securities primed for a trend reversal or corrective pullback in price. It can signal when to buy and sell. Traditionally, an RSI reading of 70 or above indicates an overbought situation. A reading of 30 or below indicates an oversold condition.
The short order is placed on assets that present strong momentum when it's more likely that it is about to reverse. The rule strategy places and closes the order when the following conditions are met:
ENTRY
The closing price is greater than the upper standard deviation of the Bollinger Bands
The RSI is less than 70.
EXIT
The trade is closed when the RSI is less than 70
The lower standard deviation of the Bollinger Band is less than the closing price.
This strategy was backtested from the beginning of 2022 to capture how this strategy would perform in a bear market.
The strategy assumes each order to trade 70% of the available capital to make the results more realistic. A trading fee of 0.1% is taken into account. The fee is aligned to the base fee applied on Binance, which is the largest cryptocurrency exchange by volume.
Faytterro Market Structerethis indicator creates the market structure with a little delay but perfectly. each zigzag is always drawn from highest to lowest. It also signals when the market structure is broken. signals fade over time.
The table above shows the percentage distance of the price from the last high and the last low.
zigzags are painted green when making higher peaks, while lower peaks are considered downtrends and are painted red. In fact, the indicator is quite simple to understand and use.
"length" is used to change the frequency of the signal.
"go to past" is used to see historical data.
Please review the examples:
Broadening Formations [TFO]This indicator highlights deviations from broadening formations (or megaphone patterns). Deviations from broadening ranges can often foreshadow reversals, especially in consolidation phases. These deviations are highlighted via trendlines that change color when tested, and also have the option to be alerted.
These broadening formations are heavily used with "The Strat" and can add confluence when looking for reversals within higher timeframe points of interest.
Trend Line Adam Moradi v1 (Tutorial Content)
The Pine Script strategy that plots pivot points and trend lines on a chart. The strategy allows the user to specify the period for calculating pivot points and the number of pivot points to be used for generating trend lines. The user can also specify different colors for the up and down trend lines.
The script starts by defining the input parameters for the strategy and then calculates the pivot high and pivot low values using the pivothigh() and pivotlow() functions. It then stores the pivot points in two arrays called trend_top_values and trend_bottom_values. The script also has two arrays called trend_top_position and trend_bottom_position which store the positions of the pivot points.
The script then defines a function called add_to_array() which takes in three arguments: apointer1, apointer2, and val. This function adds val to the beginning of the array pointed to by apointer1, and adds bar_index to the beginning of the array pointed to by apointer2. It then removes the last element from both arrays.
The script then checks if a pivot high or pivot low value has been calculated, and if so, it adds the value and its position to the appropriate arrays using the add_to_array() function.
Next, the script defines two arrays called bottom_lines and top_lines which will be used to store trend lines. It also defines a variable called starttime which is set to the current time.
The script then enters a loop to calculate and plot the trend lines. It first deletes any existing trend lines from the chart. It then enters two nested loops which iterate over the pivot points stored in the trend_bottom_values and trend_top_values arrays. For each pair of pivot points, the script calculates the slope of the line connecting them and checks if the line is a valid trend line by iterating over the price bars between the two pivot points and checking if the line is above or below the close price of each bar. If the line is found to be a valid trend line, it is plotted on the chart using the line.new() function.
Finally, the script colors the trend lines using the colors specified by the user.
Tutorial Content
'PivotPointNumber' is an input parameter for the script that specifies the number of pivot points to consider when calculating the trend lines. The value of 'PivotPointNumber' is set by the user when they configure the script. It is used to determine the size of the arrays that store the values and positions of the pivot points, as well as the number of pivot points to loop through when calculating the trend lines.
'up_trend_color' is an input parameter for the script that specifies the color to use for drawing the trend lines that are determined to be upward trends. The value of 'up_trend_color' is set by the user when they configure the script and is passed to the color parameter of the line.new() function when drawing the upward trend lines. It determines the visual appearance of the upward trend lines on the chart.
'down_trend_color' is an input parameter for the script that specifies the color to use for drawing the trend lines that are determined to be downward trends. The value of 'down_trend_color' is set by the user when they configure the script and is passed to the color parameter of the line.new() function when drawing the downward trend lines. It determines the visual appearance of the downward trend lines on the chart.
'pivothigh' is a variable in the script that stores the value of the pivot high point. It is calculated using the pivothigh() function, which returns the highest high over a specified number of bars. The value of 'pivothigh' is used in the calculation of the trend lines.
'pivotlow' is a variable in the script that stores the value of the pivot low point. It is calculated using the pivotlow() function, which returns the lowest low over a specified number of bars. The value of 'pivotlow' is used in the calculation of the trend lines.
'trend_top_values' is an array in the script that stores the values of the pivot points that are determined to be at the top of the trend. These are the pivot points that are used to calculate the upward trend lines.
'trend_top_position' is an array in the script that stores the positions (i.e., bar indices) of the pivot points that are stored in the 'trend_top_values' array. These positions correspond to the locations of the pivot points on the chart.
'trend_bottom_values' is an array in the script that stores the values of the pivot points that are determined to be at the bottom of the trend. These are the pivot points that are used to calculate the downward trend lines.
'trend_bottom_position' is an array in the script that stores the positions (i.e., bar indices) of the pivot points that are stored in the 'trend_bottom_values' array. These positions correspond to the locations of the pivot points on the chart.
apointer1 and apointer2 are variables used in the add_to_array() function, which is defined in the script. They are both pointers to arrays, meaning that they hold the memory addresses of the arrays rather than the arrays themselves. They are used to manipulate the arrays by adding new elements to the beginning of the arrays and removing elements from the end of the arrays.
apointer1 is a pointer to an array of floating-point values, while apointer2 is a pointer to an array of integers. The specific arrays that they point to depend on the arguments passed to the add_to_array() function when it is called. For example, if add_to_array(trend_top_values, trend_top_posisiton, pivothigh) is called, then apointer1 would point to the tval array and apointer2 would point to the tpos array.
'bottom_lines' (short for "Bottom Lines") is an array in the script that stores the line objects for the downward trend lines that are drawn on the chart. Each element of the array corresponds to a different trend line.
'top_lines' (short for "Top Lines") is an array in the script that stores the line objects for the upward trend lines that are drawn on the chart. Each element of the array corresponds to a different trend line.
Both 'bottom_lines' and 'top_lines' are arrays of type "line", which is a data type in PineScript that represents a line drawn on a chart. The line objects are created using the line.new() function and are used to draw the trend lines on the chart. The variables are used to store the line objects so that they can be manipulated and deleted later in the script.
Loops
maxline is a variable in the script that specifies the maximum number of trend lines that can be drawn on the chart. It is used to determine the size of the bottom_lines and top_lines arrays, which store the line objects for the trend lines.
The value of maxline is set to 3 at the beginning of the script, meaning that at most 3 trend lines can be drawn on the chart at a time. This value can be changed by the user if desired by modifying the assignment statement "maxline = 3".
'count_line_low' (short for "Count Line Low") is a variable in the script that keeps track of the number of downward trend lines that have been drawn on the chart. It is used to ensure that the maximum number of trend lines (as specified by the maxline variable) is not exceeded.
'count_line_high' (short for "Count Line High") is a variable in the script that keeps track of the number of upward trend lines that have been drawn on the chart. It is used to ensure that the maximum number of trend lines (as specified by the maxline variable) is not exceeded.
Both 'count_line_low' and 'count_line_high' are initialized to 0 at the beginning of the script and are incremented each time a new trend line is drawn. If either variable exceeds the value of maxline, then no more trend lines are drawn.
'pivot1', 'up_val1', 'up_val2', up1, and up2 are variables used in the loop that calculates the downward trend lines in the script. They are used to store intermediate values during the calculation process.
'pivot1' is a loop variable that is used to iterate through the pivot points (stored in the trend_bottom_values and trend_bottom_position arrays) that are being considered for use in the trend line calculation.
'up_val1' and 'up_val2' are variables that store the values of the pivot points that are used to calculate the downward trend line.
up1 and up2 are variables that store the positions (i.e., bar indices) of the pivot points that are stored in 'up_val1' and 'up_val2', respectively. These positions correspond to the locations of the pivot points on the chart.
'value1' and 'value2' are variables that are used to store the values of the pivot points that are being compared in the loop that calculates the trend lines in the script. They are used to determine whether a trend line can be drawn between the two pivot points.
For example, if 'value1' is the value of a pivot point at the top of the trend and 'value2' is the value of a pivot point at the bottom of the trend, then a trend line can be drawn between the two points if 'value1' is greater than 'value2'. The values of 'value1' and 'value2' are used in the calculation of the slope and intercept of the trend line.
'position1' and 'position2' are variables that are used to store the positions (i.e., bar indices) of the pivot points that are being compared in the loop that calculates the trend lines in the script. They are used to determine the distance between the pivot points, which is necessary for calculating the slope of the trend line.
For example, if 'position1' is the position of a pivot point at the top of the trend and 'position2' is the position of a pivot point at the bottom of the trend, then the distance between the two points is given by 'position1' - 'position2'. This distance is used in the calculation of the slope of the trend line.
'different', 'high_line', 'low_location', 'low_value', and 'valid' are variables that are used in the loop that calculates the downward trend lines in the script. They are used to store intermediate values during the calculation process.
'different' is a variable that stores the slope of the downward trend line being calculated. It is calculated as the difference in value between the two pivot points (stored in up_val1 and up_val2) divided by the distance between the pivot points (calculated using their positions, stored in up1 and up2).
'high_line' is a variable that stores the current value of the trend line being calculated at a given point in the loop. It is initialized to the value of the second pivot point (stored in up_val2) and is updated on each iteration of the loop using the value of different.
'low_location' is a variable that stores the position (i.e., bar_index) on the chart of the point where the trend line being calculated first touches the low price. It is initialized to the position of the second pivot point (stored in up2) and is updated on each iteration of the loop if the trend line touches a lower low.
'low_value' is a variable that stores the value of the trend line at the point where it first touches the low price. It is initialized to the value of the second pivot point (stored in up_val2) and is updated on each iteration of the loop if the trend line touches a lower low.
'valid' is a Boolean variable that is used to indicate whether the trend line being calculated is valid. It is initialized to true and is set to false if the trend line does not pass through all the lows between the pivot points. If valid is still true after the loop has completed, then the trend line is considered valid and is drawn on the chart.
d_value1, d_value2, d_position1, and d_position2 are variables that are used in the loop that calculates the upward trend lines in the script. They are used to store intermediate values during the calculation process.
d_value1 and d_value2 are variables that store the values of the pivot points that are used to calculate the upward trend line.
d_position1 and d_position2 are variables that store the positions (i.e., bar indices) of the pivot points that are stored in d_value1 and d_value2, respectively. These positions correspond to the locations of the pivot points on the chart.
The variables d_value1, d_value2, d_position1, and d_position2 have the same function as the variables uv1, uv2, up1, and up2, respectively, but for the calculation of the upward trend lines rather than the downward trend lines. They are used in a similar way to store intermediate values during the calculation process.
thank you.
True Range Adjusted Exponential Moving Average [CC]The True Range Adjusted Exponential Moving Average was created by Vitali Apirine (Stocks and Commodities Jan 2023 pgs 22-27) and this is the latest indicator in his EMA variation series. He has been tweaking the traditional EMA formula using various methods and this indicator of course uses the True Range indicator. The way that this indicator works is that it uses a stochastic of the True Range vs its highest and lowest values over a fixed length to create a multiple which increases as the True Range rises to its highest level and decreases as the True Range falls. This in turn will adjust the Ema to rise or fall depending on the underlying True Range. As with all of my indicators, I have color coded it to turn green when it detects a buy signal or turn red when it detects a sell signal. Darker colors mean it is a very strong signal and let me know if you find any settings that work well overall vs the default settings.
Let me know if you would like me to publish any other scripts that you recommend!






















