SSL Channel MTFSSL Channel with MTF support, This eliminates the noise of a basic SSL Channel script which is based on ErwinBeckers SSL Channel. So i have used a Multi Time Frame approach to have a clear confirmation of trend and reduce Noise and False signals unlike basic SSL Channel.
This script can be used to determine.
Support/Resistance
High/Low Breakout
Trend Direction
MA candles for Entry
The high and low sma are plotted as SSL CHANNEL when ever the high and low sma cross each other a direction change is observed.
The direction of SSL channel determines the trend of the price. The length of the channel can be changed as required a low value has a high noise and direction can be determined with low accuracy. Increasing the length of SSL channel has high accuracy trend confirmation.
The MTF SSL Channel uses plot from higher timeframe this helps in using SSL Channel as a Price Action Tool. Price when ever crosses over or below the channel determines a breakout. Price tries to move between the High SMA line and Low SMA Line of the SSL Channel rejection, breakouts can be easily observed on a lower timeframe using SSL Channel Plot from a higher timeframe.
I have used 5min/15min chart with MTF SSL from a 1Hr/4Hr and a length of 5 instead of 10. This helps quick direction changes over a period of 1hr to 4hr. Price is trapped within the High SMA and Low SMA lines of SSL Channel. In addition to SSL High Low and average mid line is plotted to additional reference.
Buy Sell Signals are plotted based on crossover of SMA High and Low.
Candle are Plotted Using a SMA with length of 5. This Candle Plot can be used to make an entry based on direction confirmation of SSL. keep in mind the direction of SSL Plot and the candle must be same. Preferably Entry can made above or below the midline of SSL Channel. The Candle Plot eliminates the Noise of traditional Japanese Candlesticks.
Additionally MACD Crossover and MACD Trend line confirmations can be used to confirm a Buy Sell and Entry signals
Alerts are also plotted accordingly.
Cerca negli script per "high low"
Uptrick: Fisher Eclipse1. Name and Purpose
Uptrick: Fisher Eclipse is a Pine version 6 extension of the basic Fisher Transform indicator that focuses on highlighting potential turning points in price data. Its purpose is to allow traders to spot shifts in momentum, detect divergence, and adapt signals to different market environments. By combining a core Fisher Transform with additional signal processing, divergence detection, and customizable aggressiveness settings, this script aims to help users see when a price move might be losing momentum or gaining strength.
2. Overview
This script uses a Fisher Transform calculation on the average of each bar’s high and low (hl2). The Fisher Transform is designed to amplify price extremes by mapping data into a different scale, making potential reversals more visible than they might be with standard oscillators. Uptrick: Fisher Eclipse takes this concept further by integrating a signal line, divergence detection, bar coloring for momentum intensity, and optional thresholds to reduce unwanted noise.
3. Why Use the Fisher Transform
The Fisher Transform is known for converting relatively smoothed price data into a more pronounced scale. This transformation highlights where markets may be overextended. In many cases, standard oscillators move gently, and traders can miss subtle hints that a reversal might be approaching. The Fisher Transform’s mathematical approach tightens the range of values and sharpens the highs and lows. This behavior can allow traders to see clearer peaks and troughs in momentum. Because it is often quite responsive, it can help anticipate areas where price might change direction, especially when compared to simpler moving averages or traditional oscillators. The result is a more evident signal of possible overbought or oversold conditions.
4. How This Extension Improves on the Basic Fisher Transform
Uptrick: Fisher Eclipse adds multiple features to the classic Fisher framework in order to address different trading styles and market behaviors:
a) Divergence Detection
The script can detect bullish or bearish divergences between price and the oscillator over a chosen lookback period, helping traders anticipate shifts in market direction.
b) Bar Coloring
When momentum exceeds a certain threshold (default 3), bars can be colored to highlight surges of buying or selling pressure. This quick visual reference can assist in spotting periods of heightened activity. After a bar color like this, usually, there is a quick correction as seen in the image below.
c) Signal Aggressiveness Levels
Users can choose between conservative, moderate, or aggressive signal thresholds. This allows them to tune how quickly the indicator flags potential entries or exits. Aggressive settings might suit scalpers who need rapid signals, while conservative settings may benefit swing traders preferring fewer, more robust indications.
d) Minimum Movement Filter
A configurable filter can be set to ensure that the Fisher line and its signal have a sufficient gap before triggering a buy or sell signal. This step is useful for traders seeking to minimize signals during choppy or sideways markets. This can be used to eliminate noise as well.
By combining all these elements into one package, the indicator attempts to offer a comprehensive toolkit for those who appreciate the Fisher Transform’s clarity but also desire more versatility.
5. Core Components
a) Fisher Transform
The script calculates a Fisher value using normalized price over a configurable length, highlighting potential peaks and troughs.
b) Signal Line
The Fisher line is smoothed using a short Simple Moving Average. Crossovers and crossunders are one of the key ways this indicator attempts to confirm momentum shifts.
c) Divergence Logic
The script looks back over a set number of bars to compare current highs and lows of both price and the Fisher oscillator. When price and the oscillator move in opposing directions, a divergence may occur, suggesting a possible upcoming reversal or weakening trend.
d) Thresholds for Overbought and Oversold
Horizontal lines are drawn at user-chosen overbought and oversold levels. These lines help traders see when momentum readings reach particular extremes, which can be especially relevant when combined with crossovers in that region.
e) Intensity Filter and Bar Coloring
If the magnitude of the change in the Fisher Transform meets or exceeds a specified threshold, bars are recolored. This provides a visual cue for significant momentum changes.
6. User Inputs
a) length
Defines how many bars the script looks back to compute the highest high and lowest low for the Fisher Transform. A smaller length reacts more quickly but can be noisier, while a larger length smooths out the indicator at the cost of responsiveness.
b) signal aggressiveness
Adjusts the buy and sell thresholds for conservative, moderate, and aggressive trading styles. This can be key in matching the indicator to personal risk preferences or varying market conditions. Conservative will give you less signals and aggressive will give you more signals.
c) minimum movement filter
Specifies how far apart the Fisher line and its signal line must be before generating a valid crossover signal.
d) divergence lookback
Controls how many bars are examined when determining if price and the oscillator are diverging. A larger setting might generate fewer signals, while a smaller one can provide more frequent alerts.
e) intensity threshold
Determines how large a change in the Fisher value must be for the indicator to recolor bars. Strong momentum surges become more noticeable.
f) overbought level and oversold level
Lets users define where they consider market conditions to be stretched on the upside or downside.
7. Calculation Process
a) Price Input
The script uses the midpoint of each bar’s high and low, sometimes referred to as hl2.
hl2 = (high + low) / 2
b) Range Normalization
Determine the maximum (maxHigh) and minimum (minLow) values over a user-defined lookback period (length).
Scale the hl2 value so it roughly fits between -1 and +1:
value = 2 * ((hl2 - minLow) / (maxHigh - minLow) - 0.5)
This step highlights the bar’s current position relative to its recent highs and lows.
c) Fisher Calculation
Convert the normalized value into the Fisher Transform:
fisher = 0.5 * ln( (1 + value) / (1 - value) ) + 0.5 * fisher_previous
fisher_previous is simply the Fisher value from the previous bar. Averaging half of the new transform with half of the old value smooths the result slightly and can prevent erratic jumps.
ln is the natural logarithm function, which compresses or expands values so that market turns often become more obvious.
d) Signal Smoothing
Once the Fisher value is computed, a short Simple Moving Average (SMA) is applied to produce a signal line. In code form, this often looks like:
signal = sma(fisher, 3)
Crossovers of the fisher line versus the signal line can be used to hint at changes in momentum:
• A crossover occurs when fisher moves from below to above the signal.
• A crossunder occurs when fisher moves from above to below the signal.
e) Threshold Checking
Users typically define oversold and overbought levels (often -1 and +1).
Depending on aggressiveness settings (conservative, moderate, aggressive), these thresholds are slightly shifted to filter out or include more signals.
For example, an oversold threshold of -1 might be used in a moderate setting, whereas -1.5 could be used in a conservative setting to require a deeper dip before triggering.
f) Divergence Checks
The script looks back a specified number of bars (divergenceLookback). For both price and the fisher line, it identifies:
• priceHigh = the highest hl2 within the lookback
• priceLow = the lowest hl2 within the lookback
• fisherHigh = the highest fisher value within the lookback
• fisherLow = the lowest fisher value within the lookback
If price forms a lower low while fisher forms a higher low, it can signal a bullish divergence. Conversely, if price forms a higher high while fisher forms a lower high, a bearish divergence might be indicated.
g) Bar Coloring
The script monitors the absolute change in Fisher values from one bar to the next (sometimes called fisherChange):
fisherChange = abs(fisher - fisher )
If fisherChange exceeds a user-defined intensityThreshold, bars are recolored to highlight a surge of momentum. Aqua might indicate a strong bullish surge, while purple might indicate a strong bearish surge.
This color-coding provides a quick visual cue for traders looking to spot large momentum swings without constantly monitoring indicator values.
8. Signal Generation and Filtering
Buy and sell signals occur when the Fisher line crosses the signal line in regions defined as oversold or overbought. The optional minimum movement filter prevents triggering if Fisher and its signal line are too close, reducing the chance of small, inconsequential price fluctuations creating frequent signals. Divergences that appear in oversold or overbought regions can serve as additional evidence that momentum might soon shift.
9. Visualization on the Chart
Uptrick: Fisher Eclipse plots two lines: the Fisher line in one color and the signal line in a contrasting shade. The chart displays horizontal dashed lines where the overbought and oversold levels lie. When the Fisher Transform experiences a sharp jump or drop above the intensity threshold, the corresponding price bars may change color, signaling that momentum has undergone a noticeable shift. If the indicator detects bullish or bearish divergence, dotted lines are drawn on the oscillator portion to connect the relevant points.
10. Market Adaptability
Because of the different aggressiveness levels and the optional minimum movement filter, Uptrick: Fisher Eclipse can be tailored to multiple trading styles. For instance, a short-term scalper might select a smaller length and more aggressive thresholds, while a swing trader might choose a longer length for smoother readings, along with conservative thresholds to ensure fewer but potentially stronger signals. During strongly trending markets, users might rely more on divergences or large intensity changes, whereas in a range-bound market, oversold or overbought conditions may be more frequent.
11. Risk Management Considerations
Indicators alone do not ensure favorable outcomes, and relying solely on any one signal can be risky. Using a stop-loss or other protections is often suggested, especially in fast-moving or unpredictable markets. Divergence can appear before a market reversal actually starts. Similarly, a Fisher Transform can remain in an overbought or oversold region for extended periods, especially if the trend is strong. Cautious interpretation and confirmation with additional methods or chart analysis can help refine entry and exit decisions.
12. Combining with Other Tools
Traders can potentially strengthen signals from Uptrick: Fisher Eclipse by checking them against other methods. If a moving average cross or a price pattern aligns with a Fisher crossover, the combined evidence might provide more certainty. Volume analysis may confirm whether a shift in market direction has participation from a broad set of traders. Support and resistance zones could reinforce overbought or oversold signals, particularly if price reaches a historical boundary at the same time the oscillator indicates a possible reversal.
13. Parameter Customization and Examples
Some short-term traders run a 15-minute chart, with a shorter length setting, aggressively tight oversold and overbought thresholds, and a smaller divergence lookback. This approach produces more frequent signals, which may appeal to those who enjoy fast-paced trading. More conservative traders might apply the indicator to a daily chart, using a larger length, moderate threshold levels, and a bigger divergence lookback to focus on broader market swings. Results can differ, so it may be helpful to conduct thorough historical testing to see which combination of parameters aligns best with specific goals.
14. Realistic Expectations
While the Fisher Transform can reveal potential turning points, no mathematical tool can predict future price behavior with full certainty. Markets can behave erratically, and a period of strong trending may see the oscillator pinned in an extreme zone without a significant reversal. Divergence signals sometimes appear well before an actual trend change occurs. Recognizing these limitations helps traders manage risk and avoids overreliance on any one aspect of the script’s output.
15. Theoretical Background
The Fisher Transform uses a logarithmic formula to map a normalized input, typically ranging between -1 and +1, into a scale that can fluctuate around values like -3 to +3. Because the transformation exaggerates higher and lower readings, it becomes easier to spot when the market might have stretched too far, too fast. Uptrick: Fisher Eclipse builds on that foundation by adding a series of practical tools that help confirm or refine those signals.
16. Originality and Uniqueness
Uptrick: Fisher Eclipse is not simply a duplicate of the basic Fisher Transform. It enhances the original design in several ways, including built-in divergence detection, bar-color triggers for momentum surges, thresholds for overbought and oversold levels, and customizable signal aggressiveness. By unifying these concepts, the script seeks to reduce noise and highlight meaningful shifts in market direction. It also places greater emphasis on helping traders adapt the indicator to their specific style—whether that involves frequent intraday signals or fewer, more robust alerts over longer timeframes.
17. Summary
Uptrick: Fisher Eclipse is an expanded take on the original Fisher Transform oscillator, including divergence detection, bar coloring based on momentum strength, and flexible signal thresholds. By adjusting parameters like length, aggressiveness, and intensity thresholds, traders can configure the script for day-trading, swing trading, or position trading. The indicator endeavors to highlight where price might be shifting direction, but it should still be combined with robust risk management and other analytical methods. Doing so can lead to a more comprehensive view of market conditions.
18. Disclaimer
No indicator or script can guarantee profitable outcomes in trading. Past performance does not necessarily suggest future results. Uptrick: Fisher Eclipse is provided for educational and informational purposes. Users should apply their own judgment and may want to confirm signals with other tools and methods. Deciding to open or close a position remains a personal choice based on each individual’s circumstances and risk tolerance.
6 Band Parametric EQThis indicator implements a complete parametric equalizer on any data source using high-pass and low-pass filters, high and low shelving filters, and six fully configurable bell filters. Each filter stage features standard audio DSP controls including frequency, Q factor, and gain where applicable. While parametric EQ is typically used for audio processing, this implementation raises questions about the nature of filtering in technical analysis. Why stop at simple moving averages when you can shape your signal's frequency response with surgical precision? The answer may reveal more about our assumptions than our indicators.
Filter Types and Parameters
High-Pass Filter:
A high-pass filter attenuates frequency components below its cutoff frequency while passing higher frequencies. The Q parameter controls resonance at the cutoff point, with higher values creating more pronounced peaks.
Low-Pass Filter:
The low-pass filter does the opposite - it attenuates frequencies above the cutoff while passing lower frequencies. Like the high-pass, its Q parameter affects the resonance at the cutoff frequency.
High/Low Shelf Filters:
Shelf filters boost or cut all frequencies above (high shelf) or below (low shelf) the target frequency. The slope parameter determines the steepness of the transition around the target frequency , with a value of 1.0 creating a gentle slope and lower values making the transition more abrupt. The gain parameter sets the amount of boost or cut in decibels.
Bell Filters:
Bell (or peaking) filters create a boost or cut centered around a specific frequency. A bell filter's frequency parameter determines the center point of the effect, while Q controls the width of the affected frequency range - higher Q values create a narrower bandwidth. The gain parameter defines the amount of boost or cut in decibels.
All filters run in series, processing the signal in this order: high-pass → low shelf → bell filters → high shelf → low-pass. Each stage can be independently enabled or bypassed.
The frequency parameter for all filters represents the period length of the targeted frequency component. Lower values target higher frequencies and vice versa. All gain values are in decibels, where positive values boost and negative values cut.
The 6-Band Parametric EQ combines these filters into a comprehensive frequency shaping tool. Just as audio engineers use parametric EQs to sculpt sound, this indicator lets you shape market data's frequency components with surgical precision. But beyond its technical implementation, this indicator serves as a thought experiment about the nature of filtering in technical analysis. While traditional indicators often rely on simple moving averages or single-frequency filters, the parametric EQ takes this concept to its logical extreme - offering complete control over the frequency domain of price action. Whether this level of filtering precision is useful for analysis is perhaps less important than what it reveals about our assumptions regarding market data and its frequency components.
Previous Week High & Low with middle lineDescription:
The Previous Week High & Low Indicator is a powerful tool designed to provide traders with key reference levels from the previous trading week. It dynamically calculates and plots the previous week's high, low, and midpoint levels directly on your chart, helping you identify critical support and resistance zones.
Features:
1. **Previous Week High and Low Lines**:
- The indicator displays the high and low prices of the previous trading week, allowing you to analyze price action relative to these levels.
- These lines are plotted as step lines, visible only during the active trading days (Monday to Friday), ensuring clean and uncluttered charts.
2. Midpoint Line:
- The midpoint between the previous week's high and low is calculated and displayed as a reference level.
- This white line can act as a psychological pivot point for market participants.
3. Customizable Display:
- You can toggle the visibility of the high and low lines using input options, tailoring the indicator to your preferences.
4. Precision and Aesthetics:
- The lines are plotted with precision and styled for clarity, using subtle transparency for an unobtrusive yet informative appearance.
Use Case:
- This indicator is ideal for traders who rely on historical price levels for planning entries, exits, or stop-loss placements.
- It works seamlessly with any timeframe and asset, making it versatile for various trading strategies.
How It Works:
- The indicator fetches the previous week's high and low prices using the weekly timeframe and "lookahead" mode to ensure these levels remain static after the week's close.
- The lines are plotted only on weekdays (Monday to Friday) to exclude weekend data, ensuring accuracy for markets that operate 24/5.
This tool simplifies your chart analysis and empowers you to make informed trading decisions based on historical price dynamics.
Asia Sessions AutoPlotting**Asia Sessions AutoPlotting**
This script is designed to automatically detect and plot the Asia session high and low levels directly on your chart, providing key session data for trading analysis. It is highly customizable, making it an essential tool for traders who rely on session data for decision-making.
### Key Features:
- **Asia Session Detection**: Automatically identifies the Asia session based on user-defined time settings (default: 0000-0845 UTC).
- **High/Low Line Plotting**: Displays high and low price levels for the session with customizable colors and line styles.
- **Line Extensions**: Option to extend session high/low lines for future price action reference.
- **Session Background Fill**: Adds an optional colored background to highlight the Asia session period.
- **Day Labels**: Includes labels for the session high/low levels with the corresponding day of the week.
- **Dynamic Session History**: Limits the display to a user-specified number of past sessions (default: 7) to keep the chart clean and focused.
- **Customizable Colors**: Highlights Mondays with unique colors for easy identification, while other weekdays use a different scheme.
### Use Cases:
- Identify key session levels for trading strategies.
- Monitor Asia session dynamics and their impact on subsequent sessions.
- Spot significant price reactions around session highs/lows.
### Inputs:
- **Session Time**: Adjust the session time to match your preferred Asia trading hours.
- **Toggle High/Low Lines**: Enable or disable the plotting of session highs and lows.
- **Line Extensions**: Extend the session high/low lines into future bars for better visualization.
- **Background Highlight**: Toggle a colored background for the Asia session.
- **Maximum Sessions**: Define how many past sessions to display for clarity.
This script is perfect for intraday traders, scalpers, and swing traders looking to gain insight into the Asia session and its influence on global markets. Fully adjustable and easy to use, it enhances your chart with critical information at a glance.
Simply add it to your TradingView chart, configure your settings, and let it do the work for you!
Fibonacci Extensions and Retracements for Selected TimeframesPurpose of the Script
This script plots Fibonacci levels (retracements and extensions) based on the high and low points of the previous day, previous week, or previous month. It is a trading aid to help identify potential support and resistance zones. These zones are often used by traders to determine entry or exit points for trades.
How It Works
Select Timeframe
The trader can choose whether to calculate Fibonacci levels based on the high and low points of the previous day, previous week, or previous month.
This is selected using the timeframe_input input.
Examples:
"D" for the previous day
"W" for the previous week
"M" for the previous month
Calculate Price Range
The script calculates the price range using the high and low of the selected timeframe:
Formula: price_range = High - Low
Draw Fibonacci Levels
Retracements: Within the price range, Fibonacci levels such as 12%, 23%, 38%, 50%, 61%, 78%, and 88% are calculated. These help identify potential support or resistance zones.
Extensions: Beyond the price range, Fibonacci extensions such as 127%, 161%, 200%, 224%, and 241% are plotted to indicate potential breakout targets.
Visualization
The script plots lines and labels for each level.
These lines extend to the right, providing real-time guidance during trading.
Colors and line styles can be customized to match personal preferences.
How to Use as a Trading Aid
Use Fibonacci Retracements:
Use retracements (e.g., 38%, 50%, 61%) to identify potential support or resistance zones.
Example: If the price dropped sharply the previous day, the retracement levels could act as support during a rebound.
Use Fibonacci Extensions:
Extensions help identify price targets when the price breaks above or below the high or low of the previous day, week, or month.
Example: After a breakout above the previous week’s high, the 127% or 161% level could serve as a target.
Adjust Timeframe:
Choose the timeframe that suits your strategy:
Intraday traders can use the previous day’s high and low.
Swing traders might prefer the previous week.
Long-term traders could work with the previous month.
Example
A trader selects the weekly timeframe (W) to analyze the high and low of the previous week:
The script calculates the price range based on the high and low of the previous week.
Fibonacci retracements (e.g., 50% and 61%) are drawn to identify potential support zones.
Fibonacci extensions (e.g., 127% and 161%) help define price targets for a potential breakout above or below the range.
Pivot Highs/Lows with Bar CountsWhat does the indicator do?
This indicator adds labels to a chart at swing (a.k.a., "pivot") highs and lows. Each label may contain a date, the closing price at the swing, the number of bars since the last swing in the same direction, and the number of bars from the last swing in the opposite direction. A table is also added to the chart that shows the average, min, and max number of bars between swings.
OK, but how do I use it?
Many markets -- especially sideways-moving ones -- commonly cycle between swing highs and lows at regular time intervals. By measuring the number of bars between highs and lows -- both same-sided swings (i.e., H-H and L-L) and opposite-sided swings (i.e., H-L and L-H) -- you can then project the averages of those bar counts from the last high or low swing to make predictions about where the next swing high or low should occur. Note that this indicator does not make the projection for you. You have to determine which swing you want to project from and then use the bar counts from the indicator to draw a line, place a label, etc.
Example: Chart of BTC/USD
The indicator shows pivot highs and lows with bar counts, and it displays a table of stats on those pivots.
If you focus on the center section of the chart, you can see that prices were moving in a sideways channel with very regular highs and lows. This indicator counts the bars between these pivots, and you could have used those counts to predict when the next high or low may have occurred.
The bar counts do not work as well on the more recent section of the chart because there are no regularly time swings.
Katalyst's Opening Range BreakoutKatalyst's Opening Range Breakout + No Trade Zone
📜 Overview:
This indicator allows traders to visualize the high and low of the opening range for a user-selected timeframe (e.g., 30s, 1m, 5m, 15m). It features fully customizable lines, labels, and an optional **No Trade Zone** fill to help you identify breakout levels with ease.
---
🎯 Key Features:
1. **Customizable Opening Range**:
- Select your preferred opening range duration: **30 seconds, 1 minute, 2 minutes, 5 minutes, 10 minutes, or 15 minutes**.
- The indicator calculates and plots the **high** and **low** of the selected opening range.
2. **Dynamic Line Styling**:
- Choose the **line color**, **transparency**, and **style**: **Solid, Dashed, or Dotted**.
- Lines extend to the right of the chart for clarity.
3. **No Trade Zone** *(Optional / Disabled by default)*:
- When enabled, fills the area between the high and low lines with a customizable **color and transparency**.
- Helps visually identify consolidation areas where trading might be avoided.
4. **Labels for Precision**:
- Clearly displays the **Opening Range High** and **Low** values.
- Labels are color-coded and positioned dynamically for easy interpretation.
5. **Clean and Efficient Updates**:
- The indicator deletes old lines, labels, and fills before creating new ones, ensuring a clutter-free chart.
---
⚙️ How to Use:
1. **Select Your Timeframe**:
- From the settings, choose your desired opening range duration: 30s, 1m, 2m, 5m, 10m, or 15m.
2. **Customize the Visuals**:
- Adjust line color, style, and transparency.
- Enable the **No Trade Zone** for a transparent background fill between the high and low lines.
3. **Interpret the Breakout**:
- Watch for price movements above or below the **opening range** to identify potential breakout opportunities.
---
🛠 Settings:
Opening Range Duration: Select the timeframe for the opening range (30s, 1m, 2m, 5m, 10m, 15m).
Line Color: Set the color of the range lines.
Line Transparency: Adjust the transparency of the lines (0 = solid, 100 = invisible).
Line Style: Choose line style: Solid, Dashed, or Dotted.
Label Colors: Customize the label colors for the high and low values.
Enable No Trade Zone: Fill the area between high and low lines with a transparent color.
No Trade Zone Color: Set the fill color for the no trade zone.
No Trade Zone Transparency: Adjust the transparency of the no trade zone fill.
---
📈 Ideal For
Day traders and scalpers looking to trade **breakouts**.
Traders who want to identify areas of consolidation visually.
Anyone who relies on the **opening range** for their trading strategy.
---
🔍 Example Usage:
Set the opening range to **5 minutes** and enable the **No Trade Zone** with a light red fill.
Watch for price to break above or below the high/low lines to signal potential trade opportunities.
---
✨ Why Use This Indicator?
This script simplifies your breakout strategy by providing a clear, visually appealing representation of the opening range. The flexible customization options and the optional **No Trade Zone** make it a powerful tool for identifying high-probability trades.
---
Let me know if you need any additional tweaks or clarifications for this description. It's all set to help traders understand and use your powerful script! 🚀📈
AiTrend Pattern Matrix for kNN Forecasting (AiBitcoinTrend)The AiTrend Pattern Matrix for kNN Forecasting (AiBitcoinTrend) is a cutting-edge indicator that combines advanced mathematical modeling, AI-driven analytics, and segment-based pattern recognition to forecast price movements with precision. This tool is designed to provide traders with deep insights into market dynamics by leveraging multivariate pattern detection and sophisticated predictive algorithms.
👽 Core Features
Segment-Based Pattern Recognition
At its heart, the indicator divides price data into discrete segments, capturing key elements like candle bodies, high-low ranges, and wicks. These segments are normalized using ATR-based volatility adjustments to ensure robustness across varying market conditions.
AI-Powered k-Nearest Neighbors (kNN) Prediction
The predictive engine uses the kNN algorithm to identify the closest historical patterns in a multivariate dictionary. By calculating the distance between current and historical segments, the algorithm determines the most likely outcomes, weighting predictions based on either proximity (distance) or averages.
Dynamic Dictionary of Historical Patterns
The indicator maintains a rolling dictionary of historical patterns, storing multivariate data for:
Candle body ranges, High-low ranges, Wick highs and lows.
This dynamic approach ensures the model adapts continuously to evolving market conditions.
Volatility-Normalized Forecasting
Using ATR bands, the indicator normalizes patterns, reducing noise and enhancing the reliability of predictions in high-volatility environments.
AI-Driven Trend Detection
The indicator not only predicts price levels but also identifies market regimes by comparing current conditions to historically significant highs, lows, and midpoints. This allows for clear visualizations of trend shifts and momentum changes.
👽 Deep Dive into the Core Mathematics
👾 Segment-Based Multivariate Pattern Analysis
The indicator analyzes price data by dividing each bar into distinct segments, isolating key components such as:
Body Ranges: Differences between the open and close prices.
High-Low Ranges: Capturing the full volatility of a bar.
Wick Extremes: Quantifying deviations beyond the body, both above and below.
Each segment contributes uniquely to the predictive model, ensuring a rich, multidimensional understanding of price action. These segments are stored in a rolling dictionary of patterns, enabling the indicator to reference historical behavior dynamically.
👾 Volatility Normalization Using ATR
To ensure robustness across varying market conditions, the indicator normalizes patterns using Average True Range (ATR). This process scales each component to account for the prevailing market volatility, allowing the algorithm to compare patterns on a level playing field regardless of differing price scales or fluctuations.
👾 k-Nearest Neighbors (kNN) Algorithm
The AI core employs the kNN algorithm, a machine-learning technique that evaluates the similarity between the current pattern and a library of historical patterns.
Euclidean Distance Calculation:
The indicator computes the multivariate distance across four distinct dimensions: body range, high-low range, wick low, and wick high. This ensures a comprehensive and precise comparison between patterns.
Weighting Schemes: The contribution of each pattern to the forecast is either weighted by its proximity (distance) or averaged, based on user settings.
👾 Prediction Horizon and Refinement
The indicator forecasts future price movements (Y_hat) by predicting logarithmic changes in the price and projecting them forward using exponential scaling. This forecast is smoothed using a user-defined EMA filter to reduce noise and enhance actionable clarity.
👽 AI-Driven Pattern Recognition
Dynamic Dictionary of Patterns: The indicator maintains a rolling dictionary of N multivariate patterns, continuously updated to reflect the latest market data. This ensures it adapts seamlessly to changing market conditions.
Nearest Neighbor Matching: At each bar, the algorithm identifies the most similar historical pattern. The prediction is based on the aggregated outcomes of the closest neighbors, providing confidence levels and directional bias.
Multivariate Synthesis: By combining multiple dimensions of price action into a unified prediction, the indicator achieves a level of depth and accuracy unattainable by single-variable models.
Visual Outputs
Forecast Line (Y_hat_line):
A smoothed projection of the expected price trend, based on the weighted contribution of similar historical patterns.
Trend Regime Bands:
Dynamic high, low, and midlines highlight the current market regime, providing actionable insights into momentum and range.
Historical Pattern Matching:
The nearest historical pattern is displayed, allowing traders to visualize similarities
👽 Applications
Trend Identification:
Detect and follow emerging trends early using dynamic trend regime analysis.
Reversal Signals:
Anticipate market reversals with high-confidence predictions based on historically similar scenarios.
Range and Momentum Trading:
Leverage multivariate analysis to understand price ranges and momentum, making it suitable for both breakout and mean-reversion strategies.
Disclaimer: This information is for entertainment purposes only and does not constitute financial advice. Please consult with a qualified financial advisor before making any investment decisions.
Ensemble Alerts█ OVERVIEW
This indicator creates highly customizable alert conditions and messages by combining several technical conditions into groups , which users can specify directly from the "Settings/Inputs" tab. It offers a flexible framework for building and testing complex alert conditions without requiring code modifications for each adjustment.
█ CONCEPTS
Ensemble analysis
Ensemble analysis is a form of data analysis that combines several "weaker" models to produce a potentially more robust model. In a trading context, one of the most prevalent forms of ensemble analysis is the aggregation (grouping) of several indicators to derive market insights and reinforce trading decisions. With this analysis, traders typically inspect multiple indicators, signaling trade actions when specific conditions or groups of conditions align.
Simplifying ensemble creation
Combining indicators into one or more ensembles can be challenging, especially for users without programming knowledge. It usually involves writing custom scripts to aggregate the indicators and trigger trading alerts based on the confluence of specific conditions. Making such scripts customizable via inputs poses an additional challenge, as it often involves complicated input menus and conditional logic.
This indicator addresses these challenges by providing a simple, flexible input menu where users can easily define alert criteria by listing groups of conditions from various technical indicators in simple text boxes . With this script, you can create complex alert conditions intuitively from the "Settings/Inputs" tab without ever writing or modifying a single line of code. This framework makes advanced alert setups more accessible to non-coders. Additionally, it can help Pine programmers save time and effort when testing various condition combinations.
█ FEATURES
Configurable alert direction
The "Direction" dropdown at the top of the "Settings/Inputs" tab specifies the allowed direction for the alert conditions. There are four possible options:
• Up only : The indicator only evaluates upward conditions.
• Down only : The indicator only evaluates downward conditions.
• Up and down (default): The indicator evaluates upward and downward conditions, creating alert triggers for both.
• Alternating : The indicator prevents alert triggers for consecutive conditions in the same direction. An upward condition must be the first occurrence after a downward condition to trigger an alert, and vice versa for downward conditions.
Flexible condition groups
This script features six text inputs where users can define distinct condition groups (ensembles) for their alerts. An alert trigger occurs if all the conditions in at least one group occur.
Each input accepts a comma-separated list of numbers with optional spaces (e.g., "1, 4, 8"). Each listed number, from 1 to 35, corresponds to a specific individual condition. Below are the conditions that the numbers represent:
1 — RSI above/below threshold
2 — RSI below/above threshold
3 — Stoch above/below threshold
4 — Stoch below/above threshold
5 — Stoch K over/under D
6 — Stoch K under/over D
7 — AO above/below threshold
8 — AO below/above threshold
9 — AO rising/falling
10 — AO falling/rising
11 — Supertrend up/down
12 — Supertrend down/up
13 — Close above/below MA
14 — Close below/above MA
15 — Close above/below open
16 — Close below/above open
17 — Close increase/decrease
18 — Close decrease/increase
19 — Close near Donchian top/bottom (Close > (Mid + HH) / 2)
20 — Close near Donchian bottom/top (Close < (Mid + LL) / 2)
21 — New Donchian high/low
22 — New Donchian low/high
23 — Rising volume
24 — Falling volume
25 — Volume above average (Volume > SMA(Volume, 20))
26 — Volume below average (Volume < SMA(Volume, 20))
27 — High body to range ratio (Abs(Close - Open) / (High - Low) > 0.5)
28 — Low body to range ratio (Abs(Close - Open) / (High - Low) < 0.5)
29 — High relative volatility (ATR(7) > ATR(40))
30 — Low relative volatility (ATR(7) < ATR(40))
31 — External condition 1
32 — External condition 2
33 — External condition 3
34 — External condition 4
35 — External condition 5
These constituent conditions fall into three distinct categories:
• Directional pairs : The numbers 1-22 correspond to pairs of opposing upward and downward conditions. For example, if one of the inputs includes "1" in the comma-separated list, that group uses the "RSI above/below threshold" condition pair. In this case, the RSI must be above a high threshold for the group to trigger an upward alert, and the RSI must be below a defined low threshold to trigger a downward alert.
• Non-directional filters : The numbers 23-30 correspond to conditions that do not represent directional information. These conditions act as filters for both upward and downward alerts. Traders often use non-directional conditions to refine trending or mean reversion signals. For instance, if one of the input lists includes "30", that group uses the "Low relative volatility" condition. The group can trigger an upward or downward alert only if the 7-period Average True Range (ATR) is below the 40-period ATR.
• External conditions : The numbers 31-35 correspond to external conditions based on the plots from other indicators on the chart. To set these conditions, use the source inputs in the "External conditions" section near the bottom of the "Settings/Inputs" tab. The external value can represent an upward, downward, or non-directional condition based on the following logic:
▫ Any value above 0 represents an upward condition.
▫ Any value below 0 represents a downward condition.
▫ If the checkbox next to the source input is selected, the condition becomes non-directional . Any group that uses the condition can trigger upward or downward alerts only if the source value is not 0.
To learn more about using plotted values from other indicators, see this article in our Help Center and the Source input section of our Pine Script™ User Manual.
Group markers
Each comma-separated list represents a distinct group , where all the listed conditions must occur to trigger an alert. This script assigns preset markers (names) to each condition group to make the active ensembles easily identifiable in the generated alert messages and labels. The markers assigned to each group use the format "M", where "M" is short for "Marker" and "x" is the group number. The titles of the inputs at the top of the "Settings/Inputs" tab show these markers for convenience.
For upward conditions, the labels and alert messages show group markers with upward triangles (e.g., "M1▲"). For downward conditions, they show markers with downward triangles (e.g., "M1▼").
NOTE: By default, this script populates the "M1" field with a pre-configured list for a mean reversion group ("2,18,24,28"). The other fields are empty. If any "M*" input does not contain a value, the indicator ignores it in the alert calculations.
Custom alert messages
By default, the indicator's alert message text contains the activated markers and their direction as a comma-separated list. Users can override this message for upward or downward alerts with the two text fields at the bottom of the "Settings/Inputs" tab. When the fields are not empty , the alerts use that text instead of the default marker list.
NOTE: This script generates alert triggers, not the alerts themselves. To set up an alert based on this script's conditions, open the "Create Alert" dialog box, then select the "Ensemble Alerts" and "Any alert() function call" options in the "Condition" tabs. See the Alerts FAQ in our Pine Script™ User Manual for more information.
Condition visualization
This script offers organized visualizations of its conditions, allowing users to inspect the behaviors of each condition alongside the specified groups. The key visual features include:
1) Conditional plots
• The indicator plots the history of each individual condition, excluding the external conditions, as circles at different levels. Opposite conditions appear at positive and negative levels with the same absolute value. The plots for each condition show values only on the bars where they occur.
• Each condition's plot is color-coded based on its type. Aqua and orange plots represent opposing directional conditions, and purple plots represent non-directional conditions. The titles of the plots also contain the condition numbers to which they apply.
• The plots in the separate pane can be turned on or off with the "Show plots in pane" checkbox near the top of the "Settings/Inputs" tab. This input only toggles the color-coded circles, which reduces the graphical load. If you deactivate these visuals, you can still inspect each condition from the script's status line and the Data Window.
• As a bonus, the indicator includes "Up alert" and "Down alert" plots in the Data Window, representing the combined upward and downward ensemble alert conditions. These plots are also usable in additional indicator-on-indicator calculations.
2) Dynamic labels
• The indicator draws a label on the main chart pane displaying the activated group markers (e.g., "M1▲") each time an alert condition occurs.
• The labels for upward alerts appear below chart bars. The labels for downward alerts appear above the bars.
NOTE: This indicator can display up to 500 labels because that is the maximum allowed for a single Pine script.
3) Background highlighting
• The indicator can highlight the main chart's background on bars where upward or downward condition groups activate. Use the "Highlight background" inputs in the "Settings/Inputs" tab to enable these highlights and customize their colors.
• Unlike the dynamic labels, these background highlights are available for all chart bars, irrespective of the number of condition occurrences.
█ NOTES
• This script uses Pine Script™ v6, the latest version of TradingView's programming language. See the Release notes and Migration guide to learn what's new in v6 and how to convert your scripts to this version.
• This script imports our new Alerts library, which features functions that provide high-level simplicity for working with complex compound conditions and alerts. We used the library's `compoundAlertMessage()` function in this indicator. It evaluates items from "bool" arrays in groups specified by an array of strings containing comma-separated index lists , returning a tuple of "string" values containing the marker of each activated group.
• The script imports the latest version of the ta library to calculate several technical indicators not included in the built-in `ta.*` namespace, including Double Exponential Moving Average (DEMA), Triple Exponential Moving Average (TEMA), Fractal Adaptive Moving Average (FRAMA), Tilson T3, Awesome Oscillator (AO), Full Stochastic (%K and %D), SuperTrend, and Donchian Channels.
• The script uses the `force_overlay` parameter in the label.new() and bgcolor() calls to display the drawings and background colors in the main chart pane.
• The plots and hlines use the available `display.*` constants to determine whether the visuals appear in the separate pane.
Look first. Then leap.
Fibonacci Moving Average PlusFibonacci Moving Average Plus is a sophisticated technical indicator that employs the first 15 numbers of the Fibonacci sequence to create dynamic moving average channels. This indicator aims to capture both immediate and long-term price movements by calculating Exponential Moving Averages (EMAs) based on these Fibonacci values. By using Fibonacci-based moving averages for both high and low price points, the indicator generates a visual channel that reflects the ebb and flow of market trends, acting as potential zones of support and resistance. Additionally, the indicator provides midline, retracement, and extension levels rooted in Fibonacci ratios, which are frequently observed as key levels for reversals or trend continuation.
Ideology Behind Using Fibonacci Sequence-Based Moving Averages
The Fibonacci sequence, known for its mathematical harmony and prevalence in natural patterns, is widely utilized in technical analysis to identify potential turning points in markets. In this indicator, the first 15 Fibonacci numbers (5, 8, 13, 21, etc.) are used as the lookback periods for EMAs to capture different layers of market sentiment. These moving averages represent timeframes that are theoretically in alignment with the natural rhythms of market cycles, where key levels—often coinciding with Fibonacci numbers—can act as magnetic points for price.
The Fibonacci high and low channels aim to encapsulate price action, giving traders a sense of whether the market is trending, consolidating, or experiencing reversal pressure. These levels, grounded in both mathematics and market psychology, help traders spot areas where price might face resistance or find support.
Key Features
Fibonacci Moving Average High and Low: This indicator calculates the high and low EMAs based on Fibonacci sequence numbers (e.g., 5, 8, 13, etc.) for enhanced trend analysis.
Golden Pocket Retracement (GPR) and Extension (GPE) Bands: Displays common Fibonacci retracement and extension levels (0.618, 0.65 for retracement, and 1.618, 1.65 for extension).
Midline: Plots the average of the Fibonacci high and low to act as an additional reference level.
Stop-Loss Levels: Provides suggested stop-loss levels based on Fibonacci levels for both long and short positions.
Basic User Guide
Adjust Input Settings:
Input Timeframe: Set a specific timeframe for the Fibonacci moving average calculation, separate from the chart's primary timeframe.
Show Fibonacci MA High/Low: Toggle the visibility of the high and low Fibonacci moving averages.
Show Mid Line: Display a midline for added trend reference.
Show Golden Pocket Bands: Choose to display retracement or extension bands for potential support or resistance zones.
Show Stop-Loss Levels: Enable to visualize potential stop-loss levels for both long and short trades.
Interpretation:
Fibonacci MA High and Low: Use these lines to gauge the general trend. When the price is above both, it may indicate an uptrend; below both, a downtrend.
Golden Pocket Retracement: This zone (between 0.618 and 0.65) is often a key level for potential reversals or support/resistance.
Golden Pocket Extension: The 1.618 and 1.65 levels can indicate potential profit-taking or trend exhaustion points.
Stop-Loss Levels: The calculated stop-loss levels (long SL below and short SL above) can aid in risk management.
Customization:
You can customize the appearance and visibility of each component through the input settings to fit your specific strategy and visual preferences.
This indicator should be used alongside other technical analysis tools to provide a more comprehensive trading approach.
This Indicator would not exist without the original contributions and blessing from Sofien Kaabar
Market structureHi all!
This script shows you the market structure. You can choose to show internal market structure (with pivots of a default length of 5) and swing market structure (with pivots of a default length of 50). For these two trends it will show you:
• Break of structure (BOS)
• Change of character (CHoCH) (mandatory)
• Equal high/low (EQH/EQL)
It's inspired by "Smart Money Concepts (SMC) " by LuxAlgo that will also show you the market structure.
It will create the two market structures depending on the pivots found. Both of these market structures can be enabled/disabled. The pivots length can be configured separately. The pivots found will be the 'base' of this indicator and will show you when price breaks it. When that happens a break of structure or a change of character will be created. The latest 5 pivots found within the current trends will be kept to take action on. The internal market structure is shown with dashed lines and swing market structure is shown with solid lines.
A break of structure is removed if an earlier pivots within the same trend is broken. Like in the images below, the first pivot (in the first image) is removed when an earlier pivot's higher price within the same trend is broken (the second image):
Equal high/lows have a pink zone (by default but can be changed by the user). These zones can be configured to be extended to the right (off by default). Equal high/lows are only possible if it's not been broken by price and if a later bar has a high/low within the limit it's added to the zone (without it being more 'extreme' (high or low) then the previous price). A factor (percentage of width) of the Average True Length (of length 14) that the pivot must be within to to be considered an Equal high/low. This is configurable and sets this 'limit' and is 10 by default.
You are able to show the pivots that are used. "HH" (higher high), "HL" (higher low), "LH" (lower high), "LL" (lower low) and "H"/"L" (for pivots (high/low) when the trend has changed) are the labels used.
This script has proven itself useful for me to quickly see how the current market is. You can see the pivots (price and bar) where break of structure or change of character happens to see the current trends. I hope that you will find this useful for you.
When programming I focused on simplicity and ease of read. I did not focus on performance, I will do so if it's a problem (haven't noticed it is one yet).
You can set alerts for when a change of character happens. You can configure it to fire on when it happens (all or once per bar) but it defaults to 'once_per_bar_close' to avoid repainting. This has the drawback to alert you when the bar closes.
TLDR: this is an indicator showing you the market structure (break of structures and change of characters) using swing points/pivots. Two trends can be shown, internal (with pivots of length of 5) and swing (with pivots of the length of 50).
Best of trading luck!
CandlestickPatternsLibrary "CandlestickPatterns"
zigzag(_low, _high, depth, deviation, backstep)
Parameters:
_low (float)
_high (float)
depth (int)
deviation (int)
backstep (int)
getTrend(trendType, currentClose, zz_downtrend, zz_uptrend, ema14, ema28)
Parameters:
trendType (string)
currentClose (float)
zz_downtrend (bool)
zz_uptrend (bool)
ema14 (float)
ema28 (float)
isInside(currentHigh, currentLow, currentClose, currentOpen, prevHigh, prevLow)
Parameters:
currentHigh (float)
currentLow (float)
currentClose (float)
currentOpen (float)
prevHigh (float)
prevLow (float)
checkMorningStar(open0, high0, low0, close0, open1, high1, low1, close1, open2, high2, low2, close2, innerCandleThreshold, closingMinThreshold, closingMaxThreshold, useDojiFilter, dojiSize, downTrend)
Parameters:
open0 (float)
high0 (float)
low0 (float)
close0 (float)
open1 (float)
high1 (float)
low1 (float)
close1 (float)
open2 (float)
high2 (float)
low2 (float)
close2 (float)
innerCandleThreshold (float)
closingMinThreshold (float)
closingMaxThreshold (float)
useDojiFilter (bool)
dojiSize (float)
downTrend (bool)
checkEveningStar(open0, high0, low0, close0, open1, high1, low1, close1, open2, high2, low2, close2, innerCandleThreshold, closingMinThreshold, closingMaxThreshold, useDojiFilter, dojiSize, upTrend)
Parameters:
open0 (float)
high0 (float)
low0 (float)
close0 (float)
open1 (float)
high1 (float)
low1 (float)
close1 (float)
open2 (float)
high2 (float)
low2 (float)
close2 (float)
innerCandleThreshold (float)
closingMinThreshold (float)
closingMaxThreshold (float)
useDojiFilter (bool)
dojiSize (float)
upTrend (bool)
checkHammerPattern(open, high, low, close, bodyAvg, shadowFactor, downTrend)
Parameters:
open (float)
high (float)
low (float)
close (float)
bodyAvg (float)
shadowFactor (float)
downTrend (bool)
checkInvertedHammerPattern(open, high, low, close, bodyAvg, shadowFactor, downTrend)
Parameters:
open (float)
high (float)
low (float)
close (float)
bodyAvg (float)
shadowFactor (float)
downTrend (bool)
checkHangingManPattern(open, high, low, close, bodyAvg, shadowFactor, upTrend)
Parameters:
open (float)
high (float)
low (float)
close (float)
bodyAvg (float)
shadowFactor (float)
upTrend (bool)
checkShootingStarPattern(open, high, low, close, bodyAvg, shadowFactor, upTrend)
Parameters:
open (float)
high (float)
low (float)
close (float)
bodyAvg (float)
shadowFactor (float)
upTrend (bool)
checkLevels(high0, high1, high2, low0, low1, low2, lookbackPeriod)
Parameters:
high0 (float)
high1 (float)
high2 (float)
low0 (float)
low1 (float)
low2 (float)
lookbackPeriod (int)
Flashtrader´s Statistical BandwidthsThe vast majority of traders exclusively concern
themselves with trend-following in all its facets. Scoring
points with trends on a regular basis is a difficult task
since prices do not constantly move in one direction
or another. In the case of the DAX future, for example,
only about 30 per cent of all trading days in a year are
trend days. And of these, there are x percent long ones
and x per cent short ones. Catching the very days when
prices rise or fall from the opening to the close is a major
challenge for a trader who also needs to have previously
recognised the corresponding direction.
However, there are also other ways of profit-taking
every day – for example, by using the mean reversion
strategy. The idea behind this is the fact that prices reach
a high and a low every day – but very rarely close at the
high or the low. This means that prices always move
away from these extreme points and the closing price is
somewhere in between. A profitable trading strategy can
be developed out of this.
But how can you know where the high and the low
will be tomorrow? Is it possible for you to know this in
advance? No – because no one can predict the future. Or
can they? At least it can be statistically determined how
high or low prices could go tomorrow. There is a high
degree of probability that one of the two possibilities
will materialise. It will then be necessary to act.
Calculation
Classic pivot points for the following day are calculated
from the high, low and closing price. But does it really
make sense to use such a mix? I don’t think so and
use a different calculation for this strategy. In a first step,
only the differences between the start and the high or low
are calculated on a daily basis. To avoid being dependent
on individual days and outliers, it is advisable to calculate,
in a second step, the average of these differences over
the past five days. Finally, this average will then be added
at the opening price of the current trading day for the
upper statistical bandwidth and subtracted for the lower
bandwidth.
upper bandwidth = oSTB (violet dashed line in the chart)
lower bandwidth = uSTB (violet dashedline in the chart)
The second interesting question is, if the previous day's high has been exceeded, how much further can the price rise from a mathematical/statistical point of view?
These calculated previous day highs expansions are shown as red dashed lines
Previous day's high expansion = VTHA
Previous day's low expansion = VTTA
For further orientation, the previous day's high (VTH) and the previous day's low (VTT) are shown in light blue dashed lines
And as a supplement, the previous day's close in the DAX Future at 10:00 p.m. VTSA in violet solid lines and the previous day's close in the cash register at 5:30 p.m. VTSN in yellow solid lines
Reaching the calculated extreme values does not mean that the trend has to change immediately, but there is at least temporary exhaustion potential with which you can earn a few points every day in the area of scalping.
Example for cheap entry long:
Example for cheap entry short:
Deutsch:
Die Masse der Trader beschäftigt sich ausschließlich mit Trendfolge in all ihren Facetten. Mit Trends regelmäßig zu punkten ist ein schwieriges Unterfangen, da die Kurse nicht ständig in die eine oder andere Richtung laufen. Beim DAX-Future zum Beispiel sind von allen Börsentagen im Jahr lediglich zirka 30 Prozent Trendtage. Davon sind dann auch noch x Prozent Long und x Prozent Short. Hier genau die Tage abzupassen, an denen die Kurse von Börsenbeginn bis zum Schluss steigen beziehungsweise fallen, ist eine große Herausforderung – wobei der Trader zuvor noch die entsprechende Richtung erkannt haben muss. Es gibt jedoch auch noch andere Methoden täglich Gewinne mitzunehmen, zum Beispiel mit der Mean-Reversion-Strategie (Mittelwertumkehr).
Hintergrund ist die Tatsache, dass die Kurse jeden Tag ein Hoch und ein Tief erreichen – aber sehr selten am Hoch oder am Tief schließen. Das bedeutet, dass die Preise sich immer wie der von diesen Extrempunkten wegbewegen und der Schlusskurs irgendwo dazwischen liegt. Hieraus lässt sich eine profitable Handelsstrategie entwickeln. Aber woher kannst Du wissen, wo morgen das Hoch und das Tief sein wird? Kannst Du das vorher schon wissen? Nein – denn niemand kann die Zukunft vorhersagen. Oder doch? Statistisch lässt sich zumindest bestimmen, wie hoch und wie tief die Kurse morgen steigen oder fallen könnten. Eine Seite wird mit sehr hoher Wahrscheinlichkeit ein treffen. Dann gilt es zu handeln.
Berechnung Klassischer Pivot-Punkte für den folgenden Tag werden aus Hoch, Tief und Schlusskurs berechnet. Aber ist es wirklich sinnvoll, einen solchen Mix zu verwenden? Ich finde das nicht und verwenden für diese Strategie eine andere Berechnung. Im ersten Schritt werden täglich die Differenzen nur vom Start bis zum Hoch beziehungsweise Tief errechnet. Um nicht von einzelnen Tagen und Ausreißern abhängig zu sein, empfiehlt es sich, in einem zweiten Schritt den Durchschnitt dieser Differenzen über die letzten fünf Tage zu errechnen. Zuletzt wird dann dieser Durchschnitt zum Eröffnungskurs des aktuellen Handelstages für die obere statistische Bandbreite addiert und für die untere Bandbreite subtrahiert.
Obere statistische Bandbreite = oSTB (violette gestrichelte Linie im Chart)
Untere statistische Bandbreite = uSTB (violette gestrichelte Linie im Chart)
Die zweite interessante Frage ist, wenn das Vortageshoch überschritten wurde, wie weit kann der Kurs dann noch steigen aus mathematisch/statistischer Sicht?
Diese berechneten Vortagesextremausdehnungen sind als rote gestrichelte Linien dargestellt
Vortageshochausdehnung = VTHA
Vortagestiefausdehnung = VTTA
Für die weitere Orientierung sind die Vortageshochs (VTH) und die Vortagestiefs (VTT) als hellblaue gestrichelte Linien abgebildet.
Als Ergänzung wird noch der Vortages Schluss im Dax Future um 22:00 Uhr VTSA mit einer violetten durchgezogenen Linie und der Kassamarktschluss um 17:30 Uhr mit einer gelben durchgezogenen Linie gezeigt.
Das Erreichen der berechneten Extremwerte bedeutet nicht, das der Trend sofort drehen muss, aber es sind zumindest temporäre Erschöpfungspotentiale mit denen sich im Bereich scalping täglich einige Punkte verdienen lassen.
Beispiel für günstigen Einstieg Long:
Beispiel für günstigen Einstieg Short:
Amplitude [Anan]The Amplitude indicator calculates and visualizes both the amplitude and cumulative amplitude of price movements, providing traders with insights into price volatility and trend strength. By distinguishing between positive and negative amplitude movements, this indicator aids in identifying bullish and bearish sentiments, potential reversal points, and confirming trend directions.
█ Main Formulas
‣ Amplitude = High - Low
‣ Cumulative Amplitude = sum of Amplitude over the specified lookback period
‣ Percentage Amplitude = (Amplitude / Open) × 100%
High: Candle high (or highest high when lookback > 1)
Low: Candle low (or lowest low when lookback > 1)
Open: Open price of the first candle in the lookback period
█ Key Features
✦Dual Amplitude Calculations:
Amplitude: Reflects price range and direction over a short-term period.
Cumulative Amplitude: Aggregates amplitude over a longer period for broader trend analysis.
✦Customizable Parameters: Adjust lookback periods, smoothing options, moving averages and Alerts.
✦Direction Separation: Distinguish between positive and negative amplitude movements to identify market sentiment.
✦Flexible Visualization: Customizable colors and plot styles for enhanced chart readability.
✦Alert System: Generate signals based on amplitude direction and moving average crossovers
█ How to Use and Interpret
✦Understanding Amplitude and Cumulative Amplitude:
‣Amplitude: Measures the price range (high - low) over a specified short-term period.
‣Cumulative Amplitude: Aggregates amplitude over a defined longer-term period.
‣Percentage Representation: shows amplitude relative to the open price from `amp_length` bars ago, providing a normalized view.
‣Interpretation:
Large Amplitude Values: Indicate high volatility.
Small Amplitude Values: Indicate low volatility.
✦Trend Identification:
‣Uptrend: Consistently positive amplitudes and upward-moving averages.
‣Downtrend: Consistently negative amplitudes and downward-moving averages.
✦Overbought/Oversold Conditions:
‣High Positive Amplitude: May indicate overbought conditions and potential reversals.
‣High Negative Amplitude: May indicate oversold conditions and potential reversals.
✦Volatility Analysis:
‣High Amplitude Values: Suggest increased market volatility.
‣Low Amplitude Values: Suggest reduced market volatility.
✦Signal Confirmation:
‣Moving Average Crossovers: Confirm the strength and direction of trends, aiding in informed trading decisions.
✦Trading Strategies:
‣ Breakout Trading: Large increases in amplitude can signal potential breakouts.
‣ Mean Reversion: Extreme amplitude values may indicate upcoming price corrections.
‣ Volatility-Based Strategies: Adjust position sizes or trading frequency based on amplitude magnitudes.
‣ Multi-Timeframe Analysis: Compare amplitudes across different timeframes for a comprehensive market view.
█ Customization Tips
‣ Lookback Periods: Experiment with different periods to suit your trading style and asset characteristics.
‣ Smoothing Settings: Adjust to balance responsiveness and noise reduction.
‣ Percentage Amplitude: Use for normalized comparisons across different price levels.
Market Structure & Session Alerts### Market Structure & Session Alerts Indicator
#### Overview
The "Market Structure & Session Alerts" indicator is a comprehensive tool designed to assist traders in identifying key market structure levels, detecting liquidity sweeps, and receiving alerts for specific trading sessions. This indicator is particularly useful for traders who want to keep an eye on previous high and low levels and be alerted during pre-London and pre-New York sessions.
#### Features
1. **Previous High/Low Levels:**
- **Daily, Weekly, and Monthly Highs and Lows:** The indicator plots the previous day, week, and month high and low levels on the chart. These levels can be crucial for identifying support and resistance zones.
- **Toggle Display:** Users can choose to show or hide these levels using the "Show Previous Day/Week/Month High/Low" option.
2. **Liquidity Sweep Detection:**
- **Liquidity Sweep Identification:** The indicator detects liquidity sweeps when the current price closes above the previous day's high. This can signal potential reversals or continuations in the market.
- **Visual Alerts:** When a liquidity sweep is detected, a green triangle is plotted below the bar.
3. **Session Alerts:**
- **Session Timings:** Users can set specific start and end times for the pre-London and pre-New York sessions to match their timezone.
- **Visual Background Highlight:** The background of the chart is highlighted in yellow during the defined session times to provide a visual cue.
- **Alert Messages:** The indicator can generate alerts to notify traders when the market enters the pre-London or pre-New York session.
4. **Current Price Line:**
- The current price is plotted as a black line, providing a clear visual reference for the current market price.
#### How to Use
1. **Input Parameters:**
- `Show Previous Day/Week/Month High/Low`: Enable or disable the display of previous high/low levels.
- `Show Liquidity Sweep`: Enable or disable the detection and display of liquidity sweeps.
- `Show Session Alerts`: Enable or disable session alerts and background highlights.
2. **Session Timing Adjustments:**
- Set the `Pre-London Start`, `Pre-London End`, `Pre-New York Start`, and `Pre-New York End` times according to your timezone to ensure accurate session alerts.
3. **Alerts:**
- Make sure alerts are enabled in your TradingView settings to receive notifications when the market enters the pre-London or pre-New York sessions.
#### Example Use Cases
- **Day Traders:** Identify potential support and resistance levels using the previous day's high and low.
- **Swing Traders:** Use weekly and monthly high and low levels to determine significant market structure points.
- **Scalpers:** Detect liquidity sweeps to identify potential quick trades.
- **Session Traders:** Be alerted when the market enters key trading sessions to align your trading strategy with major market activities.
This indicator combines multiple market analysis tools into one, providing a robust system for traders to enhance their trading decisions and market awareness.
DTB
Dynamic Trendline Bands with Buy/Sell Pressure Detection
This indicator provides a comprehensive analysis of price movements by incorporating smoothed high and low bands, a midline, and the detection of buying and selling pressure. It is designed to help traders identify key support and resistance levels as well as potential buy and sell signals.
**Features:**
- **Smooth High and Low Bands:** Based on the highest high and lowest low over a specified period, smoothed using a simple moving average (SMA) to reduce noise and enhance clarity.
- **Midline:** The average of the smoothed high and low bands, providing a central reference point for price movements.
- **Buying and Selling Pressure Detection:** Highlights candles with significant buying or selling pressure, indicated by light green for buying pressure and light red for selling pressure. This is determined based on volume thresholds and price movement.
- **Trendlines:** Dynamic trendlines are drawn based on recent highs and lows, helping to visualize the current trend direction.
**How to Use:**
1. **High-Low Bands:** Use these bands to identify key support and resistance levels.
2. **Midline:** Monitor the midline for potential mean reversion trades.
3. **Buying/Selling Pressure Candles:** Look for candles highlighted in light green or red to identify potential buy or sell signals.
4. **Trendlines:** Follow the dynamic trendlines to understand the direction of the current trend.
**Inputs:**
- **Length:** Number of bars to consider for calculating the highest high and lowest low (default: 200).
- **Smooth Length:** Period for the simple moving average to smooth the high and low bands (default: 10).
- **Volume Threshold Multiplier:** Multiplier for the average volume to detect significant buying or selling pressure (default: 1.5).
This indicator is suitable for all timeframes and can be used in conjunction with other technical analysis tools to enhance your trading strategy.
Stop Hunts [MK]Liquidity rests above/below previous highs and lows because these are the areas where traders are most likely to leave their orders/stop losses. The market can tap into this liquidity source by going beyond the previous highs and lows, this liquidity can then be used to reverse the market in the opposite direction.
As traders we may want to know if price will continue beyond previous highs and lows, or reverse the market. If price looks to be reversing after tapping into liquidity, this can be a good area to enter a trade. The same area can be used as a take profit level also.
The indicator identifies previous high/lows in two ways:
1. previous high/lows using 'PIVOT POINTS'. Pivots are easy to spot and are obvious within a price trend. Also called 'higher highs", "lower lows" etc. The number of candles required to form the pivot point can be adjusted in the script settings.
see below example of pivot point and stop hunt:
www.tradingview.com
see how price reversed upwards after stop hunt on pivot point above.
2. previous candle high/lows. A previous candles high and low are also good areas of liquidity.
see below example of previous candle stop hunt:
see how price reversed upwards after stop hunt on previous candle low above.
Personally, I use the pivot point stop hunts on lower timeframes and previous candle stop hunts on higher timeframes. However users can adjust on which timeframes to show the indicator depending on their own trading style.
As ever all items within 'settings' are customizable.
The indicator is by no means a 'trading strategy' and users should be fully aware of the stop hunt concept and have conducted extensive back-testing before using with 'live' accounts.
The indicator may also serve as a 'teaching aid' to new students and as a reminder to more experienced traders.
MarketRangerThis indicator puts a selection of elements together providing traders with insights into price dynamics, trend changes, and potential trading opportunities within the specified timeframe.
Trading Range Defined by Support and Resistance :
Support and resistance levels are calculated using the lowest low and highest high over specified periods.
These
levels define the boundaries of the trading range within which the price moves.
WMA Color Changing based on Slope :
The script uses three Weighted Moving Averages (WMAs) with different lengths.
The color of the main WMA changes based on its slope.
When the slope of the WMA is positive (indicating an uptrend), it's displayed in blue. When it's
negative (indicating a downtrend), it's displayed in pink.
New High/Low Detection :
The script detects new highs and lows in the price action.
A new high is detected when the current high crosses under the previous resistance level, and a new low is detected when the current low crosses over the previous support level.
These
detections are marked by triangle shapes above or below the bars.
WMA Crosses :
The script calculates the difference between the two WMAs.
When the faster WMA crosses above the slower WMA, indicating a potential bullish signal, a blue cross shape is plotted below the bar.
When the faster WMA crosses below the slower WMA, indicating a potential bearish signal, a
pink cross shape is plotted above the bar.
Slope Changes :
The script calculates the slope of the main WMA and tracks changes in slope.
A positive slope indicates an upward trend, while a negative slope indicates a downward trend.
Slope changes from negative to positive indicate potential bullish momentum, and from
positive to negative indicate potential bearish momentum.
Customizable Pivot Levels :
Pivot levels are calculated based on user-defined percentages of the range between support and resistance.
Pivot Level 1 and Pivot Level 2 provide additional reference points for potential reversals or trend continuation.
Usage :
The indicator provides support and resistance levels, new high/low alerts, and WMA crosses.
The midpoint and customizable pivot levels offer potential trading zones.
Slope change points indicate potential shifts in market sentiment.
Customize the pivot levels according to your trading strategy.
Parameters :
Adjust the WMA lengths and support/resistance lengths to suit your trading style.
Modify the visibility settings to control how many periods of support and resistance are displayed.
Customize the pivot levels to fit your preferred trading strategy.
Alerts :
Alerts are triggered for new high/low points and WMA crosses.
Use alerts to stay informed about potential trading opportunities.
Interpretation :
Watch for new high/low points for potential trend reversals or continuations.
Monitor WMA crosses and slope changes for signals of market direction.
Consider trading near support/resistance levels and pivot points.
Additional Notes :
Experiment with different settings to find the configuration that best suits your trading preferences.
Backtest the indicator on historical data to validate its effectiveness before using it in live trading.
Advanced MACD [CryptoSea]Advanced MACD (AMACD) enhances the traditional MACD indicator, integrating innovative features for traders aiming for deeper insights into market momentum and sentiment. It's crafted for those seeking to explore nuanced behaviors of the MACD histogram, thus offering a refined perspective on market dynamics.
Divergence moves can offer insight into continuation or potential reversals in structure, the example below is a clear continuation signal.
Key Features
Enhanced Histogram Analysis: Precisely tracks movements of the MACD histogram, identifying growth or decline periods, essential for understanding market momentum.
High/Low Markers: Marks the highest and lowest points of the histogram within a user-defined period, signaling potential shifts in the market.
Dynamic Averages Calculation: Computes average durations of histogram phases, providing a benchmark against historical performance.
Color-Coded Histogram: Dynamically adjusts the histogram's color intensity based on the current streak's duration relative to its average, offering a visual cue of momentum strength.
Customisable MACD Settings: Enables adjustments to MACD parameters, aligning with individual trading strategies.
Interactive Dashboard: Showcases an on-chart table with average durations for each phase, aiding swift decision-making.
Settings & Customisation
MACD Settings: Customise fast length, slow length, and signal smoothing to tailor the MACD calculations to your trading needs.
Reset Period: Determine the number of bars to identify the histogram's significant high and low points.
Histogram High/Lows: Option to display critical high and low levels of the histogram for easy referencing.
Candle Colours: Select between neutral or traditional candle colors to match your analytical preferences.
When in strong trends, you can use the average table to determine when to look to get into a position. This example we are in a strong downtrend, we then see the histogram growing above the average in these conditions which is where we should look to get into a shorting position.
Strategic Applications
The AMACD serves not just as an indicator but as a comprehensive analytical tool for spotting market trends, momentum shifts, and potential reversal points. It's particularly useful for traders to:
Spot Momentum Changes Utilise dynamic coloring and streak tracking to alert shifts in momentum, helping anticipate market movements.
Identify Market Extremes Use high and low markers to spot potential market turning points, aiding in risk management and decision-making.
Alert Conditions
Above Average Movement Alerts: Triggered when the duration of the MACD histogram's growth or decline is unusually long, these alerts signal sustained momentum:
Above Zero: Alerts for both growing and declining movements above zero, indicating either continued bullish trends or potential bearish reversals.
Below Zero: Alerts for growth and decline below zero, pointing to potential bullish reversals or confirmed bearish trends.
High/Low Break Alerts: Activated when the histogram reaches new highs or falls to new lows beyond the set thresholds, these alerts are crucial for identifying shifts in market dynamics:
Break Above Last High: Indicates a potential upward trend as the histogram surpasses recent highs.
Break Below Last Low: Warns of a possible downward trend as the histogram drops below recent lows.
These alert conditions enable traders to automate part of their market monitoring or potential to automate the signals to take action elsewhere.
ka66: Swing/Pivot Point LinesThis indicator draws swing-highs and swing-lows, also called pivot highs and lows.
A swing high is a bar which has a higher-high than its surrounding bars (to the left and the right).
A swing low is a bar which has a lower-low than its surrounding bars (to the left and the right).
A common example of a pivot is Bill Williams' Fractal, which specifies that the centre bar must have a higher high than 2 bars to its left, and 2 bars to its right for a swing high, taking into account 5 bars at a time. Similarly, for a swing low, the centre bar must have a lower low than the 2 bars to its left and right.
This indicator allows configurable adjacent bars as input. Entering 2, means it essentially picks out a Williams Fractal. But you can select 1 (say for higher timeframes), using one 1 bar to the left and right of the centre bar.
The indicator will draw Swing/Pivot High/Low as circles at the same price level as the centre bar, till the next one shows up. Drawing is offset so it starts at the centre bar (the swing bar), showing exactly where the pivot bar is.
There are 2 main uses of pivot points, in various strategies:
Market Structure: to objectively define higher-highs/lows and lower-highs/lows in Trend Analysis.
More generally, to then determine if a trend might reverse, or continue as pivot levels are broken.
Messy pivot structures easily point out ranging markets.
There are a few of these, some closed source, which I don't like, since I think people should generally know what they are trading with, and I want to make sure I understand the logic exactly.
Channels With Patterns [ChartPrime]The Channels With Patterns indicator is an attempt at minimizing the delay in forming a trend channel. This indicator uses a single pivot in conjunction with a smooth version of the price to estimate the direction of an emerging trend. Using ATR, this indicator estimates the volatility of the new trend by adjusting the channel size by a multiple of the current ATR.
One of the biggest complains for any trend indicator is that it takes too long to create a channel or trend line. This indicator estimates the trend channel by checking if the price is moving in the correct direction and then it projects the channel from a single pivot. To allow for some margin of error, this script uses an offset to help center the channel.
This offset is generated from the ATR at the time of formation. In conjunction with forming estimated trend channels, this indicator features select candle stick patterns. These candle stick patterns are filtered by location in the formed trend channel. If the price is within an extremity of the trend channel it will appear. Filtering classical vanilla candle stick patterns using this methodology can result in some interesting results and possible confluence points for traders. For example; a bearish hammer appearing when filtered in an upper zone might add an extra level of realtime unique confluence traders.
Traders can use this script as a general trend line indicator that is a bit more forward looking than others, or it can be used it as its full blown trend channel estimator. Due to the fact that this is an estimate using the minimum possible information to make the channel, its accuracy will not always be perfect and can suffer compared to alternative methods.
When configuring the indicator it is important to understand the role of each input. Here is a description of all of the settings provided:
Presets (`preset`): This input allows users to quickly configure the indicator based on the market they are trading in. Selecting "Stocks," "Forex," or "Crypto" automatically adjusts various parameters to settings deemed optimal for these markets. The "User" option lets traders manually configure settings for a more personalized approach.
Style (`style`): This setting determines how pivot points are calculated. "Wick" uses the high and low of candlesticks (including wicks), which can be more sensitive to market extremes. "Body" uses only the open and close prices (the body of the candlesticks), potentially offering a more stable pivot point calculation.
Break Style (`break_style`): This option defines what price is used to determine if a channel has been broken. "Close" uses the closing price of a candlestick, while "High/Low" uses the highest and lowest prices. This affects how channel breaks are identified and can influence trading signals.
Instant Mode (`instant`): When enabled, this feature allows the indicator to form channels more quickly by initiating them as soon as potential formations are detected. This can provide earlier signals but may increase the risk of false positives.
ATR Length (`atr_length`): This input sets the period for the Average True Range (ATR), a common volatility indicator. A longer ATR period may smooth out the channel but could delay responsiveness to market changes. A shorter period might make the channel more responsive but potentially more erratic.
Offset Center (`offset`): Adjusts the vertical positioning of the channel. This can help in aligning the channel more accurately with the price action, depending on market conditions and personal trading strategies.
Size (`atr_multiplier`): Alters the channel's size relative to the ATR. A higher multiplier makes a wider channel, which might be useful in more volatile markets. A lower multiplier tightens the channel, which could be better for less volatile conditions.
Padding % (`padding`): This setting adjusts the padding within the top and bottom quarters of the channel. It essentially fine-tunes the channel's sensitivity to price movements near its boundaries.
Pivot Length (`pivot_length`): Determines the number of bars used to calculate pivot points. A longer length may provide more significant pivot points but can reduce the number of channels formed.
Pivot Look Forward (`look_forward`): Sets the number of bars to look forward in the pivot calculation, affecting how quickly the channel adapts to new pivots.
Average H/L Length (`avg_length`): Controls the smoothing of the high and low prices used in the channel calculation. A longer average length can lead to smoother, more gradual channel slopes.
Enable Hammer (`enable_hammer`): When enabled, the indicator will highlight Hammer candlestick patterns, which are often considered bullish reversal indicators.
Enable Inverted Hammer (`enable_ihammer`): This toggles the display of Inverted Hammer patterns, typically viewed as potential bullish reversal signals.
Enable Bullish Engulfing (`enable_bullish_engulfing`): Enables the identification of Bullish Engulfing patterns, another type of bullish reversal indicator.
Enable Bearish Engulfing (`enable_bearish_engulfing`): When activated, this highlights Bearish Engulfing patterns, which are often interpreted as bearish reversal signals.
Extend Channel (`extend`): This option, when enabled, extends the drawn channels forward until they are either broken or a new channel is formed.
Show Break Label (`show_break_label`): Toggles the display of labels indicating where the channel has been broken, providing visual cues for potential trade entries or exits.
Channel History Length (`history_length`): Determines how many historical channels are displayed on the chart. This can be useful for analyzing past performance and patterns.
Channel Colors (`top_color`, `bottom_color`, `center_color`): These settings allow customization of the channel's appearance by setting the colors of the top, bottom, and center lines.
Line Transparency (`line_trans`): Adjusts the transparency of the channel lines, helping to balance visibility with chart readability.
Center Line Transparency (`center_trans`): Specifically sets the transparency level of the center line of the channel.
Channel Fill Transparency (`fill_trans`): Modifies the transparency of the filled areas between the channel lines, which can enhance chart clarity and focus on the price action.
Break Colors (`break_up_color`, `break_down_color`): Sets the colors for labels that appear when the channel is broken, either upwards or downwards.
Break Label Text Color (`text_color`): Determines the color of the text in the break labels, enhancing readability based on the chart's background and color scheme.
Candle Pattern Colors (`h_color`, `ih_color`, `bullish_engulfing_color`, `bearish_engulfing_color`): These inputs allow for the customization of the colors used to highlight various candle patterns on the chart.
Candle Pattern Text Color (`candle_text_color`): Sets the color of the text for labels associated with candle pattern indicators.
Alerts (`new_channel_alert`, `break_alert`, `hammer_alert`, `ihammer_alert`, `bullish_engulfing_alert`, `bearish_engulfing_alert`): These toggles enable or disable alerts for different events, such as the formation of new channels, channel breaks, or the appearance of specific candle patterns. This feature is crucial for traders who rely on timely notifications for potential trading opportunities.
We have provided a few presets to allow you to get a feeling for how the indicator works with different settings easily. Here is a description of the settings used in each preset:
Stocks Preset:
Style: "Wick"
Break Style: False (High/Low)
Instant Mode: True
ATR Length: 10
Size (ATR Multiplier): 4
Pivot Length: 10
Pivot Look Forward: 15
Average H/L Length: 18
Forex Preset:
Style: "Wick"
Break Style: False (High/Low)
Instant Mode: True
ATR Length: 100
Size (ATR Multiplier): 5
Pivot Length: 10
Pivot Look Forward: 15
Average H/L Length: 18
Crypto Preset:
Style: "Wick"
Break Style: False (High/Low)
Instant Mode: True
ATR Length: 10
Size (ATR Multiplier): 4
Pivot Length: 10
Pivot Look Forward: 15
Average H/L Length: 18
This script first starts by defining and collecting the relevant data for the main body of the code with data(). This generates the pivot data, the levels, the ranges, the averages, the deltas, and finally the candle sticks. Once there is a higher low, or lower high detected via the pivots and the current price it triggers the formation of the new channel. It takes the delta between the last pivot and the current average price and projects the trend channel using this delta. If the price exceeds the extremities of the channel it will classify this as a break from the estimated structure and begin looking for a new channel. The idea is that when trending, the price will oscillate between extremities as defined by a range and direction. If the price is inside of one of these extremities the script will look for candle stick patterns. This is how the script operates.
On a more technical level, this script is meant to showcase Pine Script's custom types and methods. We have made use of a properties pattern allows functions to use a minimal number of arguments. This allows you to add new inputs without modifying a string of functions. The use of methods and data structures allows the main body of the code to be easy to understand and for the script as a whole to be easily modified. We have made sure that the script is modular so that users can incorporate this into their own custom scripts. It should be easy to expand on this script as the main logic is fairly compact and open for easy modification. All features are packed into their own function for easy use elsewhere. This is particularly evident in the candle stick section. I have simplified the process of creating candle stick patterns by creating a type. All users have to do is make methods for this type.
candle()=>
polarity = open < close
body_top = math.max(open, close)
body_bottom = math.min(open, close)
body_range = body_top - body_bottom
top_wick = high - body_top
bottom_wick = body_bottom - low
average_body = ta.ema(body_range, 14)
average_top_wick = ta.ema(top_wick, 14)
average_bottom_wick = ta.ema(bottom_wick, 14)
has_body = body_range != 0
has_top_wick = top_wick != 0
has_bottom_wick = bottom_wick != 0
above_average_body = body_range > average_body
above_average_top_wick = top_wick > average_top_wick
above_average_bottom_wick = bottom_wick > average_bottom_wick
candle_data.new(
polarity
, body_top
, body_bottom
, body_range
, top_wick
, bottom_wick
, average_body
, average_top_wick
, average_bottom_wick
, has_body
, has_top_wick
, has_bottom_wick
, above_average_body
, above_average_top_wick
, above_average_bottom_wick
)
In conclusion, this script offers a blend of rapid trend channel formation and candlestick pattern recognition, making it a unique tool for traders looking for a more proactive approach to trend analysis.
Euclidean Distance Predictive Candles [SS]Finally releasing this, its been in the works for the past 2 weeks and has undergone many iterations.
I am not sure if I am 100% happy with it yet, but I guess its best to release and get feedback to make improvements.
So this is the Euclidean distance predictive candle indicator and what it does is exactly what it sounds like, it uses Euclidean distance to identify similar candles and then plot the candles and range that immediately proceeded like candles.
While this is using a general machine learning/data science approach (Euclidean distance), I do not employ the KNN (Nearest Neighbors) algo into this. The reason being is it simply offered no predictive advantage than isolating for the last case. I tried it, I didn't like it, the results were not improve and, at times, acutally hindered so I ditched it. Perhaps it was my approach but using some other KNN indicators, I just don't really find them all that more advantageous to simply relying on the Law of Large Numbers and collecting more data rather than less data (which we will get into later in this explanation).
So using this indicator:
There is a lot of customizability here. And the reason is, not all settings are going to work the same for all tickers. To help you narrow down your parameters, I have included various backtest results that show you how the model is performing. You see in the AMZN chart above, with the current settings, it is performing optimally, with a cumulative range pass of 99% (meaning that, of all the cases, the indicator accurately predicted the next day high OR low range 99% of the time), and the ability to predict the candle slightly over 52%.
The recommended settings, from me, are as follows:
So these are generally my recommended settings.
Euclidian Tolerance: This will determine the parameters to look for similar candles. In general, the lower the tolerance, the greater the precision. I recommend keeping it between 0.5, for tickers with larger prices (like ES1! futures or NQ1!) or 0.05 for tickers with lower TPs, like SPY or QQQ.
If the ED Tolerance is too extreme that the indicator cannot find identical setups, it will alert you:
But in general, the more precise you can get it, the better.
Anchor Type: You will see the option to anchor by "Predicted Open" or by "Previous Close". I suggest sticking with anchoring by predicted open. All this means is, it is going to anchor your range, candle, high and low targets by the predicted open price. Anchoring by previous close will anchor by the close of yesterday. Both work okay, but in general the results from anchoring to predicted open have higher pass rates and more accurately depict the candle.
Euclidean Distance Measurement Type: You can choose to measure by candle body or from high to low wicks. I haven't played around with measuring from high to low wicks all that much, because candle body tends to do the job. But remember, ED is a neutral measurement. Which means, its not going to distinguish between a red or green candle, just the formation of the candle. Thus, I tend to recommend, pragmatically, not to necessarily rely on the candle being red or green, but one the formation of the candle (where are the wicks going, are there more bearish wicks or bullish wicks) etc. Examples will follow.
Range Prediction Type: You can filter the range prediction type by last instance (in which, it will pull the previous identical candle and plot the next candle that followed it, adjusted for the current ranges) or "Average of All Cases". So this is where we need to talk a little bit about the law of large numbers.
In general, in statistics, when you have a huge amount of random data, the law of large numbers stipulates that, within this randomness should be repeated events. This is why sometimes chart patterns work, sometimes they don't. When we filter by the average of all cases, we are relying on the law of large numbers. In general, if you are getting good Backtest readings from Last Instance, then you don't need to use this function. But it provides an alternative insight into potential candle formations next day. Its not a bad idea to compare between the two and look for similarities and differences.
So now that we have covered the boring details, let's get into how to use the indicator and some examples.
So the indicator is plotting the range and candle for the next day. As such, we are not looking at the current candle being plotted, but we are looking at the previous candle (see image below for example):
The green arrow shows the prediction for Friday, along with the corresponding result. The purple arrow shows the prediction for Monday which we have yet to realize.
So remember when you are using this, you need to look at the previous candle, and not the candle that it is currently plotting with realtime data, because it is plotting for the next candle.
If you are plotting by last instance, the indicator will tell you which day it is pulling its data from if you have opted to toggle on the demographic data:
You can see the green arrow pointing to the date where it is pulling from. This data serves as the example candle with the candle proceeding this date being the anchored candle (or the predicted candle).
Price Targets and Probability:
In the chart, you can see the green arrow pointing to the green portion of the table. In this table, it will give you the current TPs. These represent the current time target price, which means, the TPs shown here are for Friday. On Monday, the table will update with the TPs for Monday, etc. If you want to view the TPs in advance, you can view them from the actual candle itself.
Below the TPs, you see a bullish 7:6. It means, in a total of 13 cases, the next candle was bullish 7 times and bearish 6 times. Where do we see the number of cases? In the demographic table as well:
Auxiliary functions
Because you are using the previous candle, if you want to avoid confusion, you can have the indicator plot the price targets over the predicted candle, to anchor your attention so to speak. Simply select "Label" in the "Show Price Targets" section, which will look like this:
You can also ask the indicator to plot the demographic data of Higher High, Low, etc. information. What this does is simply looks at all the cases and plots how many times higher highs, lows, lower lows, highs etc. were made:
This will just count all of the cases identified and plot the number of times higher highs, lows, etc. were made.
Concluding Remarks
This is a kind of complex indicator and I can appreciate it may take some getting used to.
I will try to post a tutorial video at some point next week for it, so stay tuned for that.
But this isn't designed to make your life more complicated, just to help give you insights into potential outcomes for the next day or hour or 5 minute (it can be used on all timeframes).
If you find it helpful, great! If not, that's okay, too :-).
Please be aware, this is not my forte of indicators. I am not a data scientist or programmer. My background is in Epi and we don't use these types of data science approaches, so if you have any suggestions or critiques, feel free to share them below.
Otherwise, I hope you enjoy!
Take care everyone and safe trades!