Statistical Arbitrage Pairs Trading - Long-Side OnlyThis strategy implements a simplified statistical arbitrage (" stat arb ") approach focused on mean reversion between two correlated instruments. It identifies opportunities where the spread between their normalized price series (Z-scores) deviates significantly from historical norms, then executes long-only trades anticipating reversion to the mean.
Key Mechanics:
1. Spread Calculation: The strategy computes Z-scores for both instruments to normalize price movements, then tracks the spread between these Z-scores.
2. Modified Z-Score: Uses a robust measure combining the median and Median Absolute Deviation (MAD) to reduce outlier sensitivity.
3. Entry Signal: A long position is triggered when the spread’s modified Z-score falls below a user-defined threshold (e.g., -1.0), indicating extreme undervaluation of the main instrument relative to its pair.
4. Exit Signal: The position closes automatically when the spread reverts to its historical mean (Z-score ≥ 0).
Risk management:
Trades are sized as a percentage of equity (default: 10%).
Includes commissions and slippage for realistic backtesting.
Regressions
VFV Correction Levels
This Pine Script, "VFV Correction Levels," identifies significant daily price corrections and calculates corresponding investments based on fixed thresholds (paliers). Key features include:
Six predefined correction levels trigger investments between $150 and $600 based on the percentage drop.
Larger corrections correspond to higher investment amounts.
Graphical Indicators:
Visual labels mark correction levels and display investment amounts directly on the chart.
Investment Tracking:
Calculates total invested and tracks performance (yield percentage) relative to the initial correction price.
Double RSI + MA Signal [AlgoRich]This indicator combines two RSI (Relative Strength Index) indicators with their respective Exponential Moving Averages (EMA) to provide a more detailed view of the market's relative strength.
Its design allows for the identification of overbought and oversold zones, as well as potential trend reversal signals.
How does it work?
1. RSI (Relative Strength Index)
The RSI is an oscillator that measures the speed and change of price movements.
The values range between 0 and 100:
Values above 70 typically indicate overbought conditions (price may be overvalued).
Values below 30 typically indicate oversold conditions (price may be undervalued).
In this indicator, two RSIs are calculated with different periods to capture strength signals in both the short and medium term:
RSI 1: Uses a shorter period (7 by default), making it more sensitive to recent price changes.
RSI 2: Uses a longer period (14 by default), providing a more stable perspective.
2. EMAs (Exponential Moving Averages)
EMAs are calculated for each RSI to smooth their movements:
EMA RSI 1: Smooths RSI 1 (short-term).
EMA RSI 2: Smooths RSI 2 (medium-term).
These EMAs help filter market noise and allow for clearer trend identification in the RSI data.
3. Key Levels
Horizontal reference levels are defined on the chart:
80 (solid red line): Extreme overbought zone.
70 (dotted red line): Initial overbought zone.
50 (dotted gray line): Midline, acting as an equilibrium reference.
30 (dotted green line): Initial oversold zone.
20 (solid green line): Extreme oversold zone.
These levels help interpret market strength:
Above 70: The market is in a strong bullish phase (or overbought).
Below 30: The market is in a strong bearish phase (or oversold).
4. Visualization
The indicator plots:
RSI 1 and its EMA:
RSI 1: Thick green line.
EMA RSI 1: Thin white line that follows RSI 1.
RSI 2 and its EMA:
RSI 2: Thick red line.
EMA RSI 2: Transparent line (not visible in this case but can be enabled if desired).
What is this indicator used for?
1. Identifying Overbought and Oversold Conditions
Levels 70 and 30 indicate zones where the market might be near a trend reversal.
Levels 80 and 20 identify extreme conditions, often accompanied by strong price reversals.
2. Confirming Trends
If the RSI and its EMA are above 50, it indicates a bullish trend.
If the RSI and its EMA are below 50, it indicates a bearish trend.
3. Filtering False Signals
By combining two RSIs with different periods, you can confirm signals more reliably:
If both RSIs are moving in the same direction (above or below 50), the signal is stronger.
EMAs smooth out oscillations, helping to ignore irrelevant short-term movements.
Benefits for Traders
This indicator is useful for:
Scalpers and Day Traders: By using a shorter RSI (RSI 1), you can capture quick movements in the market.
Swing Traders: With the longer RSI (RSI 2), you can identify broader trends.
Risk Management: Avoid trading in extreme overbought/oversold zones (levels 80 and 20).
In summary, this indicator provides a powerful tool to evaluate the market's relative strength, combining multiple analysis timeframes and helping traders make more informed decisions.
-----------------
TRADUCCIÓN AL ESPAÑOL:
Explicación del Indicador: Double RSI + MA Signal
Este indicador combina dos RSI (Relative Strength Index) con sus respectivas medias móviles exponenciales (EMA) para proporcionar una visión más detallada de la fuerza relativa del mercado.
Su diseño permite identificar zonas de sobrecompra, sobreventa y posibles señales de cambio de tendencia.
¿Cómo funciona?
1. RSI (Relative Strength Index)
El RSI es un oscilador que mide la velocidad y el cambio en los movimientos de precios.
Los valores oscilan entre 0 y 100:
Valores por encima de 70 suelen indicar sobrecompra (precio posiblemente sobrevalorado).
Valores por debajo de 30 suelen indicar sobreventa (precio posiblemente infravalorado).
En este indicador, se calculan dos RSI con diferentes períodos para capturar señales de fuerza a corto y mediano plazo:
RSI 1: Usando un período más corto (7, por defecto), lo que lo hace más sensible a cambios recientes en el precio.
RSI 2: Usando un período más largo (14, por defecto), proporcionando una visión más estable.
2. EMAs (Exponential Moving Averages)
Se calculan EMAs de cada RSI para suavizar sus movimientos:
EMA RSI 1: Suaviza el RSI 1 (corto plazo).
EMA RSI 2: Suaviza el RSI 2 (mediano plazo).
Estas EMAs ayudan a filtrar el ruido del mercado y permiten identificar tendencias más claras en los datos del RSI.
3. Niveles Clave
Se definen niveles de referencia horizontales en el gráfico:
80 (línea sólida roja): Zona de sobrecompra extrema.
70 (línea punteada roja): Zona inicial de sobrecompra.
50 (línea gris punteada): Línea media, que actúa como una referencia de equilibrio.
30 (línea punteada verde): Zona inicial de sobreventa.
20 (línea sólida verde): Zona de sobreventa extrema.
Estos niveles ayudan a interpretar la fuerza del mercado:
Por encima de 70: El mercado está en una fase alcista fuerte (o sobrecompra).
Por debajo de 30: El mercado está en una fase bajista fuerte (o sobreventa).
4. Visualización
El indicador grafica:
RSI 1 y su EMA:
RSI 1: Línea verde gruesa.
EMA RSI 1: Línea blanca delgada, que sigue al RSI 1.
RSI 2 y su EMA:
RSI 2: Línea roja gruesa.
EMA RSI 2: Línea transparente (no visible en este caso, pero puede activarse si se desea).
¿Para qué sirve este indicador?
1. Identificar sobrecompra y sobreventa
Los niveles de 70 y 30 marcan zonas donde el mercado podría estar cerca de un cambio de tendencia.
Los niveles de 80 y 20 identifican extremos, que suelen estar acompañados de fuertes reversiones de precio.
2. Confirmar tendencias
Si el RSI y su EMA están por encima de 50, indica una tendencia alcista.
Si el RSI y su EMA están por debajo de 50, indica una tendencia bajista.
3. Filtrar señales falsas
Al combinar dos RSI con diferentes períodos, puedes confirmar señales de una forma más confiable:
Si ambos RSI están en la misma dirección (por encima o por debajo de 50), la señal es más fuerte.
Las EMAs suavizan las oscilaciones, ayudando a ignorar movimientos temporales irrelevantes.
Beneficio para los Traders
Este indicador es útil para:
Scalpers y Day Traders: Al usar un RSI más corto (RSI 1), puedes capturar movimientos rápidos en el mercado.
Swing Traders: Con el RSI más largo (RSI 2), puedes identificar tendencias más amplias.
Gestión de riesgos: Evitar operaciones en zonas de sobrecompra/sobreventa extremas (niveles 80 y 20).
En resumen, este indicador proporciona una herramienta poderosa para evaluar la fuerza relativa del mercado, combinando diferentes horizontes de análisis y ayudando a los traders a tomar decisiones informadas.
Automatic Fibonacci Levels with EMAAutomatic Fibonacci Levels with EMA
Description:
This script automatically calculates and displays Fibonacci retracement levels based on the highest and lowest prices over a dynamic lookback period. The Fibonacci levels are recalculated on every bar to adapt to price changes, providing an ongoing analysis of key support and resistance areas.
The Fibonacci levels are dynamically colored to reflect the trend direction, determined by the position of the price relative to the Exponential Moving Average (EMA). When the market is in an uptrend (price above EMA), Fibonacci levels are displayed in green, and in a downtrend (price below EMA), they are shown in red. This color coding helps traders quickly identify the current market direction.
Key Features:
Dynamic Fibonacci Levels: Automatically adjusts Fibonacci retracement levels based on recent price action, recalculated with each new bar.
EMA Trend Confirmation: The trend is confirmed by the position of the price relative to the 20-period EMA. Fibonacci levels are color-coded to reflect this trend.
Customizable Lookback Period: Adjust the base lookback period (default 50) and scale it according to your preferred timeframe for more or less sensitivity to recent price action.
Flexible Fibonacci Duration: The Fibonacci levels remain on the chart for a customizable duration (default 2 bars), allowing for visual clarity while adapting to new price action.
Timeframe Scaling: The script automatically adjusts the lookback period based on a scaling factor, making it suitable for different timeframes.
How to Use:
Use the Fibonacci levels to identify potential support and resistance zones based on the market's current price range.
Combine the trend color coding with your own strategy to enhance decision-making, whether for long or short entries.
Adjust the Lookback Period and Fibonacci Duration based on your trading style and timeframe preferences.
This script provides an automatic and customizable way to visualize Fibonacci retracements in a dynamic manner, helping traders make informed decisions based on trend direction and key price levels.
Note: As with any trading tool, always use proper risk management and test the script before using it in live trading.
Liquidity + SP y RS + Zones [AlgoRich]This indicator is designed to identify key areas in the market, such as support and resistance levels, liquidity zones, and important price structures.
Additionally, it highlights operational areas based on specific time frames, facilitating technical analysis and decision-making in trading.
How does it work?
1. Identification of Pivot Levels
The indicator identifies local highs and lows on the chart, known as pivot levels, which are zones where the price tends to react, such as:
Support zones: Areas where the price is likely to stop falling.
Resistance zones: Areas where the price might encounter obstacles to keep rising.
These levels are calculated by analyzing a range of bars around the current price and are highlighted with lines, boxes, and labels on the chart.
2. Liquidity Zones
Liquidity zones are defined as areas where there has been an accumulation of orders, either for buying or selling. These zones are significant because they often signal future price movements.
The indicator creates visual boxes around these levels, allowing traders to quickly identify areas where the price might react.
3. Support and Resistance Lines
Horizontal lines are drawn at the identified highs and lows, representing support and resistance levels on the chart.
These lines can be extended forward until the price touches them, showing whether the level has been respected or "broken."
4. Visual Labels
The indicator can also display labels at key levels to provide additional information, such as whether the level corresponds to a high or low.
5. Operational Zones
In addition to support and resistance levels, the indicator allows users to mark specific time periods, referred to as operational sessions.
These zones highlight user-defined periods, such as:
New York session
London session
Daily session
This helps focus analysis on the most active market periods.
6. Customization
The user can customize the following:
Pivot sizes (how many bars to consider to the left and right).
Colors and styles of the lines, boxes, and labels.
Visibility of elements such as boxes, lines, and labels.
Whether to extend the levels forward until the price reaches them.
What is this indicator used for?
Identifying key areas in the market: Support, resistance levels, and liquidity zones are essential for understanding where the price is most likely to react.
Defining entry and exit points: Highlighted zones help determine when to open or close trades.
Highlighting key market moments: With operational sessions, you can focus on the most relevant periods for your strategy.
Simplifying technical analysis: By visualizing levels and zones directly on the chart, it reduces the time needed to identify critical areas.
Benefits for Traders
This indicator is ideal for traders who:
Want to analyze key market levels quickly and efficiently.
Are looking for high-probability zones to trade, based on support, resistance, and liquidity areas.
Need a visual approach to highlight operational levels and important time frames on their charts.
In summary, this indicator serves as a comprehensive tool that combines advanced technical analysis with a user-friendly visual interface, allowing traders to make more informed and precise decisions.
-----------------
TRADUCCIÓN AL ESPAÑOL:
Este indicador está diseñado para identificar zonas clave en el mercado, como niveles de soporte y resistencia, zonas de liquidez, y estructuras importantes de precios. Además, resalta las áreas operativas de acuerdo con horarios específicos, facilitando el análisis técnico y la toma de decisiones en el trading.
¿Cómo funciona?
1. Identificación de Niveles Pivot
El indicador busca máximos y mínimos locales en el gráfico, conocidos como niveles pivote, los cuales son zonas donde el precio suele reaccionar, como en:
Zonas de soporte: Donde el precio tiene probabilidades de detener su caída.
Zonas de resistencia: Donde el precio podría encontrar obstáculos para seguir subiendo.
Estos niveles son calculados analizando un rango de barras alrededor del precio actual, y se destacan con líneas, cajas y etiquetas en el gráfico.
2. Zonas de Liquidez
Las zonas de liquidez se definen como áreas donde ha habido una acumulación de órdenes, ya sea de compra o venta. Estas zonas son importantes porque suelen marcar movimientos futuros significativos en el precio.
El indicador crea cajas visuales alrededor de estos niveles, permitiendo identificar rápidamente las áreas donde el precio puede reaccionar.
3. Líneas de Soporte y Resistencia
Se trazan líneas horizontales en los máximos y mínimos identificados, representando los niveles de soporte y resistencia en el gráfico.
Estas líneas se pueden extender hacia adelante hasta que el precio las toque, mostrando si el nivel ha sido respetado o "roto".
4. Etiquetas Visuales
El indicador también puede mostrar etiquetas en los niveles clave para proporcionar información adicional, como si el nivel corresponde a un máximo o un mínimo.
5. Zonas Operativas
Además de los niveles de soporte y resistencia, el indicador permite marcar zonas de tiempo específicas, llamadas sesiones operativas.
Estas zonas resaltan períodos definidos por el usuario, como:
Sesión de Nueva York.
Sesión de Londres.
Diario.
Esto ayuda a enfocar el análisis en los momentos más activos del mercado.
6. Personalización
El usuario puede personalizar:
Tamaños de pivote (cuántas barras a la izquierda y derecha considerar).
Colores y estilos de las líneas, cajas y etiquetas.
La visibilidad de elementos como cajas, líneas y etiquetas.
Extender o no los niveles hacia adelante hasta que el precio los alcance.
¿Para qué sirve este indicador?
Identificar zonas importantes del mercado: Los niveles de soporte, resistencia y las zonas de liquidez son esenciales para entender dónde es más probable que el precio reaccione.
Definir puntos de entrada y salida: Las zonas destacadas ayudan a determinar cuándo abrir o cerrar operaciones.
Resaltar momentos clave del mercado: Con las sesiones operativas, puedes enfocarte en los períodos más relevantes para tu estrategia.
Simplificar el análisis técnico: Visualizando niveles y zonas directamente en el gráfico, se reduce el tiempo necesario para identificar áreas críticas.
Beneficio para los Traders
Este indicador es ideal para traders que:
Quieren analizar niveles clave del mercado de forma rápida y eficiente.
Buscan zonas de alta probabilidad para operar, basándose en soportes, resistencias y zonas de liquidez.
Necesitan un enfoque visual para destacar niveles operativos y horarios importantes en sus gráficos.
En resumen, este indicador actúa como una herramienta integral para combinar análisis técnico avanzado con una interfaz visual amigable, lo que permite a los traders tomar decisiones más informadas y precisas.
Smoothed Gaussian Trend Filter [AlgoAlpha]Experience seamless trend detection and market analysis with the Smoothed Gaussian Trend Filter by AlgoAlpha! This cutting-edge indicator combines advanced Gaussian filtering with linear regression smoothing to identify and enhance market trends, making it an essential tool for traders seeking precise and actionable signals.
Key Features :
🔍 Gaussian Trend Filtering: Utilizes a customizable Gaussian filter with adjustable length and pole settings for tailored smoothing and trend identification.
📊 Linear Regression Smoothing: Reduces noise and further refines the Gaussian output with user-defined smoothing length and offset, ensuring clarity in trend representation.
✨ Dynamic Visual Highlights: Highlights trends and signals based on volume intensity, allowing for real-time insights into market behavior.
📉 Choppy Market Detection: Identifies ranging or choppy markets, helping traders avoid false signals.
🔔 Custom Alerts: Set alerts for bullish and bearish signals, trend reversals, or choppy market conditions to stay on top of trading opportunities.
🎨 Color-Coded Visuals: Fully customizable colors for bullish and bearish signals, ensuring clear and intuitive chart analysis.
How to Use :
Add the Indicator: Add it to your favorites and apply it to your TradingView chart.
Interpret the Chart: Observe the trend line for directional changes and use the accompanying buy/sell signals for entry and exit opportunities. Choppy market conditions are flagged for additional caution.
Set Alerts: Enable alerts for trend signals or choppy market detections to act promptly without constant chart monitoring.
How It Works :
The Smoothed Gaussian Trend Filter uses a combination of advanced smoothing techniques to identify trends and enhance market clarity. First, a Gaussian filter is applied to price data, using a user-defined length (Gaussian length) and poles (smoothness level) to calculate an alpha value that determines the degree of smoothing. This creates a refined trend line that minimizes noise while preserving key market movements. The output is then further processed using linear regression smoothing, allowing traders to adjust the length and offset to flatten minor oscillations and emphasize the dominant trend. To incorporate market activity, volume intensity is analyzed through a normalized Hull Moving Average (HMA), dynamically adjusting the trend line's color transparency based on trading activity. The indicator also identifies trend direction by comparing the smoothed trend line with a calculated SuperTrend-style level, generating clear trend regimes and highlighting ranging or choppy conditions where trends are less reliable and avoiding false signals. This seamless integration of Gaussian smoothing, regression analysis, and volume dynamics provides traders with a powerful and intuitive tool for market analysis.
Price Projection by Linear RegressionPurpose:
This is a TradingView Pine Script indicator that performs a linear regression on historical price data to project potential future price levels. It's designed to help traders visualize long-term price trends and potential future price targets.
Key Components:
User Inputs:
Historical Data Points (default 1000 bars) - The amount of historical data used to calculate the trend
Years to Project (default 10 years) - How far into the future to project the price
Technical Implementation:
Uses linear regression (ta.linreg) to calculate the trend slope
Converts years to trading days using 252 trading days per year
Limits visible projection to 500 bars due to TradingView's drawing limitations
Projects prices using the formula: current_price + (slope × number_of_bars)
Visual Elements:
Blue line showing actual historical prices
Red projection line showing the expected price path
Label showing the projected price at the visible end of the line
Information table in the top-right corner showing:
Current price
Final projected price after the full time period
Limitations:
Can only display projections up to 500 bars into the future (about 2 years) due to TradingView limitations
The full projection value is still calculated and shown in the table
Past performance doesn't guarantee future results - this is a mathematical projection based on historical trends
Usage:
Traders can use this to:
Visualize potential long-term price trends
Set long-term price targets
Understand the historical trend's trajectory
Compare current prices with projected future values
Previous Candle Sweep IndicatorThis script identifies candlesticks where the current candle's high is higher than the previous candle's high, and the current candle's low is lower than the previous candle's low. If both conditions are met, the candle's body is highlighted in blue on the chart, allowing traders to quickly spot these patterns.
Features:
Highlights candles with both higher highs and lower lows.
Uses clear visual cues (blue body) for easy identification.
Ideal for traders looking to identify specific volatility patterns or reversals.
RM - Hull Moving RegressionRM - Hull Moving Regression (RM - HMR)
This indicator integrates the Enhanced Hull Moving Average (EHMA) with linear regression and RSI to provide a comprehensive view of market trends and momentum. By combining advanced smoothing techniques with dynamic visual cues, it delivers actionable insights for traders seeking clarity in price movements.
Key Features
- Enhanced Hull Moving Average (EHMA):
The indicator computes EHMA values using the open, high, low, and close prices. These are averaged to create a smooth, responsive representation of market trends.
- Linear Regression Smoothing:
The EHMA output is further refined with a linear regression model, reducing noise and highlighting directional trends.
- RSI-Tracking:
RSI is calculated on the smoothed regression output.
- Dynamic Bar Coloring:
Bars change color to reflect shifts in momentum:
- Green for increasing momentum.
- Orange for decreasing momentum.
- Customizable Parameters:
Users can adjust the RSI length, regression length, and EHMA period to suit their trading strategy.
How It Works
1. The indicator calculates EHMA values for four price sources (open, high, low, close).
2. These EHMA values are averaged to generate a smoother price action metric.
3. The averaged EHMA is processed through a linear regression model to further smooth the data.
4. RSI is then applied to the regression output.
How to Use
- Identify Market Trends:
Use the color-coded bars and moving averages to confirm overall market direction.
- Monitor Momentum Changes:
Look for shifts in bar color (e.g., green to orange) to identify potential weakening or strengthening trends.
- Combine with Other Indicators:
Integrate the RM-HMR with other trend-following or momentum tools for robust analysis and confirmation.
Example Use Cases
- Trend Following:
Utilize the smooth moving averages and bar colors to follow dominant market trends.
Disclaimer
This indicator is designed for educational and analytical purposes. It should not be used in isolation and must be paired with sound risk management practices and additional tools for comprehensive market analysis.
Adjust Asset for Future Interest (Brazil)Este script foi criado para ajustar o preço de um ativo com base na taxa de juros DI11!, que reflete a expectativa do mercado para os juros futuros. O objetivo é mostrar como o valor do ativo seria influenciado se fosse diretamente ajustado pela variação dessa taxa de juros.
Como funciona?
Preço do Ativo
O script começa capturando o preço de fechamento do ativo que está sendo visualizado no gráfico. Esse é o ponto de partida para o cálculo.
Taxa de Juros DI11!
Em seguida, ele busca os valores diários da taxa DI11! no mercado. Esta taxa é uma referência de juros de curto prazo, usada para ajustes financeiros e projeções econômicas.
Fator de Ajuste
Com a taxa de juros DI11!, o script calcula um fator de ajuste simples:
Fator de Ajuste
=
1
+
DI11
100
Fator de Ajuste=1+
100
DI11
Esse fator traduz a taxa percentual em um multiplicador aplicado ao preço do ativo.
Cálculo do Ativo Ajustado
Multiplica o preço do ativo pelo fator de ajuste para obter o valor ajustado do ativo. Este cálculo mostra como o preço seria se fosse diretamente influenciado pela variação da taxa DI11!.
Exibição no Gráfico
O script plota o preço ajustado do ativo como uma linha azul no gráfico, com maior espessura para facilitar a visualização. O resultado é uma curva que reflete o impacto teórico da taxa de juros DI11! sobre o ativo.
Utilidade
Este indicador é útil para entender como as taxas de juros podem influenciar ativos financeiros de forma hipotética. Ele é especialmente interessante para analistas que desejam avaliar a relação entre o mercado de renda variável e as condições de juros no curto prazo.
This script was created to adjust the price of an asset based on the DI11! interest rate, which reflects the market's expectation for future interest rates. The goal is to show how the asset's value would be influenced if it were directly adjusted by the variation of this interest rate.
How does it work?
Asset Price
The script starts by capturing the closing price of the asset that is being viewed on the chart. This is the starting point for the calculation.
DI11! Interest Rate
The script then searches for the daily values of the DI11! rate in the market. This rate is a short-term interest reference, used for financial adjustments and economic projections.
Adjustment Factor
With the DI11! interest rate, the script calculates a simple adjustment factor:
Adjustment Factor
=
1
+
DI11
100
Adjustment Factor=1+
100
DI11
This factor translates the percentage rate into a multiplier applied to the asset's price.
Adjusted Asset Calculation
Multiplies the asset price by the adjustment factor to obtain the adjusted asset value. This calculation shows how the price would be if it were directly influenced by the variation of the DI11! rate.
Display on the Chart
The script plots the adjusted asset price as a blue line on the chart, with greater thickness for easier visualization. The result is a curve that reflects the theoretical impact of the DI11! interest rate on the asset.
Usefulness
This indicator is useful for understanding how interest rates can hypothetically influence financial assets. It is especially interesting for analysts who want to assess the relationship between the equity market and short-term interest rate conditions.
Algo Bands [ProjeAdam]OVERVIEW:
The Algo Bands indicator is a technical analysis tool that calculates the highest, lowest, and average price levels over a user-defined number of bars. It generates buy and sell signals based on price interactions with these levels, visualizing them as bands on the chart. Additionally, the indicator provides multi-timeframe analysis and integrates alerts for timely trading decisions.
ALGORITHM:
1. Initialization and Function Definition
The Algo Bands indicator starts by defining functions to calculate critical price levels:
- High Band : A smoothed average of recent high price levels.
- Low Band : A smoothed average of recent low price levels.
- Average Band : The midpoint between the High Band and Low Band.
The smoothing process utilizes a Smoothed Moving Average (SMMA) to reduce noise and ensure accurate signal generation.
2. Inputs and Band Calculation
The indicator accepts customizable inputs for flexibility in trading strategies:
- Backward Length : The number of bars to consider for calculating high and low values.
- Number of Lines : Specifies how many recent high or low values are averaged.
- Smoothing Period : The length of the SMMA to smooth price data.
Using these inputs:
- The High Band is calculated as the smoothed average of the highest price values.
- The Low Band is calculated as the smoothed average of the lowest price values.
- The Average Band is the midpoint of the High and Low Bands.
3. Plotting the Bands
The Algo Bands indicator plots three main lines on the price chart:
- High Band : Plotted as a red step line, representing resistance levels.
- Low Band : Plotted as a green step line, indicating support levels.
- Average Band : Plotted as an orange line, showing the midpoint or equilibrium price.
4. Buy and Sell Conditions
Sell Condition:
The indicator triggers a sell signal when either of the following conditions is met:
A. Crossunder Condition :
- The closing price crosses below the High Band.
- The candle closes below its open price, confirming bearish sentiment.
- The closing price remains below both the High Band and the previous bar's open price.
B. Rejection Condition :
- The high price exceeds the High Band during the bar.
- However, the closing price fails to hold above the High Band and closes lower than both the High Band and the open price.
Buy Condition:
The indicator triggers a buy signal when either of the following conditions is met:
A. Crossover Condition :
- The closing price crosses above the Low Band.
- The candle closes above its open price, indicating bullish momentum.
- The closing price remains above both the Low Band and the previous bar's open price.
B. Rejection Condition :
- The low price dips below the Low Band during the bar.
- However, the closing price recovers and closes higher than both the Low Band and the open price.
5. Signal Visualization
The indicator visually represents buy and sell signals as follows:
- Sell Signals : Displayed as a red downward label (🔴) above the bar.
- Buy Signals : Displayed as a green upward label (🟢) below the bar.
The background colors between the bands also reflect market direction:
- Red for bearish trends.
- Green for bullish trends.
6. Alerts
The Algo Bands indicator includes customizable alerts to notify traders of trading signals:
- Alerts are triggered when Buy or Sell conditions are met.
- Integration with Telegram allows real-time notifications for immediate action.
7. Multi-Timeframe Analysis
The indicator supports analysis across multiple timeframes, including:
- 1 Hour
- 4 Hours
- Daily
It calculates the High and Low Bands for these timeframes to provide a comprehensive view of the market trend.
HOW DOES THE INDICATOR WORK?
1. Price Band Calculation :
- The highest and lowest price values are dynamically identified for a user-defined range.
- These values are smoothed using SMMA to produce the High Band and Low Band.
2. Signal Generation :
- Sell signals occur when the price crosses below or rejects the High Band.
- Buy signals occur when the price crosses above or rejects the Low Band.
3. Visualization :
- The bands are plotted on the chart to display resistance, support, and price equilibrium.
- Buy and Sell signals are marked with labels and color-coded backgrounds.
4. Alerts :
- Custom alerts notify traders in real time when signals are triggered.
BENEFITS OF THE ALGO BANDS INDICATOR:
- Trend Identification : Identifies support, resistance, and price equilibrium levels.
- Clear Buy/Sell Signals : Helps traders make timely entry and exit decisions.
- Noise Reduction : SMMA smoothing minimizes false signals.
- Multi-Timeframe Analysis : Provides insights across 1-hour, 4-hour, and daily timeframes.
- Customizable Parameters : Users can adjust settings for their trading style.
- Real-Time Alerts : Immediate notifications ensure timely actions.
- Visual Clarity : Labels and background colors enhance signal visibility.
- Ease of Use : Suitable for traders of all levels, from beginners to experts.
If you have any ideas what to add to my work to add more sources or make calculations cooler, suggest in DM .
Mean Reversion IndicatorSMA with Deviation and Z-Score Indicator
Overview:
This indicator combines the Simple Moving Average (SMA) with statistical measures of price deviation to identify potential buy and sell signals based on mean reversion principles. It calculates the Z-Score, which quantifies how far the current price is from its moving average in terms of standard deviations, helping traders spot when an asset might be overbought or oversold.
Key Features:
SMA Calculation: Uses a user-defined period to compute a Simple Moving Average, providing a baseline for price movement.
Z-Score: Measures the number of standard deviations the current price is from the SMA. This is crucial for identifying extreme price movements.
Formula: Z-Score = (Current Price - SMA) / Standard Deviation
Signal Generation:
Buy Signal: Generated when the Z-Score falls below a predefined threshold, suggesting the price is significantly below its mean and potentially undervalued.
Sell Signal: Triggered when the Z-Score exceeds another threshold, indicating the price is significantly above its mean and possibly overvalued.
Visual Indicators:
SMA Line: Plotted in blue on the chart for easy reference.
Z-Score Line: Available but hidden by default, can be shown if needed for deeper analysis.
Buy/Sell Signals: Represented by green up-arrows for buy signals and red down-arrows for sell signals.
Background Color: Changes to green or red subtly to indicate buy or sell zones based on Z-Score thresholds.
Z-Score Label: Provides the numerical Z-Score for each bar, aiding in precise decision-making.
Customizable Parameters:
SMA Length: Adjust the period over which the SMA is calculated.
Lookback Period: Set the number of periods for calculating the standard deviation and Z-Score.
Buy/Sell Z-Scores: Thresholds for generating buy and sell signals can be tailored to your strategy or market conditions. FX:EURUSD FX:EURUSD
Usage Tips:
This indicator is best used in conjunction with other forms of analysis for confirmation. Mean reversion does not always hold in trending markets.
Adjust the Z-Score thresholds based on asset volatility for more or less frequent signals.
Backtest with historical data to optimize settings for your specific trading approach.
Note: While this indicator can help identify potential trading opportunities based on statistical anomalies, it does not guarantee success and should be part of a broader trading strategy that includes risk management and market context understanding.
ETH - 12HR Double Kernel Regression Strategy ETH Double Kernel Regression Strategy
This ETH -focused, 12-hour Double Kernel Regression strategy is designed to cut through market noise and guide you toward data-backed, higher-probability trades. By utilizing two kernel regression models—Fast and Slow—this approach gauges momentum shifts and confirms trends. The strategy intelligently switches between these kernels based on identifying FOMO patterns, allowing it to adapt to changing market conditions. This ensures you enter trades when the trend is genuinely gaining strength, rather than blindly "buying the dip."
Key Concepts
Fine-Tuned Since Inception:
The strategy’s logic and filters—including price thresholds, trend moving averages (MAs), and kernel confirmations—are meticulously fine-tuned to perform consistently across all market conditions. This proactive planning enables confident entries during bullish recoveries, eliminating the need to second-guess every signal.
“Buy the Rise, Sell the Dip” Logic:
Unlike the traditional mantra, this strategy waits for slow kernel confirmation before entering uptrends. When market conditions shift, it identifies optimal entry points and holds steady if the trade isn’t losing money. This reduces guesswork and helps prevent buying into false rallies.
Sell the Hype:
The crypto market is often cluttered with noise—meme coins, last-minute hype, and social media influencers. The Double Kernel Regression approach distinguishes genuine trends from hype-driven movements. When the price exceeds simple moving averages (SMAs), the fast kernel generates a sell signal. This carefully crafted strategy helps you navigate the chaotic landscape, especially during hype-driven rallies, and ensures you sell at the top.
Try It Out
Import this strategy into your TradingView platform and observe how it reacts in real-time as market conditions change. Evaluate the signals, adjust parameters if necessary, and experience firsthand how combining sound trading philosophy with a data-driven backbone can transform your trading journey.
Moving Average Cross; Linear RegressionThis Pine Script is designed to display smoothed linear regression lines on a chart, with an option to adjust the regression period lengths and smoothing factor. The script calculates short-term and long-term linear regression lines based on the selected timeframe. These regression lines act as a regressed moving average cross , visually representing the interaction between the two smoothed linear regressions.
Short Regression Line: A linear regression line based on a short lookback period, colored blue for an uptrend and orange for a downtrend .
Long Regression Line: A linear regression line based on a longer lookback period, similarly colored blue for an uptrend and orange for a downtrend .
The script provides input options to adjust:
The length of short and long regression periods.
The smoothing length for the regression lines.
The timeframe for the linear regression calculations.
This tool can help traders observe the crossovers between the two smoothed linear regression lines, which are similar to moving average crossovers, but with the added benefit of regression-based smoothing to reduce noise. The color-coding allows for easy trend identification, with blue indicating an uptrend and orange indicating a downtrend.
Log Regression OscillatorThe Log Regression Oscillator transforms the logarithmic regression curves into an easy-to-interpret oscillator that displays potential cycle tops/bottoms.
🔶 USAGE
Calculating the logarithmic regression of long-term swings can help show future tops/bottoms. The relationship between previous swing points is calculated and projected further. The calculated levels are directly associated with swing points, which means every swing point will change the calculation. Importantly, all levels will be updated through all bars when a new swing is detected.
The "Log Regression Oscillator" transforms the calculated levels, where the top level is regarded as 100 and the bottom level as 0. The price values are displayed in between and calculated as a ratio between the top and bottom, resulting in a clear view of where the price is situated.
The main picture contains the Logarithmic Regression Alternative on the chart to compare with this published script.
Included are the levels 30 and 70. In the example of Bitcoin, previous cycles showed a similar pattern: the bullish parabolic was halfway when the oscillator passed the 30-level, and the top was very near when passing the 70-level.
🔹 Proactive
A "Proactive" option is included, which ensures immediate calculations of tentative unconfirmed swings.
Instead of waiting 300 bars for confirmation, the "Proactive" mode will display a gray-white dot (not confirmed swing) and add the unconfirmed Swing value to the calculation.
The above example shows that the "Calculated Values" of the potential future top and bottom are adjusted, including the provisional swing.
When the swing is confirmed, the calculations are again adjusted, showing a red dot (confirmed top swing) or a green dot (confirmed bottom swing).
🔹 Dashboard
When less than two swings are available (top/bottom), this will be shown in the dashboard.
The user can lower the "Threshold" value or switch to a lower timeframe.
🔹 Notes
Logarithmic regression is typically used to model situations where growth or decay accelerates rapidly at first and then slows over time, meaning some symbols/tickers will fit better than others.
Since the logarithmic regression depends on swing values, each new value will change the calculation. A well-fitted model could not fit anymore in the future.
Users have to check the validity of swings; for example, if the direction of swings is downwards, then the dataset is not fitted for logarithmic regression.
In the example above, the "Threshold" is lowered. However, the calculated levels are unreliable due to the swings, which do not fit the model well.
Here, the combination of downward bottom swings and price accelerates slower at first and faster recently, resulting in a non-fit for the logarithmic regression model.
Note the price value (white line) is bound to a limit of 150 (upwards) and -150 (down)
In short, logarithmic regression is best used when there are enough tops/bottoms, and all tops are around 100, and all bottoms around 0.
Also, note that this indicator has been developed for a daily (or higher) timeframe chart.
🔶 DETAILS
In mathematics, the dot product or scalar product is an algebraic operation that takes two equal-length sequences of numbers (arrays) and returns a single number, the sum of the products of the corresponding entries of the two sequences of numbers.
The usual way is to loop through both arrays and sum the products.
In this case, the two arrays are transformed into a matrix, wherein in one matrix, a single column is filled with the first array values, and in the second matrix, a single row is filled with the second array values.
After this, the function matrix.mult() returns a new matrix resulting from the product between the matrices m1 and m2.
Then, the matrix.eigenvalues() function transforms this matrix into an array, where the array.sum() function finally returns the sum of the array's elements, which is the dot product.
dot(x, y)=>
if x.size() > 1 and y.size() > 1
m1 = matrix.new()
m2 = matrix.new()
m1.add_col(m1.columns(), y)
m2.add_row(m2.rows (), x)
m1.mult (m2)
.eigenvalues()
.sum()
🔶 SETTINGS
Threshold: Period used for the swing detection, with higher values returning longer-term Swing Levels.
Proactive: Tentative Swings are included with this setting enabled.
Style: Color Settings
Dashboard: Toggle, "Location" and "Text Size"
Custom Strategy: ETH Martingale 2.0Strategic characteristics
ETH Little Martin 2.0 is a self-developed trading strategy based on the Martingale strategy, mainly used for trading ETH (Ethereum). The core idea of this strategy is to place orders in the same direction at a fixed price interval, and then use Martin's multiple investment principle to reduce losses, but this is also the main source of losses.
Parameter description:
1 Interval: The minimum spacing for taking profit, stop loss, and opening/closing of orders. Different targets have different spacing. Taking ETH as an example, it is generally recommended to have a spacing of 2% for fluctuations in the target.
2 Base Price: This is the price at which you triggered the first order. Similarly, I am using ETH as an example. If you have other targets, I suggest using the initial value of a price that can be backtesting. The Base Price is only an initial order price and has no impact on subsequent orders.
3 Initial Order Amount: Users can set an initial order amount to control the risk of each transaction. If the stop loss is reached, we will double the amount based on this value. This refers to the value of the position held, not the number of positions held.
4 Loss Multiplier: The strategy will increase the next order amount based on the set multiple after the stop loss, in order to make up for the previous losses through a larger position. Note that after taking profit, it will be reset to 1 times the Initial Order Amount.
5. Long Short Operation: The first order of the strategy is a multiple entry, and in subsequent orders, if the stop loss is reached, a reverse order will be opened. The position value of a one-way order is based on the Loss Multiplier multiple investment, so it is generally recommended that the Loss Multiplier default to 2.
Improvement direction
Although this strategy already has a certain trading logic, there are still some improvement directions that can be considered:
1. Dynamic adjustment of spacing: Currently, the spacing is fixed, and it can be considered to dynamically adjust the spacing based on market volatility to improve the adaptability of the strategy. Try using dynamic spacing, which may be more suitable for the actual market situation.
2. Filtering criteria: Orders and no orders can be optimized separately. The biggest problem with this strategy is that it will result in continuous losses during fluctuations, and eventually increase the investment amount. You can consider filtering out some fluctuations or only focusing on trend trends.
3. Risk management: Add more risk management measures, such as setting a maximum loss limit to avoid huge losses caused by continuous stop loss.
4. Optimize the stop loss multiple: Currently, the stop loss multiple is fixed, and it can be considered to dynamically adjust the multiple according to market conditions to reduce risk.
Engulfing Candle IndicatorThis indicator helps identify Bullish and Bearish Engulfing candle patterns on your chart.
Bullish Engulfing: Occurs when a green candle completely engulfs the prior red candle, signaling potential upward momentum.
Bearish Engulfing: Occurs when a red candle completely engulfs the prior green candle, signaling potential downward momentum.
The script highlights these patterns with green triangles below the bars for Bullish Engulfing and red triangles above the bars for Bearish Engulfing.
This tool is helpful for traders who use candlestick patterns as part of their technical analysis strategy.
Salience Theory Crypto Returns (AiBitcoinTrend)The Salience Theory Crypto Returns Indicator is a sophisticated tool rooted in behavioral finance, designed to identify trading opportunities in the cryptocurrency market. Based on research by Bordalo et al. (2012) and extended by Cai and Zhao (2022), it leverages salience theory—the tendency of investors, particularly retail traders, to overemphasize standout returns.
In the crypto market, dominated by sentiment-driven retail investors, salience effects are amplified. Attention disproportionately focused on certain cryptocurrencies often leads to temporary price surges, followed by reversals as the market stabilizes. This indicator quantifies these effects using a relative return salience measure, enabling traders to capitalize on price reversals and trends, offering a clear edge in navigating the volatile crypto landscape.
👽 How the Indicator Works
Salience Measure Calculation :
👾 The indicator calculates how much each cryptocurrency's return deviates from the average return of all cryptos over the selected ranking period (e.g., 21 days).
👾 This deviation is the salience measure.
👾 The more a return stands out (salient outcome), the higher the salience measure.
Ranking:
👾 Cryptos are ranked in ascending order based on their salience measures.
👾 Rank 1 (lowest salience) means the crypto is closer to the average return and is more predictable.
👾 Higher ranks indicate greater deviation and unpredictability.
Color Interpretation:
👾 Green: Low salience (closer to average) – Trending or Predictable.
👾 Red/Orange: High salience (far from average) – Overpriced/Unpredictable.
👾 Text Gradient (Teal to Light Blue): Helps visualize potential opportunities for mean reversion trades (i.e., cryptos that may return to equilibrium).
👽 Core Features
Salience Measure Calculation
The indicator calculates the salience measure for each cryptocurrency by evaluating how much its return deviates from the average market return over a user-defined ranking period. This measure helps identify which assets are trending predictably and which are likely to experience a reversal.
Dynamic Ranking System
Cryptocurrencies are dynamically ranked based on their salience measures. The ranking helps differentiate between:
Low Salience Cryptos (Green): These are trending or predictable assets.
High Salience Cryptos (Red): These are overpriced or deviating significantly from the average, signaling potential reversals.
👽 Deep Dive into the Core Mathematics
Salience Theory in Action
Salience theory explains how investors, particularly in the crypto market, tend to prefer assets with standout returns (salient outcomes). This behavior often leads to overpricing of assets with high positive returns and underpricing of those with standout negative returns. The indicator captures these deviations to anticipate mean reversions or trend continuations.
Salience Measure Calculation
// Calculate the average return
avgReturn = array.avg(returns)
// Calculate salience measure for each symbol
salienceMeasures = array.new_float()
for i = 0 to array.size(returns) - 1
ret = array.get(returns, i)
salienceMeasure = math.abs(ret - avgReturn) / (math.abs(ret) + math.abs(avgReturn) + 0.1)
array.push(salienceMeasures, salienceMeasure)
Dynamic Ranking
Cryptos are ranked in ascending order based on their salience measures:
Low Ranks: Cryptos with low salience (predictable, trending).
High Ranks: Cryptos with high salience (unpredictable, likely to revert).
👽 Applications
👾 Trend Identification
Identify cryptocurrencies that are currently trending with low salience measures (green). These assets are likely to continue their current direction, making them good candidates for trend-following strategies.
👾 Mean Reversion Trading
Cryptos with high salience measures (red to light blue) may be poised for a mean reversion. These assets are likely to correct back towards the market average.
👾 Reversal Signals
Anticipate potential reversals by focusing on high-ranked cryptos (red). These assets exhibit significant deviation and are prone to price corrections.
👽 Why It Works in Crypto
The cryptocurrency market is dominated by retail investors prone to sentiment-driven behavior. This leads to exaggerated price movements, making the salience effect a powerful predictor of reversals.
👽 Indicator Settings
👾 Ranking Period : Number of bars used to calculate the average return and salience measure.
Higher Values: Smooth out short-term volatility.
Lower Values: Make the ranking more sensitive to recent price movements.
👾 Number of Quantiles : Divide ranked assets into quantile groups (e.g., quintiles).
Higher Values: More detailed segmentation (deciles, percentiles).
Lower Values: Broader grouping (quintiles, quartiles).
👾 Portfolio Percentage : Percentage of the portfolio allocated to each selected asset.
Enter a percentage (e.g., 20 for 20%), automatically converted to a decimal (e.g., 0.20).
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.
Linear Regression Channel [TradingFinder] Existing Trend Line🔵 Introduction
The Linear Regression Channel indicator is one of the technical analysis tool, widely used to identify support, resistance, and analyze upward and downward trends.
The Linear Regression Channel comprises five main components : the midline, representing the linear regression line, and the support and resistance lines, which are calculated based on the distance from the midline using either standard deviation or ATR.
This indicator leverages linear regression to forecast price changes based on historical data and encapsulates price movements within a price channel.
The upper and lower lines of the channel, which define resistance and support levels, assist traders in pinpointing entry and exit points, ultimately aiding better trading decisions.
When prices approach these channel lines, the likelihood of interaction with support or resistance levels increases, and breaking through these lines may signal a price reversal or continuation.
Due to its precision in identifying price trends, analyzing trend reversals, and determining key price levels, the Linear Regression Channel indicator is widely regarded as a reliable tool across financial markets such as Forex, stocks, and cryptocurrencies.
🔵 How to Use
🟣 Identifying Entry Signals
One of the primary uses of this indicator is recognizing buy signals. The lower channel line acts as a support level, and when the price nears this line, the likelihood of an upward reversal increases.
In an uptrend : When the price approaches the lower channel line and signs of upward reversal (e.g., reversal candlesticks or high trading volume) are observed, it is considered a buy signal.
In a downtrend : If the price breaks the lower channel line and subsequently re-enters the channel, it may signal a trend change, offering a buying opportunity.
🟣 Identifying Exit Signals
The Linear Regression Channel is also used to identify sell signals. The upper channel line generally acts as a resistance level, and when the price approaches this line, the likelihood of a price decrease increases.
In an uptrend : Approaching the upper channel line and observing weakness in the uptrend (e.g., declining volume or reversal patterns) indicates a sell signal.
In a downtrend : When the price reaches the upper channel line and reverses downward, this is considered a signal to exit trades.
🟣 Analyzing Channel Breakouts
The Linear Regression Channel allows traders to identify price breakouts as strong signals of potential trend changes.
Breaking the upper channel line : Indicates buyer strength and the likelihood of a continued uptrend, often accompanied by increased trading volume.
Breaking the lower channel line : Suggests seller dominance and the possibility of a continued downtrend, providing a strong sell signal.
🟣 Mean Reversion Analysis
A key concept in using the Linear Regression Channel is the tendency for prices to revert to the midline of the channel, which acts as a dynamic moving average, reflecting the price's equilibrium over time.
In uptrends : Significant deviations from the midline increase the likelihood of a price retracement toward the midline.
In downtrends : When prices deviate considerably from the midline, a return toward the midline can be used to identify potential reversal points.
🔵 Settings
🟣 Time Frame
The time frame setting enables users to view higher time frame data on a lower time frame chart. This feature is especially useful for traders employing multi-time frame analysis.
🟣 Regression Type
Standard : Utilizes classical linear regression to draw the midline and channel lines.
Advanced : Produces similar results to the standard method but may provide slightly different alignment on the chart.
🟣 Scaling Type
Standard Deviation : Suitable for markets with stable volatility.
ATR (Average True Range) : Ideal for markets with higher volatility.
🟣 Scaling Coefficients
Larger coefficients create broader channels for broader trend analysis.
Smaller coefficients produce tighter channels for precision analysis.
🟣 Channel Extension
None : No extension.
Left: Extends lines to the left to analyze historical trends.
Right : Extends lines to the right for future predictions.
Both : Extends lines in both directions.
🔵 Conclusion
The Linear Regression Channel indicator is a versatile and powerful tool in technical analysis, providing traders with support, resistance, and midline insights to better understand price behavior. Its advanced settings, including time frame selection, regression type, scaling options, and customizable coefficients, allow for tailored and precise analysis.
One of its standout advantages is its ability to support multi-time frame analysis, enabling traders to view higher time frame data within a lower time frame context. The option to use scaling methods like ATR or standard deviation further enhances its adaptability to markets with varying volatility.
Designed to identify entry and exit signals, analyze mean reversion, and assess channel breakouts, this indicator is suitable for a wide range of markets, including Forex, stocks, and cryptocurrencies. By incorporating this tool into your trading strategy, you can make more informed decisions and improve the accuracy of your market predictions.
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.
Trend Condition [TradersPro]
OVERVIEW
The Trend Condition Indicator measures the strength of the bullish or bearish trend by using a ribbon pattern of exponential moving averages and scoring system. Trend cycles naturally expand and contract as a normal part of the cycle. It is the rhythm of the market. Perpetual expansion and contraction of trend.
As trend cycles develop the indicator shows a compression of the averages. These compression zones are key locations as trends typically expand from there. The expansion of trend can be up or down.
As the trend advances the ribbon effect of the indicator can be seen as each average expands with the price action. Once they have “fanned” the probability of the current trend slowing is high.
This can be used to recognize a powerful trend may be concluding. Traders can tighten stops, exit positions or utilize other prudent strategies.
CONCEPTS
Each line will display green if it is higher than the prior period and red if it is lower than the prior period. If the average is green it is considered bullish and will score one point in the bullish display. Red lines are considered bearish and will score one point in the bearish display.
The indicator can then be used at a quick glance to see the number of averages that are bullish and the number that are bearish.
A trader may use these on any tradable instrument. They can be helpful in stock portfolio management when used with an index like the S&P 500 to determine the strength of the current market trend. This may affect trade decisions like possession size, stop location and other risk factors.
Scatter PlotThe Price Volume Scatter Plot publication aims to provide intrabar detail as a Scatter Plot .
🔶 USAGE
A dot is drawn at every intrabar close price and its corresponding volume , as can seen in the following example:
Price is placed against the white y-axis, where volume is represented on the orange x-axis.
🔹 More detail
A Scatter Plot can be beneficial because it shows more detail compared with a Volume Profile (seen at the right of the Scatter Plot).
The Scatter Plot is accompanied by a "Line of Best Fit" (linear regression line) to help identify the underlying direction, which can be helpful in interpretation/evaluation.
It can be set as a screener by putting multiple layouts together.
🔹 Easier Interpretation
Instead of analysing the 1-minute chart together with volume, this can be visualised in the Scatter Plot, giving a straightforward and easy-to-interpret image of intrabar volume per price level.
One of the scatter plot's advantages is that volumes at the same price level are added to each other.
A dot on the scatter plot represents the cumulated amount of volume at that particular price level, regardless of whether the price closed one or more times at that price level.
Depending on the setting "Direction" , which sets the direction of the Volume-axis, users can hoover to see the corresponding price/volume.
🔹 Highest Intrabar Volume Values
Users can display up to 5 last maximum intrabar volume values, together with the intrabar timeframe (Res)
🔹 Practical Examples
When we divide the recent bar into three parts, the following can be noticed:
Price spends most of its time in the upper part, with relative medium-low volume, since the intrabar close prices are mostly situated in the upper left quadrant.
Price spends a shorter time in the middle part, with relative medium-low volume.
Price moved rarely below 61800 (the lowest part), but it was associated with high volume. None of the intrabar close prices reached the lowest area, and the price bounced back.
In the following example, the latest weekly candle shows a rejection of the 45.8 - 48.5K area, with the highest volume at the 45.8K level.
The next three successive candles show a declining maximum intrabar volume, after which the price broke through the 45.8K area.
🔹 Visual Options
There are many visual options available.
🔹 Change Direction
The Scatter Plot can be set in 4 different directions.
🔶 NOTES
🔹 Notes
The script uses the maximum available resources to draw the price/volume dots, which are 500 boxes and 500 labels. When the population size exceeds 1000, a warning is provided ( Not all data is shown ); otherwise, only the population size is displayed.
The Scatter Plot ideally needs a chart which contains at least 100 bars. When it contains less, a warning will be shown: bars < 100, not all data is shown
🔹 LTF Settings
When 'Auto' is enabled ( Settings , LTF ), the LTF will be the nearest possible x times smaller TF than the current TF. When 'Premium' is disabled, the minimum TF will always be 1 minute to ensure TradingView plans lower than Premium don't get an error.
Examples with current Daily TF (when Premium is enabled):
500 : 3 minute LTF
1500 (default): 1 minute LTF
5000: 30 seconds LTF (1 minute if Premium is disabled)
🔶 SETTINGS
Direction: Direction of Volume-axis; Left, Right, Up or Down
🔹 LTF
LTF: LTF setting
Auto + multiple: Adjusts the initial set LTF
Premium: Enable when your TradingView plan is Premium or higher
🔹 Character
Character: Style of Price/Volume dot
Fade: Increasing this number fades dots at lower price/volume
Color
🔹 Linear Regression
Toggle (enable/disable), color, linestyle
Center Cross: Toggle, color
🔹 Background Color
Fade: Increasing this number fades the background color near lower values
Volume: Background color that intensifies as the volume value on the volume-axis increases
Price: Background color that intensifies as the price value on the price-axis increases
🔹 Labels
Size: Size of price/volume labels
Volume: Color for volume labels/axis
Price: Color for price labels/axis
Display Population Size: Show the population size + warning if it exceeds 1000
🔹 Dashboard
Location: Location of dashboard
Size: Text size
Display LTF: Display the intrabar Lower Timeframe used
Highest IB volume: Display up to 5 previous highest Intrabar Volume values
Logarithmic Regression AlternativeLogarithmic regression is typically used to model situations where growth or decay accelerates rapidly at first and then slows over time. Bitcoin is a good example.
𝑦 = 𝑎 + 𝑏 * ln(𝑥)
With this logarithmic regression (log reg) formula 𝑦 (price) is calculated with constants 𝑎 and 𝑏, where 𝑥 is the bar_index .
Instead of using the sum of log x/y values, together with the dot product of log x/y and the sum of the square of log x-values, to calculate a and b, I wanted to see if it was possible to calculate a and b differently.
In this script, the log reg is calculated with several different assumed a & b values, after which the log reg level is compared to each Swing. The log reg, where all swings on average are closest to the level, produces the final 𝑎 & 𝑏 values used to display the levels.
🔶 USAGE
The script shows the calculated logarithmic regression value from historical swings, provided there are enough swings, the price pattern fits the log reg model, and previous swings are close to the calculated Top/Bottom levels.
When the price approaches one of the calculated Top or Bottom levels, these levels could act as potential cycle Top or Bottom.
Since the logarithmic regression depends on swing values, each new value will change the calculation. A well-fitted model could not fit anymore in the future.
Swings are based on Weekly bars. A Top Swing, for example, with Swing setting 30, is the highest value in 60 weeks. Thirty bars at the left and right of the Swing will be lower than the Top Swing. This means that a confirmation is triggered 30 weeks after the Swing. The period will be automatically multiplied by 7 on the daily chart, where 30 becomes 210 bars.
Please note that the goal of this script is not to show swings rapidly; it is meant to show the potential next cycle's Top/Bottom levels.
🔹 Multiple Levels
The script includes the option to display 3 Top/Bottom levels, which uses different values for the swing calculations.
Top: 'high', 'maximum open/close' or 'close'
Bottom: 'low', 'minimum open/close' or 'close'
These levels can be adjusted up/down with a percentage.
Lastly, an "Average" is included for each set, which will only be visible when "AVG" is enabled, together with both Top and Bottom levels.
🔹 Notes
Users have to check the validity of swings; the above example only uses 1 Top Swing for its calculations, making the Top level unreliable.
Here, 1 of the Bottom Swings is pretty far from the bottom level, changing the swing settings can give a more reliable bottom level where all swings are close to that level.
Note the display was set at "Logarithmic", it can just as well be shown as "Regular"
In the example below, the price evolution does not fit the logarithmic regression model, where growth should accelerate rapidly at first and then slows over time.
Please note that this script can only be used on a daily timeframe or higher; using it at a lower timeframe will show a warning. Also, it doesn't work with bar-replay.
🔶 DETAILS
The code gathers data from historical swings. At the last bar, all swings are calculated with different a and b values. The a and b values which results in the smallest difference between all swings and Top/Bottom levels become the final a and b values.
The ranges of a and b are between -20.000 to +20.000, which means a and b will have the values -20.000, -19.999, -19.998, -19.997, -19.996, ... -> +20.000.
As you can imagine, the number of calculations is enormous. Therefore, the calculation is split into parts, first very roughly and then very fine.
The first calculations are done between -20 and +20 (-20, -19, -18, ...), resulting in, for example, 4.
The next set of calculations is performed only around the previous result, in this case between 3 (4-1) and 5 (4+1), resulting in, for example, 3.9. The next set goes even more in detail, for example, between 3.8 (3.9-0.1) and 4.0 (3.9 + 0.1), and so on.
1) -20 -> +20 , then loop with step 1 (result (example): 4 )
2) 4 - 1 -> 4 +1 , then loop with step 0.1 (result (example): 3.9 )
3) 3.9 - 0.1 -> 3.9 +0.1 , then loop with step 0.01 (result (example): 3.93 )
4) 3.93 - 0.01 -> 3.93 +0.01, then loop with step 0.001 (result (example): 3.928)
This ensures complicated calculations with less effort.
These calculations are done at the last bar, where the levels are displayed, which means you can see different results when a new swing is found.
Also, note that this indicator has been developed for a daily (or higher) timeframe chart.
🔶 SETTINGS
Three sets
High/Low
• color setting
• Swing Length settings for 'High' & 'Low'
• % adjustment for 'High' & 'Low'
• AVG: shows average (when both 'High' and 'Low' are enabled)
Max/Min (maximum open/close, minimum open/close)
• color setting
• Swing Length settings for 'Max' & 'Min'
• % adjustment for 'Max' & 'Min'
• AVG: shows average (when both 'Max' and 'Min' are enabled)
Close H/Close L (close Top/Bottom level)
• color setting
• Swing Length settings for 'Close H' & 'Close L'
• % adjustment for 'Close H' & 'Close L'
• AVG: shows average (when both 'Close H' and 'Close L' are enabled)
Show Dashboard, including Top/Bottom levels of the desired source and calculated a and b values.
Show Swings + Dot size
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.
∞