Adapted RSI w/ Multi-Asset Regime Detection v1.1The relative strength index (RSI) is a momentum indicator used in technical analysis. RSI measures the speed and magnitude of an asset's recent price changes to detect overbought or oversold conditions in the price of said asset.
In addition to identifying overbought and oversold assets, the RSI can also indicate whether your desired asset may be primed for a trend reversal or a corrective pullback in price. It can signal when to buy and sell.
The RSI will oscillate between 0 and 100. Traditionally, an RSI reading of 70 or above indicates an overbought condition. A reading of 30 or below indicates an oversold condition.
The RSI is one of the most popular technical indicators. I intend to offer a fresh spin.
Adapted RSI w/ Multi-Asset Regime Detection
Our Adapted RSI makes necessary improvements to the original Relative Strength Index (RSI) by combining multi-timeframe analysis with multi-asset monitoring and providing traders with an efficient way to analyse market-wide conditions across different timeframes and assets simultaneously. The indicator automatically detects market regimes and generates clear signals based on RSI levels, presenting this data in an organised, easy-to-read format through two dynamic tables. Simplicity is key, and having access to more RSI data at any given time, allows traders to prepare more effectively, especially when trading markets that "move" together.
How we calculate the RSI
First, the RSI identifies price changes between periods, calculating gains and losses from one look-back period to the next. This look-back period averages gains and losses over 14 periods, which in this case would be 14 days, and those gains/losses are calculated based on the daily closing price. For example:
Average Gain = Sum of Gains over the past 14 days / 14
Average Loss = Sum of Losses over the past 14 days / 14
Then we calculate the Relative Strength (RS):
RS = Average Gain / Average Loss
Finally, this is converted to the RSI value:
RSI = 100 - (100 / (1 + RS))
Key Features
Our multi-timeframe RSI indicator enhances traditional technical analysis by offering synchronised Daily, Weekly, and Monthly RSI readings with automatic regime detection. The multi-asset monitoring system allows tracking of up to 10 different assets simultaneously, with pre-configured major pairs that can be customised to any asset selection. The signal generation system provides clear market guidance through automatic regime detection and a five-level signal system, all presented through a sophisticated visual interface with dynamic RSI line colouring and customisable display options.
Quick Guide to Use it
Begin by adding the indicator to your chart and configuring your preferred assets in the "Asset Comparison" settings.
Position the two information tables according to your preference.
The main table displays RSI analysis across three timeframes for your current asset, while the asset table shows a comparative analysis of all monitored assets.
Signals are colour-coded for instant recognition, with green indicating bullish conditions and red for bearish conditions. Pay special attention to regime changes and signal transitions, using multi-timeframe confluence to identify stronger signals.
How it Works (Regime Detection & Signals)
When we say 'Regime', a regime is determined by a persistent trend or in this case momentum and by leveraging this for RSI, which is a momentum oscillator, our indicator employs a relatively simple regime detection system that classifies market conditions as either Bullish (RSI > 50) or Bearish (RSI < 50). Our benchmark between a trending bullish or bearish market is equal to 50. By leveraging a simple classification system helps determine the probability of trend continuation and the weight given to various signals. Whilst we could determine a Neutral regime for consolidating markets, we have employed a 'neutral' signal generation which will be further discussed below...
Signal generation occurs across five distinct levels:
Strong Buy (RSI < 15)
Buy (RSI < 30)
Neutral (RSI 30-70)
Sell (RSI > 70)
Strong Sell (RSI > 85)
Each level represents different market conditions and probability scenarios. For instance, extreme readings (Strong Buy/Sell) indicate the highest probability of mean reversion, while neutral readings suggest equilibrium conditions where traders should focus on the overall regime bias (Bullish/Bearish momentum).
This approach offers traders a new and fresh spin on a popular and well-known tool in technical analysis, allowing traders to make better and more informed decisions from the well presented information across multiple assets and timeframes. Experienced and beginner traders alike, I hope you enjoy this adaptation.
Индикаторы и стратегии
Price Above 50 and 200 EMA with Smiley faces and 200 ema slope
Overview
This advanced indicator provides a comprehensive multi-timeframe analysis of price positioning relative to 50 and 200 Exponential Moving Averages (EMAs), offering traders a quick and intuitive view of market trends across different timeframes.
Key Features
Multi-Timeframe Analysis: Simultaneously evaluates price behavior across 5m, 15m, and other selected timeframes
EMA Trend Visualization: Instantly shows whether price is above or below 50 and 200 EMAs
Slope Direction Indicator: Tracks the directional momentum of the 200 EMA
Customizable Distance Metrics: Option to display distances as absolute values or percentages
Emoji-Based Indicators: Quick visual representation of price positioning
Functionality
The indicator uses color-coded and emoji-based signals to represent:
😊 (Blue): Price is above the EMA
☹️ (Red): Price is below the EMA
⬆️ (Blue): EMA slope is positive
⬇️ (Red): EMA slope is negative
Customization Options
Adjustable EMA periods
Togglable distance display
Distance representation (percentage or absolute value)
Best Used For
Trend identification
Multi-timeframe analysis
Quick market sentiment assessment
Supplementing other technical analysis tools
Recommended Timeframes
Intraday trading
Swing trading
Trend following strategies
Risk Disclaimer
This indicator is a tool for analysis and should not be used in isolation for trading decisions. Always combine with other technical and fundamental analysis, and proper risk management.
AadTrend [InvestorUnknown]The AadTrend indicator is an experimental trading tool that combines a user-selected moving average with the Average Absolute Deviation (AAD) from this moving average. This combination works similarly to the Supertrend indicator but offers additional flexibility and insights. In addition to generating Long and Short signals, the AadTrend indicator identifies RISK-ON and RISK-OFF states for each trade direction, highlighting areas where taking on more risk may be considered.
Core Concepts and Features
Moving Average (User-Selected Type)
The indicator allows users to select from various types of moving averages to suit different trading styles and market conditions:
Simple Moving Average (SMA)
Exponential Moving Average (EMA)
Hull Moving Average (HMA)
Double Exponential Moving Average (DEMA)
Triple Exponential Moving Average (TEMA)
Relative Moving Average (RMA)
Fractal Adaptive Moving Average (FRAMA)
Average Absolute Deviation (AAD)
The Average Absolute Deviation measures the average distance between each data point and the mean, providing a robust estimation of volatility.
aad(series float src, simple int length, simple string avg_type) =>
avg = // Moving average as selected by the user
abs_deviations = math.abs(src - avg)
ta.sma(abs_deviations, length)
This provides a volatility measure that adapts to recent market conditions.
Combining Moving Average and AAD
The indicator creates upper and lower bands around the moving average using the AAD, similar to how the Supertrend indicator uses Average True Range (ATR) for its bands.
AadTrend(series float src, simple int length, simple float aad_mult, simple string avg_type) =>
// Calculate AAD (volatility measure)
aad_value = aad(src, length, avg_type)
// Calculate the AAD-based moving average by scaling the price data with AAD
avg = switch avg_type
"SMA" => ta.sma(src, length)
"EMA" => ta.ema(src, length)
"HMA" => ta.hma(src, length)
"DEMA" => ta.dema(src, length)
"TEMA" => ta.tema(src, length)
"RMA" => ta.rma(src, length)
"FRAMA" => ta.frama(src, length)
avg_p = avg + (aad_value * aad_mult)
avg_m = avg - (aad_value * aad_mult)
var direction = 0
if ta.crossover(src, avg_p)
direction := 1
else if ta.crossunder(src, avg_m)
direction := -1
A chart displaying the moving average with upper and lower AAD bands enveloping the price action.
Signals and Trade States
1. Long and Short Signals
Long Signal: Generated when the price crosses above the upper AAD band,
Short Signal: Generated when the price crosses below the lower AAD band.
2. RISK-ON and RISK-OFF States
These states provide additional insight into the strength of the current trend and potential opportunities for taking on more risk.
RISK-ON Long: When the price moves significantly above the upper AAD band after a Long signal.
RISK-OFF Long: When the price moves back below the upper AAD band, suggesting caution.
RISK-ON Short: When the price moves significantly below the lower AAD band after a Short signal.
RISK-OFF Short: When the price moves back above the lower AAD band.
Highlighted areas on the chart representing RISK-ON and RISK-OFF zones for both Long and Short positions.
A chart showing the filled areas corresponding to trend directions and RISK-ON zones
Backtesting and Performance Metrics
While the AadTrend indicator focuses on generating signals and highlighting risk areas, it can be integrated with backtesting frameworks to evaluate performance over historical data.
Integration with Backtest Library:
import InvestorUnknown/BacktestLibrary/1 as backtestlib
Customization and Calibration
1. Importance of Calibration
Default Settings Are Experimental: The default parameters are not optimized for any specific market condition or asset.
User Calibration: Traders should adjust the length, aad_mult, and avg_type parameters to align the indicator with their trading strategy and the characteristics of the asset being analyzed.
2. Factors to Consider
Market Volatility: Higher volatility may require adjustments to the aad_mult to avoid false signals.
Trading Style: Short-term traders might prefer faster-moving averages like EMA or HMA, while long-term traders might opt for SMA or FRAMA.
Alerts and Notifications
The AadTrend indicator includes built-in alert conditions to notify traders of significant market events:
Long and Short Alerts:
alertcondition(long_alert, "LONG (AadTrend)", "AadTrend flipped ⬆LONG⬆")
alertcondition(short_alert, "SHORT (AadTrend)", "AadTrend flipped ⬇Short⬇")
RISK-ON and RISK-OFF Alerts:
alertcondition(risk_on_long, "RISK-ON LONG (AadTrend)", "RISK-ON LONG (AadTrend)")
alertcondition(risk_off_long, "RISK-OFF LONG (AadTrend)", "RISK-OFF LONG (AadTrend)")
alertcondition(risk_on_short, "RISK-ON SHORT (AadTrend)", "RISK-ON SHORT (AadTrend)")
alertcondition(risk_off_short, "RISK-OFF SHORT (AadTrend)", "RISK-OFF SHORT (AadTrend)")
Important Notes and Disclaimer
Experimental Nature: The AadTrend indicator is experimental and should be used with caution.
No Guaranteed Performance: Past performance is not indicative of future results. Backtesting results may not reflect real trading conditions.
User Responsibility: Traders and investors should thoroughly test and calibrate the indicator settings before applying it to live trading.
Risk Management: Always use proper risk management techniques, including stop-loss orders and position sizing.
USDJPY vanilla indicatorThis Pine Script indicator, USDJPY Strength Index, helps traders evaluate the strength and momentum of the USD/JPY currency pair. It combines the strength of the US Dollar Index (DXY), the inverse of the Japanese Yen Index (JPYX), and the trend of USD/JPY based on moving averages.
Key Features:
1. Strength Measurement: Calculates a score between 0–100 to indicate USD/JPY momentum.
• Above 70: Strong bullish signal (uptrend likely).
• Below 30: Strong bearish signal (downtrend likely).
2. Trend Analysis: Uses 21 EMA and 50 EMA differences to assess trend direction and strength.
3. Visual Indicators:
• Blue line: USDJPY Strength Index.
• Orange line: 50-period EMA of the index for longer-term trends.
• Background colors: Green (bullish) and red (bearish) highlight strong momentum zones.
This indicator provides clear signals to help traders make informed buy or sell decisions for the USD/JPY pair.
tipp: use horizontal line for mark last low and high. when the blue line comes back again you must be ready for open position if the line bounce back. use engulfing pattern for extra confirmation.
[Venturose] MACD x BB x STDEV x RVIDescription:
The MACD x BB x STDEV x RVI combines MACD, Bollinger Bands, Standard Deviation, and Relative Volatility Index into a single tool. This indicator is designed to provide insights into market trends, momentum, and volatility. It generates buy and sell signals, by analyzing the interactions between these components. These buy and sell signals are not literal, and should be used in combination with the current trend.
How It Works:
MACD: Tracks momentum and trend direction using customizable fast and slow EMA periods.
Bollinger Bands: Adds volatility bands to MACD to identify overextension zones.
Standard Deviation: Dynamically adjusts the Bollinger Band width based on MACD volatility.
RVI (Relative Volatility Index): Confirms momentum extremes with upper and lower threshold markers.
Custom Logic: Includes a trigger system ("inside" or "flipped") to adapt signals to various market conditions and an optional filter to reduce noise.
Key Features:
Combines MACD and Bollinger Bands with volatility and momentum confirmations from RVI.
Dynamic color-coded plots for identifying bullish, bearish, and neutral trends.
Customizable parameters for tailoring the indicator to different strategies.
Optional signal filtering to refine buy and sell triggers.
Alerts for buy and sell signals based on signal logic.
Why It’s Unique:
This indicator combines momentum (MACD), volatility (Bollinger Bands and Standard Deviation), and confirmation signals (RVI thresholds) into a unified system. It introduces custom "inside" and "flipped" triggers for adaptable signal generation and includes signal filtering to reduce noise. The addition of RVI-based hints helps identify early overbought or oversold conditions, providing an extra layer of insight for decision-making. The dynamic integration of these components ensures a comprehensive yet straightforward analysis tool for various market conditions.
Data extraction to clipboardHow to extract data from indicators/stratagies to clipbaord
///// Educational purpose only /////
This could be useful to store the best parameters for a strategy for instance...
to store and reuse them, to build some code in automatic , to transfer...
using the " log.info() " function ...
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.
Supertrend and MACD strategyThe Supertrend and MACD Strategy is a comprehensive trading approach designed to capitalize on market trends by using a combination of the Supertrend indicator, the Exponential Moving Average (EMA), and the Moving Average Convergence Divergence (MACD). This strategy aims to identify optimal entry and exit points for both long and short trades, while incorporating strict risk management rules.
Indicators Used:
Supertrend: This indicator is used to identify the overall trend direction. It provides clear signals for trend reversals, helping traders to enter trades in the direction of the prevailing trend.
200-period EMA: This long-term moving average is used to determine the primary trend direction. The strategy only takes long trades when the price is above the 200 EMA and short trades when the price is below it.
MACD: The MACD is used to gauge the momentum and confirm the signals provided by the Supertrend and EMA. It consists of the MACD line, the signal line, and the histogram.
Entry Conditions:
Long Entry:
The Supertrend indicator shows an uptrend (direction > 0).
The MACD line is above the signal line (macd > signal).
The price is above the 200-period EMA (close > ema200).
Short Entry:
The Supertrend indicator shows a downtrend (direction < 0).
The MACD line is below the signal line (macd < signal).
The price is below the 200-period EMA (close < ema200).
Exit Conditions:
Long Exit:
Exit the long position when the MACD line crosses below the signal line (ta.crossunder(macd, signal)).
Set a stop loss (SL) below the lowest low of the last 10 periods (lowestLow - 1).
Short Exit:
Exit the short position when the MACD line crosses above the signal line (ta.crossover(macd, signal)).
Set a stop loss (SL) above the highest high of the last 10 periods (highestHigh + 1).
Risk Management:
The strategy ensures that no new positions are opened if there is already an open trade, preventing overexposure in the market.
Alerts:
Alerts are set to notify traders when the MACD crosses the signal line, providing timely updates for potential exit points.
Momentum Zones [TradersPro]OVERVIEW
The Momentum Zones indicator is designed for momentum stock traders to provide a visible trend structure with actionable price levels. The indicator has been designed for high-growth, bullish stocks on a daily time frame but can be used on any chart and timeframe.
Momentum zones help traders focus on the momentum structure of price, enabling disciplined trading plans with specific entry, exit, and risk management levels.
It is built using CCI values, allowing for fixed trend range calculations. It is most effective when applied to screens of stocks with high RSI, year-to-date (YTD) price gains of 25% or higher, as well as stocks showing growth in both sales and earnings quarter-over-quarter and year-over-year.
CONCEPTS
The indicator defines and colors uptrends (green), downtrends (red), and trends in transition or pausing (yellow).
The indicator can be used for new trend entry or trend continuation entry. New trend entry can be done on the first green bar after a red bar. Trend continuation entries can be done with the first green bar after a yellow bar. The yellow transition zones can be used as price buffers for stop-loss management on new entries.
To see the color changes, users need to be sure to uncheck the candlestick color settings. This can be done by right-clicking the chart, going to Symbols, and unchecking the candle color body, border, and wick boxes.
Remember to check them if the indicator is turned off, or the candles will be blank with no color.
The settings also correspond to the screening function to get a list of stocks entering various momentum zones so you can have a prime list of the stocks meeting any other fundamental criteria you may desire. Traders can then use the indicator for the entry and risk structure of the trading plan.
Normalized True Range - Grouped by WeekdaysThis indicator helps traders analyze daily volatility patterns across different days of the week by calculating normalized price ranges.
Unlike traditional volatility measures, it uses a normalized approach by dividing the daily range (high-low) by the midpoint price and multiplying by 100, providing a percentage-based measure that's comparable across different price levels. This normalization makes it particularly useful for comparing volatility patterns across different assets or time periods.
The indicator also includes a statistical overlay that highlights extreme volatility events. By calculating the 5th and 95th percentiles of the normalized ranges within your specified date range, it creates upper and lower bounds that help identify outlier days where volatility was exceptionally high or low.
These bounds appear as horizontal lines on the chart, making it easy to spot when current volatility breaks out of its historical norms.
The data is presented in both visual and tabular formats, with a comprehensive table showing the maximum, minimum, average, and 25th percentile ranges for each day of the week. This dual presentation allows traders to both quickly spot patterns visually and access detailed statistics for deeper analysis.
The user can customize the analysis period through simple date range inputs, making it flexible for different analytical timeframes.
Ultra Liquidity HeatmapThe Ultra Liquditiy Heatmap is a unique visualization tool designed to map out areas of high liquidity on the chart using a dynamic heatmap, helping traders identify significant price zones effectively.
Introduction
The Ultra Liquidity Heatmap is an advanced indicator for visualizing key liquidity areas on your chart. Whether you're a scalper, swing trader, or long-term investor, understanding liquidity dynamics can offer a powerful edge in market analysis. This tool provides a straightforward visual representation of these zones directly on your chart.
Detailed Description
The Ultra Liquidity Heatmap identifies high and low liquidity zones by dynamically marking price ranges with heatmap-like boxes.
.........
Dynamic Zone Creation
For low liquidity zones, the script draws boxes extending from the low to the high of the bar. If the price breaks below a previously defined zone, that box is removed.
Similarly, for high liquidity zones, the script tracks and highlights price ranges above the current high, removing boxes if the price exceeds the zone.
.....
Customizable Visuals
Users can adjust the transparency and color of the heatmap, tailoring the visualization to their preference.
.....
Real-Time Updates
The indicator constantly updates as new price data comes in, ensuring that the heatmap reflects the most current liquidity zones.
.....
Efficiency and Scalability
The script uses optimized arrays and a maximum box limit of 500 to ensure smooth performance even on higher timeframes or during high-volatility periods.
.........
The Ultra Liquidity Heatmap bridges the gap between raw price data and actionable market insight. Add it to your toolbox and elevate your trading strategy today!
Weis Wave Max█ Overview
Weis Wave Max is the result of my weis wave study.
David Weis said,
"Trading with the Weis Wave involves changes in behavior associated with springs, upthrusts, tests of breakouts/breakdowns, and effort vs reward. The most common setup is the low-volume pullback after a bullish/bearish change in behavior."
THE STOCK MARKET UPDATE (February 24, 2013)
I inspired from his sentences and made this script.
Its Main feature is to identify the largest wave in Weis wave and advantageous trading opportunities.
█ Features
This indicator includes several features related to the Weis Wave Method.
They help you analyze which is more bullish or bearish.
Highlight Max Wave Value (single direction)
Highlight Abnormal Max Wave Value (both directions)
Support and Resistance zone
Signals and Setups
█ Usage
Weis wave indicator displays cumulative volume for each wave.
Wave volume is effective when analyzing volume from VSA (Volume Spread Analysis) perspective.
The basic idea of Weis wave is large wave volume hint trend direction. This helps identify proper entry point.
This indicator highlights max wave volume and displays the signal and then proper Risk Reward Ratio entry frame.
I defined Change in Behavior as max wave volume (single direction).
Pullback is next wave that does not exceed the starting point of CiB wave (LH sell entry, HL buy entry).
Change in Behavior Signal ○ appears when pullback is determined.
Change in Behavior Setup (Entry frame) appears when condition of Min/Max Pullback is met and follow through wave breaks end point of CiB wave.
This indicator has many other features and they can also help a user identify potential levels of trade entry and which is more bullish or bearish.
In the screenshot below we can see wave volume zones as support and resistance levels. SOT and large wave volume /delta price (yellow colored wave text frame) hint stopping action.
█ Settings
Explains the main settings.
-- General --
Wave size : Allows the User to select wave size from ① Fixed or ② ATR. ② ATR is Factor x ATR(Length).
Display : Allows the User to select how many wave text and zigzag appear.
-- Wave Type --
Wave type : Allows the User to select from Volume or Volume and Time.
Wave Volume / delta price : Displays Wave Volume / delta price.
Simplified value : Allows the User to select wave text display style from ① Divisor or ② Normalized. Normalized use SMA.
Decimal : Allows the User to select the decimal point in the Wave text.
-- Highlight Abnormal Wave --
Highlight Max Wave value (single direction) : Adds marks to the Wave text to highlight the max wave value.
Lookback : Allows the User to select how many waves search for the max wave value.
Highlight Abnormal Wave value (both directions) : Changes wave text size, color or frame color to highlight the abnormal wave value.
Lookback : Allows the User to select SMA length to decide average wave value.
Large/Small factor : Allows the User to select the threshold large wave value and small wave value. Average wave value is 1.
delta price : Highlights large delta price by large wave text size, small by small text size.
Wave Volume : Highlights large wave volume by yellow colored wave text, small by gray colored.
Wave Volume / delta price : highlights large Wave Volume / delta price by yellow colored wave text frame, small by gray colored.
-- Support and Resistance --
Single side Max Wave Volume / delta price : Draws dashed border box from end point of Max wave volume / delta price level.
Single side Max Wave Volume : Draws solid border box from start point of Max wave volume level.
Bias Wave Volume : Draws solid border box from start point of bias wave volume level.
-- Signals --
Bias (Wave Volume / delta price) : Displays Bias mark when large difference in wave volume / delta price before and after.
Ratio : Decides the threshold of become large difference.
3Decrease : Displays 3D mark when a continuous decrease in wave volume.
Shortening Of the Thrust : Displays SOT mark when a continuous decrease in delta price.
Change in Behavior and Pullback : Displays CiB mark when single side max wave volume and pullback.
-- Setups --
Change in Behavior and Pullback and Breakout : Displays entry frame when change in behavior and pullback and then breakout.
Min / Max Pullback : Decides the threshold of min / max pullback.
If you need more information, please read the indicator's tooltip.
█ Conclusion
Weis Wave is powerful interpretation of volume and its tell us potential trend change and entry point which can't find without weis wave.
It's not the holy grail, but improve your chart reading skills and help you trade rationally (at least from VSA perspective).
Kalman Trend Strength Index (K-TSI)The Kalman Trend Strength Index (K-TSI) is an innovative technical indicator that combines the Kalman filter with correlation analysis to measure trend strength in financial markets. This sophisticated tool aims to provide traders with a more refined method for trend analysis and market dynamics interpretation.
The use of the Kalman filter is a key feature of the K-TSI. This advanced algorithm is renowned for its ability to extract meaningful signals from noisy data. In financial markets, this translates to smoothing out price action while maintaining responsiveness to genuine market movements. By applying the Kalman filter to price data before performing correlation analysis, the K-TSI potentially offers more stable and reliable trend signals.
The synergy between the Kalman-filtered price data and correlation analysis creates an oscillator that attempts to capture market dynamics more effectively. The correlation component contributes by measuring the strength and consistency of price movements relative to time, while the Kalman filter adds robustness by reducing the impact of market noise. Basing these calculations on Kalman-filtered data may help reduce false signals and provide a clearer picture of underlying market trends.
A notable aspect of the K-TSI is its normalization process. This approach adjusts the indicator's values to a standardized range (-1 to 1), allowing for consistent interpretation across different market conditions and timeframes. This flexibility, combined with the noise-reduction properties of the Kalman filter, positions the K-TSI as a potentially useful tool for various market environments.
In practice, traders might find that the K-TSI offers several potential benefits:
Smoother trend identification, which could aid in detecting the start and end of trends more accurately.
Possibly reduced false signals, particularly in choppy or volatile markets.
Potential for improved trend strength assessment, which might lead to more confident trading decisions.
Consistent performance across different timeframes, due to the adaptive nature of the Kalman filter and the normalization process.
The K-TSI's visual representation as a color-coded histogram further enhances its utility. The changing colors and intensities provide an intuitive way to gauge both the direction and strength of trends, making it easier for traders to quickly assess market conditions.
While the K-TSI builds upon existing concepts in technical analysis, its integration of the Kalman filter with correlation analysis offers traders an interesting tool for market analysis. It represents an attempt to address common challenges in technical analysis, such as noise reduction and trend strength quantification.
As with any technical indicator, the K-TSI should be used as part of a broader trading strategy rather than in isolation. Its effectiveness will depend on how well it aligns with a trader's individual approach and market conditions. For traders looking to explore a more refined trend strength oscillator, the Kalman Trend Strength Index could be a worthwhile addition to their analytical toolkit.
COT Report Indicator with Selectable Data TypeOverview
The COT Report Indicator with Selectable Data Types is a powerful tool for traders who want to gain deeper insights into market sentiment using the Commitment of Traders (COT) data. This indicator allows you to visualize the net positions of different participant categories—Commercial, Noncommercial, and Nonreportable—directly on your chart.
The indicator is fully customizable, allowing you to select the type of data to display, sync with your chart's timeframe, or choose a custom timeframe. Whether you're analyzing gold, crude oil, indices, or forex pairs, this indicator adapts seamlessly to your trading needs.
Features
Dynamic Data Selection:
Choose between Commercial, Noncommercial, or Nonreportable data types.
Analyze the net positions of market participants for more informed decision-making.
Flexible Timeframes:
Sync with the chart's timeframe for quick analysis.
Select a custom timeframe to view COT data at your preferred granularity.
Wide Asset Coverage:
Supports various assets, including gold, silver, crude oil, indices, and forex pairs.
Automatically adjusts to the ticker you're analyzing.
Clear Visual Representation:
Displays Net Long, Net Short, and Net Difference (Long - Short) positions with distinct colors for easy interpretation.
Error Handling:
Alerts you if the symbol is unsupported, ensuring you know when COT data isn't available for a specific asset.
How to Use
Add the Indicator:
Click "Indicators" in TradingView and search for "COT Report Indicator with Selectable Data Types."
Add it to your chart.
Customize the Settings:
Data Type: Choose between Commercial, Noncommercial, or Nonreportable positions.
Data Source: Select "Futures Only" or "Futures and Options."
Timeframe: Sync with the chart's timeframe or specify a custom one (e.g., weekly, monthly).
Interpret the Data:
Green Line: Net Long Positions.
Red Line: Net Short Positions.
Black Line: Net Difference (Long - Short).
Supported Symbols:
Gold, Silver, Crude Oil, Natural Gas, Forex Pairs, S&P 500, US30, NAS100, and more.
Who Can Benefit
Trend Followers: Identify the buying/selling trends of Commercial and Noncommercial participants.
Sentiment Analysts: Understand shifts in sentiment among major market players.
Long-Term Traders: Use COT data to confirm or contradict your fundamental analysis.
Example Use Case
For example, if you're trading gold (XAUUSD) and select Noncommercial Positions, you’ll see the long and short positions of speculators. An increase in net long positions may signal bullish sentiment, while an increase in net short positions may indicate bearish sentiment.
If you switch to Commercial Positions, you'll get insights into how hedgers and institutions are positioning themselves, helping you confirm or counterbalance your current trading strategy.
Limitations
The indicator only works with supported symbols (COT data availability is limited to specific assets).
The COT data is updated weekly, so it is not suitable for short-term intraday trading.
Precision Swing Point V2.0 - [Gozlan]"Precision Swing Point V2.0," is well-structured and aims to highlight specific conditions in the chart while factoring in time zones and user configurations. Here's a quick breakdown and a couple of improvements or fixes to consider:
Key Features:
Multi-Symbol Analysis:
Incorporates three symbols (Symbol 1, Symbol 2, and Symbol 3) and compares their open/close values to derive candle states (green/red).
Highlighting Conditions:
Green: When Symbol 2 is red and Symbol 1 is green.
Red: When Symbol 2 is green and Symbol 1 is red.
Blue: When Symbol 3 is green and Symbol 1 is red.
Custom Time Highlights:
Allows users to specify times for highlighting specific bars.
Timezone Flexibility:
Time calculations adjust based on user-defined UTC offsets.
Trading Sessions with Highs and LowsTrading Sessions with Highs and Lows is designed to visually highlight specific trading sessions on the chart, providing traders with key insights into market behavior during these time periods. Here’s a detailed explanation of how the indicator works:
Key Features
1. Session Boxes:
• The indicator plots colored boxes on the chart to represent the price range of defined trading sessions.
• Each box spans the session’s start and end times and encapsulates the high and low prices during that period.
• Two trading sessions are defined by default:
• USA Trading Session: 9:30 AM - 4:00 PM (New York Time).
• UK Trading Session: 8:00 AM - 4:30 PM (London Time).
2. Session Labels:
• The name of the session (e.g., “USA” or “UK”) is displayed above the session box for clear identification.
3. High and Low Markers:
• Markers are added to the chart at the session’s high and low points:
• High Marker: A green label indicating the session high.
• Low Marker: A red label indicating the session low.
4. Dynamic Reset:
• After the session ends, the session high and low values are reset to na to prepare for the next trading day.
5. Customizable Background Colors:
• Each session’s box has a distinct, semi-transparent background color for better visual separation.
How It Works
1. Core Functionality:
• A function, plot_box, takes the session name, start time, end time, and background color as input.
• It calculates whether the current time is within the session.
• During the session:
• It tracks the session’s highest and lowest prices.
• It identifies the bars where the high and low occurred.
• At the session’s end:
• It plots a box on the chart covering the session’s time and price range.
• Labels are created for the session name and its high/low points.
2. Session Timing:
• Timestamps for the USA and UK trading sessions are calculated using the timestamp function with respective time zones.
3. Visual Elements:
• The box.new function draws the session boxes on the chart.
• The label.new function creates session name and high/low labels.
Usage
• Overlay Mode: The indicator is applied directly on the price chart (overlay=true), making it easy to visualize session-specific price behavior.
• Trading Strategy:
• Identify session-specific support and resistance levels.
• Observe price action trends during key trading periods.
• Align trading decisions with session dynamics.
Customization
While the indicator is preset for the USA and UK trading sessions, it can be easily modified:
1. Add/Remove Sessions: Define additional sessions by providing their start and end times.
2. Change Colors: Update the background_color in the plot_box calls to use different colors for sessions.
3. Adjust Time Zones: Replace the current time zones with others relevant to your trading style.
Visualization Example
• USA Session:
• Time: 9:30 AM - 4:00 PM (New York Time).
• Box Color: Semi-transparent orange.
• UK Session:
• Time: 8:00 AM - 4:30 PM (London Time).
• Box Color: Semi-transparent green.
Why Use This Indicator?
1. Market Awareness: Easily spot price behavior during high-liquidity trading periods.
2. Trend Analysis: Analyze how sessions overlap or affect each other.
3. Session Boundaries: Use session high/low levels as dynamic support and resistance zones.
This indicator is an essential tool for intraday and swing traders who want to align their strategies with key market timings.
Edwin K Stochastic Candle ColorsThe Stochastic Candle Colors indicator highlights price action using candle colors based on signals from the stochastic oscillator. Here's how to use it:
1. Indicator Purpose
This indicator overlays on your price chart and changes candle colors based on stochastic oscillator signals:
Green candles: Indicate a bullish signal when the %K line crosses above the %D line in an oversold area (below 20).
Red candles: Indicate a bearish signal when the %K line crosses below the %D line in an overbought area (above 80).
2. How to Use the Inputs
K (periodK): The lookback period for calculating the %K line of the stochastic oscillator. A smaller value makes the indicator more sensitive to price changes.
D (periodD): The period for smoothing the %K line to get the %D line. A larger value creates smoother signals but may result in delays.
Smooth (smoothK): The additional smoothing applied to the %K line before calculating the %D line. This helps reduce noise.
3. How to Interpret the Candle Colors
Green Candle:
Occurs when the %K line crosses above the %D line in the oversold zone (below 20).
Signals a potential bullish reversal.
Red Candle:
Occurs when the %K line crosses below the %D line in the overbought zone (above 80).
Signals a potential bearish reversal.
No Color:
No crossover occurs, or the crossover doesn't happen in overbought/oversold zones.
4. Application in Trading
Entry Points:
Buy when you see a green candle and confirm with other indicators or chart patterns.
Sell when you see a red candle and confirm with additional signals.
Trend Context:
Combine this indicator with trend-following tools like moving averages or support/resistance levels to improve accuracy.
Stop Loss/Take Profit:
Use nearby swing highs/lows for stop-loss placement.
Set profit targets based on risk-reward ratios or key levels.
5. Customization
Adjust the input parameters (K, D, and Smooth) to align the indicator's sensitivity with your trading style:
Short-term traders might prefer lower values for quicker signals.
Long-term traders might opt for higher values for smoother, more reliable signals.
6. Limitations
Signals in isolation might not be reliable. Always use this indicator in conjunction with other tools.
Avoid using during low volatility or sideways markets as stochastic oscillators can produce false signals.
Weekly H/L DOTWThe Weekly High/Low Day Breakdown indicator provides a detailed statistical analysis of the days of the week (Monday to Sunday) on which weekly highs and lows occur for a given timeframe. It helps traders identify recurring patterns, correlations, and tendencies in price behavior across different days of the week. This can assist in planning trading strategies by leveraging day-specific patterns.
The indicator visually displays the statistical distribution of weekly highs and lows in an easy-to-read tabular format on your chart. Users can customize how the data is displayed, including whether the table is horizontal or vertical, the size of the text, and the position of the table on the chart.
Key Features:
Weekly Highs and Lows Identification:
Tracks the highest and lowest price of each trading week.
Records the day of the week on which these events occur.
Customizable Table Layout:
Option to display the table horizontally or vertically.
Text size can be adjusted (Small, Normal, or Large).
Table position is customizable (top-right, top-left, bottom-right, or bottom-left of the chart).
Flexible Value Representation:
Allows the display of values as percentages or as occurrences.
Default setting is occurrences, but users can toggle to percentages as needed.
Day-Specific Display:
Option to hide Saturday or Sunday if these days are not relevant to your trading strategy.
Visible Date Range:
Users can define a start and end date for the analysis, focusing the results on a specific period of interest.
User-Friendly Interface:
The table dynamically updates based on the selected timeframe and visibility of the chart, ensuring the displayed data is always relevant to the current context.
Adaptable to Custom Needs:
Includes all-day names from Monday to Sunday, but allows for specific days to be excluded based on the user’s preferences.
Indicator Logic:
Data Collection:
The indicator collects daily high, low, day of the week, and time data from the selected ticker using the request.security() function with a daily timeframe ('D').
Weekly Tracking:
Tracks the start and end times of each week.
During each week, it monitors the highest and lowest prices and the days they occurred.
Weekly Closure:
When a week ends (detected by Sunday’s daily candle), the indicator:
Updates the statistics for the respective days of the week where the weekly high and low occurred.
Resets tracking variables for the next week.
Visible Range Filter:
Only processes data for weeks that fall within the visible range of the chart, ensuring the table reflects only the visible portion of the chart.
Statistical Calculations:
Counts the number of weekly highs and lows for each day.
Calculates percentages relative to the total number of weeks in the visible range.
Dynamic Table Display:
Depending on user preferences, displays the data either horizontally or vertically.
Formats the table with proper alignment, colors, and text sizes for easy readability.
Custom Value Representation:
If set to "percentages," displays the percentage of weeks a high/low occurred on each day.
If set to "occurrences," displays the raw count of weekly highs/lows for each day.
Input Parameters:
High Text Color:
Color for the text in the "Weekly High" row or column.
Low Text Color:
Color for the text in the "Weekly Low" row or column.
High Background Color:
Background color for the "Weekly High" row or column.
Low Background Color:
Background color for the "Weekly Low" row or column.
Table Background Color:
General background color for the table.
Hide Saturday:
Option to exclude Saturday from the analysis and table.
Hide Sunday:
Option to exclude Sunday from the analysis and table.
Values Format:
Dropdown menu to select "percentages" or "occurrences."
Default value: "occurrences."
Table Position:
Dropdown menu to select the table position on the chart: "top_right," "top_left," "bottom_right," "bottom_left."
Default value: "top_right."
Text Size:
Dropdown menu to select text size: "Small," "Normal," "Large."
Default value: "Normal."
Vertical Table Format:
Checkbox to toggle the table layout:
Checked: Table displays days vertically, with Monday at the top.
Unchecked: Table displays days horizontally.
Start Date:
Allows users to specify the starting date for the analysis.
End Date:
Allows users to specify the ending date for the analysis.
Use Cases:
Day-Specific Pattern Recognition:
Identify if specific days, such as Monday or Friday, are more likely to form weekly highs or lows.
Seasonal Analysis:
Use the start and end date filters to analyze patterns during specific trading seasons.
Strategy Development:
Plan day-based entry and exit strategies by identifying recurring patterns in weekly highs/lows.
Historical Review:
Study historical data to understand how market behavior has changed over time.
TradingView TOS Compliance Notes:
Originality:
This script is uniquely designed to provide day-based statistics for weekly highs and lows, which is not a common feature in other publicly available indicators.
Usefulness:
Offers practical insights for traders interested in understanding day-specific price behavior.
Detailed Description:
Fully explains the purpose, features, logic, input settings, and use cases of the indicator.
Includes clear and concise details on how each input works.
Clear Input Descriptions:
All input parameters are clearly named and explained in the script and this description.
No Redundant Functionality:
Focused specifically on tracking weekly highs and lows, ensuring the indicator serves a distinct purpose without unnecessary features.
Simple Decesion Matrix Classification Algorithm [SS]Hello everyone,
It has been a while since I posted an indicator, so thought I would share this project I did for fun.
This indicator is an attempt to develop a pseudo Random Forest classification decision matrix model for Pinescript.
This is not a full, robust Random Forest model by any stretch of the imagination, but it is a good way to showcase how decision matrices can be applied to trading and within Pinescript.
As to not market this as something it is not, I am simply calling it the "Simple Decision Matrix Classification Algorithm". However, I have stolen most of the aspects of this machine learning algo from concepts of Random Forest modelling.
How it works:
With models like Support Vector Machines (SVM), Random Forest (RF) and Gradient Boosted Machine Learning (GBM), which are commonly used in Machine Learning Classification Tasks (MLCTs), this model operates similarity to the basic concepts shared amongst those modelling types. While it is not very similar to SVM, it is very similar to RF and GBM, in that it uses a "voting" system.
What do I mean by voting system?
How most classification MLAs work is by feeding an input dataset to an algorithm. The algorithm sorts this data, categorizes it, then introduces something called a confusion matrix (essentially sorting the data in no apparently order as to prevent over-fitting and introduce "confusion" to the algorithm to ensure that it is not just following a trend).
From there, the data is called upon based on current data inputs (so say we are using RSI and Z-Score, the current RSI and Z-Score is compared against other RSI's and Z-Scores that the model has saved). The model will process this information and each "tree" or "node" will vote. Then a cumulative overall vote is casted.
How does this MLA work?
This model accepts 2 independent variables. In order to keep things simple, this model was kept as a three node model. This means that there are 3 separate votes that go in to get the result. A vote is casted for each of the two independent variables and then a cumulative vote is casted for the overall verdict (the result of the model's prediction).
The model actually displays this system diagrammatically and it will likely be easier to understand if we look at the diagram to ground the example:
In the diagram, at the very top we have the classification variable that we are trying to predict. In this case, we are trying to predict whether there will be a breakout/breakdown outside of the normal ATR range (this is either yes or no question, hence a classification task).
So the question forms the basis of the input. The model will track at which points the ATR range is exceeded to the upside or downside, as well as the other variables that we wish to use to predict these exceedences. The ATR range forms the basis of all the data flowing into the model.
Then, at the second level, you will see we are using Z-Score and RSI to predict these breaks. The circle will change colour according to "feature importance". Feature importance basically just means that the indicator has a strong impact on the outcome. The stronger the importance, the more green it will be, the weaker, the more red it will be.
We can see both RSI and Z-Score are green and thus we can say they are strong options for predicting a breakout/breakdown.
So then we move down to the actual voting mechanisms. You will see the 2 pink boxes. These are the first lines of voting. What is happening here is the model is identifying the instances that are most similar and whether the classification task we have assigned (remember out ATR exceedance classifier) was either true or false based on RSI and Z-Score.
These are our 2 nodes. They both cast an individual vote. You will see in this case, both cast a vote of 1. The options are either 1 or 0. A vote of 1 means "Yes" or "Breakout likely".
However, this is not the only voting the model does. The model does one final vote based on the 2 votes. This is shown in the purple box. We can see the final vote and result at the end with the orange circle. It is 1 which means a range exceedance is anticipated and the most likely outcome.
The Data Table Component
The model has many moving parts. I have tried to represent the pivotal functions diagrammatically, but some other important aspects and background information must be obtained from the companion data table.
If we bring back our diagram from above:
We can see the data table to the left.
The data table contains 2 sections, one for each independent variable. In this case, our independent variables are RSI and Z-Score.
The data table will provide you with specifics about the independent variables, as well as about the model accuracy and outcome.
If we take a look at the first row, it simply indicates which independent variable it is looking at. If we go down to the next row where it reads "Weighted Impact", we can see a corresponding percent. The "weighted impact" is the amount of representation each independent variable has within the voting scheme. So in this case, we can see its pretty equal, 45% and 55%, This tells us that there is a slight higher representation of z-score than RSI but nothing to worry about.
If there was a major over-respresentation of greater than 30 or 40%, then the model would risk being skewed and voting too heavily in favour of 1 variable over the other.
If we move down from there we will see the next row reads "independent accuracy". The voting of each independent variable's accuracy is considered separately. This is one way we can determine feature importance, by seeing how well one feature augments the accuracy. In this case, we can see that RSI has the greatest importance, with an accuracy of around 87% at predicting breakouts. That makes sense as RSI is a momentum based oscillator.
Then if we move down one more, we will see what each independent feature (node) has voted for. In this case, both RSI and Z-Score voted for 1 (Breakout in our case).
You can weigh these in collaboration, but its always important to look at the final verdict of the model, which if we move down, we can see the "Model prediction" which is "Bullish".
If you are using the ATR breakout, the model cannot distinguish between "Bullish" or "Bearish", must that a "Breakout" is likely, either bearish or bullish. However, for the other classification tasks this model can do, the results are either Bullish or Bearish.
Using the Function:
Okay so now that all that technical stuff is out of the way, let's get into using the function. First of all this function innately provides you with 3 possible classification tasks. These include:
1. Predicting Red or Green Candle
2. Predicting Bullish / Bearish ATR
3. Predicting a Breakout from the ATR range
The possible independent variables include:
1. Stochastics,
2. MFI,
3. RSI,
4. Z-Score,
5. EMAs,
6. SMAs,
7. Volume
The model can only accept 2 independent variables, to operate within the computation time limits for pine execution.
Let's quickly go over what the numbers in the diagram mean:
The numbers being pointed at with the yellow arrows represent the cases the model is sorting and voting on. These are the most identical cases and are serving as the voting foundation for the model.
The numbers being pointed at with the pink candle is the voting results.
Extrapolating the functions (For Pine Developers:
So this is more of a feature application, so feel free to customize it to your liking and add additional inputs. But here are some key important considerations if you wish to apply this within your own code:
1. This is a BINARY classification task. The prediction must either be 0 or 1.
2. The function consists of 3 separate functions, the 2 first functions serve to build the confusion matrix and then the final "random_forest" function serves to perform the computations. You will need all 3 functions for implementation.
3. The model can only accept 2 independent variables.
I believe that is the function. Hopefully this wasn't too confusing, it is very statsy, but its a fun function for me! I use Random Forest excessively in R and always like to try to convert R things to Pinescript.
Hope you enjoy!
Safe trades everyone!
ADX and DI Trend meter and status table IndicatorThis ADX (Average Directional Index) and DI (Directional Indicator) indicator helps identify:
Trend Direction & Strength:
LONG: +DI above -DI with ADX > 20
SHORT: -DI above +DI with ADX > 20
RANGE: ADX < 20 indicates choppy/sideways market
Trading Signals:
Bullish: +DI crosses above -DI (green triangle)
Bearish: -DI crosses below +DI (red triangle)
ADX Strength Levels:
Strong: ADX ≥ 50
Moderate: ADX 30-49
Weak: ADX 20-29
No Trend: ADX < 20
Best Uses:
Trend confirmation before entering trades
Identifying ranging vs trending markets
Exit signal when trend weakens
Works well on multiple timeframes
Most effective in combination with other indicators
The table displays current trend direction and ADX strength in real-time
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.
∞
NextBarColorNextBarColor
This is two-bars pattern search/matching indicator.
This indicator compares multiple values:
current bar high with previous bar open
current bar high with previous bar close
current bar high with previous bar high
current bar high with previous bar low
current bar low with previous bar open
current bar low with previous bar close
current bar low with previous bar high
current bar low with previous bar low
current bar close/current_price with previous bar high
current bar close/current_price with previous bar low
current bar close/current_price with previous bar open
current bar close/current_price with previous bar close
and searches for the same combination of 2 bars (current and previous) in the past.
Then shows as % value how many times the next bar went up or down.
Grey bar compares ups and downs with all results, including cases when price did not move.
My testing is showing better results when current and previous bars colors are also used in the search.
Weekly Bullish Pattern DetectorThis script is a TradingView Pine Script designed to detect a specific bullish candlestick pattern on the weekly chart. Below is a detailed breakdown of its components:
1. Purpose
The script identifies a four-candle bullish pattern where:
The first candle is a long green (bullish) candlestick.
The second and third candles are small-bodied candles, signifying consolidation or indecision.
The fourth candle is another long green (bullish) candlestick.
When this pattern is detected, the script:
Marks the chart with a visual label.
Optionally triggers an alert to notify the trader.
2. Key Features
Overlay on Chart:
indicator("Weekly Bullish Pattern Detector", overlay=true) ensures the indicator draws directly on the price chart.
Customizable Inputs:
length (Body Size Threshold):
Defines the minimum percentage of the total range that qualifies as a "long" candle body (default: 14%).
smallCandleThreshold (Small Candle Body Threshold):
Defines the maximum percentage of the total range that qualifies as a "small" candle body (default: 10%).
Candlestick Property Calculations:
bodySize: Measures the absolute size of the candle body (close - open).
totalRange: Measures the total high-to-low range of the candle.
bodyPercentage: Calculates the proportion of the body size relative to the total range ((bodySize / totalRange) * 100).
isGreen and isRed: Identify bullish (green) or bearish (red) candles based on their open and close prices.
Pattern Conditions:
longGreenCandle:
Checks if the candle is bullish (isGreen) and its body percentage exceeds the defined length threshold.
smallCandle:
Identifies small-bodied candles where the body percentage is below the smallCandleThreshold.
consolidation:
Confirms the second and third candles are both small-bodied (smallCandle and smallCandle ).
Bullish Pattern Detection:
bullishPattern:
Detects the full four-candle sequence:
The first candle (longGreenCandle ) is a long green candle.
The second and third candles (consolidation) are small-bodied.
The fourth candle (longGreenCandle) is another long green candle.
Visualization:
plotshape(bullishPattern):
Draws a green label ("Pattern") below the price chart whenever the pattern is detected.
Alert Notification:
alertcondition(bullishPattern):
Sends an alert with the message "Bullish Pattern Detected on Weekly Chart" whenever the pattern is found.
3. How It Works
Evaluates Candle Properties:
For each weekly candle, the script calculates its size, range, and body percentage.
Identifies Each Component of the Pattern:
Checks for a long green candle (first and fourth).
Verifies the presence of two small-bodied candles (second and third).
Detects and Marks the Pattern:
Confirms the sequence and marks the chart with a label if the pattern is complete.
Sends Alerts:
Notifies the trader when the pattern is detected.
4. Use Cases
This script is ideal for:
Swing Traders:
Spotting weekly patterns that indicate potential bullish continuations.
Breakout Traders:
Identifying consolidation zones followed by upward momentum.
Pattern Recognition:
Automatically detecting a commonly used bullish formation.
5. Key Considerations
Timeframe: Works best on weekly charts.
Customization: The thresholds for "long" and "small" candles can be adjusted to suit different markets or volatility levels.
Limitations:
It doesn't confirm the pattern's success; further analysis (e.g., volume, support/resistance levels) may be required for validation