Time Appliconic Macro | ForTF5m (Fixed)The Time Appliconic Macro (TAMcr) is a custom-built trading indicator designed for the 5-minute time frame (TF5m), providing traders with clear Buy and Sell signals based on precise technical conditions and specific time windows.
Key Features:
Dynamic Moving Average (MA):
The indicator utilizes a Simple Moving Average (SMA) to identify price trends.
Adjustable length for user customization.
Custom STARC Bands:
Upper and lower bands are calculated using the SMA and the Average True Range (ATR).
Includes a user-defined multiplier to adjust the band width for flexibility across different market conditions.
RSI Integration:
Signals are filtered using the Relative Strength Index (RSI), ensuring they align with overbought/oversold conditions.
Time-Based Signal Filtering:
Signals are generated only during specific time windows, allowing traders to focus on high-activity periods or times of personal preference.
Supports multiple custom time ranges with automatic adjustments for UTC-4 or UTC-5 offsets.
Clear Signal Visualization:
Buy Signals: Triggered when the price is below the lower band, RSI indicates oversold conditions, and the time is within the defined range.
Sell Signals: Triggered when the price is above the upper band, RSI indicates overbought conditions, and the time is within the defined range.
Signals are marked directly on the chart for easy identification.
Customizability:
Adjustable parameters for the Moving Average length, ATR length, and ATR multiplier.
Time zone selection and defined trading windows provide a tailored experience for global users.
Who is this Indicator For?
This indicator is perfect for intraday traders who operate in the 5-minute time frame and value clear, filtered signals based on price action, volatility, and momentum indicators. The time window functionality is ideal for traders focusing on specific market sessions or personal schedules.
How to Use:
Adjust the MA and ATR parameters to match your trading style or market conditions.
Set the desired time zone and time ranges to align with your preferred trading hours.
Monitor the chart for Buy (green) and Sell (red) signals, and use them as a guide for entering or exiting trades.
Băng tần và kênh
Auto-Support v 0.3The "Auto-Support v 0.3" indicator is designed to automatically detect and plot multiple levels of support and resistance on a chart. It aims to help traders identify key price levels where the market tends to reverse or consolidate. Here’s a breakdown of its functionality and goals:
Objective:
The primary objective of the Auto-Support v 0.3 indicator is to provide traders with a clear, visual representation of support and resistance levels. These levels are determined based on a predefined sensitivity parameter, which adjusts how tightly or loosely the indicator reacts to recent price movements. The indicator can be applied to any chart to assist in identifying potential entry and exit points for trades, enhancing technical analysis by displaying these important price zones.
Description:
Support and Resistance Calculation:
The indicator calculates multiple levels of support and resistance using the highest and lowest prices over a defined period. The "sensitivity" parameter, which ranges from 1 to 10, determines how sensitive the calculation is to recent price changes. A higher value increases the number of bars used to calculate these levels, making the levels more stable but less responsive to short-term price movements.
Visual Representation:
The support levels are drawn in green with a customizable transparency setting, while resistance levels are displayed in red with similar transparency controls. This visual representation helps traders identify these levels on the chart and see the strength or weakness of the support/resistance zones depending on the transparency setting.
Multiple Levels:
The indicator plots 10 distinct levels of support and resistance (from 1 to 10), which can offer a more granular view of price action. Traders can use these levels to assess potential breakout or breakdown points.
Customization:
Sensitivity: The sensitivity input allows traders to adjust how aggressively the indicator reacts to recent price data. This ensures flexibility, enabling the indicator to be tailored to different trading styles and market conditions.
Transparency: The transparency input adjusts the visual opacity of the support and resistance lines, making it easier to overlay the indicator without obscuring other chart elements.
Key Goals:
Dynamic Support/Resistance Identification: Automatically detect and display relevant support and resistance levels based on price history, removing the need for manual chart analysis.
Customizable Sensitivity: Offer a flexible method to adjust how the indicator identifies key levels, allowing it to fit different market conditions.
Clear Visualization: Provide easy-to-read support and resistance levels with customizable colors and transparencies, enhancing visual clarity and decision-making.
Multiple Levels: Display up to 10 levels of support and resistance, allowing traders to consider both short-term and longer-term price action when making trading decisions.
By using this indicator, traders can more effectively identify key price zones where price may reverse, consolidate, or break out, providing a solid foundation for developing trading strategies.
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.
Adaptive ATR Trailing Stops█ Introduction
This script is based on the average true range (ATR) and has been improved with the HHV or LLV. The script supports the trader to have his stoploss trailed. In this case, the stoploss is dynamic and can be adjusted with each candleclose.
█ What Does This Indicator Do?
The ATR SL Trailing Indicator helps you dynamically adjust your stop-loss levels based on market movements. It uses market volatility to calculate trailing stop-loss levels, ensuring you can secure profits or minimize losses. The indicator creates two lines:
A green/red line for long positions (when you’re betting on prices going up).
A green/red line for short positions (when you’re betting on prices going down).
█ Key Concepts: How Does the Indicator Work?
The Average True Range (ATR) measures market volatility, showing how much the price moves over a specific period.
A high ATR indicates a volatile market (large price swings), while a low ATR indicates a quiet market (smaller price changes).
Why is ATR important? ATR helps dynamically adjust the distance between your stop-loss and the current price. In volatile markets, the stop-loss is placed further away to avoid being triggered by short-term fluctuations. In quieter markets, the stop-loss is set closer to the price.
The HHV is the highest price over a specific period. For long positions, the indicator uses the highest price minus an ATR-based value to determine the stop-loss level.
Why is HHV important? HHV ensures the stop-loss for long positions only moves up when the price reaches new highs. Once the price starts falling, the stop-loss remains unchanged to lock in profits or minimize losses.
The LLV is the lowest price over a specific period. For short positions, the indicator uses the lowest price plus an ATR-based value to determine the stop-loss level.
Why is LLV important? LLV ensures the stop-loss for short positions only moves down when the price reaches new lows. Once the price starts rising, the stop-loss remains unchanged to lock in profits or minimize losses.
█ How Does the Indicator Work?
For Long Positions:
The indicator sets the stop-loss below the current price, based on:
Market volatility (ATR).
The highest price over a specific period (HHV).
The line turns green when the current price is above the stop-loss.
The line turns red when the price drops below the stop-loss, signaling you may need to exit the trade.
For Short Positions:
The indicator sets the stop-loss above the current price, based on:
*Market volatility (ATR).
*The lowest price over a specific period (LLV).
*The line turns green when the current price is below the stop-loss.
*The line turns red when the price moves above the stop-loss, signaling you may need to exit the trade.
█ Advantages of the ATR SL Trailing Indicator
*Dynamic and adaptive: Automatically adjusts stop-loss levels based on market volatility.
*Visual clarity: Green and red lines clearly indicate whether your position is safe or at risk.
*Effective risk management: Helps you lock in profits and minimize losses without the need for constant manual adjustments.
█ When Should You Use This Indicator?
*If you practice trend-based trading and want your stop-losses to automatically adapt to market movements.
*In volatile markets, to avoid being stopped out by short-term fluctuations.
*When you want to implement efficient risk management without manually adjusting your positions.
█ Inputs
The user can set the indicator for both longs and shorts. This is particularly important because the calculation is different. The HHV is used for longs and the LLV for shorts. The user can therefore set the period/length for the ATR on the one hand and the HHV/LLV on the other. He also has a multiplier, which can also be customized. The multiplier multiplies the price change of each individual candle.
█ Color Change
If the SL is trailed and the price breaks a line, the color changes. In this case, it would have executed the SL on an open trade.
Upper and Lower bound for pairs/BTCUpper and Lower Bound for Pairs/BTC
This indicator provides dynamic upper and lower boundary levels for cryptocurrency pairs traded against BTC. It uses statistical or technical analysis methods, such as Z-Score, Bollinger Bands, or moving averages, to identify key resistance (upper bound) and support (lower bound) levels.
Key Features:
Dynamic Boundaries: Tracks real-time price fluctuations of selected pairs against BTC, adapting to market conditions.
Market Insights: Helps traders visualize potential overbought (upper bound) and oversold (lower bound) zones for pairs like ETH/BTC, DOGE/BTC, and others.
Customizable Settings: Allows users to configure lookback periods, standard deviations, or other parameters for boundary calculations.
Decision Support: Assists in identifying reversal or breakout points to refine entry and exit strategies.
This tool is ideal for traders seeking to optimize risk management and spot opportunities in BTC pair markets.
EMA Volatility Channel [QuantAlgo]EMA Volatility Channel 🌊📈
The EMA Volatility Channel by QuantAlgo is an advanced technical indicator designed to capture price volatility and trend dynamics through adaptive channels based on exponential moving averages. This sophisticated system combines EMA-based trend analysis with dynamic volatility-adjusted bands to help traders and investors identify trend direction, potential reversals, and market volatility conditions. By evaluating both price momentum and volatility together, this tool enables users to make informed trading decisions while adapting to changing market conditions.
💫 Dynamic Channel Architecture
The EMA Volatility Channel provides a unique framework for assessing market trends through a blend of exponential moving averages and volatility-based channel calculations. Unlike traditional channel indicators that use fixed-width bands, this system incorporates dynamic volatility measurements to adjust channel width automatically, helping users determine whether price movements are significant relative to current market conditions. By combining smooth EMA trends with adaptive volatility bands, it evaluates both directional movement and market volatility, while the smoothing parameters ensure stable yet responsive channel adjustments. This adaptive approach allows users to identify trending conditions while remaining aware of volatility expansions and contractions, enhancing both trend-following and reversal strategies.
📊 Indicator Components & Mechanics
The EMA Volatility Channel is composed of several technical components that create a dynamic channel system:
EMA Midline: Calculates a smoothed exponential moving average that serves as the channel's centerline, providing a clear reference for trend direction.
Volatility Measurement: Computes average price movement to determine dynamic channel width, adapting to changing market conditions automatically.
Smooth Band Calculation: Applies additional smoothing to the channel bands, reducing noise while maintaining responsiveness to significant price movements.
📈 Key Indicators and Features
The EMA Volatility Channel combines various technical tools to deliver a comprehensive analysis of market conditions.
The indicator utilizes exponential moving averages with customizable length and smoothing parameters to adapt to different trading styles. Volatility calculations are applied to determine channel width, providing context-aware boundaries for price movement. The trend detection component evaluates price action relative to the channel bands, helping validate trends and identify potential reversals.
The indicator incorporates multi-layered visualization with color-coded channels and bars to signal both trend direction and market position. These adaptive visual cues, combined with programmable alerts for channel breakouts, help traders and investors track both trend changes and volatility conditions, supporting both trend-following and mean-reversion strategies.
⚡️ Practical Applications and Examples
✅ Add the Indicator: Add the indicator to your TradingView chart by clicking on the star icon to add it to your favorites ⭐️
👀 Monitor Channel Position: Watch the price position relative to the channel bands to identify trend direction and potential reversals. When price moves outside the channel, consider potential trend changes or extreme conditions.
🔔 Set Alerts: Configure alerts for channel breakouts and trend changes, ensuring you can act on significant technical developments promptly.
🌟 Summary and Tips
The EMA Volatility Channel by QuantAlgo is a versatile technical tool, designed to support both trend following and volatility analysis across different market environments. By combining smooth EMA trends with dynamic volatility-based channels, it helps traders and investors identify significant price movements while measuring market volatility, providing reliable technical signals. The tool's adaptability across timeframes makes it suitable for both trend-following and reversal strategies, allowing users to capture opportunities while maintaining awareness of changing market conditions.
Kalman PredictorThe **Kalman Predictor** indicator is a powerful tool designed for traders looking to enhance their market analysis by smoothing price data and projecting future price movements. This script implements a Kalman filter, a statistical method for noise reduction, to dynamically estimate price trends and velocity. Combined with ATR-based confidence bands, it provides actionable insights into potential price movement, while offering clear trend and momentum visualization.
---
#### **Key Features**:
1. **Kalman Filter Smoothing**:
- Dynamically estimates the current price state and velocity to filter out market noise.
- Projects three future price levels (`Next Bar`, `Next +2`, `Next +3`) based on velocity.
2. **Dynamic Confidence Bands**:
- Confidence bands are calculated using ATR (Average True Range) to reflect market volatility.
- Visualizes potential price deviation from projected levels.
3. **Trend Visualization**:
- Color-coded prediction dots:
- **Green**: Indicates an upward trend (positive velocity).
- **Red**: Indicates a downward trend (negative velocity).
- Dynamically updated label displaying the current trend and velocity value.
4. **User Customization**:
- Inputs to adjust the process and measurement noise for the Kalman filter (`q` and `r`).
- Configurable ATR multiplier for confidence bands.
- Toggleable trend label with adjustable positioning.
---
#### **How It Works**:
1. **Kalman Filter Core**:
- The Kalman filter continuously updates the estimated price state and velocity based on real-time price changes.
- Projections are based on the current price trend (velocity) and extend into the future (Next Bar, +2, +3).
2. **Confidence Bands**:
- Calculated using ATR to provide a dynamic range around the projected future prices.
- Indicates potential volatility and helps traders assess risk-reward scenarios.
3. **Trend Label**:
- Updates dynamically on the last bar to show:
- Current trend direction (Up/Down).
- Velocity value, providing insight into the expected magnitude of the price movement.
---
#### **How to Use**:
- **Trend Analysis**:
- Observe the direction and spacing of the prediction dots relative to current candles.
- Larger spacing indicates a potential strong move, while clustering suggests consolidation.
- **Risk Management**:
- Use the confidence bands to gauge potential price volatility and set stop-loss or take-profit levels accordingly.
- **Pullback Detection**:
- Look for flattening or clustering of dots during trends as a signal of potential pullbacks or reversals.
---
#### **Customizable Inputs**:
- **Kalman Filter Parameters**:
- `lookback`: Adjusts the smoothing window.
- `q`: Process noise (higher values make the filter more reactive to changes).
- `r`: Measurement noise (controls sensitivity to price deviations).
- **Confidence Bands**:
- `band_multiplier`: Multiplies ATR to define the range of confidence bands.
- **Visualization**:
- `show_label`: Option to toggle the trend label.
- `label_offset`: Adjusts the label’s distance from the price for better visibility.
---
#### **Examples of Use**:
- **Scalping**: Use on lower timeframes (e.g., 1-minute, 5-minute) to detect short-term price trends and reversals.
- **Swing Trading**: Identify pullbacks or continuations on higher timeframes (e.g., 4-hour, daily) by observing the prediction dots and confidence bands.
- **Risk Assessment**: Confidence bands help visualize potential price volatility, aiding in the placement of stops and targets.
---
#### **Notes for Traders**:
- The **Kalman Predictor** does not predict the future with certainty but provides a statistically informed estimate of price movement.
- Confidence bands are based on historical volatility and should be used as guidelines, not guarantees.
- Always combine this tool with other analysis techniques for optimal results.
---
This script is open-source, and the Kalman filter logic has been implemented uniquely to integrate noise reduction with dynamic confidence band visualization. If you find this indicator useful, feel free to share your feedback and experiences!
---
#### **Credits**:
This script was developed leveraging the statistical principles of Kalman filtering and is entirely original. It incorporates ATR for dynamic confidence band calculations to enhance trader usability and market adaptability.
Chande Volatility-Based Trailing Stops This indicator is developed from a description outlined in the Chande - Kroll book, "The New Technical Trader". It is designed to help control risk by plotting two lines that function as long and short trailing stops.
How does it work?
"These stops are derived from recent highest high or lowest low. They adjust based on volatility. However, to avoid giving up a sizable chunk of profit before the stop is hit, it is modified in such a way that the stop can only advance with price, not retreat. This will lock in a greater portion of potential profits..."
Settings:
The default settings are those described in the book. They are described as being best for intermediate term trades. Use the multiplier to tighten or loosen the stop. A smaller multiplier will result in tighter stops. It is recommended to adjust this value for your preferred timeframe. You can toggle the trailing stop lines on or off as well as cross over marker.
Enhanced Swing Trading Strategy//@version=5
strategy("Enhanced Swing Trading Strategy", overlay=true)
// Input Parameters
smaShortLength = input.int(50, title="Short SMA Length")
smaLongLength = input.int(200, title="Long SMA Length")
rsiLength = input.int(14, title="RSI Length")
rsiOverbought = input.int(70, title="RSI Overbought Level")
rsiOversold = input.int(30, title="RSI Oversold Level")
takeProfitPerc = input.float(2.0, title="Take Profit (%)")
stopLossPerc = input.float(1.0, title="Stop Loss (%)")
riskPerc = input.float(1.0, title="Risk per Trade (%)")
alertOnSignal = input.bool(true, title="Enable Alerts")
// Indicators
smaShort = ta.sma(close, smaShortLength)
smaLong = ta.sma(close, smaLongLength)
rsi = ta.rsi(close, rsiLength)
= ta.macd(close, 12, 26, 9)
// Conditions
longCondition = ta.crossover(smaShort, smaLong) and rsi > rsiOversold and macdLine > signalLine
shortCondition = ta.crossunder(smaShort, smaLong) and rsi < rsiOverbought and macdLine < signalLine
// Position Sizing based on Risk
capital = strategy.equity
riskAmount = capital * (riskPerc / 100)
stopLossValue = riskAmount / (stopLossPerc / 100)
positionSize = stopLossValue / close
// Entry Signals
if (longCondition)
strategy.entry("Long", strategy.long, qty=positionSize)
if alertOnSignal
alert("Swing Trading: Long Position Opened", alert.freq_once)
if (shortCondition)
strategy.entry("Short", strategy.short, qty=positionSize)
if alertOnSignal
alert("Swing Trading: Short Position Opened", alert.freq_once)
// Exit Conditions
strategy.exit("Take Profit/Stop Loss",
from_entry="Long",
profit=takeProfitPerc,
loss=stopLossPerc)
strategy.exit("Take Profit/Stop Loss",
from_entry="Short",
profit=takeProfitPerc,
loss=stopLossPerc)
// Plotting
plot(smaShort, color=color.blue, title="SMA 50")
plot(smaLong, color=color.red, title="SMA 200")
hline(rsiOverbought, "RSI Overbought", color=color.red)
hline(rsiOversold, "RSI Oversold", color=color.green)
plot(macdLine, color=color.green, title="MACD Line")
plot(signalLine, color=color.orange, title="Signal Line")
// Draw Entry and Exit Labels
if (strategy.position_size > 0)
label.new(bar_index, high, "Long Open", style=label.style_label_up, color=color.green)
if (strategy.position_size < 0)
label.new(bar_index, low, "Short Open", style=label.style_label_down, color=color.red)
Turtle Trade Channels Indicator with EMATurtle Trade Channels Indicator with EMA (TuTCI + EMA)
This custom indicator combines the classic Turtle Trading Channel strategy with an Exponential Moving Average (EMA) filter to provide clear entry and exit signals, as well as trend direction guidance.
Features:
Turtle Channels: The indicator calculates the upper and lower Turtle Trading Channels based on the highest and lowest values over a user-defined period ( Entry Length for the channel).
Entry/Exit Signals: Alerts you to potential buy and sell opportunities with visual signals on the chart.
Long Entry: When the price crosses above the upper channel.
Short Entry: When the price crosses below the lower channel.
Long Exit: When the price breaks below the exit line.
Short Exit: When the price breaks above the exit line.
EMA Filter: A 50-period Exponential Moving Average (EMA) is included to identify the overall trend. The background color turns green when the price is above the EMA (bullish trend) and red when the price is below the EMA (bearish trend).
Highlighter: Optional background highlighting for the most relevant signals, such as when the price crosses the upper or lower Turtle Channel. This feature helps to easily identify key market movements.
Visual Customization: Customize the EMA length, Entry/Exit lengths, and toggle signals and highlighting to suit your preferences.
How It Works:
The Turtle Trade Channels are designed to capture breakouts by identifying key price levels (highest high and lowest low) over a specified period. By combining this strategy with an EMA, the indicator ensures trades are aligned with the broader trend, increasing the probability of successful trades.
Uptrend: When the price is above the EMA, the indicator considers the trend to be bullish, and it highlights long entry signals.
Downtrend: When the price is below the EMA, the trend is considered bearish, and short entries are emphasized.
Customization:
Entry Length: Adjusts the period for calculating the Turtle Channel's entry levels.
Exit Length: Defines the period for calculating the exit levels.
EMA Length: The period for the Exponential Moving Average (default is set to 50).
Show Entry/Exit Signals: Toggle the visibility of entry/exit signals on the chart.
Highlighter On/Off: Toggle background highlighting for key signals.
This indicator is suitable for traders who follow trend-following strategies, particularly those influenced by the Turtle Trading methodology, and wish to use an EMA filter for better trend confirmation.
Use Cases:
Trend-following traders looking for clear entry/exit signals.
Breakout traders using the Turtle Trading concept to identify price breakouts.
Swing traders who want to incorporate trend analysis with price levels.
Bollinger Breakout Strategy with Direction Control [4H crypto]Bollinger Breakout Strategy with Direction Control - User Guide
This strategy leverages Bollinger Bands, RSI, and directional filters to identify potential breakout trading opportunities. It is designed for traders looking to capitalize on significant price movements while maintaining control over trade direction (long, short, or both). Here’s how to use this strategy effectively:
How the Strategy Works
Indicators Used:
Bollinger Bands:
A volatility-based indicator with an upper and lower band around a simple moving average (SMA). The bands expand or contract based on market volatility.
RSI (Relative Strength Index):
Measures momentum to determine overbought or oversold conditions. In this strategy, RSI is used to confirm breakout strength.
Trade Direction Control:
You can select whether to trade:
Long only: Buy positions.
Short only: Sell positions.
Both: Trade in both directions depending on conditions.
Breakout Conditions:
Long Trade:
The price closes above the upper Bollinger Band.
RSI is above the midline (50), confirming upward momentum.
The "Trade Direction" setting allows either "Long" or "Both."
Short Trade:
The price closes below the lower Bollinger Band.
RSI is below the midline (50), confirming downward momentum.
The "Trade Direction" setting allows either "Short" or "Both."
Risk Management:
Stop-Loss:
Long trades: Set at 2% below the entry price.
Short trades: Set at 2% above the entry price.
Take-Profit:
Calculated using a Risk/Reward Ratio (default is 2:1).
Adjust this in the strategy settings.
Inputs and Customization
Key Parameters:
Bollinger Bands Length: Default is 20. Adjust based on the desired sensitivity.
Multiplier: Default is 2.0. Higher values widen the bands; lower values narrow them.
RSI Length: Default is 14, which is standard for RSI.
Risk/Reward Ratio: Default is 2.0. Increase for more aggressive profit targets, decrease for conservative exits.
Trade Direction:
Options: "Long," "Short," or "Both."
Example: Set to "Long" in a bullish market to focus only on buy trades.
How to Use This Strategy
Adding the Strategy:
Paste the script into TradingView’s Pine Editor and add it to your chart.
Setting Parameters:
Adjust the Bollinger Band settings, RSI, and Risk/Reward Ratio to fit the asset and timeframe you're trading.
Analyzing Signals:
Green line (Upper Band): Signals breakout potential for long trades.
Red line (Lower Band): Signals breakout potential for short trades.
Blue line (Basis): Central Bollinger Band (SMA), helpful for understanding price trends.
Testing the Strategy:
Use the Strategy Tester in TradingView to backtest performance on your chosen asset and timeframe.
Optimizing for Assets:
Forex pairs, cryptocurrencies (like BTC), or stocks with high volatility are ideal for this strategy.
Works best on higher timeframes like 4H or Daily.
Best Practices
Combine with Volume: Confirm breakouts with increased volume for higher reliability.
Avoid Sideways Markets: Use additional trend filters (like ADX) to avoid trades in low-volatility conditions.
Optimize Parameters: Regularly adjust the Bollinger Bands multiplier and RSI settings to match the asset's behavior.
By utilizing this strategy, you can effectively trade breakouts while maintaining flexibility in trade direction. Adjust the parameters to match your trading style and market conditions for optimal results!
N-Degree Moment-Based Adaptive Detection🙏🏻 N-Degree Moment-Based Adaptive Detection (NDMBAD) method is a generalization of MBAD since the horizontal line fit passing through the data's mean can be simply treated as zero-degree polynomial regression. We can extend the MBAD logic to higher-degree polynomial regression.
I don't think I need to talk a lot about the thing there; the logic is really the same as in MBAD, just hit the link above and read if you want. The only difference is now we can gather cumulants not only from the horizontal mean fit (degree = 0) but also from higher-order polynomial regression fit, including linear regression (degree = 1).
Why?
Simply because residuals from the 0-degree model don't contain trend information, and while in some cases that's exactly what you need, in other cases, you want to model your trend explicitly. Imagine your underlying process trends in a steady manner, and you want to control the extreme deviations from the process's core. If you're going to use 0-degree, you'll be treating this beautiful steady trend as a residual itself, which "constantly deviates from the process mean." It doesn't make much sense.
How?
First, if you set the length to 0, you will end up with the function incrementally applied to all your data starting from bar_index 0. This can be called the expanding window mode. That's the functionality I include in all my scripts lately (where it makes sense). As I said in the MBAD description, choosing length is a matter of doing business & applied use of my work, but I think I'm open to talk about it.
I don't see much sense in using degree > 1 though (still in research on it). If you have dem curves, you can use Fourier transform -> spectral filtering / harmonic regression (regression with Fourier terms). The job of a degree > 0 is to model the direction in data, and degree 1 gets it done. In mean reversion strategies, it means that you don't wanna put 0-degree polynomial regression (i.e., the mean) on non-stationary trending data in moving window mode because, this way, your residuals will be contaminated with the trend component.
By the way, you can send thanks to @aaron294c , he said like mane MBAD is dope, and it's gonna really complement his work, so I decided to drop NDMBAD now, gonna be more useful since it covers more types of data.
I wanned to call it N-Order Moment Adaptive Detection because it abbreviates to NOMAD, which sounds cool and suits me well, because when I perform as a fire dancer, nomad style is one of my outfits. Burning Man stuff vibe, you know. But the problem is degree and order really mean two different things in the polynomial context, so gotta stay right & precise—that's the priority.
∞
Fibonacci Bands [BigBeluga]The Fibonacci Band indicator is a powerful tool for identifying potential support, resistance, and mean reversion zones based on Fibonacci ratios. It overlays three sets of Fibonacci ratio bands (38.2%, 61.8%, and 100%) around a central trend line, dynamically adapting to price movements. This structure enables traders to track trends, visualize potential liquidity sweep areas, and spot reversal points for strategic entries and exits.
🔵 KEY FEATURES & USAGE
Fibonacci Bands for Support & Resistance:
The Fibonacci Band indicator applies three key Fibonacci ratios (38.2%, 61.8%, and 100%) to construct dynamic bands around a smoothed price. These levels often act as critical support and resistance areas, marked with labels displaying the percentage and corresponding price. The 100% band level is especially crucial, signaling potential liquidity sweep zones and reversal points.
Mean Reversion Signals at 100% Bands:
When price moves above or below the 100% band, the indicator generates mean reversion signals.
Trend Detection with Midline:
The central line acts as a trend-following tool: when solid, it indicates an uptrend, while a dashed line signals a downtrend. This adaptive midline helps traders assess the prevailing market direction while keeping the chart clean and intuitive.
Extended Price Projections:
All Fibonacci bands extend to future bars (default 30) to project potential price levels, providing a forward-looking perspective on where price may encounter support or resistance. This feature helps traders anticipate market structure in advance and set targets accordingly.
Liquidity Sweep:
--
-Liquidity Sweep at Previous Lows:
The price action moves below a previous low, capturing sell-side liquidity (stop-losses from long positions or entries for breakout traders).
The wick suggests that the price quickly reversed, leaving a failed breakout below support.
This is a classic liquidity grab, often indicating a bullish reversal .
-Liquidity Sweep at Previous Highs:
The price spikes above a prior high, sweeping buy-side liquidity (stop-losses from short positions or breakout entries).
The wick signifies rejection, suggesting a failed breakout above resistance.
This is a bearish liquidity sweep , often followed by a mean reversion or a downward move.
Display Customization:
To declutter the chart, traders can choose to hide Fibonacci levels and only display overbought/oversold zones along with the trend-following midline and mean reversion signals. This option enables a clearer focus on key reversal areas without additional distractions.
🔵 CUSTOMIZATION
Period Length: Adjust the length of the smoothed moving average for more reactive or smoother bands.
Channel Width: Customize the width of the Fibonacci channel.
Fibonacci Ratios: Customize the Fibonacci ratios to reflect personal preference or unique market behaviors.
Future Projection Extension: Set the number of bars to extend Fibonacci bands, allowing flexibility in projecting price levels.
Hide Fibonacci Levels: Toggle the visibility of Fibonacci levels for a cleaner chart focused on overbought/oversold regions and midline trend signals.
Liquidity Sweep: Toggle the visibility of Liquidity Sweep points
The Fibonacci Band indicator provides traders with an advanced framework for analyzing market structure, liquidity sweeps, and trend reversals. By integrating Fibonacci-based levels with trend detection and mean reversion signals, this tool offers a robust approach to navigating dynamic price action and finding high-probability trading opportunities.
RVWAP ENHANCED**Rolling VWAP with Alerts and Markers**
This Pine Script indicator enhances the traditional Rolling VWAP (Relative Volume Weighted Average Price) by adding dynamic features for improved visualization and alerting.
### Features:
1. **Dynamic VWAP Line Coloring**:
- The VWAP line changes color based on the relationship with the closing price:
- **Green** when the price is above the VWAP.
- **Red** when the price is below the VWAP.
2. **Candle and Background Coloring**:
- **Candles**: Colored green if the close is above the VWAP and red if below.
- **Background**: Subtle green or red shading indicates the price’s position relative to the VWAP.
3. **Alerts**:
- Alerts notify users when the VWAP changes direction:
- "VWAP Turned Green" for price crossing above the VWAP.
- "VWAP Turned Red" for price crossing below the VWAP.
4. **Small Dot Markers**:
- Tiny dots are plotted below the candles to mark VWAP state changes:
- **Green dot** for VWAP turning green.
- **Red dot** for VWAP turning red.
5. **Custom Time Period**:
- Users can select either a dynamic time period based on the chart's timeframe or a fixed time period (customizable in days, hours, and minutes).
6. **Standard Deviation Bands (Optional)**:
- Standard deviation bands around the VWAP can be enabled for further analysis.
This script is designed to provide clear and actionable insights into market trends using the RVWAP, making it an excellent tool for traders who rely on volume-based price action analysis.
Moment-Based Adaptive DetectionMBAD (Moment-Based Adaptive Detection) : a method applicable to a wide range of purposes, like outlier or novelty detection, that requires building a sensible interval/set of thresholds. Unlike other methods that are static and rely on optimizations that inevitably lead to underfitting/overfitting, it dynamically adapts to your data distribution without any optimizations, MLE, or stuff, and provides a set of data-driven adaptive thresholds, based on closed-form solution with O(n) algo complexity.
1.5 years ago, when I was still living in Versailles at my friend's house not knowing what was gonna happen in my life tomorrow, I made a damn right decision not to give up on one idea and to actually R&D it and see what’s up. It allowed me to create this one.
The Method Explained
I’ve been wandering about z-values, why exactly 6 sigmas, why 95%? Who decided that? Why would you supersede your opinion on data? Based on what? Your ego?
Then I consciously noticed a couple of things:
1) In control theory & anomaly detection, the popular threshold is 3 sigmas (yet nobody can firmly say why xD). If your data is Laplace, 3 sigmas is not enough; you’re gonna catch too many values, so it needs a higher sigma.
2) Yet strangely, the normal distribution has kurtosis of 3, and 6 for Laplace.
3) Kurtosis is a standardized moment, a moment scaled by stdev, so it means "X amount of something measured in stdevs."
4) You generate synthetic data, you check on real data (market data in my case, I am a quant after all), and you see on both that:
lower extension = mean - standard deviation * kurtosis ≈ data minimum
upper extension = mean + standard deviation * kurtosis ≈ data maximum
Why not simply use max/min?
- Lower info gain: We're not using all info available in all data points to estimate max/min; we just pick the current higher and lower values. Lol, it’s the same as dropping exponential smoothing with alpha = 0 on stationary data & calling it a day.
You can’t update the estimates of min and max when new data arrives containing info about the matter. All you can do is just extend min and max horizontally, so you're not using new info arriving inside new data.
- Mixing order and non-order statistics is a bad idea; we're losing integrity and coherence. That's why I don't like the Hurst exponent btw (and yes, I came up with better metrics of my own).
- Max & min are not even true order statistics, unlike a percentile (finding which requires sorting, which requires multiple passes over your data). To find min or max, you just need to do one traversal over your data. Then with or without any weighting, 100th percentile will equal max. So unlike a weighted percentile, you can’t do weighted max. Then while you can always check max and min of a geometric shape, now try to calculate the 56th percentile of a pentagram hehe.
TL;DR max & min are rather topological characteristics of data, just as the difference between starting and ending points. Not much to do with statistics.
Now the second part of the ballet is to work with data asymmetry:
1) Skewness is also scaled by stdev -> so it must represent a shift from the data midrange measured in stdevs -> given asymmetric data, we can include this info in our models. Unlike kurtosis, skewness has a sign, so we add it to both thresholds:
lower extension = mean - standard deviation * kurtosis + standard deviation * skewness
upper extension = mean + standard deviation * kurtosis + standard deviation * skewness
2) Now our method will work with skewed data as well, omg, ain’t it cool?
3) Hold up, but what about 5th and 6th moments (hyperskewness & hyperkurtosis)? They should represent something meaningful as well.
4) Perhaps if extensions represent current estimated extremums, what goes beyond? Limits, beyond which we expect data not to be able to pass given the current underlying process generating the data?
When you extend this logic to higher-order moments, i.e., hyperskewness & hyperkurtosis (5th and 6th moments), they measure asymmetry and shape of distribution tails, not its core as previous moments -> makes no sense to mix 4th and 3rd moments (skewness and kurtosis) with 5th & 6th, so we get:
lower limit = mean - standard deviation * hyperkurtosis + standard deviation * hyperskewness
upper limit = mean + standard deviation * hyperkurtosis + standard deviation * hyperskewness
While extensions model your data’s natural extremums based on current info residing in the data without relying on order statistics, limits model your data's maximum possible and minimum possible values based on current info residing in your data. If a new data point trespasses limits, it means that a significant change in the data-generating process has happened, for sure, not probably—a confirmed structural break.
And finally we use time and volume weighting to include order & process intensity information in our model.
I can't stress it enough: despite the popularity of these non-weighted methods applied in mainstream open-access time series modeling, it doesn’t make ANY sense to use non-weighted calculations on time series data . Time = sequence, it matters. If you reverse your time series horizontally, your means, percentiles, whatever, will stay the same. Basically, your calculations will give the same results on different data. When you do it, you disregard the order of data that does have order naturally. Does it make any sense to you? It also concerns regressions applied on time series as well, because even despite the slope being opposite on your reversed data, the centroid (through which your regression line always comes through) will be the same. It also might concern Fourier (yes, you can do weighted Fourier) and even MA and AR models—might, because I ain’t researched it extensively yet.
I still can’t believe it’s nowhere online in open access. No chance I’m the first one who got it. It’s literally in front of everyone’s eyes for centuries—why no one tells about it?
How to use
That’s easy: can be applied to any, even non-stationary and/or heteroscedastic time series to automatically detect novelties, outliers, anomalies, structural breaks, etc. In terms of quant trading, you can try using extensions for mean reversion trades and limits for emergency exits, for example. The market-making application is kinda obvious as well.
The only parameter the model has is length, and it should NOT be optimized but picked consciously based on the process/system you’re applying it to and based on the task. However, this part is not about sharing info & an open-access instrument with the world. This is about using dem instruments to do actual business, and we can’t talk about it.
∞
Triple Smoothed Signals [AlgoAlpha]Introducing the Triple Smoothed Signals indicator by AlgoAlpha, a powerful tool designed to help traders identify trend direction and market momentum with greater accuracy. By applying triple smoothing techniques to your chosen data source, this indicator filters out market noise, allowing you to focus on significant price movements. Perfect for traders looking to enhance their technical analysis and gain an edge in the markets.
Key Features
🎨 Customizable Moving Averages : Choose between EMA, SMA, RMA, or WMA for both the triple smoothing and the signal line to tailor the indicator to your trading style.
🛠 Adjustable Smoothing Lengths : Configure the main smoothing length and signal length to fit different timeframes and market conditions.
🌈 Dynamic Color Fills : Visual gradients and fills highlight trend strength and direction, making chart analysis more intuitive.
🔔 Alerts : Set alerts for bullish and bearish crossover signals to stay ahead of market moves without constant chart monitoring.
📈 Clear Signal Visualization : Bullish and bearish signals are plotted directly on your chart for easy interpretation and timely decision-making.
Quick Guide to Using the Triple Smoothed Signals Indicator
🛠 Add the Indicator : Add the indicator to your TradingView chart by clicking on the star icon to add it to your favorites. Customize the settings such as the main smoothing length, signal length, data source, and moving average types to match your trading strategy.
📊 Market Analysis : Monitor the crossovers between the triple smoothed moving average and the signal line. A bullish signal is generated when the signal line crosses under the triple smoothed MA, indicating a potential upward trend. Conversely, a bearish signal occurs when the signal line crosses over the triple smoothed MA, suggesting a possible downward trend.
🔔 Alerts : Enable notifications for reversal signals and trend shifts to stay informed about market movements without constantly monitoring the chart.
How It Works
The Triple Smoothed Signals indicator enhances trend detection by applying a triple smoothing process to your selected data source using the moving average type of your choice (EMA, SMA, RMA, or WMA). This triple smoothed moving average (v1) effectively reduces short-term fluctuations and noise, revealing the underlying market trend. A signal line (v2) is then calculated by smoothing the triple smoothed MA with a separate moving average, further refining the signal. The indicator calculates the normalized distance between the triple smoothed MA and the signal line over a specified period, which is used to create dynamic color gradients and fills on the chart. These visual elements provide immediate insight into trend strength and direction. Bullish and bearish signals are generated based on the crossovers between the signal line and the triple smoothed MA, and are plotted directly on the chart along with customizable alerts to assist traders in making timely decisions.
Hybrid Triple Exponential Smoothing🙏🏻 TV, I present you HTES aka Hybrid Triple Exponential Smoothing, designed by Holt & Winters in the US, assembled by me in Saint P. I apply exponential smoothing individually to the data itself, then to residuals from the fitted values, and lastly to one-point forecast (OPF) errors, hence 'hybrid'. At the same time, the method is a closed-form solution and purely online, no need to make any recalculations & optimize anything, so the method is O(1).
^^ historical OPFs and one-point forecasting interval plotted instead of fitted values and prediction interval
Before the How-to, first let me tell you some non-obvious things about Triple Exponential smoothing (and about Exponential Smoothing in general) that not many catch. Expo smoothing seems very straightforward and obvious, but if you look deeper...
1) The whole point of exponential smoothing is its incremental/online nature, and its O(1) algorithm complexity, making it dope for high-frequency streaming data that is also univariate and has no weights. Consequently:
- Any hybrid models that involve expo smoothing and any type of ML models like gradient boosting applied to residuals rarely make much sense business-wise: if you have resources to boost the residuals, you prolly have resources to use something instead of expo smoothing;
- It also concerns the fashion of using optimizers to pick smoothing parameters; honestly, if you use this approach, you have to retrain on each datapoint, which is crazy in a streaming context. If you're not in a streaming context, why expo smoothing? What makes more sense is either picking smoothing parameters once, guided by exogenous info, or using dynamic ones calculated in a minimalistic and elegant way (more on that in further drops).
2) No matter how 'right' you choose the smoothing parameters, all the resulting components (level, trend, seasonal) are not pure; each of them contains a bit of info from the other components, this is just how non-sequential expo smoothing works. You gotta know this if you wanna use expo smoothing to decompose your time series into separate components. The only pure component there, lol, is the residuals;
3) Given what I've just said, treating the level (that does contain trend and seasonal components partially) as the resulting fit is a mistake. The resulting fit is level (l) + trend (b) + seasonal (s). And from this fit, you calculate residuals;
4) The residuals component is not some kind of bad thing; it is simply the component that contains info you consciously decide not to include in your model for whatever reason;
5) Forecasting Errors and Residuals from fitted values are 2 different things. The former are deltas between the forecasts you've made and actual values you've observed, the latter are simply differences between actual datapoints and in-sample fitted values;
6) Residuals are used for in-sample prediction intervals, errors for out-of-sample forecasting intervals;
7) Choosing between single, double, or triple expo smoothing should not be based exclusively on the nature of your data, but on what you need to do as well. For example:
- If you have trending seasonal data and you wanna do forecasting exclusively within the expo smoothing framework, then yes, you need Triple Exponential Smoothing;
- If you wanna use prediction intervals for generating trend-trading signals and you disregard seasonality, then you need single (simple) expo smoothing, even on trending data. Otherwise, the trend component will be included in your model's fitted values → prediction intervals.
8) Kind of not non-obvious, but when you put one smoothing parameter to zero, you basically disregard this component. E.g., in triple expo smoothing, when you put gamma and beta to zero, you basically end up with single exponential smoothing.
^^ data smoothing, beta and gamma zeroed out, forecasting steps = 0
About the implementation
* I use a simple power transform that results in a log transform with lambda = 0 instead of the mainstream-used transformers (if you put lambda on 2 in Box-Cox, you won't get a power of 2 transform)
* Separate set of smoothing parameters for data, residuals, and errors smoothing
* Separate band multipliers for residuals and errors
* Both typical error and typical residuals get multiplied by math.sqrt(math.pi / 2) in order to approach standard deviation so you can ~use Z values and get more or less corresponding probabilities
* In script settings → style, you can switch on/off plotting of many things that get calculated internally:
- You can visualize separate components (just remember they are not pure);
- You can switch off fit and switch on OPF plotting;
- You can plot residuals and their exponentially smoothed typical value to pick the smoothing parameters for both data and residuals;
- Or you might plot errors and play with data smoothing parameters to minimize them (consult SAE aka Sum of Absolute Errors plot);
^^ nuff said
More ideas on how to use the thing
1) Use Double Exponential Smoothing (data gamma = 0) to detrend your time series for further processing (Fourier likes at least weakly stationary data);
2) Put single expo smoothing on your strategy/subaccount equity chart (data alpha = data beta = 0), set prediction interval deviation multiplier to 1, run your strat live on simulator, start executing on real market when equity on simulator hits upper deviation (prediction interval), stop trading if equity hits lower deviation on simulator. Basically, let the strat always run on simulator, but send real orders to a real market when the strat is successful on your simulator;
3) Set up the model to minimize one-point forecasting errors, put error forecasting steps to 1, now you're doing nowcasting;
4) Forecast noisy trending sine waves for fun.
^^ nuff said 2
All Good TV ∞
100s Level LinesPurpose of the Script
- Visualize Key Levels: The script highlights round-number levels (e.g., 100, 200, 300) automatically, making it easy to identify areas where price action might react.
- Improve Decision-Making: These levels can serve as benchmarks for entry, exit, stop-loss, or take-profit placement.
- Simplicity: Instead of manually drawing levels, the script dynamically updates to match the chart's price range.
Features of the Script
- Dynamic Level Calculation: The script calculates 100s levels based on the asset's current price range and plots lines above and below the visible chart area.
- Customizable Settings: Adjust line color, style (solid, dashed, or dotted), and width to suit your charting preferences.
- Auto-Scaling: Automatically adjusts to the chart's visible price range, ensuring plotted levels are always relevant.
- Labeling: Each line can optionally display its exact value (e.g., "1400," "1500") for easy reference.
- Performance Optimization: Efficient calculations ensure the script doesn’t slow down TradingView, even on volatile instruments like the US100.
How the Script Works
- The script detects the highest and lowest visible prices on the chart to define the range.
- Starting from the lowest 100-point increment within the visible range, the script calculates all 100-point levels up to the highest visible price.
- It plots horizontal lines across the chart for each calculated level.
- Optionally, labels can be added to display the value of each level.
How to Use the Script
- Copy the script code into the Pine Script editor in TradingView and apply it to your chart.
- Open the script settings to adjust line color, style, width, and label visibility.
- Use the plotted 100s levels as psychological support and resistance zones for trade entries, exits, and stop-loss or take-profit placement.
Example Use Cases
- Identify potential reversal points as the price approaches a 100s level in intraday trading.
- Confirm support or resistance zones on higher timeframes for swing trading setups.
- Use the levels to trail stop-losses during trending markets and lock in profits incrementally.
Customizable Options
- Line Color: Change the color of the horizontal lines.
- Line Style: Choose solid, dashed, or dotted lines.
- Line Width: Adjust the thickness of the lines for better visibility.
- Show Labels: Toggle price values on or off for each level.
Advantages
- Saves Time: Automatically plots levels, eliminating manual effort.
- Adaptable: Works on all timeframes and assets.
- Psychological Relevance: Highlights levels that align with trader psychology and market behavior.
Perfect Hammer Pattern Indicators and Alerts# Perfect Hammer Pattern Indicators and Alerts
This indicator identifies a specific and precise hammer candlestick pattern formation that can signal potential trend reversals or continuation setups. Unlike traditional hammer pattern indicators, this script focuses on exact wick measurements to identify high-probability trade setups.
## Pattern Specifications
### Bullish Setup Requirements
- Two consecutive green (bullish) candles
- Both candles must have NO lower wick (perfect bottom)
- Both candles must have an upper wick (showing buying pressure)
- Previous candle must be red (bearish) for context
- Marked with a green 'H' below the pattern
### Bearish Setup Requirements
- Two consecutive red (bearish) candles
- Both candles must have NO upper wick (perfect top)
- Both candles must have a lower wick (showing selling pressure)
- Previous candle must be green (bullish) for context
- Marked with a red 'H' above the pattern
## Trading Logic
This pattern is particularly effective because it shows clear control by either buyers (bullish pattern) or sellers (bearish pattern):
- In the bullish pattern, the absence of lower wicks indicates strong buying pressure preventing prices from falling below the open, while the upper wicks show profit-taking at highs
- In the bearish pattern, the absence of upper wicks shows strong selling pressure capping any upward movement, while the lower wicks indicate some buying support below
## Alerts
The indicator includes two alert conditions:
1. Bullish Pattern Alert: Triggers when two perfect bullish hammers appear after a bearish candle
2. Bearish Pattern Alert: Triggers when two perfect bearish hammers appear after a bullish candle
## Usage Tips
- Best used on timeframes 15 minutes and above
- Consider using in conjunction with key support/resistance levels
- Volume confirmation can increase pattern reliability
- The pattern may signal either trend continuation or reversal - always consider the larger market context
## Notes
- This indicator focuses on precise hammer formations rather than approximate patterns
- The requirement for consecutive perfect hammers makes this a relatively rare but high-probability setup
- Visual markers ('H') provide easy pattern identification on charts
Whale Supertrend (V1.0)The script "Whale Supertrend (V1.0)" is an advanced trend indicator that uses multiple Supertrends with different factors to determine entry and exit points in the market. The Supertrend is a popular indicator that combines price and volatility to help identify trend direction. The script displays buy and sell signals based on the confluence of Supertrends.
How the script works
Configuring Supertrends
The script configures six Supertrends with different factors (factor, factor1, factor2, factor3, factor4, factor5) while using the same ATR period (atrPeriod = 10).
Supertrend 1: factor = 3
Supertrend 2: factor1 = 4
Supertrend 3: factor2 = 6
Supertrend 4: factor3 = 9
Supertrend 5: factor4 = 13
Supertrend 6: factor5 = 18
For each Supertrend, the bullish (blue) and bearish (purple) trend conditions are plotted on the chart.
Signal Calculation
The script calculates the number of Supertrends in bullish and bearish trend:
bullishCount: Number of Supertrends indicating a bullish trend.
bearishCount: Number of Supertrends indicating a bearish trend.
Signal Detection
The script triggers a buy or sell signal when at least three of the six Supertrends indicate the same trend:
Buy Signal (buySignal): Triggers when bullishCount is greater than or equal to 3.
Sell Signal (sellSignal): Triggers when bearishCount is greater than or equal to 3.
To avoid repetition, signals are only displayed when the state changes:
triggerBuy: Buy signal only when buySignal becomes true for the first time.
triggerSell: Sell signal only when sellSignal becomes true for the first time.
LRSI-TTM Squeeze - AynetThis Pine Script code creates an indicator called LRSI-TTM Squeeze , which combines two key concepts to analyze momentum, squeeze conditions, and price movements in the market:
Laguerre RSI (LaRSI): A modified version of RSI used to identify trend reversals in price movements.
TTM Squeeze: Identifies market compressions (low volatility) and potential breakouts from these squeezes.
Functionality and Workflow of the Code
1. Laguerre RSI (LaRSI)
Purpose:
Provides a smoother and less noisy version of RSI to track price movements.
Calculation:
The script uses a filtering coefficient (alpha) to process price data through four levels (L0, L1, L2, L3).
Movement differences between these levels calculate buying pressure (cu) and selling pressure (cd).
The ratio of these pressures forms the Laguerre RSI:
bash
Kodu kopyala
LaRSI = cu / (cu + cd)
The LaRSI value indicates:
Below 20: Oversold condition (potential buy signal).
Above 80: Overbought condition (potential sell signal).
2. TTM Squeeze
Purpose:
Analyzes the relationship between Bollinger Bands (BB) and Keltner Channels (KC) to determine whether the market is compressed (low volatility) or expanded (high volatility).
Calculation:
Bollinger Bands:
Calculated based on the moving average (SMA) of the price, with an upper and lower band.
Keltner Channels:
Created using the Average True Range (ATR) to calculate an upper and lower band.
Squeeze States:
Squeeze On: BB is within KC.
Squeeze Off: BB is outside KC.
Other States (No Squeeze): Neither of the above applies.
3. Momentum Calculation
Momentum is computed using the linear regression of the difference between the price and its SMA. This helps anticipate the direction and strength of price movements when the squeeze ends.
Visuals on the Chart
Laguerre RSI Line:
An RSI indicator scaled to 0-100 is plotted.
The line's color changes based on its movement:
Green line: RSI is rising.
Red line: RSI is falling.
Key levels:
20 level: Oversold condition (buy signal can be triggered).
80 level: Overbought condition (sell signal can be triggered).
Momentum Histogram:
Displays momentum as histogram bars with colors based on its direction and strength:
Lime (light green): Positive momentum increasing.
Green: Positive momentum decreasing.
Red: Negative momentum decreasing.
Maroon (dark red): Negative momentum increasing.
Squeeze Status Indicator:
A marker is plotted on the zero line to indicate the squeeze state:
Yellow: Squeeze On (compression active).
Blue: Squeeze Off (compression ended, movement expected).
Gray: No Squeeze.
Information Table
A table is displayed in the top-right corner of the chart, showing closing prices for different timeframes (e.g., 1 minute, 5 minutes, 1 hour, etc.). Each timeframe is color-coded.
Alerts
LaRSI Alerts:
Crosses above 20: Exiting oversold condition (buy signal).
Crosses below 80: Exiting overbought condition (sell signal).
Squeeze Alerts:
When the squeeze ends: Indicates a potential price move.
When the squeeze starts: Indicates volatility is decreasing.
Summary
This indicator is a powerful tool for determining market trends, momentum, and squeeze conditions. It helps users identify periods when the market is likely to move or remain stagnant, providing alerts based on these analyses to support trading strategies.
BTC InsightThis script is a comprehensive tool for analyzing Bitcoin's daily price range, trend predictions, and significant volume-based order block levels. It combines multiple technical analysis concepts, including exponential moving averages (EMAs), logarithmic calculations, and custom indicators for advanced forecasting and visualization.
Key Features and Technical Details
1. Exponential Moving Averages (EMAs)
The script calculates two smoothed EMAs:
EMA1 and EMA2 are derived from the logarithmic price of Bitcoin (log(close)).
The smoothing periods and multipliers are user-configurable through inputs:
Smoothed EMA1 Period (default: 728)
Smoothed EMA2 Period (default: 728)
Initial EMA Multipliers (default: 1.0 for EMA1, 5.0 for EMA2)
A time decay factor is applied to the multipliers to adjust sensitivity over time, making the EMAs adaptive to market dynamics.
2. Logarithmic Domain Calculations
The script uses logarithmic transformations to enhance accuracy when dealing with large price changes.
Adjustments to EMAs are made in the logarithmic domain and converted back to the price domain for plotting.
3. EMA Forecasting
The script performs a linear regression analysis over a specified period (728 bars by default) to estimate future price trends for both EMAs.
Slope Adjustments:
RSI (Relative Strength Index) is incorporated to modify the forecast slope dynamically:
RSI > 70: Bearish adjustment (-0.5)
RSI < 30: Bullish adjustment (+0.5)
Forecasts are plotted as dashed lines, projecting future values of EMA1 (green) and EMA2 (red).
4. Order Block Detection
Detects order block levels based on high volume spikes relative to the average volume over a lookback period (default: 100 bars).
A volume multiplier (default: 1.5x) is applied to identify significant volume activity.
Two types of order blocks are identified:
Below EMA1: A price zone where significant buying occurred below EMA1.
Above EMA2: A price zone where significant selling occurred above EMA2.
Order blocks are visualized as shaded rectangles:
Green boxes represent order blocks below EMA1.
Red boxes represent order blocks above EMA2.
5. Customization Inputs
The script allows fine-tuning via the following parameters:
EMA Settings: Periods, multipliers, and time factors for both EMAs.
Volume Analysis Settings: Lookback period and volume multiplier for order block detection.
Order Block Box Settings: Height of the range as a percentage of the detected price.
6. Visualization
EMAs: Two smoothed exponential moving averages are plotted with configurable offsets.
Forecast Lines: Dashed lines project future EMA trends based on regression analysis.
Order Block Boxes: Highlight areas of high volume below EMA1 and above EMA2, indicating potential support or resistance zones.
How It Works in Practice
EMAs and Trend Analysis:
The EMAs represent long-term market trends, adjusted dynamically using custom multipliers and time decay.
The script forecasts the EMAs' future trajectories to anticipate potential price movements.
Order Blocks:
High-volume zones indicate areas where significant market activity occurred, providing insights into potential price reversal points or continuation zones.
RSI Integration:
RSI-based slope adjustment fine-tunes the EMA forecast, adding an extra layer of dynamic market context.
Comprehensive View:
By combining trend forecasts with volume-based zones, the script delivers a robust analysis tool for identifying potential entry/exit points, support/resistance levels, and long-term trend predictions.
Drummond Geometry - Pldot and EnvelopeThis Pine Script will:
1.Calculate and display the PL Dot (Price Level Dot), a moving average that reflects short-term market trends.
2.Plot the Envelope Top and Bottom lines based on averages of previous highs and lows, which represent key areas of resistance and support.
Drummond Geometry Overview
Drummond Geometry is a method of market analysis focused on:
PL Dot : Captures market energy and trend direction. It reacts to price deviations and serves as a magnet for price returns, often referred to as a "PL Dot Refresh."
Envelope Theory : Considers price movements as cycles oscillating between the Envelope Top and Bottom. Prices breaking these boundaries often indicate trends, retracements, or exhaustion.
The geometry helps traders visualize energy flows in the market and anticipate directional changes using established support and resistance zones.
Understanding PL Dot and Envelope Top/Bottom
PL Dot:
Formula: Average(Average(H, L, C) of last three bars)
Usage: Indicates short-term trends:
Trend: PL Dot slopes upward or downward.
Congestion: PL Dot moves horizontally.
Envelope Top and Bottom:
Formula:
Top: (11 H1 + 11 H2 + 11 H3) / 3
Bottom: (11 L1 + 11 L2 + 11 L3) / 3
Usage: Acts as dynamic resistance and support:
Price above the top: Indicates strong bullish momentum.
Price below the bottom: Indicates strong bearish momentum.
Advantages of Drummond Geometry
Clarity of Market Flow: Highlights the relationship between price and key levels (PL Dot, Envelope Top/Bottom).
Predictive Power: Suggests possible reversals or continuation based on energy distribution.
Adaptability: Works across multiple time frames and market types (trending, congestion).
Trading Strategy
PL Dot Trades:
Buy: When price returns to the PL Dot in an uptrend.
Sell: When price returns to the PL Dot in a downtrend.
Envelope Trades:
Reversal: Trade counter to price if it breaks and retreats from the Envelope Top/Bottom.
Continuation: Trade in the direction of price if it sustains movement beyond the Envelope Top/Bottom.