pseudorenko█ CALCULATE PSEUDO-RENKO VALUE
Calculates and returns the Pseudo-Renko Stabilized value (or close price) based on a given input value, along with the direction of the current Renko brick. This function adapts the traditional Renko brick size dynamically based on the volatility of the input value using a combination of SMA and EMA calculations. The calculated price represents the closing price of the most recent Pseudo-Renko brick, while the direction indicates the trend ( 1 for uptrend, -1 for downtrend).
Parameters:
* `val` :
* Type: ` float `
* Description: The input value upon which the Pseudo-Renko calculations are performed. You can use any price series or custom value as input.
* `sensitivity` :
* Type: ` float `
* Default Value: ` 1.0 `
* Description: Controls the sensitivity of the brick size to the volatility of the `val`. Higher values lead to larger bricks, resulting in a smoother Renko chart. Lower values produce smaller bricks, leading to a more reactive chart.
* Possible Values: Any positive float.
* `length` :
* Type: ` int `
* Default Value: ` 7 `
* Description: The length used for calculating the EMA and SMA in the dynamic brick size calculation. It influences how quickly the brick size adapts to changing volatility of the `val`.
* Possible Values: Any positive integer.
Return Values:
* `lastRenkoClose` :
* Type: ` float `
* Description: The closing price of the last completed Pseudo-Renko brick based on the `val`.
* `renkoDirection` :
* Type: ` int `
* Description: The direction of the current Pseudo-Renko brick based on the `val`:
* ` 1 `: Uptrend
* ` -1 `: Downtrend
* ` 0 `: No change (initially, or no brick change since the previous bar)
Example Usage:
//@version=5
indicator("Pseudo-Renko Stabilized (Val)", overlay=true)
// Get user inputs
sensitivityInput = input.float(0.1, "Sensitivity",0.01,step=0.01)
lengthInput = input.int(5, "Length",2)
// Example usage with the 'close' price as the input value
= pseudo_renko(math.avg(close,open), sensitivityInput, lengthInput)
// Plot the Renko close price
plot(renkoClose, "Renko Close", renkoDirection>0?color.aqua:color.orange,2)
// You can also use other values as input, such as:
// = pseudo_renko(high, sensitivityInput, lengthInput)
// = pseudo_renko(low, sensitivityInput, lengthInput)
This example demonstrates how to use the `pseudo_renko` function within an indicator. It takes user inputs for `sensitivity` and `length`, then calculates the Pseudo-Renko values using the average of the `close` and `open` prices as the `val`. The resulting `renkoClose` price is plotted on the chart, with a color change based on the `renkoDirection`. It also illustrates how you can use other values, like `high` and `low`, as input to the function.
Note: The Pseudo-Renko algorithm is based on adapting the Renko brick size dynamically based on the input `val`. This provides more flexibility compared to the normal, but is experimental. The `sensitivity` and `length` parameters, along with the choice of the `val`, offer further customization to tune the algorithm's behavior to your preference and trading style.
Cari skrip untuk "algo"
Pseudo-Renko Stabilized (Val)█ CALCULATE PSEUDO-RENKO VALUE
Calculates and returns the Pseudo-Renko Stabilized value (or close price) based on a given input value, along with the direction of the current Renko brick. This function adapts the traditional Renko brick size dynamically based on the volatility of the input value using a combination of SMA and EMA calculations. The calculated price represents the closing price of the most recent Pseudo-Renko brick, while the direction indicates the trend ( 1 for uptrend, -1 for downtrend).
Parameters:
* `val` :
* Type: ` float `
* Description: The input value upon which the Pseudo-Renko calculations are performed. You can use any price series or custom value as input.
* `sensitivity` :
* Type: ` float `
* Default Value: ` 1.0 `
* Description: Controls the sensitivity of the brick size to the volatility of the `val`. Higher values lead to larger bricks, resulting in a smoother Renko chart. Lower values produce smaller bricks, leading to a more reactive chart.
* Possible Values: Any positive float.
* `length` :
* Type: ` int `
* Default Value: ` 7 `
* Description: The length used for calculating the EMA and SMA in the dynamic brick size calculation. It influences how quickly the brick size adapts to changing volatility of the `val`.
* Possible Values: Any positive integer.
Return Values:
* `lastRenkoClose` :
* Type: ` float `
* Description: The closing price of the last completed Pseudo-Renko brick based on the `val`.
* `renkoDirection` :
* Type: ` int `
* Description: The direction of the current Pseudo-Renko brick based on the `val`:
* ` 1 `: Uptrend
* ` -1 `: Downtrend
* ` 0 `: No change (initially, or no brick change since the previous bar)
Example Usage:
//@version=5
indicator("Pseudo-Renko Stabilized (Val)", overlay=true)
// Get user inputs
sensitivityInput = input.float(0.1, "Sensitivity",0.01,step=0.01)
lengthInput = input.int(5, "Length",2)
// Example usage with the 'close' price as the input value
= pseudo_renko(math.avg(close,open), sensitivityInput, lengthInput)
// Plot the Renko close price
plot(renkoClose, "Renko Close", renkoDirection>0?color.aqua:color.orange,2)
// You can also use other values as input, such as:
// = pseudo_renko(high, sensitivityInput, lengthInput)
// = pseudo_renko(low, sensitivityInput, lengthInput)
This example demonstrates how to use the `pseudo_renko` function within an indicator. It takes user inputs for `sensitivity` and `length`, then calculates the Pseudo-Renko values using the average of the `close` and `open` prices as the `val`. The resulting `renkoClose` price is plotted on the chart, with a color change based on the `renkoDirection`. It also illustrates how you can use other values, like `high` and `low`, as input to the function.
Note: The Pseudo-Renko algorithm is based on adapting the Renko brick size dynamically based on the input `val`. This provides more flexibility compared to the normal, but is experimental. The `sensitivity` and `length` parameters, along with the choice of the `val`, offer further customization to tune the algorithm's behavior to your preference and trading style.
ICT Unicorn | Flux Charts💎 GENERAL OVERVIEW
Introducing our new ICT Unicorn Indicator! This indicator is built around the ICT's "Unicorn" strategy. The strategy uses Breaker Blocks and Fair Value Gaps for entry confirmation. For more information about the process, check the "HOW DOES IT WORK" section.
Features of the new ICT Unicorn Indicator :
Implementation of ICT's Unicorn Strategy
Toggleable Retracement Entry Method
3 Different TP / SL Methods
Customizable Execution Settings
Customizable Backtesting Dashboard
Alerts for Buy, Sell, TP & SL Signals
📌 HOW DOES IT WORK ?
The ICT Unicorn entry model merges the concepts of Breaker Blocks and Fair Value Gaps (FVGs), offering a distinct method for identifying trade opportunities. By integrating these two elements, we can have a position entry with stop-loss and take-profit targets on the potential support & resistance zones. This model is particularly reliable for trade entry, as it combines two powerful entry techniques.
An ICT Unicorn Model consists of a FVG which is overlapping with a Breaker Block of the same type. Here is an example :
When a FVG overlaps with a Breaker Block of the same type, the indicator gives a Buy or Sell signal depending on the FVG type (Bullish & Bearish). If the "Require Retracement" option is enabled in the settings, the signals are not given immediately. Instead, the current price of the ticker will need to touch the FVG once more before the signals are given.
After the Buy or Sell signal, the indicator immediately draws the take-profit (TP) and stop-loss (SL) targets. The indicator has three different TP & SL modes, explained in the "Settings" section of this write-up.
You can set up alerts for entry and TP & SL signals, and also check the current performance of the indicator and adjust the settings accordingly to the current ticker using the backtesting dashboard.
🚩 UNIQUENESS
This indicator is an all-in-one suit for the ICT's Unicorn concept. It's capable of plotting the strategy, giving signals, a backtesting dashboard and alerts feature. Different and customizable algorithm modes will help the trader fine-tune the indicator for the asset they are currently trading. Three different TP / SL modes are available to suit your needs. The backtesting dashboard allows you to see how your settings perform in the current ticker. You can also set up alerts to get informed when the strategy is executable for different tickers.
⚙️ SETTINGS
1. General Configuration
FVG Detection Sensitivity -> You may select between Low, Normal, High or Extreme FVG detection sensitivity. This will essentially determine the size of the spotted FVGs, with lower sensitivies resulting in spotting bigger FVGs, and higher sensitivies resulting in spotting all sizes of FVGs.
Swing Length -> Swing length is used when finding order block formations. Smaller values will result in finding smaller order & breaker blocks.
Require Retracement ->
a) Disabled : The entry signal is given immediately once a FVG overlaps with a Breaker Block of the same type.
b) Enabled : The current price of the ticker will need to touch the FVG once more before the entry signal is given.
2. TP / SL
TP / SL Method ->
a) Unicorn : This is the default option. The SL will be set to the lowest low of the last 100 bars with an extra offset in a Buy signal. For Sell signals, the SL will be set to the highest high of the last 100 bars with an extra offset. The TP is then set to a value using the SL value and maintaining a risk-reward ratio.
b) Dynamic: The TP / SL zones will be auto-determined by the algorithm based on the Average True Range (ATR) of the current ticker.
c) Fixed : You can adjust the exact TP / SL ratios from the settings below.
Dynamic Risk -> The risk you're willing to take if "Dynamic" TP / SL Method is selected. Higher risk usually means a better winrate at the cost of losing more if the strategy fails. This setting is has a crucial effect on the performance of the indicator, as different tickers may have different volatility so the indicator may have increased performance when this setting is correctly adjusted.
ICT 9:30am First FVGThis indicator is designed based on ICT (Inner Circle Trader)'s algorithmic price action theory, specifically targeting the first fair value gap (FVG) that forms immediately after the New York Stock Exchange opens at 9:30am. The FVG represents an imbalance in the price delivery where a significant price action gap occurs, which can play a crucial role in future price movements.
Features:
Identification of First FVG: Automatically identifies and plots the first fair value gap that forms post the 9:30am NY open.
Customizable Visualization: Choose between block or line styles for visual representation, with customizable colors and border styles.
Date Labeling: Optionally displays date labels for each identified gap to track patterns over time.
Imbalance Extension: Options to extend the imbalances to the current bar, helping to visualize their influence on ongoing price action.
Purpose:
The first fair value gap formed after the market opens is an important algorithmic price range in ICT's price action theory. This indicator simplifies the identification of these critical gaps and helps in understanding their impact on future price action.
Uptrick: Trend SMA Oscillator### In-Depth Analysis of the "Uptrick: Trend SMA Oscillator" Indicator
---
#### Introduction to the Indicator
The "Uptrick: Trend SMA Oscillator" is an advanced yet user-friendly technical analysis tool designed to help traders across all levels of experience identify and follow market trends with precision. This indicator builds upon the fundamental principles of the Simple Moving Average (SMA), a cornerstone of technical analysis, to deliver a clear, visually intuitive overlay on the price chart. Through its strategic use of color-coding and customizable parameters, the Uptrick: Trend SMA Oscillator provides traders with actionable insights into market dynamics, enhancing their ability to make informed trading decisions.
#### Core Concepts and Methodology
1. **Foundational Principle – Simple Moving Average (SMA):**
- The Simple Moving Average (SMA) is the heart of the Uptrick: Trend SMA Oscillator. The SMA is a widely-used technical indicator that calculates the average price of an asset over a specified number of periods. By smoothing out price data, the SMA helps to reduce the noise from short-term fluctuations, providing a clearer picture of the overall trend.
- In the Uptrick: Trend SMA Oscillator, two SMAs are employed:
- **Primary SMA (oscValue):** This is applied to the closing price of the asset over a user-defined period (default is 14 periods). This SMA tracks the price closely and is sensitive to changes in market direction.
- **Smoothing SMA (oscV):** This second SMA is applied to the primary SMA, further smoothing the data and helping to filter out minor price movements that might otherwise be mistaken for trend reversals. The default period for this smoothing is 50, but it can be adjusted to suit the trader's preference.
2. **Color-Coding for Trend Visualization:**
- One of the most distinctive features of this indicator is its use of color to represent market trends. The indicator’s line changes color based on the relationship between the primary SMA and the smoothing SMA:
- **Bullish (Green):** The line turns green when the primary SMA is equal to or greater than the smoothing SMA, indicating that the market is in an upward trend.
- **Bearish (Red):** Conversely, the line turns red when the primary SMA falls below the smoothing SMA, signaling a downward trend.
- This color-coded system provides traders with an immediate, easy-to-interpret visual cue about the market’s direction, allowing for quick decision-making.
#### Detailed Explanation of Inputs
1. **Bullish Color (Default: Green #00ff00):**
- This input allows traders to customize the color that represents bullish trends on the chart. The default setting is green, a color commonly associated with upward market movement. However, traders can adjust this to any color that suits their visual preferences or matches their overall chart theme.
2. **Bearish Color (Default: Red RGB: 245, 0, 0):**
- The bearish color input determines the color of the line when the market is trending downwards. The default setting is a vivid red, signaling caution or selling opportunities. Like the bullish color, this can be customized to fit the trader’s needs.
3. **Line Thickness (Default: 5):**
- This setting controls the thickness of the line plotted by the indicator. The default thickness of 5 makes the line prominent on the chart, ensuring that the trend is easily visible even in complex or crowded chart setups. Traders can adjust the thickness to make the line thinner or thicker, depending on their visual preferences.
4. **Primary SMA Period (Value 1 - Default: 14):**
- The primary SMA period defines how many periods (e.g., days, hours) are used to calculate the moving average based on the asset’s closing prices. The default period of 14 is a balanced setting that offers a good mix of responsiveness and stability, but traders can adjust this depending on their trading style:
- **Shorter Periods (e.g., 5-10):** These make the indicator more sensitive, capturing trends more quickly but also increasing the likelihood of reacting to short-term price fluctuations or "noise."
- **Longer Periods (e.g., 20-50):** These smooth the data more, providing a more stable trend line that is less prone to whipsaws but may be slower to respond to trend changes.
5. **Smoothing SMA Period (Value 2 - Default: 50):**
- The smoothing SMA period determines how much the primary SMA is smoothed. A longer smoothing period results in a more gradual, stable line that focuses on the broader trend. The default of 50 is designed to smooth out most of the short-term fluctuations while still being responsive enough to detect significant trend shifts.
- **Customization:**
- **Shorter Smoothing Periods (e.g., 20-30):** Make the indicator more responsive, better for fast-moving markets or for traders who want to capture quick trends.
- **Longer Smoothing Periods (e.g., 70-100):** Enhance stability, ideal for long-term traders looking to avoid reacting to minor price movements.
#### Unique Characteristics and Advantages
1. **Simplicity and Clarity:**
- The Uptrick: Trend SMA Oscillator’s design prioritizes simplicity without sacrificing effectiveness. By relying on the widely understood SMA, it avoids the complexity of more esoteric indicators while still providing reliable trend signals. This simplicity makes it accessible to traders of all levels, from novices who are just learning about technical analysis to experienced traders looking for a straightforward, dependable tool.
2. **Visual Feedback Mechanism:**
- The indicator’s use of color to signify market trends is a particularly powerful feature. This visual feedback mechanism allows traders to assess market conditions at a glance. The clarity of the green and red color scheme reduces the mental effort required to interpret the indicator, freeing the trader to focus on strategy execution.
3. **Adaptability Across Markets and Timeframes:**
- One of the strengths of the Uptrick: Trend SMA Oscillator is its versatility. The basic principles of moving averages apply equally well across different asset classes and timeframes. Whether trading stocks, forex, commodities, or cryptocurrencies, traders can use this indicator to gain insights into market trends.
- **Intraday Trading:** For day traders who operate on short timeframes (e.g., 1-minute, 5-minute charts), the oscillator can be adjusted to be more responsive, capturing quick shifts in momentum.
- **Swing Trading:** Swing traders, who typically hold positions for several days to weeks, will find the default settings or slightly adjusted periods ideal for identifying and riding medium-term trends.
- **Long-Term Trading:** Position traders and investors can adjust the indicator to focus on long-term trends by increasing the periods for both the primary and smoothing SMAs, filtering out minor fluctuations and highlighting sustained market movements.
4. **Minimal Lag:**
- One of the challenges with moving averages is lag—the delay between when the price changes and when the indicator reflects this change. The Uptrick: Trend SMA Oscillator addresses this by allowing traders to adjust the periods to find a balance between responsiveness and stability. While all SMAs inherently have some lag, the customizable nature of this indicator helps traders mitigate this effect to align with their specific trading goals.
5. **Customizable and Intuitive:**
- While many technical indicators come with a fixed set of parameters, the Uptrick: Trend SMA Oscillator is fully customizable, allowing traders to tailor it to their trading style, market conditions, and personal preferences. This makes it a highly flexible tool that can be adjusted as markets evolve or as a trader’s strategy changes over time.
#### Practical Applications for Different Trader Profiles
1. **Day Traders:**
- **Use Case:** Day traders can customize the SMA periods to create a faster, more responsive indicator. This allows them to capture short-term trends and make quick decisions. For example, reducing the primary SMA to 5 and the smoothing SMA to 20 can help day traders react promptly to intraday price movements.
- **Strategy Integration:** Day traders might use the Uptrick: Trend SMA Oscillator in conjunction with volume-based indicators to confirm the strength of a trend before entering or exiting trades.
2. **Swing Traders:**
- **Use Case:** Swing traders can use the default settings or slightly adjust them to smooth out minor price fluctuations while still capturing medium-term trends. This approach helps in identifying the optimal points to enter or exit trades based on the broader market direction.
- **Strategy Integration:** Swing traders can combine this indicator with oscillators like the Relative Strength Index (RSI) to confirm overbought or oversold conditions, thereby refining their entry and exit strategies.
3. **Position Traders:**
- **Use Case:** Position traders, who hold trades for extended periods, can extend the SMA periods to focus on long-term trends. By doing so, they minimize the impact of short-term market noise and focus on the underlying trend.
- **Strategy Integration:** Position traders might use the Uptrick: Trend SMA Oscillator in combination with fundamental analysis. The indicator can help confirm the timing of entries and exits based on broader economic or corporate developments.
4. **Algorithmic and Quantitative Traders:**
- **Use Case:** The simplicity and clear logic of the Uptrick: Trend SMA Oscillator make it an excellent candidate for algorithmic trading strategies. Its binary output—bullish or bearish—can be easily coded into automated trading systems.
- **Strategy Integration:** Quant traders might use the indicator as part of a larger trading system that incorporates multiple indicators and rules, optimizing the SMA periods based on historical backtesting to achieve the best results.
5. **Novice Traders:**
- **Use Case:** Beginners can use the Uptrick: Trend SMA Oscillator to learn the basics of trend-following strategies.
The visual simplicity of the color-coded line helps novice traders quickly understand market direction without the need to interpret complex data.
- **Educational Value:** The indicator serves as an excellent starting point for those new to technical analysis, providing a practical example of how moving averages work in a real-world trading environment.
#### Combining the Indicator with Other Tools
1. **Relative Strength Index (RSI):**
- The RSI is a momentum oscillator that measures the speed and change of price movements. When combined with the Uptrick: Trend SMA Oscillator, traders can look for instances where the RSI shows divergence from the price while the oscillator confirms the trend. This can be a powerful signal of an impending reversal or continuation.
2. **Moving Average Convergence Divergence (MACD):**
- The MACD is another popular trend-following momentum indicator. By using it alongside the Uptrick: Trend SMA Oscillator, traders can confirm the strength of a trend and identify potential entry and exit points with greater confidence. For example, a bullish crossover on the MACD that coincides with the Uptrick: Trend SMA Oscillator turning green can be a strong buy signal.
3. **Volume Indicators:**
- Volume is often considered the fuel behind price movements. Using volume indicators like the On-Balance Volume (OBV) or Volume Weighted Average Price (VWAP) in conjunction with the Uptrick: Trend SMA Oscillator can help traders confirm the validity of a trend. A trend identified by the oscillator that is supported by increasing volume is typically more reliable.
4. **Fibonacci Retracement:**
- Fibonacci retracement levels are used to identify potential reversal levels in a trending market. When the Uptrick: Trend SMA Oscillator indicates a trend, traders can use Fibonacci retracement levels to find potential entry points that align with the broader trend direction.
#### Implementation in Different Market Conditions
1. **Trending Markets:**
- The Uptrick: Trend SMA Oscillator excels in trending markets, where it provides clear signals on the direction of the trend. In a strong uptrend, the line will remain green, helping traders stay in the trade for longer periods. In a downtrend, the red line will signal the continuation of bearish conditions, prompting traders to stay short or avoid long positions.
2. **Sideways or Range-Bound Markets:**
- In range-bound markets, where price oscillates within a confined range without a clear trend, the Uptrick: Trend SMA Oscillator may produce more frequent changes in color. While this could indicate potential reversals at the range boundaries, traders should be cautious of false signals. It may be beneficial to pair the oscillator with a volatility indicator to better navigate such conditions.
3. **Volatile Markets:**
- In highly volatile markets, where prices can swing rapidly, the sensitivity of the Uptrick: Trend SMA Oscillator can be adjusted by modifying the SMA periods. A shorter SMA period might capture quick trends, but traders should be aware of the increased risk of whipsaws. Combining the oscillator with a volatility filter or using it in a higher time frame might help mitigate some of this risk.
#### Final Thoughts
The "Uptrick: Trend SMA Oscillator" is a versatile, easy-to-use indicator that stands out for its simplicity, visual clarity, and adaptability. It provides traders with a straightforward method to identify and follow market trends, using the well-established concept of moving averages. The indicator’s customizable nature makes it suitable for a wide range of trading styles, from day trading to long-term investing, and across various asset classes.
By offering immediate visual feedback through color-coded signals, the Uptrick: Trend SMA Oscillator simplifies the decision-making process, allowing traders to focus on execution rather than interpretation. Whether used on its own or as part of a broader technical analysis toolkit, this indicator has the potential to enhance trading strategies and improve overall performance.
Its accessibility and ease of use make it particularly appealing to novice traders, while its adaptability and reliability ensure that it remains a valuable tool for more experienced market participants. As markets continue to evolve, the Uptrick: Trend SMA Oscillator remains a timeless tool, rooted in the fundamental principles of technical analysis, yet flexible enough to meet the demands of modern trading.
Machine Learning Signal FilterIntroducing the "Machine Learning Signal Filter," an innovative trading indicator designed to leverage the power of machine learning to enhance trading strategies. This tool combines advanced data processing capabilities with user-friendly customization options, offering traders a sophisticated yet accessible means to optimize their market analysis and decision-making processes. Importantly, this indicator does not repaint, ensuring that signals remain consistent and reliable after they are generated.
Machine Learning Integration
The "Machine Learning Signal Filter" employs machine learning algorithms to analyze historical price data and identify patterns that may not be immediately apparent through traditional technical analysis. By utilizing techniques such as regression analysis and neural networks, the indicator continuously learns from new data, refining its predictive capabilities over time. This dynamic adaptability allows the indicator to adjust to changing market conditions, potentially improving the accuracy of trading signals.
Key Features and Benefits
Dynamic Signal Generation: The indicator uses machine learning to generate buy and sell signals based on complex data patterns. This approach enables it to adapt to evolving market trends, offering traders timely and relevant insights. Crucially, the indicator does not repaint, providing reliable signals that traders can trust.
Customizable Parameters: Users can fine-tune the indicator to suit their specific trading styles by adjusting settings such as the temporal synchronization and neural pulse rate. This flexibility ensures that the indicator can be tailored to different market environments.
Visual Clarity and Usability: The indicator provides clear visual cues on the chart, including color-coded signals and optional display of signal curves. Users can also customize the table's position and text size, enhancing readability and ease of use.
Comprehensive Performance Metrics: The indicator includes a detailed metrics table that displays key performance indicators such as return rates, trade counts, and win/loss ratios. This feature helps traders assess the effectiveness of their strategies and make data-driven decisions.
How It Works
The core of the "Machine Learning Signal Filter" is its ability to process and learn from large datasets. By applying machine learning models, the indicator identifies potential trading opportunities based on historical data patterns. It uses regression techniques to predict future price movements and neural networks to enhance pattern recognition. As new data is introduced, the indicator refines its algorithms, improving its accuracy and reliability over time.
Use Cases
Trend Following: Ideal for traders seeking to capitalize on market trends, the indicator helps identify the direction and strength of price movements.
Scalping: With its ability to provide quick signals, the indicator is suitable for scalpers aiming for rapid profits in volatile markets.
Risk Management: By offering insights into trade performance, the indicator aids in managing risk and optimizing trade setups.
In summary, the "Machine Learning Signal Filter" is a powerful tool that combines the analytical strength of machine learning with the practical needs of traders. Its ability to adapt and provide actionable insights makes it an invaluable asset for navigating the complexities of financial markets.
The "Machine Learning Signal Filter" is a tool designed to assist traders by providing insights based on historical data and machine learning techniques. It does not guarantee profitable trades and should be used as part of a comprehensive trading strategy. Users are encouraged to conduct their own research and consider their financial situation before making trading decisions. Trading involves significant risk, and it is possible to lose more than the initial investment. Always trade responsibly and be aware of the risks involved.
Uptrick: Adaptive Trend Strength Index (ATSI)### **Adaptive Trend Strength Index (ATSI): Trend Detection Tool**
---
### Introduction
The **Adaptive Trend Strength Index (ATSI)** is a state-of-the-art indicator designed to offer traders an unparalleled view into market trends. By combining the principles of adaptive trend analysis with advanced volatility filtering, ATSI provides a powerful and visually intuitive method for identifying and following market trends. Its unique algorithm and customizable features make it an essential tool for traders across all markets—whether you're trading stocks, forex, commodities, or cryptocurrencies.
### The Purpose and Design Philosophy
At its core, the ATSI was built with the understanding that financial markets are dynamic, ever-changing entities influenced by a multitude of factors, including market sentiment, economic data, geopolitical events, and, critically, volatility. Traditional trend indicators often fall short by either over-smoothing price data (thus lagging behind the actual trend) or reacting too quickly to minor price fluctuations, resulting in false signals.
**ATSI solves this dilemma by adapting to market conditions in real-time.** It effectively filters out market noise while being sensitive enough to detect meaningful shifts in trend direction. The result is a trend line that is both responsive and smooth, providing traders with a clear, actionable view of the market's current trajectory.
### Key Features and Functionality
#### 1. **Adaptive Trend Calculation**
The heart of ATSI is its adaptive trend algorithm, which adjusts based on market conditions. It leverages a combination of price action analysis and volatility filtering to determine the strength and direction of the trend. Here’s how it works:
- **Volatility Sensitivity:** ATSI incorporates the Average True Range (ATR) to measure market volatility. This volatility measure is then adjusted by a user-defined sensitivity factor. This ensures that the indicator responds dynamically to different market environments—be it high-volatility breakouts or low-volatility consolidations.
- **Adaptive Smoothing:** The trend calculation is further enhanced by an exponential moving average (EMA) applied not just to the raw price data, but also to the resulting trend line itself. This dual-layer smoothing process helps to eliminate noise, resulting in a cleaner and more reliable trend line.
- **Real-Time Adaptation:** Unlike rigid indicators that require constant tweaking to stay relevant in changing market conditions, ATSI adapts in real-time. This adaptability makes it particularly valuable in fast-moving markets where conditions can change rapidly.
#### 2. **Visual Clarity**
In trading, visual clarity can make the difference between spotting a lucrative trend and missing out. ATSI excels in this regard by offering a clear, color-coded trend line that provides instant feedback on market conditions:
- **Thicker and Smoother Line:** ATSI’s trend line is designed to be visually prominent. By default, it is thicker than most standard indicators, making it easy to spot even in dense charts. Additionally, the smoothing applied to the line ensures that it flows smoothly, avoiding the jagged, noisy appearance that can plague other indicators.
- **Color-Coded Trends:** The trend line changes color based on the direction and strength of the trend:
- **Green Line**: Indicates a bullish trend, suggesting upward momentum in the market.
- **Red Line**: Indicates a bearish trend, signaling downward momentum.
- **Gold Line**: Represents a neutral or weak trend, where the market is consolidating or where there is no clear direction.
This color-coding is not just for aesthetics—it’s a critical feature that allows traders to quickly assess market conditions at a glance.
#### 3. **Customizable Parameters**
ATSI is built with the understanding that every trader’s strategy is unique. Whether you’re a day trader looking for short-term trends or a swing trader interested in catching longer moves, ATSI can be tailored to fit your needs:
- **Trend Length:** The length parameter controls how much historical data is considered in the trend calculation. A shorter length will make the indicator more sensitive to recent price changes, while a longer length will smooth out short-term fluctuations, focusing on the broader trend.
- **Smoothing Factor:** This parameter controls the level of smoothing applied to the trend line. A higher smoothing factor will result in a smoother, more stable trend line, while a lower factor will make the line more responsive to quick changes in price.
- **Volatility Sensitivity:** By adjusting the volatility sensitivity, you can control how reactive the indicator is to market volatility. A higher sensitivity makes the indicator more likely to detect trends in volatile markets, while a lower sensitivity helps to filter out noise in calmer markets.
- **Line Width:** ATSI allows you to adjust the thickness of the trend line, ensuring that it stands out on your chart. This is particularly useful when trading on charts with a lot of overlays or when you need a clear, bold line to guide your trading decisions.
- **Color Customization:** The colors for bullish, bearish, and neutral trends can be fully customized to match your personal preferences or to integrate seamlessly with your existing chart setup.
### Practical Applications
ATSI is a versatile indicator that can be applied to a wide range of trading strategies. Here’s how it can enhance your trading:
#### 1. **Trend Following**
For traders who thrive on catching and riding trends, ATSI is a game-changer. Its adaptive nature ensures that you stay in the trend for as long as possible without being shaken out by minor fluctuations. The clear color-coded line makes it easy to identify when a trend starts and ends, providing clear entry and exit signals.
#### 2. **Risk Management**
One of the biggest challenges in trading is managing risk, particularly in volatile markets. ATSI’s volatility sensitivity feature helps traders adjust their strategies based on current market conditions. For example, in a high-volatility environment, the indicator will become more sensitive, allowing you to tighten your stop losses or take profits earlier. Conversely, in a low-volatility market, the indicator will smooth out minor fluctuations, reducing the risk of being stopped out prematurely.
#### 3. **Trend Reversals and Consolidations**
ATSI is also highly effective in identifying trend reversals and periods of consolidation. The neutral (gold) line indicates periods where the market is undecided, which can often precede significant moves. Recognizing these periods can help you avoid getting caught in choppy markets and position yourself for the next big move.
#### 4. **Market Timing**
Timing the market is often seen as the holy grail of trading. While no indicator can predict the future with 100% accuracy, ATSI’s real-time adaptation gives you a significant edge. By responding to changes in market conditions as they happen, ATSI helps you make timely decisions, whether you’re entering a trade, exiting a position, or adjusting your risk parameters.
### Comparative Advantage
What sets ATSI apart from other trend indicators is its combination of adaptability, visual clarity, and ease of use:
- **Adaptability:** Most trend indicators are static—they apply the same calculations regardless of market conditions. ATSI, however, adapts to the market in real-time, ensuring that it remains relevant and reliable across different market environments.
- **Visual Clarity:** The thicker, smoother, color-coded line is not just aesthetically pleasing—it’s a functional design choice that helps you quickly interpret market conditions. Whether you’re glancing at your chart or conducting an in-depth analysis, the ATSI line stands out, providing immediate insight.
- **Ease of Use:** Despite its advanced features, ATSI is incredibly easy to use. The default settings are optimized for general use, but the indicator offers a high degree of customization for those who want to tailor it to their specific trading strategy.
### Conclusion
The **Adaptive Trend Strength Index (ATSI)** is more than just another trend indicator—it’s a comprehensive tool designed to give traders an edge in today’s fast-paced, volatile markets. By combining adaptive trend analysis with advanced volatility filtering, ATSI offers a unique blend of responsiveness and reliability. Its clear, color-coded visual representation of trends makes it easy to use, even for traders who are new to technical analysis, while its customizable parameters provide the flexibility that experienced traders demand.
Whether you’re looking to ride the next big trend, manage your risk more effectively, or simply get a clearer picture of the market’s current direction, ATSI is an invaluable addition to your trading toolkit. With its cutting-edge design and powerful functionality, ATSI is poised to become the go-to indicator for traders seeking to enhance their market analysis and improve their trading outcomes.
Correlation Clusters [LuxAlgo]The Correlation Clusters is a machine learning tool that allows traders to group sets of tickers with a similar correlation coefficient to a user-set reference ticker.
The tool calculates the correlation coefficients between 10 user-set tickers and a user-set reference ticker, with the possibility of forming up to 10 clusters.
🔶 USAGE
Applying clustering methods to correlation analysis allows traders to quickly identify which set of tickers are correlated with a reference ticker, rather than having to look at them one by one or using a more tedious approach such as correlation matrices.
Tickers belonging to a cluster may also be more likely to have a higher mutual correlation. The image above shows the detailed parts of the Correlation Clusters tool.
The correlation coefficient between two assets allows traders to see how these assets behave in relation to each other. It can take values between +1.0 and -1.0 with the following meaning
Value near +1.0: Both assets behave in a similar way, moving up or down at the same time
Value close to 0.0: No correlation, both assets behave independently
Value near -1.0: Both assets have opposite behavior when one moves up the other moves down, and vice versa
There is a wide range of trading strategies that make use of correlation coefficients between assets, some examples are:
Pair Trading: Traders may wish to take advantage of divergences in the price movements of highly positively correlated assets; even highly positively correlated assets do not always move in the same direction; when assets with a correlation close to +1.0 diverge in their behavior, traders may see this as an opportunity to buy one and sell the other in the expectation that the assets will return to the likely same price behavior.
Sector rotation: Traders may want to favor some sectors that are expected to perform in the next cycle, tracking the correlation between different sectors and between the sector and the overall market.
Diversification: Traders can aim to have a diversified portfolio of uncorrelated assets. From a risk management perspective, it is useful to know the correlation between the assets in your portfolio, if you hold equal positions in positively correlated assets, your risk is tilted in the same direction, so if the assets move against you, your risk is doubled. You can avoid this increased risk by choosing uncorrelated assets so that they move independently.
Hedging: Traders may want to hedge positions with correlated assets, from a hedging perspective, if you are long an asset, you can hedge going long a negatively correlated asset or going short a positively correlated asset.
Grouping different assets with similar behavior can be very helpful to traders to avoid over-exposure to those assets, traders may have multiple long positions on different assets as a way of minimizing overall risk when in reality if those assets are part of the same cluster traders are maximizing their risk by taking positions on assets with the same behavior.
As a rule of thumb, a trader can minimize risk via diversification by taking positions on assets with no correlations, the proposed tool can effectively show a set of uncorrelated candidates from the reference ticker if one or more clusters centroids are located near 0.
🔶 DETAILS
K-means clustering is a popular machine-learning algorithm that finds observations in a data set that are similar to each other and places them in a group.
The process starts by randomly assigning each data point to an initial group and calculating the centroid for each. A centroid is the center of the group. K-means clustering forms the groups in such a way that the variances between the data points and the centroid of the cluster are minimized.
It's an unsupervised method because it starts without labels and then forms and labels groups itself.
🔹 Execution Window
In the image above we can see how different execution windows provide different correlation coefficients, informing traders of the different behavior of the same assets over different time periods.
Users can filter the data used to calculate correlations by number of bars, by time, or not at all, using all available data. For example, if the chart timeframe is 15m, traders may want to know how different assets behave over the last 7 days (one week), or for an hourly chart set an execution window of one month, or one year for a daily chart. The default setting is to use data from the last 50 bars.
🔹 Clusters
On this graph, we can see different clusters for the same data. The clusters are identified by different colors and the dotted lines show the centroids of each cluster.
Traders can select up to 10 clusters, however, do note that selecting 10 clusters can lead to only 4 or 5 returned clusters, this is caused by the machine learning algorithm not detecting any more data points deviating from already detected clusters.
Traders can fine-tune the algorithm by changing the 'Cluster Threshold' and 'Max Iterations' settings, but if you are not familiar with them we advise you not to change these settings, the defaults can work fine for the application of this tool.
🔹 Correlations
Different correlations mean different behaviors respecting the same asset, as we can see in the chart above.
All correlations are found against the same asset, traders can use the chart ticker or manually set one of their choices from the settings panel. Then they can select the 10 tickers to be used to find the correlation coefficients, which can be useful to analyze how different types of assets behave against the same asset.
🔶 SETTINGS
Execution Window Mode: Choose how the tool collects data, filter data by number of bars, time, or no filtering at all, using all available data.
Execute on Last X Bars: Number of bars for data collection when the 'Bars' execution window mode is active.
Execute on Last: Time window for data collection when the `Time` execution window mode is active. These are full periods, so `Day` means the last 24 hours, `Week` means the last 7 days, and so on.
🔹 Clusters
Number of Clusters: Number of clusters to detect up to 10. Only clusters with data points are displayed.
Cluster Threshold: Number used to compare a new centroid within the same cluster. The lower the number, the more accurate the centroid will be.
Max Iterations: Maximum number of calculations to detect a cluster. A high value may lead to a timeout runtime error (loop takes too long).
🔹 Ticker of Reference
Use Chart Ticker as Reference: Enable/disable the use of the current chart ticker to get the correlation against all other tickers selected by the user.
Custom Ticker: Custom ticker to get the correlation against all the other tickers selected by the user.
🔹 Correlation Tickers
Select the 10 tickers for which you wish to obtain the correlation against the reference ticker.
🔹 Style
Text Size: Select the size of the text to be displayed.
Display Size: Select the size of the correlation chart to be displayed, up to 500 bars.
Box Height: Select the height of the boxes to be displayed. A high height will cause overlapping if the boxes are close together.
Clusters Colors: Choose a custom colour for each cluster.
Custom Supertrend Multi-Timeframe Indicator [Pineify]Supertrend Multi-Timeframe Indicator
Introduction
The Supertrend Multi-Timeframe Indicator is an advanced trading tool designed to help traders identify trend directions and potential buy/sell signals by combining Supertrend indicators from multiple timeframes. This script is original in its approach to integrating Supertrend calculations across different timeframes, providing a more comprehensive view of market trends.
Concepts and Calculations
The indicator utilizes the Supertrend algorithm, which is based on the Average True Range (ATR). The Supertrend is a popular tool for trend-following strategies, and this script enhances its capabilities by incorporating data from a larger timeframe.
Supertrend Factor: Determines the sensitivity of the Supertrend line.
ATR Length: Defines the period for calculating the Average True Range.
Larger Supertrend Factor and ATR Length: Applied to the larger timeframe for a broader trend perspective.
Larger Timeframe: The higher timeframe from which the secondary Supertrend data is sourced.
How It Works
The script calculates the Supertrend for the current timeframe using the specified factor and ATR length.
Simultaneously, it requests Supertrend data from a larger timeframe.
Buy and sell signals are generated based on crossovers and crossunders of the Supertrend lines from both timeframes.
Visual cues (up and down arrows) are plotted on the chart to indicate buy and sell signals.
Background colors change to reflect the trend direction: green for an uptrend and red for a downtrend.
Usage
Add the indicator to your TradingView chart.
Customize the Supertrend factors, ATR lengths, and larger timeframe according to your trading strategy.
Enable or disable buy and sell alerts as needed.
Monitor the chart for visual signals and background color changes to make informed trading decisions.
Note: The indicator is best used in conjunction with other technical analysis tools and should not be relied upon as the sole basis for trading decisions.
Conclusion
The Supertrend Multi-Timeframe Indicator offers a unique and powerful way to analyze market trends by leveraging the strengths of the Supertrend algorithm across multiple timeframes. Its customizable settings and clear visual signals make it a valuable addition to any trader's toolkit.
HTF TriangleHTF Triangle by ZeroHeroTrading aims at detecting ascending and descending triangles using higher time frame data, without repainting nor misalignment issues.
It addresses user requests for combining Ascending Triangle and Descending Triangle into one indicator.
Ascending triangles are defined by an horizontal upper trend line and a rising lower trend line. It is a chart pattern used in technical analysis to predict the continuation of an uptrend.
Descending triangles are defined by a falling upper trend line and an horizontal lower trend line. It is a chart pattern used in technical analysis to predict the continuation of a downtrend.
This indicator can be useful if you, like me, believe that higher time frames can offer a broader perspective and provide clearer signals, smoothing out market noise and showing longer-term trends.
You can change the indicator settings as you see fit to tighten or loosen the detection, and achieve the best results for your use case.
Features
It draws the detected ascending and descending triangles on the chart.
It supports alerting when a detection occurs.
It allows for selecting ascending and/or descending triangle detection.
It allows for setting the higher time frame to run the detection on.
It allows for setting the minimum number of consecutive valid higher time frame bars to fit the pattern criteria.
It allows for setting a high/low factor detection criteria to apply on higher time frame bars high/low as a proportion of the distance between the reference bar high/low and open/close.
It allows for turning on an adjustment of the triangle using highest/lowest values within valid higher time frame bars.
Settings
Ascending checkbox: Turns on/off ascending triangle detection. Default is on.
Descending checkbox: Turns on/off descending triangle detection. Default is on.
Higher Time Frame dropdown: Selects higher time frame to run the detection on. It must be higher than, and a multiple of, the chart's timeframe. Default is 5 minutes.
Valid Bars Minimum field: Sets minimum number of consecutive valid higher time frame bars to fit the pattern criteria. Default is 3. Minimum is 1.
High/Low Factor checkbox: Turns on/off high/low factor detection criteria. Default is on.
High/Low Factor field: Sets high/low factor to apply on higher time frame bars high/low as a proportion of the distance between the reference bar high/low and open/close. Default is 0. Minimum is 0. Maximum is 1.
Adjust Triangle checkbox: Turns on/off triangle adjustment using highest/lowest values within valid higher time frame bars. Default is on.
Detection Algorithm Notes
The detection algorithm recursively selects a higher time frame bar as reference. Then it looks at the consecutive higher time frame bars (as per the requested number of minimum valid bars) as follows:
Ascending Triangle
Low must be higher than previous bar.
Open/close max value must be lower than (or equal to) reference bar high.
When high/low factor criteria is turned on, high must be higher than (or equal to) reference bar open/close max value plus high/low factor proportion of the distance between reference bar high and open/close max value.
Descending Triangle
High must be lower than previous bar.
Open/close min value must be higher than (or equal to) reference bar low.
When high/low factor criteria is turned on, low must be lower than (or equal to) reference bar open/close min value minus high/low factor proportion of the distance between reference bar low and open/close min value.
HTF Descending TriangleHTF Descending Triangle aims at detecting descending triangles using higher time frame data, without repainting nor misalignment issues.
Descending triangles are defined by a falling upper trend line and an horizontal lower trend line. It is a chart pattern used in technical analysis to predict the continuation of a downtrend.
This indicator can be useful if you, like me, believe that higher time frames can offer a broader perspective and provide clearer signals, smoothing out market noise and showing longer-term trends.
You can change the indicator settings as you see fit to tighten or loosen the detection, and achieve the best results for your use case.
Features
It draws the detected descending triangle on the chart.
It supports alerting when a detection occurs.
It allows for setting the higher time frame to run the detection on.
It allows for setting the minimum number of consecutive valid higher time frame bars to fit the pattern criteria.
It allows for setting a low factor detection criteria to apply on higher time frame bars low as a proportion of the distance between the reference bar low and open/close.
It allows for turning on an adjustment of the triangle using highest/lowest values within valid higher time frame bars.
Settings
Higher Time Frame dropdown: Selects higher time frame to run the detection on. It must be higher than, and a multiple of, the chart's timeframe.
Valid Bars Minimum field: Sets minimum number of consecutive valid higher time frame bars to fit the pattern criteria.
Low Factor checkbox: Turns on/off low factor detection criteria.
Low Factor field: Sets low factor to apply on higher time frame bars low as a proportion of the distance between the reference bar low and open/close.
Adjust Triangle checkbox: Turns on/off triangle adjustment using highest/lowest values within valid higher time frame bars.
Detection Algorithm Notes
The detection algorithm recursively selects a higher time frame bar as reference. Then it looks at the consecutive higher time frame bars (as per the requested number of minimum valid bars) as follows:
High must be lower than previous bar.
Open/close min value must be higher than reference bar low.
When low factor criteria is turned on, low must be lower than reference bar open/close min value minus low factor proportion of the distance between reference bar low and open/close min value.
HTF Ascending TriangleHTF Ascending Triangle aims at detecting ascending triangles using higher time frame data, without repainting nor misalignment issues.
Ascending triangles are defined by an horizontal upper trend line and a rising lower trend line. It is a chart pattern used in technical analysis to predict the continuation of an uptrend.
This indicator can be useful if you, like me, believe that higher time frames can offer a broader perspective and provide clearer signals, smoothing out market noise and showing longer-term trends.
You can change the indicator settings as you see fit to tighten or loosen the detection, and achieve the best results for your use case.
Features
It draws the detected ascending triangle on the chart.
It supports alerting when a detection occurs.
It allows for setting the higher time frame to run the detection on.
It allows for setting the minimum number of consecutive valid higher time frame bars to fit the pattern criteria.
It allows for setting a high factor detection criteria to apply on higher time frame bars high as a proportion of the distance between the reference bar high and open/close.
It allows for turning on an adjustment of the triangle using highest/lowest values within valid higher time frame bars.
Settings
Higher Time Frame dropdown: Selects higher time frame to run the detection on. It must be higher than, and a multiple of, the chart's timeframe.
Valid Bars Minimum field: Sets minimum number of consecutive valid higher time frame bars to fit the pattern criteria.
High Factor checkbox: Turns on/off high factor detection criteria.
High Factor field: Sets high factor to apply on higher time frame bars high as a proportion of the distance between the reference bar high and close/open.
Adjust Triangle checkbox: Turns on/off triangle adjustment using highest/lowest values within valid higher time frame bars.
Detection Algorithm Notes
The detection algorithm recursively selects a higher time frame bar as reference. Then it looks at the consecutive higher time frame bars (as per the requested number of minimum valid bars) as follows:
Low must be higher than previous bar.
Open/close max value must be lower than reference bar high.
When high factor criteria is turned on, high must be higher than reference bar open/close max value plus high factor proportion of the distance between reference bar high and open/close max value.
TrendLine Toolkit w/ Breaks (Real-Time)The TrendLine Toolkit script introduces an innovating capability by extending the conventional use of trendlines beyond price action to include oscillators and other technical indicators. This tool allows traders to automatically detect and display trendlines on any TradingView built-in oscillator or community-built script, offering a versatile approach to trend analysis. With breakout detection and real-time alerts, this script enhances the way traders interpret trends in various indicators.
🔲 Methodology
Trendlines are a fundamental tool in technical analysis used to identify and visualize the direction and strength of a price trend. They are drawn by connecting two or more significant points on a price chart, typically the highs or lows of consecutive price movements (pivots).
Drawing Trendlines:
Uptrend Line - Connects a series of higher lows. It signals an upward price trend.
Downtrend Line - Connects a series of lower highs. It indicates a downward price trend.
Support and Resistance:
Support Line - A trendline drawn under rising prices, indicating a level where buying interest is historically strong.
Resistance Line - A trendline drawn above falling prices, showing a level where selling interest historically prevails.
Identification of Trends:
Uptrend - Prices making higher highs and higher lows.
Downtrend - Prices making lower highs and lower lows.
Sideways (or Range-bound) - Prices moving within a horizontal range.
A trendline helps confirm the existence and direction of a trend, providing guidance in aligning with the prevailing market sentiment. Additionally, they are usually paired with breakout analysis, a breakout occurs when the price breaches a trendline. This signals a potential change in trend direction or an acceleration of the existing trend.
The script adapts this methodology to oscillators and other indicators. Instead of relying on price pivots, which can only be detected in retrospect, the script utilizes a trailing stop on the oscillator to identify potential swings in real-time, you may find more info about it here (SuperTrend toolkit) . We detect swings or pivots simply by testing for crosses between the indicator and its trailing stop.
type oscillator
float o = Oscillator Value
float s = Trailing Stop Value
oscillator osc = oscillator.new()
bool l = ta.crossunder(osc.o, osc.s) => Utilized as a formed high
bool h = ta.crossover (osc.o, osc.s) => Utilized as a formed low
This approach enables the algorithm to detect trendlines between consecutive pivot highs or lows on the oscillator itself, providing a dynamic and immediate representation of trend dynamics.
🔲 Breakout Detection
The script goes beyond trendline creation by incorporating breakout detection directly within the oscillator. After identifying a trendline, the algorithm continuously monitors the oscillator for potential breakouts, signaling shifts in market sentiment.
🔲 Setup Guide
A simple example on one of my public scripts, Z-Score Heikin-Ashi Transformed
🔲 Settings
Source - Choose an oscillator source of which to base the Toolkit on.
Zeroing - The Mid-Line value of the oscillator, for example RSI & MFI use 50.
Sensitivity - Calibrates the Sensitivity of which TrendLines are detected, higher values result in more detections.
🔲 Alerts
Bearish TrendLine
Bullish TrendLine
Bearish Breakout
Bullish Breakout
As well as the option to trigger 'any alert' call.
By integrating trendline analysis into oscillators, this Toolkit enhances the capabilities of technical analysis, bringing a dynamic and comprehensive approach to identifying trends, support/resistance levels, and breakout signals across various indicators.
ZigZag Library [TradingFinder]🔵 Introduction
The "Zig Zag" indicator is an analytical tool that emerges from pricing changes. Essentially, it connects consecutive high and low points in an oscillatory manner. This method helps decipher price changes and can also be useful in identifying traditional patterns.
By sifting through partial price changes, "Zig Zag" can effectively pinpoint price fluctuations within defined time intervals.
🔵 Key Features
1. Drawing the Zig Zag based on Pivot points :
The algorithm is based on pivots that operate consecutively and alternately (switch between high and low swing). In this way, zigzag lines are connected from a swing high to a swing low and from a swing low to a swing high.
Also, with a very low probability, it is possible to have both low pivots and high pivots in one candle. In these cases, the algorithm tries to make the best decision to make the most suitable choice.
You can control what period these decisions are based on through the "PiPe" parameter.
2.Naming and labeling each pivot based on its position as "Higher High" (HH), "Lower Low" (LL), "Higher Low" (HL), and "Lower High" (LH).
Additionally, classic patterns such as HH, LH, LL, and HL can be recognized. All traders analyzing financial markets using classic patterns and Elliot Waves can benefit from the "zigzag" indicator to facilitate their analysis.
" HH ": When the price is higher than the previous peak (Higher High).
" HL ": When the price is higher than the previous low (Higher Low).
" LH ": When the price is lower than the previous peak (Lower High).
" LL ": When the price is lower than the previous low (Lower Low).
🔵 How to Use
First, you can add the library to your code as shown in the example below.
import TFlab/ZigZagLibrary_TradingFinder/1 as ZZ
Function "ZigZag" Parameters :
🟣 Logical Parameters
1. HIGH : You should place the "high" value here. High is a float variable.
2. LOW : You should place the "low" value here. Low is a float variable.
3. BAR_INDEX : You should place the "bar_index" value here. Bar_index is an integer variable.
4. PiPe : The desired pivot period for plotting Zig Zag is placed in this parameter. For example, if you intend to draw a Zig Zag with a Swing Period of 5, you should input 5.
PiPe is an integer variable.
Important :
Apart from the "PiPe" indicator, which is part of the customization capabilities of this indicator, you can create a multi-time frame mode for the indicator using 3 parameters "High", "Low" and "BAR_INDEX". In this way, instead of the data of the current time frame, use the data of other time frames.
Note that it is better to use the current time frame data, because using the multi-time frame mode is associated with challenges that may cause bugs in your code.
🟣 Setting Parameters
5. SHOW_LINE : It's a boolean variable. When true, the Zig Zag line is displayed, and when false, the Zig Zag line display is disabled.
6. STYLE_LINE : In this variable, you can determine the style of the Zig Zag line. You can input one of the 3 options: line.style_solid, line.style_dotted, line.style_dashed. STYLE_LINE is a constant string variable.
7. COLOR_LINE : This variable takes the input of the line color.
8. WIDTH_LINE : The input for this variable is a number from 1 to 3, which is used to adjust the thickness of the line that draws the Zig Zag. WIDTH_LINE is an integer variable.
9. SHOW_LABEL : It's a boolean variable. When true, labels are displayed, and when false, label display is disabled.
10. COLOR_LABEL : The color of the labels is set in this variable.
11. SIZE_LABEL : The size of the labels is set in this variable. You should input one of the following options: size.auto, size.tiny, size.small, size.normal, size.large, size.huge.
12. Show_Support : It's a boolean variable that, when true, plots the last support line, and when false, disables its plotting.
13. Show_Resistance : It's a boolean variable that, when true, plots the last resistance line, and when false, disables its plotting.
Suggestion :
You can use the following code snippet to import Zig Zag into your code for time efficiency.
//import Library
import TFlab/ZigZagLibrary_TradingFinder/1 as ZZ
// Input and Setting
// Zig Zag Line
ShZ = input.bool(true , 'Show Zig Zag Line', group = 'Zig Zag') //Show Zig Zag
PPZ = input.int(5 ,'Pivot Period Zig Zag Line' , group = 'Zig Zag') //Pivot Period Zig Zag
ZLS = input.string(line.style_dashed , 'Zig Zag Line Style' , options = , group = 'Zig Zag' )
//Zig Zag Line Style
ZLC = input.color(color.rgb(0, 0, 0) , 'Zig Zag Line Color' , group = 'Zig Zag') //Zig Zag Line Color
ZLW = input.int(1 , 'Zig Zag Line Width' , group = 'Zig Zag')//Zig Zag Line Width
// Label
ShL = input.bool(true , 'Label', group = 'Label') //Show Label
LC = input.color(color.rgb(0, 0, 0) , 'Label Color' , group = 'Label')//Label Color
LS = input.string(size.tiny , 'Label size' , options = , group = 'Label' )//Label size
Show_Support= input.bool(false, 'Show Last Support',
tooltip = 'Last Support' , group = 'Support and Resistance')
Show_Resistance = input.bool(false, 'Show Last Resistance',
tooltip = 'Last Resistance' , group = 'Support and Resistance')
//Call Function
ZZ.ZigZag(high ,low ,bar_index ,PPZ , ShZ ,ZLS , ZLC, ZLW ,ShL , LC , LS , Show_Support , Show_Resistance )
Inversion Fair Value Gap Screener | Flux Charts💎 GENERAL OVERVIEW
Introducing our new Inverse Fair Value Gap Screener! This screener can provide information about the latest Inverse Fair Value Gaps in up to 5 tickers. You can also customize the algorithm that finds the Inverse Fair Value Gaps and the styling of the screener.
Features of the new Inverse Fair Value Gap (IFVG) Screener :
Find Latest Inverse Fair Value Gaps Across 5 Tickers
Shows Their Information Of :
Latest Status
Number Of Retests
Consumption Percent
Volume
Customizable Algorithm / Styling
📌 HOW DOES IT WORK ?
A Fair Value Gap generally occur when there is an imbalance in the market. They can be detected by specific formations within the chart. An Inverse Fair Value Gap is when a FVG becomes invalidated, thus reversing the direction of the FVG.
IFVGs get consumed when a Close / Wick enters the IFVG zone. Check this example:
This screener then finds Fair Value Gaps across 5 different tickers, and shows the latest information about them.
Status ->
Far -> The current price is far away from the IFVG.
Approaching ⬆️/⬇️ -> The current price is approaching the IFVG, and the direction it's approaching from.
Inside -> The price is currently inside the IFVG.
Retests -> Retest means the price tried to invalidate the IFVG, but failed to do so. Here you can see how many times the price retested the IFVG.
Consumed -> IFVGs get consumed when a Close / Wick enters the IFVG zone. For example, if the price hits the middle of the IFVG zone, the zone is considered 50% consumed.
Volume -> Volume of a IFVG is essentially the volume of the bar that broke the original FVG that formed it.
🚩UNIQUENESS
This screener can detect latest Inverse Fair Value Gaps and give information about them for up to 5 tickers. This saves the user time by showing them all in a dashboard at the same time. The screener also uniquely shows information about the number of retests and the consumed percent of the IFVG, as well as it's volume. We believe that this extra information will help you spot reliable IFVGs easier.
⚙️SETTINGS
1. Tickers
You can set up to 5 tickers for the screener to scan Fair Value Gaps here. You can also enable / disable them and set their individual timeframes.
2. General Configuration
FVG Zone Invalidation -> Select between Wick & Close price for FVG Zone Invalidation.
IFVG Zone Invalidation -> Select between Wick & Close price for IFVG Zone Invalidation. This setting also switches the type for IFVG consumption.
Zone Filtering -> With "Average Range" selected, algorithm will find FVG zones in comparison with average range of last bars in the chart. With the "Volume Threshold" option, you may select a Volume Threshold % to spot FVGs with a larger total volume than average.
FVG Detection -> With the "Same Type" option, all 3 bars that formed the FVG should be the same type. (Bullish / Bearish). If the "All" option is selected, bar types may vary between Bullish / Bearish.
Detection Sensitivity -> You may select between Low, Normal or High FVG detection sensitivity. This will essentially determine the size of the spotted FVGs, with lower sensitivities resulting in spotting bigger FVGs, and higher sensitivities resulting in spotting all sizes of FVGs.
Composite Trend Oscillator [ChartPrime]CODE DUELLO:
Have you ever stopped to wonder what the underlying filters contained within complex algorithms are actually providing for you? Wouldn't it be nice to actually visually inspect for that? Those would require some kind of wild west styled quick draw duel or some comparison method as a proper 'code duello'. Then it can be determined which filter can 'draw' the quickest from it's computational holster with the least amount of lag and smoothness.
In Pine we can do so, discovering how beneficial that would be. This can be accomplished by quickly switching from one filter to another by input() back and forth, requiring visual memory. A better way could be done by placing two indicators added to the chart and then eventually placed into one indicator pane on top of each other.
By adding a filter() helper function that calls other moving average functions chosen for comparison, it can put to the test which moving average is the best drawing filter suited to our expected needs. PhiSmoother was formerly debuted and now it is utilized in a more complex environment in a multitude of ways along side other commonly utilized filters. Now, you the reader, get to judge for yourself...
FILTER VERSATILITY:
Having the capability to adjust between various smoothing methods such as PhiSmoother, TEMA, DEMA, WMA, EMA, and SMA on historical market data within the code provides an advantage. Each of these filter methods offers distinct advantages and hinderances. PhiSmoother stands out often by having superb noise rejection, while also being able to manipulate the fine-tuning of the phase or lag of the indicator, enhancing responsiveness to price movements.
The following are more well-known classic filters. TEMA (Triple Exponential Moving Average) and DEMA (Double Exponential Moving Average) offer reduced transient response times to price changes fluctuations. WMA (Weighted Moving Average) assigns more weight to recent data points, making it particularly useful for reduced lag. EMA (Exponential Moving Average) strikes a balance between responsiveness and computational efficiency, making it a popular choice. SMA (Simple Moving Average) provides a straightforward calculation based on the arithmetic mean of the data. VWMA and RMA have both been excluded for varying reasons, both being unworthy of having explanation here.
By allowing for adjustment refinements between these filter methods, traders may garner the flexibility to adapt their analysis to different market dynamics, optimizing their algorithms for improved decision-making and performance on demand.
INDICATOR INTRODUCTION:
ChartPrime's Composite Trend Oscillator operates as an oscillator based on the concept of a moving average ribbon. It utilizes up to 32 filters with progressively longer periods to assess trend direction and strength. Embedded within this indicator is an alternative view that utilizes the separation of the ribbon filaments to assess volatility. Both versions are excellent candidates for trend and momentum, both offering visualization of polarity, directional coloring, and filter crossings. Anyone who has former experience using RSI or stochastics may have ease of understanding applying this to their chart.
COMPOSITE CLUSTER MODES EXPLAINED:
In Trend Strength mode, the oscillator behavior signifies market direction and movement strength. When the oscillator is rising and above zero, the market is within a bullish phase, and visa versa. If the signal filter crosses the composite trend, this indicates a potential dynamic shift signaling a possible reversal. When the oscillator is teetering on its extremities, the market is more inclined to reverse later.
With Volatility mode, the oscillator undergoes a transformation, displaying an unbounded oscillator driven by market volatility. While it still employs the same scoring mechanism, it is now scaled according to the strength of the market move. This can aid with identification of ranging scenarios. However, one side effect is that the oscillator no longer has minimum or maximum boundaries. This can still be advantageous when considering divergences.
NOTEWORTHY SETTINGS FEATURES:
The following input settings described offer comprehensive control over the indicator's behavior and visualization.
Common Controls:
Price Source Selection - The indicator offers flexibility in choosing the price source for analysis. Traders can select from multiple options.
Composite Cluster Mode - Choose between "Trend Strength" and "Volatility" modes, providing insights into trend directionality or volatility weighting.
Cluster Filter and Length - Selects a filter for the cluster composition. This includes a length parameter adjustment.
Cluster Options:
Cluster Dispersion - Users can adjust the separation between moving averages in the cluster, influencing the sensitivity of the analysis.
Cluster Trimming - By modifying upper and lower trim parameters, traders can adjust the sensitivity of the moving averages within the cluster, enhancing its adaptability.
PostSmooth Filter and Length - Choose a filter to refine the composite cluster's post-smoothing with a length parameter adjustment.
Signal Filter and Length - Users can select a filter for the lagging signal plot, also having a length parameter adjustment.
Transition Easing - Sensitivity adjustment to influence the transition between bullish and bearish colors.
Enjoy
Machine Learning: Multiple Logistic Regression
Multiple Logistic Regression Indicator
The Logistic Regression Indicator for TradingView is a versatile tool that employs multiple logistic regression based on various technical indicators to generate potential buy and sell signals. By utilizing key indicators such as RSI, CCI, DMI, Aroon, EMA, and SuperTrend, the indicator aims to provide a systematic approach to decision-making in financial markets.
How It Works:
Technical Indicators:
The script uses multiple technical indicators such as RSI, CCI, DMI, Aroon, EMA, and SuperTrend as input variables for the logistic regression model.
These indicators are normalized to create categorical variables, providing a consistent scale for the model.
Logistic Regression:
The logistic regression function is applied to the normalized input variables (x1 to x6) with user-defined coefficients (b0 to b6).
The logistic regression model predicts the probability of a binary outcome, with values closer to 1 indicating a bullish signal and values closer to 0 indicating a bearish signal.
Loss Function (Cross-Entropy Loss):
The cross-entropy loss function is calculated to quantify the difference between the predicted probability and the actual outcome.
The goal is to minimize this loss, which essentially measures the model's accuracy.
// Error Function (cross-entropy loss)
loss(y, p) =>
-y * math.log(p) - (1 - y) * math.log(1 - p)
// y - depended variable
// p - multiple logistic regression
Gradient Descent:
Gradient descent is an optimization algorithm used to minimize the loss function by adjusting the weights of the logistic regression model.
The script iteratively updates the weights (b1 to b6) based on the negative gradient of the loss function with respect to each weight.
// Adjusting model weights using gradient descent
b1 -= lr * (p + loss) * x1
b2 -= lr * (p + loss) * x2
b3 -= lr * (p + loss) * x3
b4 -= lr * (p + loss) * x4
b5 -= lr * (p + loss) * x5
b6 -= lr * (p + loss) * x6
// lr - learning rate or step of learning
// p - multiple logistic regression
// x_n - variables
Learning Rate:
The learning rate (lr) determines the step size in the weight adjustment process. It prevents the algorithm from overshooting the minimum of the loss function.
Users can set the learning rate to control the speed and stability of the optimization process.
Visualization:
The script visualizes the output of the logistic regression model by coloring the SMA.
Arrows are plotted at crossover and crossunder points, indicating potential buy and sell signals.
Lables are showing logistic regression values from 1 to 0 above and below bars
Table Display:
A table is displayed on the chart, providing real-time information about the input variables, their values, and the learned coefficients.
This allows traders to monitor the model's interpretation of the technical indicators and observe how the coefficients change over time.
How to Use:
Parameter Adjustment:
Users can adjust the length of technical indicators (rsi_length, cci_length, etc.) and the Z score length based on their preference and market characteristics.
Set the initial values for the regression coefficients (b0 to b6) and the learning rate (lr) according to your trading strategy.
Signal Interpretation:
Buy signals are indicated by an upward arrow (▲), and sell signals are indicated by a downward arrow (▼).
The color-coded SMA provides a visual representation of the logistic regression output by color.
Table Information:
Monitor the table for real-time information on the input variables, their values, and the learned coefficients.
Keep an eye on the learning rate to ensure a balance between model adjustment speed and stability.
Backtesting and Validation:
Before using the script in live trading, conduct thorough backtesting to evaluate its performance under different market conditions.
Validate the model against historical data to ensure its reliability.
Shadow Range IndexShadow Range Index (SRI) introduces a new concept to calculate momentum, shadow range.
What is range?
Traditionally, True Range (TR) is the current high minus the current low of each bar in the timeframe. This is often used successfully on its own in indicators, or as a moving average in ATR (Average True Range).
To calculate range, SRI uses an innovative calculation of current bar range that also considers the previous bar. It calculates the difference between its maximum upward and maximum downward values over the number of bars the user chooses (by adjusting ‘Range lookback’).
What is shadow range?
True Range (TR) uses elements in its calculation (the highs and lows of the bar) that are also visible on the chart bars. Shadow range does not, though.
SRI calculates shadow range in a similar formula to range, except that this time it works out the difference between the minimum upward and minimum downward movement. This movement is by its nature less than the maximums, hence a shadow of it. Although more subtle, shadow range is significant, because it is quantifiable, and goes in one direction or another.
Finally, SRI smoothes shadow range and plots it as a histogram, and also smoothes and plots range as a signal line. Useful up and down triangles show trend changes, which optionally colour the chart bars.
Here’s an example of a long trade setup:
In summary, Shadow Range Index identifies and traces maximum and minimum bar range movement both up and down, and plots them as centred oscillators. The dynamics between the two can provide insights into the chart's performance and future direction.
Credit to these authors, whose MA or filters form part of this script:
@balipour - Super Smoother MA
@cheatcountry - Hann window smoothing
@AlgoAlpha - Gaussian filter
Relative Strength Scoring SystemRelative Strength Scoring System :
Important prerequisite :
This indicator can be loaded on any forex chart, i.e. a currency pair, but must not be loaded on any other asset due to certain market closures.
The chart timeframe must be less than or equal to the trading timeframe, which is the indicator's first parameter. A timeframe equal to that of the "Trading Timeframe" parameter is preferable.
Introduction :
This indicator measures the relative strength of a currency against all other currencies using spread formulas. It gives an indication of which currencies are bullish, neutral or bearish. The ultimate aim of this indicator is to find out which pair will generate a higher probability of gain than the others by pairing the most bullish pair with the most bearish pair.
Spread formulas :
To find the relative strength of a currency compared with others, we use the following spreads formulas :
USD = (FX:USDJPY/100+SAXO:USDEUR+FX:USDCHF+SAXO:USDGBP+FX:USDCAD+SAXO:USDAUD+FX_IDC:USDNZD)/7
JPY = (SAXO:JPYUSD/100+FX_IDC:JPYAUD/100+FX_IDC:JPYCAD/100+FX_IDC:JPYNZD/100+FX_IDC:JPYCHF/100+SAXO:JPYEUR/100+FX_IDC:JPYGBP/100)/7
CHF = (FX:CHFJPY/100+SAXO:CHFUSD+SAXO:CHFEUR+FX_IDC:CHFGBP+FX_IDC:CHFCAD+SAXO:CHFAUD+FX_IDC:CHFNZD)/7
EUR = (FX:EURJPY/100+FX:EURUSD+FX:EURCHF+FX:EURGBP+FX:EURCAD+FX:EURAUD+FX:EURNZD)/7
GBP = (FX:GBPJPY/100+FX:GBPUSD+FX:GBPCHF+SAXO:GBPEUR+FX:GBPCAD+FX:GBPAUD+FX:GBPNZD)/7
CAD = (FX:CADJPY/100+SAXO:CADUSD+FX:CADCHF+FX_IDC:CADGBP+SAXO:CADEUR+FX_IDC:CADAUD+FX_IDC:CADNZD)/7
AUD = (FX:AUDJPY/100+FX:AUDUSD+FX:AUDCHF+SAXO:AUDGBP+FX:AUDCAD+SAXO:AUDEUR+FX:AUDNZD)/7
NZD = (FX:NZDJPY/100+FX:NZDUSD+FX:NZDCHF+SAXO:NZDGBP+FX:NZDCAD+SAXO:NZDAUD+SAXO:NZDEUR)/7
CRYPTO = (BITSTAMP:BTCUSD+BITSTAMP:ETHUSD+BITSTAMP:LTCUSD+BITSTAMP:BCHUSD)/4
Timeframes :
As mentioned in the prerequisites, the chart timeframe must not be greater than the trading timeframe. The latter corresponds to the timeframe chosen by the trader to enter a position, and is the indicator's first parameter. Once this has been chosen, the algorithm selects the timeframes of the "Trend" and "Velocity" charts. Here's how it allocates them :
Trading TF => ("Velocity TF", "Trend TF")
"5min" => ("15min ", "60min")
"15min" => ("60min ", "4h")
"30min" => ("2h ", "8h")
"60min" => ("4h ", "12h")
"4h" => ("12h", "1D")
"6h" => ("1D", "3D")
"8h" => ("1D", "4D")
"12h" => ("2D", "1W")
"1D" => ("3D", "1W")
Trend Scoring System :
When the timeframe of the trend graph has been allocated, the algorithm will establish this graph's score using three criteria :
Trend chart pivot points: if the last two pivots, high and low, are increasing, the score is 1; if they are decreasing, the score is -1; else the score is 0.
SMA: if its slope is increasing with a candle strictly above the SMA value, the score is 1; if its slope is decreasing with a candle strictly below it, the score is -1; otherwise, it is 0.
MACD: if the MACD is positive, the score is 1, if it is negative, the score is -1; else it's 0.
We then sum the scores of these three criteria to find the trend score.
Velocity Scoring System :
In the same way, we analyze the score of the "velocity" graph with its corresponding timeframe using three criteria :
The EMA: if its slope is increasing with a candle strictly above the EMA value, the score is 1; if its slope is decreasing with a candle strictly below it, the score is -1; otherwise, it is 0.
The RSI: if the RSI's EMA has an increasing slope with an RSI strictly greater than the value of this EMA, the score is 1; and if the RSI's EMA has a decreasing slope with an RSI strictly less than this EMA, the score is -1; otherwise it is 0.
SAR parabolic: if the SAR is below the price, the score is 1; if it is above the price, the score is -1.
We then sum the scores of these three criteria to find the velocity score.
Relative Strength Scoring System :
Once the trend score and velocity score have been calculated, we determine the relative strength score of each currency using the following algorithm :
If trend score >=2 and velocity score >=2, the currency is bullish.
If trend score <=2 and velocity score <=2, currency is bearish
If (trendScore>=2 or velocityScore>=2) and (trendScore=1 or velocityScore=1) the currency is not yet bullish
If (trendScore<=2 or velocityScore<=2) and (trendScore=-1 or velocityScore=-1) the currency is not yet bearish.
Otherwise the currency is neutral
Parameters :
Trading Timeframe: the trading timeframe chosen by the trader for which he makes his position entry and exit decisions. Default is 1h
Pivot Legs: Parameter used for the chart "Trend" setting the pivot strength to the right and left of high/low. Default is 2
SMA Length: SMA length of the chart "Trend". Default is 20
MACD Fast Length: Length of the MACD fast SMA calculated on the chart "Trend". Default is 12
MACD Slow Length: Length of the MACD slow SMA calculated on the chart "Trend". Default is 26
MACD Signal Length: Length of the MACD signal SMA calculated on the chart "Trend". Default is 9
EMA Length: EMA length of the "Velocity" graph. Default is 13
RSI Length: RSI length of the "Velocity" graph. Default is 14
RSI EMA Length: Length of the RSI EMA. Default is 9
Parabolic SAR Start: Start of the SAR parabola in the "Velocity" graph. Default is 0.02
Parabolic SAR Increment: Increment of the SAR parabola in the "Velocity" graph. Default is 0.02
Parabolic SAR Max: Maximum of the SAR parabola in the "Velocity" graph. Default is 0.2
Conclusion :
This indicator has been designed to determine the relative strength of the major currencies against each other. The aim is to know which pair to trade at the right time in order to maximize the probability of a successful trade. For example, if the USD is bullish and the NZD bearish, we'll short the NZDUSD pair.
Enjoy this indicator and don't forget to take the trade ;)
Vo-S-Di-T-I - Volatility Scaled Directional Trend IndicatorThis code represents just the foundation for what's to come. It lays the groundwork for a more sophisticated quant trading model, offering a glimpse into the potential of future developments. I hope my contribution to this community will be valued. I'm here for idea exchanges and coding together, with the key emphasis on ensuring everything we do is grounded on a solid statistical basis.
----------------------------------------------------------------------------------------------------------------------
The developed code is based on a rigorous quantitative approach for analyzing price trends in the equity sector, utilizing advanced statistical methodology to scale returns based on the volatility observed over predefined periods of 20 and 50 days. This technique for normalizing returns allows us to eliminate distortions due to the intrinsic variability of prices and focus on the underlying structure of price behavior. The primary goal of the code is not to speculatively predict future market movements but rather to identify potential reversal trend signals through price dynamics analysis, within an optimized risk and return context.
Our approach is distinguished by the use of statistical decomposition techniques and time series analysis to interpret price variations as indicators of possible shifts in market behavior. This allows distinguishing between random or short-term price movements and true trend changes, providing a solid foundation for more informed investment decisions.
The current code represents the initial phase of a broader project that envisages the integration of machine learning algorithms to further refine the ability to detect significant changes in price trends. Through the application of predictive models and machine learning techniques, we intend to explore complex patterns in historical price data that may precede trend reversals, always respecting the principles of rigorous statistical analysis and risk management. This development and learning path will allow us to continuously improve investment strategies, leveraging the analytical capabilities of modern data science algorithms applied to the financial sector.
HOW TO READ
Simply put, Z values above 0 indicate an uptrend, while values below indicate a downtrend. IMPORTANT: It is not necessary to consider any crosses between Z-Short and Z-Long, but only potential crosses with 0.
The initial values are set at 20 and 50, but everyone is free to choose the most suitable periods, as long as all choices have valid statistical significance. My advice is to use R or MatLab to explore the best correlation between N and price movements. The reason I have set two values for N (Short and Long) is because it's interesting to assess short-term and medium-to-long-term trends to understand if price movements can lead to reversals only in the short term or also in the medium to long term. This idea came to me because I believe all other trend determination systems have too much lag and unpredictability.
Flags and Pennants [Trendoscope®]🎲 An extension to Chart Patterns based on Trend Line Pairs - Flags and Pennants
After exploring Algorithmic Identification and Classification of Chart Patterns and developing Auto Chart Patterns Indicator , we now delve into extensions of these patterns, focusing on Flag and Pennant Chart Patterns. These patterns evolve from basic trend line pair-based structures, often influenced by preceding market impulses.
🎲 Identification rules for the Extension Patterns
🎯 Identify the existence of Base Chart Patterns
Before identifying the flag and pennant patterns, we first need to identify the existence of following base trend line pair based converging or parallel patterns.
Ascending Channel
Descending Channel
Rising Wedge (Contracting)
Falling Wedge (Contracting)
Converging Triangle
Descending Triangle (Contracting)
Ascending Triangle (Contracting)
🎯 Identifying Extension Patterns.
The key to pinpointing these patterns lies in spotting a strong impulsive wave – akin to a flagpole – preceding a base pattern. This setup suggests potential for an extension pattern:
A Bullish Flag emerges from a positive impulse followed by a descending channel or a falling wedge
A Bearish Flag appears after a negative impulse leading to an ascending channel or a rising wedge.
A Bullish Pennant is indicated by a positive thrust preceding a converging triangle or ascending triangle.
A Bearish Pennant follows a negative impulse and a converging or descending triangle.
🎲 Pattern Classifications and Characteristics
🎯 Bullish Flag Pattern
Characteristics of Bullish Flag Pattern are as follows
Starts with a positive impulse wave
Immediately followed by either a short descending channel or a falling wedge
Here is an example of Bullish Flag Pattern
🎯 Bearish Flag Pattern
Characteristics of Bearish Flag Pattern are as follows
Starts with a negative impulse wave
Immediately followed by either a short ascending channel or a rising wedge
Here is an example of Bearish Flag Pattern
🎯 Bullish Pennant Pattern
Characteristics of Bullish Pennant Pattern are as follows
Starts with a positive impulse wave
Immediately followed by either a converging triangle or ascending triangle pattern.
Here is an example of Bullish Pennant Pattern
🎯 Bearish Pennant Pattern
Characteristics of Bearish Pennant Pattern are as follows
Starts with a negative impulse wave
Immediately followed by either a converging triangle or a descending converging triangle pattern.
Here is an example of Bearish Pennant Pattern
🎲 Trading Extension Patterns
In a strong market trend, it's common to see temporary periods of consolidation, forming patterns that either converge or range, often counter to the ongoing trend direction. Such pauses may lay the groundwork for the continuation of the trend post-breakout. The assumption that the trend will resume shapes the underlying bias of Flag and Pennant patterns
It's important, however, not to base decisions solely on past trends. Conducting personal back testing is crucial to ascertain the most effective entry and exit strategies for these patterns. Remember, the behavior of these patterns can vary significantly with the volatility of the asset and the specific timeframe being analyzed.
Approach the interpretation of these patterns with prudence, considering that market dynamics are subject to a wide array of influencing factors that might deviate from expected outcomes. For investors and traders, it's essential to engage in thorough back testing, establishing entry points, stop-loss orders, and target goals that align with your individual trading style and risk appetite. This step is key to assessing the viability of these patterns in line with your personal trading strategies and goals.
It's fairly common to witness a breakout followed by a swift price reversal after these patterns have formed. Additionally, there's room for innovation in trading by going against the bias if the breakout occurs in the opposite direction, specially when the trend before the formation of the pattern is in against the pattern bias.
🎲 Cheat Sheet
🎲 Indicator Settings
Custom Source : Enables users to set custom OHLC - this means, the indicator can also be applied on oscillators and other indicators having OHLC values.
Zigzag Settings : Allows users to enable different zigzag base and set length and depth for each zigzag.
Scanning Settings : Pattern scanning settings set some parameters that define the pattern recognition process.
Display Settings : Determine the display of indicators including colors, lines, labels etc.
Backtest Settings : Allows users to set a predetermined back test bars so that the indicator will not time out while trying to run for all available bars.
Least Median of Squares Regression | ymxbThe Least Median of Squares (LMedS) is a robust statistical method predominantly used in the context of regression analysis. This technique is designed to fit a model to a dataset in a way that is resistant to outliers. Developed as an alternative to more traditional methods like Ordinary Least Squares (OLS) regression, LMedS is distinguished by its focus on minimizing the median of the squares of the residuals rather than their mean. Residuals are the differences between observed and predicted values.
The key advantage of LMedS is its robustness against outliers. In contrast to methods that minimize the mean squared residuals, the median is less influenced by extreme values, making LMedS more reliable in datasets where outliers are present. This is particularly useful in linear regression, where it identifies the line that minimizes the median of the squared residuals, ensuring that the line is not overly influenced by anomalies.
STATISTICAL PROPERTIES
A critical feature of the LMedS method is its robustness, particularly its resilience to outliers. The method boasts a high breakdown point, which is a measure of an estimator's capacity to handle outliers. In the context of LMedS, this breakdown point is approximately 50%, indicating that it can tolerate corruption of up to half of the input data points without a significant degradation in accuracy. This robustness makes LMedS particularly valuable in real-world data analysis scenarios, where outliers are common and can severely skew the results of less robust methods.
Rousseeuw, Peter J.. “Least Median of Squares Regression.” Journal of the American Statistical Association 79 (1984): 871-880.
The LMedS estimator is also characterized by its equivariance under linear transformations of the response variable. This means that whether you transform the data first and then apply LMedS, or apply LMedS first and then transform the data, the end result remains consistent. However, it's important to note that LMedS is not equivariant under affine transformations of both the predictor and response variables.
ALGORITHM
The algorithm randomly selects pairs of points, calculates the slope (m) and intercept (b) of the line, and then evaluates the median squared deviation (mr2) from this line. The line minimizing this median squared deviation is considered the best fit.
DISCLAIMER
In the LMedS approach, a subset of the data is randomly selected to compute potential models (e.g., lines in linear regression). The method then evaluates these models based on the median of the squared residuals. Since the selection of data points is random, different runs may select different subsets, leading to variability in the computed models.
Qu_Trend+
composition
- Consists of a thick trend line and a thin yellow line.
- The largest (green/red) lines indicate rising and falling markets.
- This line represents the 13-candle moving average of Tilson T3.
- The reason for 13 candles is because it best matches the recent market price based on Bitcoin.
- This value cannot be changed, so if you need it, please modify the public code and use it.
- The yellow line is the MA20 line, the ‘Bollinger Band center line’
(UI will show whether this line has been breakout)
- The same algorithm as 20 of the basic moving average (close standard) is applied.
- The algorithm for breakthrough is calculated based on real-time prices, not based on closing prices.
An additional short-term SMA is created, and whether it crosses the SMA is classified as a breakout/resistance.
How to use it
- If the trend line becomes gentle, it may indicate a change in trend when + MA20 is broken.
- While the slope of the trend line is steep, it indicates that the trend is difficult to change.
(If the trend changes at this time, it is likely to move sideways)
- If the trend changes continuously, it is a sideways market.
At this time, watch out for the movement of the end point where the sideways trend ends.