AI Trend Navigator [K-Neighbor]█ Overview
In the evolving landscape of trading and investment, the demand for sophisticated and reliable tools is ever-growing. The AI Trend Navigator is an indicator designed to meet this demand, providing valuable insights into market trends and potential future price movements. The AI Trend Navigator indicator is designed to predict market trends using the k-Nearest Neighbors (KNN) classifier.
By intelligently analyzing recent price actions and emphasizing similar values, it helps traders to navigate complex market conditions with confidence. It provides an advanced way to analyze trends, offering potentially more accurate predictions compared to simpler trend-following methods.
█ Calculations
KNN Moving Average Calculation: The core of the algorithm is a KNN Moving Average that computes the mean of the 'k' closest values to a target within a specified window size. It does this by iterating through the window, calculating the absolute differences between the target and each value, and then finding the mean of the closest values. The target and value are selected based on user preferences (e.g., using the VWAP or Volatility as a target).
KNN Classifier Function: This function applies the k-nearest neighbor algorithm to classify the price action into positive, negative, or neutral trends. It looks at the nearest 'k' bars, calculates the Euclidean distance between them, and categorizes them based on the relative movement. It then returns the prediction based on the highest count of positive, negative, or neutral categories.
█ How to use
Traders can use this indicator to identify potential trend directions in different markets.
Spotting Trends: Traders can use the KNN Moving Average to identify the underlying trend of an asset. By focusing on the k closest values, this component of the indicator offers a clearer view of the trend direction, filtering out market noise.
Trend Confirmation: The KNN Classifier component can confirm existing trends by predicting the future price direction. By aligning predictions with current trends, traders can gain more confidence in their trading decisions.
█ Settings
PriceValue: This determines the type of price input used for distance calculation in the KNN algorithm.
hl2: Uses the average of the high and low prices.
VWAP: Uses the Volume Weighted Average Price.
VWAP: Uses the Volume Weighted Average Price.
Effect: Changing this input will modify the reference values used in the KNN classification, potentially altering the predictions.
TargetValue: This sets the target variable that the KNN classification will attempt to predict.
Price Action: Uses the moving average of the closing price.
VWAP: Uses the Volume Weighted Average Price.
Volatility: Uses the Average True Range (ATR).
Effect: Selecting different targets will affect what the KNN is trying to predict, altering the nature and intent of the predictions.
Number of Closest Values: Defines how many closest values will be considered when calculating the mean for the KNN Moving Average.
Effect: Increasing this value makes the algorithm consider more nearest neighbors, smoothing the indicator and potentially making it less reactive. Decreasing this value may make the indicator more sensitive but possibly more prone to noise.
Neighbors: This sets the number of neighbors that will be considered for the KNN Classifier part of the algorithm.
Effect: Adjusting the number of neighbors affects the sensitivity and smoothness of the KNN classifier.
Smoothing Period: Defines the smoothing period for the moving average used in the KNN classifier.
Effect: Increasing this value would make the KNN Moving Average smoother, potentially reducing noise. Decreasing it would make the indicator more reactive but possibly more prone to false signals.
█ What is K-Nearest Neighbors (K-NN) algorithm?
At its core, the K-NN algorithm recognizes patterns within market data and analyzes the relationships and similarities between data points. By considering the 'K' most similar instances (or neighbors) within a dataset, it predicts future price movements based on historical trends. The K-Nearest Neighbors (K-NN) algorithm is a type of instance-based or non-generalizing learning. While K-NN is considered a relatively simple machine-learning technique, it falls under the AI umbrella.
We can classify the K-Nearest Neighbors (K-NN) algorithm as a form of artificial intelligence (AI), and here's why:
Machine Learning Component: K-NN is a type of machine learning algorithm, and machine learning is a subset of AI. Machine learning is about building algorithms that allow computers to learn from and make predictions or decisions based on data. Since K-NN falls under this category, it is aligned with the principles of AI.
Instance-Based Learning: K-NN is an instance-based learning algorithm. This means that it makes decisions based on the entire training dataset rather than deriving a discriminative function from the dataset. It looks at the 'K' most similar instances (neighbors) when making a prediction, hence adapting to new information if the dataset changes. This adaptability is a hallmark of intelligent systems.
Pattern Recognition: The core of K-NN's functionality is recognizing patterns within data. It identifies relationships and similarities between data points, something akin to human pattern recognition, a key aspect of intelligence.
Classification and Regression: K-NN can be used for both classification and regression tasks, two fundamental problems in machine learning and AI. The indicator code is used for trend classification, a predictive task that aligns with the goals of AI.
Simplicity Doesn't Exclude AI: While K-NN is often considered a simpler algorithm compared to deep learning models, simplicity does not exclude something from being AI. Many AI systems are built on simple rules and can be combined or scaled to create complex behavior.
No Explicit Model Building: Unlike traditional statistical methods, K-NN does not build an explicit model during training. Instead, it waits until a prediction is required and then looks at the 'K' nearest neighbors from the training data to make that prediction. This lazy learning approach is another aspect of machine learning, part of the broader AI field.
-----------------
Disclaimer
The information contained in my Scripts/Indicators/Ideas/Algos/Systems does not constitute financial advice or a solicitation to buy or sell any securities of any type. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
My Scripts/Indicators/Ideas/Algos/Systems are only for educational purposes!
Search in scripts for "ai"
AI Adaptive Oscillator [PhenLabs]📊 Algorithmic Adaptive Oscillator
Version: PineScript™ v6
📌 Description
The AI Adaptive Oscillator is a sophisticated technical indicator that employs ensemble learning and adaptive weighting techniques to analyze market conditions. This innovative oscillator combines multiple traditional technical indicators through an AI-driven approach that continuously evaluates and adjusts component weights based on historical performance. By integrating statistical modeling with machine learning principles, the indicator adapts to changing market dynamics, providing traders with a responsive and reliable tool for market analysis.
🚀 Points of Innovation:
Ensemble learning framework with adaptive component weighting
Performance-based scoring system using directional accuracy
Dynamic volatility-adjusted smoothing mechanism
Intelligent signal filtering with cooldown and magnitude requirements
Signal confidence levels based on multi-factor analysis
🔧 Core Components
Ensemble Framework : Combines up to five technical indicators with performance-weighted integration
Adaptive Weighting : Continuous performance evaluation with automated weight adjustment
Volatility-Based Smoothing : Adapts sensitivity based on current market volatility
Pattern Recognition : Identifies potential reversal patterns with signal qualification criteria
Dynamic Visualization : Professional color schemes with gradient intensity representation
Signal Confidence : Three-tiered confidence assessment for trading signals
🔥 Key Features
The indicator provides comprehensive market analysis through:
Multi-Component Ensemble : Integrates RSI, CCI, Stochastic, MACD, and Volume-weighted momentum
Performance Scoring : Evaluates each component based on directional prediction accuracy
Adaptive Smoothing : Automatically adjusts based on market volatility
Pattern Detection : Identifies potential reversal patterns in overbought/oversold conditions
Signal Filtering : Prevents excessive signals through cooldown periods and minimum change requirements
Confidence Assessment : Displays signal strength through intuitive confidence indicators (average, above average, excellent)
🎨 Visualization
Gradient-Filled Oscillator : Color intensity reflects strength of market movement
Clear Signal Markers : Distinct bullish and bearish pattern signals with confidence indicators
Range Visualization : Clean representation of oscillator values from -6 to 6
Zero Line : Clear demarcation between bullish and bearish territory
Customizable Colors : Color schemes that can be adjusted to match your chart style
Confidence Symbols : Intuitive display of signal confidence (no symbol, +, or ++) alongside direction markers
📖 Usage Guidelines
⚙️ Settings Guide
Color Settings
Bullish Color
Default: #2b62fa (Blue)
This setting controls the color representation for bullish movements in the oscillator. The color appears when the oscillator value is positive (above zero), with intensity indicating the strength of the bullish momentum. A brighter shade indicates stronger bullish pressure.
Bearish Color
Default: #ce9851 (Amber)
This setting determines the color representation for bearish movements in the oscillator. The color appears when the oscillator value is negative (below zero), with intensity reflecting the strength of the bearish momentum. A more saturated shade indicates stronger bearish pressure.
Signal Settings
Signal Cooldown (bars)
Default: 10
Range: 1-50
This parameter sets the minimum number of bars that must pass before a new signal of the same type can be generated. Higher values reduce signal frequency and help prevent overtrading during choppy market conditions. Lower values increase signal sensitivity but may generate more false positives.
Min Change For New Signal
Default: 1.5
Range: 0.5-3.0
This setting defines the minimum required change in oscillator value between consecutive signals of the same type. It ensures that new signals represent meaningful changes in market conditions rather than minor fluctuations. Higher values produce fewer but potentially higher-quality signals, while lower values increase signal frequency.
AI Core Settings
Base Length
Default: 14
Minimum: 2
This fundamental setting determines the primary calculation period for all technical components in the ensemble (RSI, CCI, Stochastic, etc.). It represents the lookback window for each component’s base calculation. Shorter periods create a more responsive but potentially noisier oscillator, while longer periods produce smoother signals with potential lag.
Adaptive Speed
Default: 0.1
Range: 0.01-0.3
Controls how quickly the oscillator adapts to new market conditions through its volatility-adjusted smoothing mechanism. Higher values make the oscillator more responsive to recent price action but potentially more erratic. Lower values create smoother transitions but may lag during rapid market changes. This parameter directly influences the indicator’s adaptiveness to market volatility.
Learning Lookback Period
Default: 150
Minimum: 10
Determines the historical data range used to evaluate each ensemble component’s performance and calculate adaptive weights. This setting controls how far back the AI “learns” from past performance to optimize current signals. Longer periods provide more stable weight distribution but may be slower to adapt to regime changes. Shorter periods adapt more quickly but may overreact to recent anomalies.
Ensemble Size
Default: 5
Range: 2-5
Specifies how many technical components to include in the ensemble calculation.
Understanding The Interaction Between Settings
Base Length and Learning Lookback : The base length determines the reactivity of individual components, while the lookback period determines how their weights are adjusted. These should be balanced according to your timeframe - shorter timeframes benefit from shorter base lengths, while the lookback should generally be 10-15 times the base length for optimal learning.
Adaptive Speed and Signal Cooldown : These settings control sensitivity from different angles. Increasing adaptive speed makes the oscillator more responsive, while reducing signal cooldown increases signal frequency. For conservative trading, keep adaptive speed low and cooldown high; for aggressive trading, do the opposite.
Ensemble Size and Min Change : Larger ensembles provide more stable signals, allowing for a lower minimum change threshold. Smaller ensembles might benefit from a higher threshold to filter out noise.
Understanding Signal Confidence Levels
The indicator provides three distinct confidence levels for both bullish and bearish signals:
Average Confidence (▲ or ▼) : Basic signal that meets the minimum pattern and filtering criteria. These signals indicate potential reversals but with moderate confidence in the prediction. Consider using these as initial alerts that may require additional confirmation.
Above Average Confidence (▲+ or ▼+) : Higher reliability signal with stronger underlying metrics. These signals demonstrate greater consensus among the ensemble components and/or stronger historical performance. They offer increased probability of successful reversals and can be traded with less additional confirmation.
Excellent Confidence (▲++ or ▼++) : Highest quality signals with exceptional underlying metrics. These signals show strong agreement across oscillator components, excellent historical performance, and optimal signal strength. These represent the indicator’s highest conviction trade opportunities and can be prioritized in your trading decisions.
Confidence assessment is calculated through a multi-factor analysis including:
Historical performance of ensemble components
Degree of agreement between different oscillator components
Relative strength of the signal compared to historical thresholds
✅ Best Use Cases:
Identify potential market reversals through oscillator extremes
Filter trade signals based on AI-evaluated component weights
Monitor changing market conditions through oscillator direction and intensity
Confirm trade signals from other indicators with adaptive ensemble validation
Detect early momentum shifts through pattern recognition
Prioritize trading opportunities based on signal confidence levels
Adjust position sizing according to signal confidence (larger for ++ signals, smaller for standard signals)
⚠️ Limitations
Requires sufficient historical data for accurate performance scoring
Ensemble weights may lag during dramatic market condition changes
Higher ensemble sizes require more computational resources
Performance evaluation quality depends on the learning lookback period length
Even high confidence signals should be considered within broader market context
💡 What Makes This Unique
Adaptive Intelligence : Continuously adjusts component weights based on actual performance
Ensemble Methodology : Combines strength of multiple indicators while minimizing individual weaknesses
Volatility-Adjusted Smoothing : Provides appropriate sensitivity across different market conditions
Performance-Based Learning : Utilizes historical accuracy to improve future predictions
Intelligent Signal Filtering : Reduces noise and false signals through sophisticated filtering criteria
Multi-Level Confidence Assessment : Delivers nuanced signal quality information for optimized trading decisions
🔬 How It Works
The indicator processes market data through five main components:
Ensemble Component Calculation :
Normalizes traditional indicators to consistent scale
Includes RSI, CCI, Stochastic, MACD, and volume components
Adapts based on the selected ensemble size
Performance Evaluation :
Analyzes directional accuracy of each component
Calculates continuous performance scores
Determines adaptive component weights
Oscillator Integration :
Combines weighted components into unified oscillator
Applies volatility-based adaptive smoothing
Scales final values to -6 to 6 range
Signal Generation :
Detects potential reversal patterns
Applies cooldown and magnitude filters
Generates clear visual markers for qualified signals
Confidence Assessment :
Evaluates component agreement, historical accuracy, and signal strength
Classifies signals into three confidence tiers (average, above average, excellent)
Displays intuitive confidence indicators (no symbol, +, ++) alongside direction markers
💡 Note:
The AI Adaptive Oscillator performs optimally when used with appropriate timeframe selection and complementary indicators. Its adaptive nature makes it particularly valuable during changing market conditions, where traditional fixed-weight indicators often lose effectiveness. The ensemble approach provides a more robust analysis by leveraging the collective intelligence of multiple technical methodologies. Pay special attention to the signal confidence indicators to optimize your trading decisions - excellent (++) signals often represent the most reliable trade opportunities.
AI x Meme Impulse Tracker [QuantraSystems]AI x Meme Impulse Tracker
Quantra Systems guarantees that the information created and published within this document and on the Tradingview platform is fully compliant with applicable regulations, does not constitute investment advice, and is not exclusively intended for qualified investors.
Important Note!
The system equity curve presented here has been generated as part of the process of testing and verifying the methodology behind this script.
Crucially, it was developed after the system was conceptualized, designed, and created, which helps to mitigate the risk of overfitting to historical data. In other words, the system was built for robustness, not for simply optimizing past performance.
This ensures that the system is less likely to degrade in performance over time, compared to hyper-optimized systems that are tailored to past data. No tweaks or optimizations were made to this system post-backtest.
Even More Important Note!!
The nature of markets is that they change quickly and unpredictably. Past performance does not guarantee future results - this is a fundamental rule in trading and investing.
While this system is designed with broad, flexible conditions to adapt quickly to a range of market environments, it is essential to understand that no assumptions should be made about future returns based on historical data. Markets are inherently uncertain, and this system - like all trading systems - cannot predict future outcomes.
Introduction
The AI x Meme Impulse Tracker is a cutting-edge, fast-acting rotational algorithm designed to capitalize on the strength of assets within pre-selected categories. Using a custom function built on top of the RSI Pulsar, the system measures momentum through impulses rather than traditional trend following methods. This allows for swifter reallocations based on short bursts of strength.
This system focuses on precision and agility - making it highly adaptable in volatile markets. The strategy is built around three independent asset categories - with allocations only made to the strongest asset in each - ensuring that capital movement (in particular between blockchains) is kept to a minimum for efficiency purposes while maintaining exposure to the highest performing tokens.
Legend
Token Inputs:
The Impulse Tracker is designed with dynamic asset selection - allowing traders to customize the inputs for each category. This feature enables flexible system management, as the number of active tokens within each category can be adjusted at any time. Whether the user chooses the default of 13 tokens per category, or fewer, the system will automatically recalibrate. This ensures that all calculations, from relative strength to individual performance assessments, adjust as required. Disabled tokens are treated by the system as if they don’t exist - seamlessly updating performance metrics and the Impulse Tracker’s allocation behavior to maintain the highest level of efficiency and accuracy.
System Equity Curve:
The Impulse Tracker plots both the rotational system’s equity and the Buy-and-Hold (or ‘HODL’) benchmark of Bitcoin for comparison. While the HODL approach allocates the entire portfolio to Bitcoin and functions as an index to compare to, the Impulse Tracker dynamically allocates based on strength impulses within the chosen tokens and categories. The system equity curve is representative of adding an equal capital split between the strongest assets of each category. The relative strength system does handle ‘ties’ of strength - in this situation multiple tokens from a single category can be included in the final equity curve, with the allocated weight to that category split between the tied assets.
TABLES:
Equity Stats:
This table is held in Quantra System's typical UI design language. It offers a comprehensive snapshot of the system’s performance, with key metrics organized to help traders quickly assess both short-term and cumulative results. The left side provides details on individual asset performance, while the right side presents a comparison of the system’s risk-adjusted metrics against a simple BTC Hodl strategy.
The leftmost column of the Equity Stats table showcases performance indicators for the system’s current allocations. This provides quick identification of the current strongest tokens, based on confirmed and non-repainting data as soon as the current opens and the last bar closes.
The right-hand side compares the performance differences between the system and Hodl profits, both on a cumulative basis and analyzing only the previous bar. The total number of position changes is also tracked in this table - an important metric when calculating total slippage and should be used to determine how ‘hands-on’ the strategy will be on the current timeframe.
The lower part of the table highlights a direct comparison of the AI x Memes Impulse strategy with buy-and-hold Bitcoin. The risk adjusted performance ratios, Sharpe, Sortino and Omega, are shown side by side, as well as the maximum drawdown experienced by both strategies within the set testing window.
Screener Table:
This table provides a detailed breakdown of the performance for each asset that has been the strongest in its category at some point and thus received an allocation. The table tracks several key metrics for each asset - including returns, volatility, Sharpe ratio, Sortino ratio, Omega ratio, and maximum drawdown. It also displays the signals for both current and previous periods, as well as the assets weight in the theoretical portfolio. Assets that have never received a signal are also included, giving traders an overview of which assets have contributed to the portfolio's performance and which have not played a role so far.
The position changes cell also offers important insights, as it shows the frequency of not just total position changes, but also rebalancing events.
Detailed Slippage Table:
The Detailed Slippage Table provides a comprehensive breakdown of the calculated slippage and fees incurred throughout the strategy’s operations. It contains several key metrics that give traders a granular view of the costs associated with executing the system:
Selected Slippage - Displays the current slippage rate, as defined in the input menu.
Removal Slippage - This accounts for any slippage or fees incurred when removing an allocation from a token.
Reallocation Slippage - Tracks the slippage or fees when reallocating capital to existing positions.
Addition Slippage - Measures the slippage or fees incurred when allocating capital to new tokens.
Final Slippage - Is the sum of all the individual slippage points and provides a quick view of the total slippage accounted for by the system.
The table is also divided into two columns:
Last Transaction Slippage + Fees - Displays any slippage or fees incurred based on position changes within the current bar.
Total Slippage + Fees - Shows the cumulative slippage and fees incurred since the portfolio’s selected start date.
Visual Customization:
Several customizable features are included within the input menu to enhance user experience. These include custom color palettes, both preloaded and user-selectable. This allows traders to personalize the visual appearance of the tables, ensuring clarity and consistency with their preferred interface themes and background coloring.
Additionally, users can adjust both the position and sizes of all the tables - enabling complete tailoring to the trader’s layout and specific viewing preferences and screen configurations. This level of customization ensures a more intuitive and flexible interaction with the system’s data.
Core Features and Methodologies
Advanced Risk Management - A Unique Filtering Approach:
The Equity Curve Activation Filter introduces an innovative way to dynamically manage capital allocation, aligning with periods of market trend strength. This filter is rooted in the understanding that markets move cyclically - altering between periods trending and mean-reverting periods. This cycle is especially pronounced in the crypto markets, where strong uptrends are often followed by prolonged periods of sideways movements or corrections as participants take profits and momentum fades.
The Cyclical Nature of Markets and Trend Following:
Financial markets do not trend indefinitely. Each uptrend or downtrend, whether over high and low timeframes, tends to culminate in a phase where momentum exhausts - leading to the sideways or corrective phases. This cycle results from the natural dynamics of market participants: during extended trends, more participants jump in, riding the momentum until profit taking causes the trend to slow down or reverse. This cyclical behavior occurs across all timeframes and in all markets - making it essential to adapt trading strategies in attempt to minimize losses during less favorable conditions.
In a trend following system, profitability often mirrors this cyclical pattern. Trend following strategies thrive when markets are moving directionally, capturing gains as price moves with strength in a single direction. However in phases where the market chops sideways, trend following strategies will usually experience drawdowns and reduced returns due to the impersistent nature of any trends. This fluctuation in trend following profitability can actually serve as one of the best coincident indicators of broader market regime change - when profitability begins to fade, it often signals a transition to drawn out unfavorable trend trading conditions.
The Equity Curve as a Market Signal
Within the Impulse Tracker, a continuous equity curve is calculated based upon the system's allocation to the strongest tokens. This equity curve effectively tracks the system’s performance under all market conditions. However, instead of solely relying on the direct performance of the selected tokens, the system applies additional filters to analyze the trend strength of this equity curve itself.
In the same way you only want to purchase an asset that is moving up in price, you only want to allocate capital to a strategy whose equity curve is trending upwards!
The Equity Curve Activation Filter consistently monitors the trend of this equity curve through various filter indicators, such as the “Wave Pendulum Trend”, the “Quasar QSM” and the “MAQSM” (an aggregate of multiple types of averages). These filters help determine whether the equity curve is trending upwards, signaling a favorable period for trend following. When the equity curve is in a positive trend, capital is allocated to the system as normal - allowing it to capture gains during favorable market conditions, Conversely, when the trend weakens and the equity curves begins to stagnate or decline, the activation filter shifts the system into a “cash” positions - temporarily halting allocations in order to prevent market exposure during choppy or mean reverting phases.
Timing Allocation With Market Conditions
This unique filtering approach ensures that the system is primarily active during periods when market trends are most supportive. By aligning capital allocations with the uptrend in trend following profitability, the system is designed to enter during periods of strong momentum and move to cash when momentum with the equity curve wanes. This approach reduces the risk of overtrading in less favorable conditions and preserves capital for the next favorable trend.
In essence the Equity Curve Allocation Filter serves as a dynamic risk management layer that leverages the cyclicality of trend following profitability in order to navigate shifting market phases.
Sensitivity and Signal Responsiveness:
The Quasar Sensitivity Setting allows users to fine-tune the system’s responsiveness to asset signals. High sensitivity settings lead to quicker position changes, making the system highly reactive to short term strength impulses. This is especially useful in fast moving markets where token strength can shift rapidly. The Sensitive setting might be more applicable to higher volatility or lower market cap assets - as the increased volatility increases the necessity of faster position cutting in order to front run the crowd. Of course - a balanced approach is ideal, as if the signals are too fast there will be too many whips and false signals. (And extra fees + slippage!)
The benefit of this script is because of the advanced slippage calculations, false signals are sufficiently punished (unlike systems without fees or slippage) - so it will become immediately apparent if the false signals have a significantly detrimental impact on the system’s equity curve.
Asset specific signals within each category are re-evaluated after the close of each bar to ensure that capital is always allocated to the highest performing asset. If a token’s momentum begins to fade the system swiftly reallocates to the next strongest asset within that category.
Category Filter - Allocates only to the Strongest Asset per group
One of the core innovations of the AI x Meme Impulse Tracker is the customizable Category Filter, which ensures that only the strongest-performing asset within each predefined group receives capital allocation. This approach not only increases the precision of asset selection but also allows traders to tailor the system to specific token narratives or categories. Sectors can include trending themes such as high-attention meme tokens, AI-driven tokens, or even categorize assets by blockchain ecosystems like Ethereum, Solana, or Base chain. This flexibility enables users to align their strategies with the latest market narratives or to optimize for specific groups, focusing on high-beta tokens within well defined sectors for a more targeted exposure. By keeping the focus on category leaders, the system avoids diluting its impact across underperforming assets, thereby maximizing capital efficiency and reducing unnecessary trading costs.
Dynamic Asset Reallocation:
Dynamic reallocation ensures that the system remains nimble and adapts to changing market conditions. Unlike slower systems, the Quasar method continually monitors for changes in asset strength and reallocates capital accordingly - ensuring that the system is always positioned in the highest performing assets within each category.
Position Changes and Slippage:
The Impulse Tracker places a strong emphasis on realistic simulation, prioritizing accuracy over inflated backtest results. This approach ensures that slippage is accounted for in a more aggressive manner than what may be experienced in real-world execution.
Each position change within the system - whether it’s buying, selling, reallocating, or rebalancing between assets - incurs slippage. Slippage is applied to both ends of every transaction: when a position is entered and exited, and when reallocating capital from one token to another. This dynamic behavior is further enhanced by a customizable slippage/fees input, allowing users to simulate realistic transaction costs based on their own market conditions and execution behaviors.
The slippage model works by applying a weighted slippage to the equity curve, taking into account the actual amount of capital being moved. Slippage is not applied in a blanket manner but rather in proportion to the allocation changes. For example, if the system reallocates from a single 100% position to two 50% allocations, slippage will be applied to the 50% removed from the first asset and the 50% added to the new asset, resulting in a 1x slippage multiplier.
This process becomes more granular when multiple assets are involved. For instance, if reallocating from two 50% positions to three 33% positions, slippage will be incurred on each of the changes, but at a reduced rate (⅔ x slippage), reflecting the smaller percentage of portfolio equity being moved. The slippage model accounts for all types of allocation shifts, whether increasing or decreasing the number of tokens held, providing a realistic assessment of system costs.
Here are some detailed examples to illustrate how slippage is calculated based on different scenarios:
100% → 50% / 50%: 1x slippage applied to both position changes (2 allocation changes).
50% / 50% → 33% / 33% / 33%: ⅔ x slippage multiplier applied across 3 allocation changes.
33% / 33% / 33% → 100%: 4/3 x slippage multiplier applied across 3 allocation changes.
In practice, not every position change will be rebalanced perfectly, leading to a lower number of transactions and lower costs in practice. Additionally, with the use of limit orders, a trader can easily reduce the costs of entering a position, as well as ensuring a competitive entry price.
By simulating slippage in this granular manner, the system captures the absolute maximum level of fees and slippage, in order to ensure that backtest results lean towards an underrepresentation - opposed to inflated results compared with practical execution.
A Special Note on Slippage
In the image above, the system has been applied to four different timeframes - 20h, 15h, 10h, and 5h - using identical settings and a selected slippage amount of 2%. By isolating a recent trend leg, we can illustrate an important concept: while the 15h timeframe is more profitable than the 20h timeframe, this difference stems from a core trading principle. Lower timeframes typically provide more data points and allow for quicker entries and exits in a robust system. This often results in reduced downside and compounding of gains.
However, slippage, fees, and execution constraints are limiting factors, especially in volatile, low-cap cryptocurrencies. Although lower timeframes can improve performance by increasing trade frequency, each trade incurs heavy slippage costs that accumulate - impacting the portfolio’s capital at a compounding rate. In this example, the chosen slippage rate of 2% per trade is designed to reflect the realistic trading costs, emphasizing how lower timeframe trading comes at the cost of increased slippage and fees
Finding the optimal balance between timeframe and slippage impact requires careful consideration of factors such as portfolio size, liquidity of selected tokens, execution speed, and the fee rate of the exchange you execute trades on.
Equity Curve and Performance Calculations
To provide a benchmark, the script also generates a Buy-and-Hold (or "HODL") equity curve that represents a complete allocation to Bitcoin. This allows users to easily compare the performance of the dynamic rotation system with that more traditional benchmark strategy.
The script tracks key performance metrics for both the dynamic portfolio and the HODL strategy, including:
Sharpe Ratio
The Sharpe Ratio is a key metric that evaluates a portfolio’s risk-adjusted return by comparing its ‘excess’ return to its volatility. Traditionally, the Sharpe Ratio measures returns relative to a risk-free rate. However, in our system’s calculation, we omit the risk-free rate and instead measure returns above a benchmark of 0%. This adjustment provides a more universal comparison, especially in the context of highly volatile assets like cryptocurrencies, where a traditional risk-free benchmark, such as the usual 3-month T-bills, is often irrelevant or too distant from the realities of the crypto market.
By using 0% as the baseline, we focus purely on the strategy's ability to generate raw returns in the face of market risk, which makes it easier to compare performance across different strategies or asset classes. In an environment like cryptocurrency, where volatility can be extreme, the importance of relative return against a highly volatile backdrop outweighs comparisons to a risk-free rate that bears little resemblance to the risk profile of digital assets.
Sortino Ratio
The Sortino Ratio improves upon the Sharpe Ratio by specifically targeting downside risk and leaves the upside potential untouched. In contrast to the Sharpe Ratio (which penalizes both upside and downside volatility), the Sortino Ratio focuses only on negative return deviations. This makes it a more suitable metric for evaluating strategies like the AI x Meme Impulse Tracker - that aim to minimize drawdowns without restricting upside capture. By measuring returns relative to a 0% baseline, the Sortino ratio provides a clearer assessment of how well the system generates gains while avoiding substantial losses in highly volatile markets like crypto.
Omega Ratio
The Omega Ratio is calculated as the ratio of gains to losses across all return thresholds, providing a more complete view of how the system balances upside and downside risk even compared to the Sortino Ratio. While it achieves a similar outcome to the Sortino Ratio by emphasizing the system's ability to capture gains while limiting losses, it is technically a mathematically superior method. However, we include both the Omega and Sortino ratios in our metric table, as the Sortino Ratio remains more widely recognized and commonly understood by traders and investors of all levels.
Usage Summary:
While the backtests in this description are generated as if a trader held a portfolio of just the strongest tokens, this was mainly designed as a method of logical verification and not a recommended investment strategy. In practice, this system can be used in multiple ways.
It can be used as above, or as a factor in forming part of a broader asset selection system, or even a method of filtering tokens by strength in order to inform a day trader which tokens might be optimal to look for long-only trading setups on an intrabar timeframe.
Final Summary:
The AI x Meme Impulse Tracker is a powerful algorithm that leverages a unique strength and impulse based approach to asset allocation within high beta token categories. Built with a robust risk management framework, the system’s Equity Curve Activation Filter dynamically manages capital exposure based on the cyclical nature of market trends, minimizing exposure during weaker phases.
With highly customizable settings, the Impulse Tracker enables precise capital allocation to only the strongest assets, informed by real-time metrics and rigorous slippage modeling in order to provide the best view of historical profitability. This adaptable design, coupled with advanced performance analytics, makes it a versatile tool for traders seeking an edge in fast moving and volatile crypto markets.
AI Adaptive Money Flow Index (Clustering) [AlgoAlpha]🌟🚀 Dive into the future of trading with our latest innovation: the AI Adaptive Money Flow Index by AlgoAlpha Indicator! 🚀🌟
Developed with the cutting-edge power of Machine Learning, this indicator is designed to revolutionize the way you view market dynamics. 🤖💹 With its unique blend of traditional Money Flow Index (MFI) analysis and advanced k-means clustering, it adapts to market conditions like never before.
Key Features:
📊 Adaptive MFI Analysis: Utilizes the classic MFI formula with a twist, adjusting its parameters based on AI-driven clustering.
🧠 AI-Driven Clustering: Applies k-means clustering to identify and adapt to market states, optimizing the MFI for current conditions.
🎨 Customizable Appearance: Offers adjustable settings for overbought, neutral, and oversold levels, as well as colors for uptrends and downtrends.
🔔 Alerts for Key Market Movements: Set alerts for trend reversals, overbought, and oversold conditions, ensuring you never miss a trading opportunity.
Quick Guide to Using the AI Adaptive MFI (Clustering):
🛠 Customize the Indicator: Customize settings like MFI source, length, and k-means clustering parameters to suit your analysis.
📈 Market Analysis: Monitor the dynamically adjusted overbought, neutral, and oversold levels for insights into market conditions. Watch for classification symbols ("+", "0", "-") for immediate understanding of the current market state. Look out for reversal signals (▲, ▼) to get potential entry points.
🔔 Set Alerts: Utilize the built-in alert conditions for trend changes, overbought, and oversold signals to stay ahead, even when you're not actively monitoring the charts.
How It Works:
The AI Adaptive Money Flow Index employs the k-means clustering machine learning algorithm to refine the traditional Money Flow Index, dynamically adjusting overbought, neutral, and oversold levels based on market conditions. This method analyzes historical MFI values, grouping them into initial clusters using the traditional MFI's overbought, oversold and neutral levels, and then finding the mean of each cluster, which represent the new market states thresholds. This adaptive approach ensures the indicator's sensitivity in real-time, offering a nuanced understanding of market trend and volume analysis.
By recalibrating MFI thresholds for each new data bar, the AI Adaptive MFI intelligently conforms to changing market dynamics. This process, assessing past periods to adjust the indicator's parameters, provides traders with insights finely tuned to recent market behavior. Such innovation enhances decision-making, leveraging the latest data to inform trading strategies. 🌐💥
AI SuperTrend Clustering Oscillator [LuxAlgo]The AI SuperTrend Clustering Oscillator is an oscillator returning the most bullish/average/bearish centroids given by multiple instances of the difference between SuperTrend indicators.
This script is an extension of our previously posted SuperTrend AI indicator that makes use of k-means clustering. If you want to learn more about it see:
🔶 USAGE
The AI SuperTrend Clustering Oscillator is made of 3 distinct components, a bullish output (always the highest), a bearish output (always the lowest), and a "consensus" output always within the two others.
The general trend is given by the consensus output, with a value above 0 indicating an uptrend and under 0 indicating a downtrend. Using a higher minimum factor will weigh results toward longer-term trends, while lowering the maximum factor will weigh results toward shorter-term trends.
Strong trends are indicated when the bullish/bearish outputs are indicating an opposite sentiment. A strong bullish trend would for example be indicated when the bearish output is above 0, while a strong bearish trend would be indicated when the bullish output is below 0.
When the consensus output is indicating a specific trend direction, an opposite indication from the bullish/bearish output can highlight a potential reversal or retracement.
🔶 DETAILS
The indicator construction is based on finding three clusters from the difference between the closing price and various SuperTrend using different factors. The centroid of each cluster is then returned. This operation is done over all historical bars.
The highest cluster will be composed of the differences between the price and SuperTrends that are the highest, thus creating a more bullish group. The lowest cluster will be composed of the differences between the price and SuperTrends that are the lowest, thus creating a more bearish group.
The consensus cluster is composed of the differences between the price and SuperTrends that are not significant enough to be part of the other clusters.
🔶 SETTINGS
ATR Length: ATR period used for the calculation of the SuperTrends.
Factor Range: Determine the minimum and maximum factor values for the calculation of the SuperTrends.
Step: Increments of the factor range.
Smooth: Degree of smoothness of each output from the indicator.
🔹 Optimization
This group of settings affects the runtime performances of the script.
Maximum Iteration Steps: Maximum number of iterations allowed for finding centroids. Excessively low values can return a better script load time but poor clustering.
Historical Bars Calculation: Calculation window of the script (in bars).
AI Breakout Bands (Zeiierman)█ Overview
AI Breakout Bands (Zeiierman) is an adaptive trend and breakout detection system that combines Kalman filtering with advanced K-Nearest Neighbor (KNN) smoothing. The result is a smart, self-adjusting band structure that adapts to dynamic market behavior, identifying breakout conditions with precision and visual clarity.
At its core, this indicator estimates price behavior using a two-dimensional Kalman filter (position + velocity), then enhances the smoothing process with a nonlinear, similarity-based KNN filter. This unique blend enables it to handle noisy markets and directional shifts with both speed and stability — providing breakout traders and trend followers a reliable framework to act on.
Whether you're identifying volatility expansions, capturing trend continuations, or spotting early breakout conditions, AI Breakout Bands gives you a mathematically grounded, visually adaptive roadmap of real-time market structure.
█ How It Works
⚪ Kalman Filter Engine
The Kalman filter models price movement as a state system with two components:
Position (price)
Velocity (trend direction)
It recursively updates predictions using real-time price as a noisy observation, balancing responsiveness with smoothness.
Process Noise (Position) controls sensitivity to sudden moves.
Process Noise (Velocity) controls smoothing of directional flow.
Measurement Noise (R) defines how much the filter "trusts" live price data.
This component alone creates a responsive yet stable estimate of the market’s center of gravity.
⚪ Advanced K-Neighbor Smoothing
After the Kalman estimate is computed, the script applies a custom K-Nearest Neighbor (KNN) smoother.
Rather than averaging raw values, this method:
Finds K most similar past Kalman values
Weighs them by similarity (inverse of absolute distance)
Produces a smoother that emphasizes structural similarity
This nonlinear approach gives the indicator an AI feature — reacting fast when needed, yet staying calm in consolidation.
█ How to Use
⚪ Trend Recognition
The line color shifts dynamically based on slope direction and breakout confirmation.
Bullish conditions: price above the mid band with positive slope
Bearish conditions: price below the mid band with negative slope
⚪ Breakout Signals
Price breaking above or below the bands may signal momentum acceleration.
Combine with your own volume or momentum confirmation for stronger entries.
Bands adapt to market noise, helping filter out low-quality whipsaws.
█ Settings
Process Noise (Position): Controls Kalman filter’s sensitivity to price changes.
Process Noise (Velocity): Controls smoothing of directional component.
Measurement Noise (R): Defines how much trust is placed in price data.
K-Neighbor Length: Number of historical Kalman values considered for smoothing.
Slope Calculation Window: Number of bars used to compute trend slope of the smoothed Kalman.
Band Lookback (MAE): Rolling period for average absolute error.
Band Multiplier: Multiplies MAE to determine band width.
-----------------
Disclaimer
The content provided in my scripts, indicators, ideas, algorithms, and systems is for educational and informational purposes only. It does not constitute financial advice, investment recommendations, or a solicitation to buy or sell any financial instruments. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
AI Volume Breakout for scalpingPurpose of the Indicator
This script is designed for trading, specifically for scalping, which involves making numerous trades within a very short time frame to take advantage of small price movements. The indicator looks for volume breakouts, which are moments when trading volume significantly increases, potentially signaling the start of a new price movement.
Key Components:
Parameters:
Volume Threshold (volumeThreshold): Determines how much volume must increase from one bar to the next for it to be considered significant. Set at 4.0, meaning volume must quadruplicate for a breakout signal.
Price Change Threshold (priceChangeThreshold): Defines the minimum price change required for a breakout signal. Here, it's 1.5% of the bar's opening price.
SMA Length (smaLength): The period for the Simple Moving Average, which helps confirm the trend direction. Here, it's set to 20.
Cooldown Period (cooldownPeriod): Prevents signals from being too close together, set to 10 bars.
ATR Period (atrPeriod): The period for calculating Average True Range (ATR), used to measure market volatility.
Volatility Threshold (volatilityThreshold): If ATR divided by the close price exceeds this, the market is considered too volatile for trading according to this strategy.
Calculations:
SMA (Simple Moving Average): Used for trend confirmation. A bullish signal is more likely if the price is above this average.
ATR (Average True Range): Measures market volatility. Lower volatility (below the threshold) is preferred for this strategy.
Signal Generation:
The indicator checks if:
Volume has increased significantly (volumeDelta > 0 and volume / volume >= volumeThreshold).
There's enough price change (math.abs(priceDelta / open) >= priceChangeThreshold).
The market isn't too volatile (lowVolatility).
The trend supports the direction of the price change (trendUp for bullish, trendDown for bearish).
If all these conditions are met, it predicts:
1 (Bullish) if conditions suggest buying.
0 (Bearish) if conditions suggest selling.
Cooldown Mechanism:
After a signal, the script waits for a number of bars (cooldownPeriod) before considering another signal to avoid over-trading.
Visual Feedback:
Labels are placed on the chart:
Green label for bullish breakouts below the low price.
Red label for bearish breakouts above the high price.
How to Use:
Entry Points: Look for the labels on your chart to decide when to enter trades.
Risk Management: Since this is for scalping, ensure each trade has tight stop-losses to manage risk due to the quick, small movements.
Market Conditions: This strategy might work best in markets with consistent volume and price changes but not extreme volatility.
Caveats:
This isn't real AI; it's a heuristic based on volume and price. Actual AI would involve machine learning algorithms trained on historical data.
Always backtest any strategy, and consider how it behaves in different market conditions, not just the ones it was designed for.
AI Channels (Clustering) [LuxAlgo]The AI Channels indicator is constructed based on rolling K-means clustering, a common machine learning method used for clustering analysis. These channels allow users to determine the direction of the underlying trends in the price.
We also included an option to display the indicator as a trailing stop from within the settings.
🔶 USAGE
Each channel extremity allows users to determine the current trend direction. Price breaking over the upper extremity suggesting an uptrend, and price breaking below the lower extremity suggesting a downtrend. Using a higher Window Size value will return longer-term indications.
The "Clusters" setting allows users to control how easy it is for the price to break an extremity, with higher values returning extremities further away from the price.
The "Denoise Channels" is enabled by default and allows to see less noisy extremities that are more coherent with the detected trend.
Users who wish to have more focus on a detected trend can display the indicator as a trailing stop.
🔹 Centroid Dispersion Areas
Each extremity is made of one area. The width of each area indicates how spread values within a cluster are around their centroids. A wider area would suggest that prices within a cluster are more spread out around their centroid, as such one could say that it is indicative of the volatility of a cluster.
Wider areas around a specific extremity can indicate a larger and more spread-out amount of prices within the associated cluster. In practice price entering an area has a higher chance to break an associated extremity.
🔶 DETAILS
The indicator performs K-means clustering over the most recent Window Size prices, finding a number of user-specified clusters. See here to find more information on cluster detection.
The channel extremities are returned as the centroid of the lowest, average, and highest price clusters.
K-means clustering can be computationally expensive and as such we allow users to determine the maximum number of iterations used to find the centroids as well as the number of most historical bars to perform the indicator calculation. Do note that increasing the calculation window of the indicator as well as the number of clusters will return slower results.
🔶 SETTINGS
Window Size: Amount of most recent prices to use for the calculation of the indicator.
Clusters": Amount of clusters detected for the calculation of the indicator.
Denoise Channels: When enabled, return less noisy channels extremities, disabling this setting will return the exact centroids at each time but will produce less regular extremities.
As Trailing Stop: Display the indicator as a trailing stop.
🔹 Optimization
This group of settings affects the runtime performance of the script.
Maximum Iteration Steps: Maximum number of iterations allowed for finding centroids. Excessively low values can return a better script load time but poor clustering.
Historical Bars Calculation: Calculation window of the script (in bars).
AI Momentum [YinYang]Overview:
AI Momentum is a kernel function based momentum Indicator. It uses Rational Quadratics to help smooth out the Moving Averages, this may give them a more accurate result. This Indicator has 2 main uses, first it displays ‘Zones’ that help you visualize the potential movement areas and when the price is out of bounds (Overvalued or Undervalued). Secondly it creates signals that display the momentum of the current trend.
The Zones are composed of the Highest Highs and Lowest lows turned into a Rational Quadratic over varying lengths. These create our Rational High and Low zones. There is however a second zone. The second zone is composed of the avg of the Inner High and Inner Low zones (yellow line) and the Rational Quadratic of the current Close. This helps to create a second zone that is within the High and Low bounds that may represent momentum changes within these zones. When the Rationalized Close crosses above the High and Low Zone Average it may signify a bullish momentum change and vice versa when it crosses below.
There are 3 different signals created to display momentum:
Bullish and Bearish Momentum. These signals display when there is current bullish or bearish momentum happening within the trend. When the momentum changes there will likely be a lull where there are neither Bullish or Bearish momentum signals. These signals may be useful to help visualize when the momentum has started and stopped for both the bulls and the bears. Bullish Momentum is calculated by checking if the Rational Quadratic Close > Rational Quadratic of the Highest OHLC4 smoothed over a VWMA. The Bearish Momentum is calculated by checking the opposite.
Overly Bullish and Bearish Momentum. These signals occur when the bar has Bullish or Bearish Momentum and also has an Rationalized RSI greater or less than a certain level. Bullish is >= 57 and Bearish is <= 43. There is also the option to ‘Factor Volume’ into these signals. This means, the Overly Bullish and Bearish Signals will only occur when the Rationalized Volume > VWMA Rationalized Volume as well as the previously mentioned factors above. This can be useful for removing ‘clutter’ as volume may dictate when these momentum changes will occur, but it can also remove some of the useful signals and you may miss the swing too if the volume just was low. Overly Bullish and Bearish Momentum may dictate when a momentum change will occur. Remember, they are OVERLY Bullish and Bearish, meaning there is a chance a correction may occur around these signals.
Bull and Bear Crosses. These signals occur when the Rationalized Close crosses the Gaussian Close that is 2 bars back. These signals may show when there is a strong change in momentum, but be careful as more often than not they’re predicting that the momentum may change in the opposite direction.
Tutorial:
As we can see in the example above, generally what happens is we get the regular Bullish or Bearish momentum, followed by the Rationalized Close crossing the Zone average and finally the Overly Bullish or Bearish signals. This is normally the order of operations but isn’t always how it happens as sometimes momentum changes don’t make it that far; also the Rationalized Close and Zone Average don’t follow any of the same math as the Signals which can result in differing appearances. The Bull and Bear Crosses are also quite sporadic in appearance and don’t generally follow any sort of order of operations. However, they may occur as a Predictor between Bullish and Bearish momentum, signifying the beginning of the momentum change.
The Bull and Bear crosses may be a Predictor of momentum change. They generally happen when there is no Bullish or Bearish momentum happening; and this helps to add strength to their prediction. When they occur during momentum (orange circle) there is a less likely chance that it will happen, and may instead signify the exact opposite; it may help predict a large spike in momentum in the direction of the Bullish or Bearish momentum. In the case of the orange circle, there is currently Bearish Momentum and therefore the Bull Cross may help predict a large momentum movement is about to occur in favor of the Bears.
We have disabled signals here to properly display and talk about the zones. As you can see, Rationalizing the Highest Highs and Lowest Lows over 2 different lengths creates inner and outer bounds that help to predict where parabolic movement and momentum may move to. Our Inner and Outer zones are great for seeing potential Support and Resistance locations.
The secondary zone, which can cross over and change from Green to Red is also a very important zone. Let's zoom in and talk about it specifically.
The Middle Zone Crosses may help deduce where parabolic movement and strong momentum changes may occur. Generally what may happen is when the cross occurs, you will see parabolic movement to the High / Low zones. This may be the Inner zone but can sometimes be the outer zone too. The hard part is sometimes it can be a Fakeout, like displayed with the Blue Circle. The Cross doesn’t mean it may move to the opposing side, sometimes it may just be predicting Parabolic movement in a general sense.
When we turn the Momentum Signals back on, we can see where the Fakeout occurred that it not only almost hit the Inner Low Zone but it also exhibited 2 Overly Bearish Signals. Remember, Overly bearish signals mean a momentum change in favor of the Bulls may occur soon and overly Bullish signals mean a momentum change in favor of the Bears may occur soon.
You may be wondering, well what does “may occur soon” mean and how do we tell?
The purpose of the momentum signals is not only to let you know when Momentum has occurred and when it is still prevalent. It also matters A LOT when it has STOPPED!
In this example above, we look at when the Overly Bullish and Bearish Momentum has STOPPED. As you can see, when the Overly Bullish or Bearish Momentum stopped may be a strong predictor of potential momentum change in the opposing direction.
We will conclude our Tutorial here, hopefully this Indicator has been helpful for showing you where momentum is occurring and help predict how far it may move. We have been dabbling with and are planning on releasing a Strategy based on this Indicator shortly.
Settings:
1. Momentum:
Show Signals: Sometimes it can be difficult to visualize the zones with signals enabled.
Factor Volume: Factor Volume only applies to Overly Bullish and Bearish Signals. It's when the Volume is > VWMA Volume over the Smoothing Length.
Zone Inside Length: The Zone Inside is the Inner zone of the High and Low. This is the length used to create it.
Zone Outside Length: The Zone Outside is the Outer zone of the High and Low. This is the length used to create it.
Smoothing length: Smoothing length is the length used to smooth out our Bullish and Bearish signals, along with our Overly Bullish and Overly Bearish Signals.
2. Kernel Settings:
Lookback Window: The number of bars used for the estimation. This is a sliding value that represents the most recent historical bars. Recommended range: 3-50.
Relative Weighting: Relative weighting of time frames. As this value approaches zero, the longer time frames will exert more influence on the estimation. As this value approaches infinity, the behavior of the Rational Quadratic Kernel will become identical to the Gaussian kernel. Recommended range: 0.25-25.
Start Regression at Bar: Bar index on which to start regression. The first bars of a chart are often highly volatile, and omission of these initial bars often leads to a better overall fit. Recommended range: 5-25.
If you have any questions, comments, ideas or concerns please don't hesitate to contact us.
HAPPY TRADING!
AI-Powered Market and Fast Trend AnalysisAI-Powered Market and Fast Trend Analysis Presentation V7
Hello,
This presentation explains the core features and functionality of your "AI-Powered Market and Fast Trend Analysis" Pine Script indicator used on the TradingView platform.
1. General Overview
This indicator combines various technical analysis indicators and an AI-based decision-making mechanism to analyze market trends, volatility, volume movements, and potential reversal points. Its purpose is to provide users with a comprehensive and quick overview to make more informed buy/sell decisions.
2. General Settings and Periods
The indicator offers several input parameters to customize the analysis:
General Settings: Allows you to adjust the calculation periods for core indicators such as Period (General), TTM Period, Stoch %K/%D Period, Keltner Channel Multiplier, Volume Oscillator Fast/Slow Period.
3. AI Decision Weights
The AI decision mechanism, which is the heart of the indicator, generates a final AI score by assigning weights to different category scores:
Trend Indicators Weight: The impact of trend indicators such as Supertrend, TTM Squeeze, QQE, Vortex, RSI, Stochastic, Moving Averages (SMA, EMA, WMA, VWMA), MACD, Ichimoku Kijun, TEMA, HMA on the final score.
Momentum Indicators Weight: The impact of momentum indicators on the final score.
Volatility Indicators Weight: The impact of volatility indicators such as Bollinger Band Width, ATR, Keltner Channel Width, Donchian Channel Width, NATR.
Volume Indicators Weight: The impact of volume indicators such as OBV, AD, CMF, MFI, Volume Oscillator, VPT, VWAP.
Candlestick Pattern Weight (New): The impact of candlestick patterns like Doji, Bullish/Bearish Engulfing, Hammer, Shooting Star on the AI decision.
Reversal Momentum Weight (New): The impact of sudden price movements and reversal signals on the AI decision.
Market Context Weight: Determines how the general market sentiment from BIST indices (XU100, XU030, XBANK), in addition to the traded symbol's data, influences the AI decision. This weight controls how much the symbol's own data versus index data affects the AI decision.
4. AI Decision Thresholds
The AI score is converted into buy/sell signals based on specific threshold values, and the strength of the score is qualified:
AI Buy/Sell Thresholds: Separate buy and sell thresholds are defined for different asset classes like BIST stocks and Gold/MGC1.
Score Qualification Thresholds (New): The strength of the AI score is determined by levels such as Very Strong Buy/Sell, Strong Buy/Sell, Moderate Buy/Sell, Weak Buy/Sell.
Category-Based Signal Thresholds: Separate buy/sell thresholds exist for each category like trend, volatility, and volume.
5. Market Context Integration
The indicator analyzes not only the data of the traded symbol but also the data from BIST indices (XU100, XU030, XBANK) to incorporate general market sentiment into the AI decision. This provides a more holistic and reliable analysis.
6. Target Point Calculations
The indicator calculates potential buy and sell targets using ATR (Average True Range) multipliers. These targets are shown separately for different timeframes (30 Min, 1 Hour, 4 Hour, 1 Day, 1 Week) and are also marked on the chart. Additionally, Nearest Buy/Sell and Farthest Buy/Sell targets are determined from all timeframes.
7. Candlestick Patterns and Coloring
Pattern Detection: Automatically detects and marks important candlestick patterns such as Doji, Bullish Engulfing, Bearish Engulfing, Hammer, and Shooting Star on the chart.
Candlestick Coloring: Candlesticks are dynamically colored based on detected patterns and volume inflow. For example, in a Bullish Engulfing pattern, the candlestick turns solid green, while candlesticks with volume inflow are shown in white.
Fake Rally Indicator (New): Generates a "Fake Rally" signal when the overall AI score is still in a bearish zone, but there are bullish candlesticks and weak reversal signals.
8. Overbought/Oversold and Indecision Zones
On the chart, Overbought, Oversold, and Indecision zones are visually marked based on price movements within a specific period. These zones help you understand whether the price is near potential reversal points.
9. Panel Information (Top Right Corner)
The information panel located in the top right corner of the chart summarizes all important analysis results:
AI Decision: The general AI signal (Very Strong Buy/Sell, Strong Buy/Sell, etc.) and its color.
Score: The final AI score and its color (green, yellow, red).
Direction: The general market direction determined by AI (UP, DOWN, SIDEWAYS).
Category Signal: The combined signal of trend, volatility, and volume categories.
Confirmation Signal (New): The overall confidence level generated by combining the final AI score and the category signal (DEFINITE BUY/SELL, VERY STRONG, STRONG, MODERATE, WEAK, UNCERTAIN).
Timeframe-Based Status: Trend, Volatility, and Volume statuses for 30 Min, 1 Hour, 4 Hour, 1 Day, and 1 Week timeframes (Uptrend/Downtrend/Neutral, Inflow/Outflow/Neutral).
Candlestick Pattern: The detected candlestick pattern in the active timeframe.
Market Index Score: The average AI score of BIST indices.
Buyer/Seller Power (New): The percentage distribution of buyer and seller power in the current candlestick.
Target Buy/Sell: Potential buy and sell targets calculated for each timeframe.
Nearest/Farthest Buy/Sell (New): The nearest and farthest buy/sell points determined from targets across all timeframes.
10. How It Helps
This indicator helps you make sense of complex market data and assists you with:
Quick Decision Making: Allows you to quickly see the overall market situation and potential buy/sell signals at a glance.
Trend Identification: Helps you understand trends across different timeframes and their strength.
Risk Management: Supports your risk management strategies with target points and volatility analyses.
Market Sentiment: Enables you to make more accurate decisions by considering the general market context through index integration.
Important Note: When using the indicator for buy/sell decisions, please consider removing the "Overall AI Score" line and the "Buy/Sell Threshold" lines from the chart for a cleaner full-screen view.
I hope this presentation helps you better understand your code and proves useful in your TradingView operations.
Sincerely,
Fusion AI IndicatorWhat is Fusion AI?
The Fusion AI Indicator blends three proven momentum & mean-reversion signals into a single composite “AI Score.” By normalizing and weighting EMA crossovers, RSI bias and MACD momentum, you get one clean line that captures multi-factor strength shifts in real time—plus optional price-chart arrows and built-in alerts.
How it works
Fast vs. Slow EMA (40%)
(EMA(fastLen) – EMA(slowLen)) / EMA(slowLen)
RSI Deviation (30%)
(RSI(rsiLen) – 50) / 50
MACD Momentum (30%)
(MACD.line – MACD.signal) / ATR(14)
AI Score = 0.4 · EMA + 0.3 · RSI + 0.3 · MACD
Thresholds
Buy when AI Score crosses up through +Threshold
Sell when it crosses down through –Threshold
Default Inputs (tuned for balanced signals)
Fast MA Length: 12
Slow MA Length: 26
RSI Length: 14
MACD Fast EMA: 12
MACD Slow EMA: 26
MACD Signal Smoothing: 9
AI Score Threshold: 0.30
Show Overlay Arrows: ✔️
Alert on Bar Close Only: ✔️
(You can lower Threshold toward 0.10–0.20 for more frequent signals in quieter markets.)
Recommended Markets & Timeframes
Bitcoin (BTCUSD) on 1 H, 4 H – captures crypto swings
Ethereum (ETHUSD) on 1 H, 4 H
AAPL, TSLA, SPY on 15 M, 1 H – ideal for intraday setups
How to Add Alerts
Add the indicator to your chart.
Open Create Alert → Condition →
Fusion AI Indicator with Alerts & Overlay → choose Buy Signal or Sell Signal.
Set Frequency to Once per bar close (default) or Once per bar.
Paste a custom message or use the default:
“Fusion AI: Bullish crossover detected”
“Fusion AI: Bearish crossunder detected”
Usage Tips
Combine with volume filters or support/resistance zones for higher-probability entries.
Use the gradient-colored subchart to spot building momentum even before arrows appear.
Back-test threshold levels per asset: volatility will dictate whether 0.30 is too loose or too tight.
Enjoy smoother, multi-factor signals in one indicator—Fusion AI does the math so your eyes can focus on the trade.
🔄 QuantSignals AI Reversal Pro🔄 QuantSignals AI Reversal Pro — 78%+ Win Rate Reversal Detection
🚀 Catch Market Tops & Bottoms with AI-Powered Precision!
This powerful script brings you professional-grade reversal signals—built on cutting-edge AI, smart confluence logic, and rigorous backtesting.
Whether you’re swing trading, scalping, or position trading, this tool is your new edge.
🎯 Why Traders Love QS AI Reversal Pro:
✅ 78%+ Win Rate on major timeframes (tested on S&P 500, tech stocks, crypto)
🔄 AI-powered oversold/overbought reversal detection
📊 Built-in divergence detection engine (RSI, price, volume)
⚖️ Mean reversion zones + VWAP extremes + Bollinger Band signals
💎 High-Probability Mode: Filters only A+ setups for premium entries
🧠 Confluence Engine: Assigns quality scores to each reversal
🔔 Smart Alerts: Reversal alerts + divergence + premium triggers
🏆 Live Win Rate Tracker on your chart with quality % dashboard
🧠 Powered by QuantSignals AI Engine
This is a limited free version of our proprietary 85%+ win rate reversal algorithm—join our Discord to unlock:
🔐 Institutional-level AI reversal strategy
📈 Real-time confluence dashboards across timeframes
🎯 Custom reversal alerts with entry/exit/stop targets
💬 Live strategy signals, backtests & expert community
💥 Perfect For:
🔁 Reversal traders (crypto, stocks, futures)
⏱ Scalpers & 15m–4H swing traders
📊 Mean reversion systems
🧪 Traders who want data-driven signal confidence
📌 How It Works:
Every signal is based on multi-layer confluence:
Oversold/Overbought + Divergence + VWAP/BB + Volume Surge
Optional: Only show signals with minimum Risk:Reward (e.g. 1:2.5)
Each signal is scored, and you’ll see real-time win rate on-screen
Reversal zones highlighted via color-coded backgrounds
📺 On-Chart Display:
🔄 BUY / SELL Reversal Labels (color-coded for high-probability)
📉 Divergence Lines (bullish & bearish)
🧮 Signal Quality % + Live Win Rate
⚠️ Alerts on all major events (standard + high-prob + divergence)
🔓 Upgrade to Premium (in Discord):
✅ Access full 85%+ win rate reversal model
🧠 AI pattern recognition engine
🔍 Multi-timeframe signal agreement
💡 Institutional order-flow reversal tracking
📊 Backtests + optimization support
🚨 Advanced alerts + automation-ready signals
📲 Join Our 1,800+ Member Community:
🌐 Website: quantsignals.xyz
💬 Discord: discord.gg/quantsignals
🎓 Learn the reversal strategies that top traders use
🔄 Start catching market reversals like a pro—install QS AI Reversal Pro today!
Note: This script is a visual indicator and not a strategy tester. For full backtest-ready premium strategy, please contact us on Discord.
🎯 QuantSignals AI VWAP Pro🎯 QuantSignals AI VWAP Pro — Trade Like Institutions with AI Precision
📌 Description:
QuantSignals AI VWAP Pro is your edge in the markets — a professional-grade VWAP toolkit enhanced with AI signal generation, dynamic volume analysis, institutional band tracking, and real-time dashboards.
Built for day traders, swing traders, and institutions, this limited free version delivers intelligent entries & exits with AI-enhanced VWAP signals.
🚨 Want more? Full source code, premium indicators, and hedge-fund-grade VWAP tools are available in the QuantSignals Discord community!
🌟 Key Features:
✅ AI-Powered VWAP Signals
→ High-probability BUY/SELL alerts based on smart volume + trend filters.
✅ Dynamic VWAP Bands
→ Adaptive upper/lower bands based on real-time volatility & institutional volume.
✅ Multi-Timeframe VWAP (MTF)
→ View weekly & monthly VWAP levels used by pros (toggleable).
✅ Live QS Dashboard
→ Displays signal strength, VWAP distance %, volume context & price stats.
✅ Smart Alerts System
→ Instantly alerts for VWAP crossovers, band breaks, and institutional moves.
✅ Polished Chart Experience
→ Minimal clutter, modern visuals, premium color scheme, optimized UX.
🔐 Limited Free Version Includes:
AI Signal Engine (basic version)
Institutional Band Levels
Live Dashboard
3 Types of VWAP Alerts
Clean Entry/Exit Plots
💎 Premium Version (in Discord):
Full Source Code
Institutional VWAP Models
Real-Time Volume Sentiment Engine
Multi-Asset VWAP Correlation
Automated Strategy Support
Pro Backtesting Templates
Full QS Indicator Suite
Discord Trade Rooms + Coaching
💬 Who Uses This?
QuantSignals VWAP tools are used by hedge funds, quant traders, and pro retail traders worldwide.
🔗 Join the #1 AI Trading Community:
🌐 Website: quantsignals.xyz
💬 Discord: discord.gg
📢 Setup Instructions:
Add to chart ✅
Toggle on signals, bands, and dashboard 📈
Set alert conditions for key events 🔔
Use with volume + price action context
Want the full suite? Join us in Discord 💎
🚀 Trade Smarter. Trade Faster. Trade with AI.
"Retail uses moving averages. Institutions use VWAP. We use AI + VWAP."
AI SwingAI Swing is an indicator that spot overbought over oversold situation.
This indicator is specialized for the forex market (but it can be used on the crypto market)
Please choose the type of indicator you want to use and choose the chart time accordingly :
AI Swing : use the daily chart
AI Intraday : use the 1 hour chart
AI Scalping : use the 15 minute chart
AI Swing est un indicateur qui met en évidence les périodes de sur achat et de sur vente
L'indicateur est spécialisé pour le forex (mais il peut être utilisé sur le marché crypto)
Choisissez le type d'indicateur que vous voulez utiliser et choisissez le temps du graphique approprié :
AI Swing : Utiliser le graphique en journalier
AI Intraday : Utiliser le graphique en une heure
AI Scalping : Utiliser le graphique en 15 minute
🚀 QuantSignals AI Trend Pro 15M🚀 QuantSignals AI Trend Pro 15M
Welcome to QuantSignals AI Trend Pro, the ultimate AI-powered trend and signal system designed for serious day traders and scalpers.
🔒 This is a closed-source invite-only script. Only approved users may access this strategy.
🔍 What is it?
QuantSignals AI Trend Pro uses proprietary machine learning logic and smart signal filters to detect high-probability entries and exits on the 15-minute timeframe.
Designed by real traders, backed by data science, and battle-tested across crypto, forex, and equities.
💡 Key Features
🎯 AI-Powered Signal Engine
Smart buy/sell logic filtered by momentum, volatility, and multi-timeframe confluence.
📈 Smart Trend Strength System
Auto-classifies market into 🚀 Strong Bull, ⚖️ Neutral, or 🔥 Strong Bear zones.
🧠 Visual Dashboard Overlay
Real-time scoreboards for trend status, signal quality, momentum, and volatility.
🎯 Smart Support & Resistance Zones
Auto-calculated pivot levels based on dynamic market structure.
🔔 Built-In Alerts
Get real-time signals directly to your device — ready for TradingView alert automation.
✅ Optimized For:
🕒 15-minute timeframe
🔁 Scalping & Day Trading
💹 Crypto / Stocks / Forex / Futures
💎 How to Get Access?
This is a limited free version of our full QuantSignals system.
To unlock:
🔓 Full algorithm (multi-timeframe + sentiment + volume)
🔔 Real-time signals + smart alerts
📘 Educational content & live strategy sessions
➕ Join our community and request access:
🌐 Website: quantsignals.xyz
💬 Discord: discord.gg
🧠 Who is this for?
Active day traders and scalpers
Traders seeking institutional-grade tools
Anyone tired of fake signal groups and repainting indicators
📉 Disclaimer
This script is for educational and informational purposes only.
Trading carries risk. Use with proper risk management.
SuperTrend AI (Clustering) [LuxAlgo]The SuperTrend AI indicator is a novel take on bridging the gap between the K-means clustering machine learning method & technical indicators. In this case, we apply K-Means clustering to the famous SuperTrend indicator.
🔶 USAGE
Users can interpret the SuperTrend AI trailing stop similarly to the regular SuperTrend indicator. Using higher minimum/maximum factors will return longer-term signals.
The displayed performance metrics displayed on each signal allow for a deeper interpretation of the indicator. Whereas higher values could indicate a higher potential for the market to be heading in the direction of the trend when compared to signals with lower values such as 1 or 0 potentially indicating retracements.
In the image above, we can notice more clear examples of the performance metrics on signals indicating trends, however, these performance metrics cannot perform or predict every signal reliably.
We can see in the image above that the trailing stop and its adaptive moving average can also act as support & resistance. Using higher values of the performance memory setting allows users to obtain a longer-term adaptive moving average of the returned trailing stop.
🔶 DETAILS
🔹 K-Means Clustering
When observing data points within a specific space, we can sometimes observe that some are closer to each other, forming groups, or "Clusters". At first sight, identifying those clusters and finding their associated data points can seem easy but doing so mathematically can be more challenging. This is where cluster analysis comes into play, where we seek to group data points into various clusters such that data points within one cluster are closer to each other. This is a common branch of AI/machine learning.
Various methods exist to find clusters within data, with the one used in this script being K-Means Clustering , a simple iterative unsupervised clustering method that finds a user-set amount of clusters.
A naive form of the K-Means algorithm would perform the following steps in order to find K clusters:
(1) Determine the amount (K) of clusters to detect.
(2) Initiate our K centroids (cluster centers) with random values.
(3) Loop over the data points, and determine which is the closest centroid from each data point, then associate that data point with the centroid.
(4) Update centroids by taking the average of the data points associated with a specific centroid.
Repeat steps 3 to 4 until convergence, that is until the centroids no longer change.
To explain how K-Means works graphically let's take the example of a one-dimensional dataset (which is the dimension used in our script) with two apparent clusters:
This is of course a simple scenario, as K will generally be higher, as well the amount of data points. Do note that this method can be very sensitive to the initialization of the centroids, this is why it is generally run multiple times, keeping the run returning the best centroids.
🔹 Adaptive SuperTrend Factor Using K-Means
The proposed indicator rationale is based on the following hypothesis:
Given multiple instances of an indicator using different settings, the optimal setting choice at time t is given by the best-performing instance with setting s(t) .
Performing the calculation of the indicator using the best setting at time t would return an indicator whose characteristics adapt based on its performance. However, what if the setting of the best-performing instance and second best-performing instance of the indicator have a high degree of disparity without a high difference in performance?
Even though this specific case is rare its however not uncommon to see that performance can be similar for a group of specific settings (this could be observed in a parameter optimization heatmap), then filtering out desirable settings to only use the best-performing one can seem too strict. We can as such reformulate our first hypothesis:
Given multiple instances of an indicator using different settings, an optimal setting choice at time t is given by the average of the best-performing instances with settings s(t) .
Finding this group of best-performing instances could be done using the previously described K-Means clustering method, assuming three groups of interest (K = 3) defined as worst performing, average performing, and best performing.
We first obtain an analog of performance P(t, factor) described as:
P(t, factor) = P(t-1, factor) + α * (∆C(t) × S(t-1, factor) - P(t-1, factor))
where 1 > α > 0, which is the performance memory determining the degree to which older inputs affect the current output. C(t) is the closing price, and S(t, factor) is the SuperTrend signal generating function with multiplicative factor factor .
We run this performance function for multiple factor settings and perform K-Means clustering on the multiple obtained performances to obtain the best-performing cluster. We initiate our centroids using quartiles of the obtained performances for faster centroids convergence.
The average of the factors associated with the best-performing cluster is then used to obtain the final factor setting, which is used to compute the final SuperTrend output.
Do note that we give the liberty for the user to get the final factor from the best, average, or worst cluster for experimental purposes.
🔶 SETTINGS
ATR Length: ATR period used for the calculation of the SuperTrends.
Factor Range: Determine the minimum and maximum factor values for the calculation of the SuperTrends.
Step: Increments of the factor range.
Performance Memory: Determine the degree to which older inputs affect the current output, with higher values returning longer-term performance measurements.
From Cluster: Determine which cluster is used to obtain the final factor.
🔹 Optimization
This group of settings affects the runtime performances of the script.
Maximum Iteration Steps: Maximum number of iterations allowed for finding centroids. Excessively low values can return a better script load time but poor clustering.
Historical Bars Calculation: Calculation window of the script (in bars).
🔁 QuantSignals | AI Reversal Signal🔁 QuantSignals | AI Reversal Signal
A Free Visual Indicator That Promotes Better Entries
🧠 Built to help traders spot reversal setups + discover the QuantSignals.ai edge.
🎯 What It Does:
This clean, powerful indicator uses a momentum-based reversal logic (RSI crossovers) to highlight potential turning points in any chart — stocks, indices, crypto, or ETFs. Ideal for new and intermediate traders who want simple Buy/Sell guidance with zero clutter.
⚙️ How It Works:
✅ Buy Signal: Triggered when RSI crosses above oversold (default 30)
✅ Sell Signal: Triggered when RSI crosses below overbought (default 70)
✅ Signal Labels: “QS 🔼” and “QS 🔽” on the chart for easy entries
✅ Promo Overlay: Subtle, non-intrusive labels remind traders to check out QuantSignals.ai
✅ Auto Background Tint: Light green/red shading on signals for instant visual confirmation
🌐 Why QuantSignals?
QuantSignals.ai is a next-gen platform for:
🕓 0DTE trading signals
📅 Post-earnings setups
📉 IV flush fades
💡 AI-backed reversal strategies
Trusted by over 1,000 active traders who want real edge — not noise.
🚀 How to Use:
Add to any chart (works on 1m–1D)
Combine with your support/resistance zones
Use as entry timing tool, not standalone system
Check out real trade ideas at QuantSignals.ai
🔗 Call to Action:
📲 Want real-time setups?
👉 Visit www.QuantSignals.xyz
🧠 Learn the full strategy + join the QS community.
📊 Bonus Use Case:
Use this indicator with S&P500 tech stocks post-earnings
Pair with your own watchlist of high-liquidity names
Perfect for small account traders looking to time better entries
💬 Final Words:
“Not every signal is a trade — but every trade should start with a signal.”
— The QuantSignals Team
AI Smart Liquidity Signal Gold 🚀AI Smart Liquidity Signal Gold
Description:
This indicator is a technical analysis tool designed to identify potential trading opportunities by detecting breakouts of pivot-based trendlines and confirming these events with a comprehensive, multi-layered filtering system. This document provides a detailed, transparent explanation of the underlying logic and calculations.
1. Core Concept: Pivot-Based Liquidity Trendlines
The primary signal of this indicator is generated from what we term "Liquidity Trendlines." This is a custom method for identifying potential momentum shifts.
How It Works:
The script first identifies significant swing points in the price using the ta.pivothigh() and ta.pivotlow() functions. The lookback period for these pivots is user-configurable.
It then connects consecutive pivot points (e.g., two pivot highs or two pivot lows) to draw a trendline. This line represents a dynamic boundary of recent price action.
A "Liquidity Breakout" signal is generated when the price closes decisively across this trendline. For example, a liquidity _ pulp (buy signal) occurs when the price closes above a downward-sloping trendline connecting two pivot highs. This breakout is the foundational event for a potential trade setup.
2. The Signal Confirmation Process: A Multi-Layered Filtering System
A raw Liquidity Breakout signal is only the starting point. To enhance reliability and reduce false positives, the signal must pass through a series of user-enabled filters. A final Buy or Sell signal is only plotted on the chart if all active filter conditions are met simultaneously.
Here is a breakdown of each filter's specific logic:
General Trend Filter: This filter uses a sequence of moving averages (50, 100, and 200-period EMAs) to define the long-term market trend.
Buy Condition: close > 50 EMA, 50 EMA > 100 EMA, and 100 EMA > 200 EMA. The slope of the 50 EMA must also be positive.
Sell Condition: The inverse of the buy condition.
Smart Trend Filter: This provides a shorter-term view of the trend by combining signals from EMA slope, DMI (ADX), and market structure. A score is calculated, and the trend is considered "UP" or "DOWN" if at least two of the three conditions are met.
RSI Filter: The Relative Strength Index (RSI) is used to filter signals based on momentum.
Buy Condition: The RSI must be rising (rsi > rsi ) and below the user-defined oversold level (e.g., 30).
Sell Condition: The RSI must be falling (rsi < rsi ) and above the user-defined overbought level (e.g., 70).
MACD Filter: The Moving Average Convergence Divergence confirms momentum.
Buy Condition: The MACD line must be above the Signal line.
Sell Condition: The MACD line must be below the Signal line.
ATR (Volatility) Filter: This filter ensures that trades are only taken when market volatility is sufficient. It calculates the ATR as a percentage of the closing price and checks if it is above a user-defined threshold (e.g., 0.03%).
Support & Resistance (S&R) Filter: The indicator identifies the highest high and lowest low over a lookback period to create dynamic S&R zones.
Logic: It blocks buy signals that form too close to a resistance zone and sell signals that form too close to a support zone, preventing trades into immediate barriers.
Higher Timeframe (HTF) Filter: This powerful feature provides confluence by checking the General Trend condition on higher timeframes (e.g., 30m, 1H, 4H). A buy signal on the current chart will only be valid if the trend on the selected higher timeframes is also "UP".
3. Integrated Risk Management: TP/SL Calculations
The indicator automatically calculates Take Profit (TP) and Stop Loss (SL) levels for every valid signal based on the Average True Range (ATR), adapting to current market volatility.
Calculation Method:
Stop Loss (SL): Entry Price ± (ATR * SL_Multiplier)
Take Profit (TP): Entry Price ± (ATR * TP_Multiplier)
The multipliers for SL and the three TP levels (TP1, TP2, TP3) are fully customizable by the user.
4. Additional Features
Multi-Timeframe (MTF) Scanner: A dashboard that monitors and displays the final Buy/Sell signal status across multiple timeframes simultaneously.
Session Filter: Allows traders to restrict signals to specific market sessions (Asian, London, New York).
Customizable Alerts: Alerts can be configured for any final Buy/Sell signal, allowing users to stay informed without constant chart monitoring.
By combining pivot-based breakout detection with this rigorous, step-by-step confirmation process, the "AI Smart Liquidity Signal" aims to provide a structured and logical approach to identifying trading opportunities.
AI Volume SignalsAI Volume Signals
The AI Volume Signals indicator detects significant volume spikes and combines them with trend direction and candle color to generate buy and sell signals. This script utilizes an Exponential Moving Average (EMA) of volume to detect abnormal volume spikes, which could indicate strong market activity. It also filters signals based on the trend direction determined by a 50-period EMA of the price.
Key Features:
Volume Spike Detection: The indicator detects when the current volume exceeds the EMA of volume by a user-defined multiplier, signaling an unusual increase in market activity.
Trend Direction Filter: The 50-period EMA of the price is used to determine the market trend. Buy signals are generated when the price is above the EMA (uptrend), and sell signals occur when the price is below the EMA (downtrend).
Candle Color Filter: The indicator only generates a buy signal when the current candle is bullish (green), and a sell signal when the current candle is bearish (red).
Optional Volume EMA Line: A customizable option allows users to toggle the visibility of the Volume EMA line on the chart. By default, the line is hidden, but can be enabled in the settings.
Signals:
Buy Signal: Generated when a volume spike occurs, the trend is upward, and the current candle is bullish.
Sell Signal: Generated when a volume spike occurs, the trend is downward, and the current candle is bearish.
Alerts:
Buy Alert: Alerts the user when a buy signal is triggered.
Sell Alert: Alerts the user when a sell signal is triggered.
Visualization:
Buy Signal: A green label appears below the bar when the buy conditions are met.
Sell Signal: A red label appears above the bar when the sell conditions are met.
Volume EMA: A line representing the EMA of the volume is plotted on the chart for reference. The visibility of this line can be toggled in the settings.
This indicator can help traders identify potential entry points based on increased volume activity while considering trend direction and candlestick patterns.
Adaptive AI Predictor (v2) by OberlunarAdaptive AI Predictor by Oberlunar
This script is designed to dynamically adapt to market changes, leveraging a neural network-inspired model to identify reliable trading signals. It analyzes price variations, processes patterns in the market, and provides clear buy and sell signals based on dynamic force calculations.
The script goes beyond simple indicators by incorporating adaptive learning principles. It tracks the success of its signals over time, calculating both the average and median forces behind winning trades. These insights allow the script to continuously refine its performance, ensuring it remains responsive to evolving market conditions.
Clear signals are displayed on the chart, showing the strength of the signal and its median historical success.
Configuration Parameters
Number of Nodes: : This parameter controls the number of nodes through which the data is processed. A higher number of nodes can improve the model’s ability to represent complex dynamics, but may also increase bias and a low capacity of generalization.
Input Scaling: Determines how much the input signal (percentage price change) is amplified before being processed. If the value is too low, the system may not react sufficiently to price changes; if too high, it might become too sensitive to market noise.
Scaling: Controls the strength of interactions between internal nodes. A higher value makes interactions between the neurons (nodes) stronger, but might also lead to instability in the signals.
Leak Rate: This parameter determines how fast information is "forgotten" within the system. A higher value means the model "forgets" previous information more quickly, making it more responsive to recent changes.
Sparsity: Controls the density of connections between internal nodes. A higher value increases the likelihood that a connection between nodes is "active." This affects the system’s ability to model complex dynamics and can also influence computational speed.
Signal Threshold: Sets the limit beyond which the predicted signal is considered significant. A value too low could generate too frequent and noisy signals, while a value too high might reduce useful signals.
History Length: Determines how much historical data is considered for training the system. A higher value uses more historical data but could slow down computations.
Learning Rate: Controls the speed at which the system updates its internal weights. A value too high might cause oscillations in the results, while one too low might slow down the adaptation process.
Exponential Decay Factor: Defines how quickly the weights adapt based on errors. A higher value reduces the impact of older weights, allowing the model to adapt faster to recent changes.
How It Works
Input Signal: The system observes the percentage price change between two consecutive bars (current close vs. previous close).
State Update: The states of the nodes are updated based on the input signal and internal interactions between the neurons. The update is influenced by the leak rate, which determines how fast nodes "forget" previous information.
Weight Training: Weights are trained to minimize the error between the system’s prediction and the observed price change. The system uses exponential regression to update the weights efficiently.
Signal Generation: Buy (BUY) and sell (SELL) signals are generated based on an analysis of the overall values of the nodes' states. If the overall strength (average of the nodes' states) exceeds a certain threshold, a buy signal is generated. If it's lower than a negative threshold, a sell signal is triggered.
Visualization and Signals
Signals on the Chart: Buy and sell signals are displayed on the chart with specific labels, indicating the signal's strength and median successful strength previously adopted . The strength is based on the distance from the threshold. The stronger the signal, the more intense the label color.
Debug Table: A debug table shows details about the input weights, node states, and the success of buy/sell signals, allowing you to monitor the system's behavior in real-time.
Simple Capital Management: The system calculates the position size based on available capital and updates the current capital after each trade. The profit or loss is displayed as a percentage of the initial capital.
How to Use It
Initial Configuration: Customize the configuration parameters based on your trading strategy and style. If you’re a more conservative trader, you might prefer higher thresholds and lower scaling.
Monitor Signals: Follow the buy and sell signals generated on the chart. Each signal is accompanied by its strength (percentage), which will help you decide how aggressively to position.
Very simple Position Management: When a buy signal is emitted, you can open a buy position, and when a sell signal is emitted, you can close the position. The system automatically calculates the profit or loss for each trade.
Adapting to Market Conditions: Adjust the parameters based on market volatility and your risk tolerance. If the market is highly volatile, you might want to increase sensitivity to signals or reduce the number of nodes for faster responsiveness.
With this system, you can leverage dynamic predictive signals based on a combination of historical data and continuous adaptation, improving your trading decisions.
To obtain good results remember to fine-tune by a model reparametrization.
Crypto Index Creator (MEMES & AI Supercycle Dominance, etc)This indicator aims to help to create any INDEX desired including but not limited to its Market Cap and Dominance on the crypto market.
This script was inspired originally by Murad's "Memecoins Dominance" but then I extended it to AI and can be extended to anything in fact, so you can create any index!
I made each token entry editable so that the script can survive the evolution of time as likely projects and INDEXES are going to change a lot, so that you can add/modify your own indices of preference if not listed by default and in order to make it future proof.
You can play with the settings, can compare to BTC, ETC, SOL, etc. for helping in your studies
You also have the option to check the info of each symbol on a table available on the settings, in order to help you figure out if there are any errors and also help you to easily check how the symbols are performing individually
Notes:
- Many projects are not like MEMECOINS that have fixed supply, normally VC projects have a very variable circulating supply, so you might want to update the info of the circulating supply for your projects to make it more accurate if you desire.
- For this script there is a limit of 32 Symbols, due to tradingview own limits, yet you can always "add" multiple projects per line as long as their circulating supply is the same.
- You might want to edit/sort the tickers of the top3, top5 and top10 if they follow bellow those top ranks, but this is not necessary if you don't care about Top 3-10 specific calculations.
- My default "indices" were made of token selections of mine as of November 2024, those defaults indices/tickers I might or might not update them eventually but you are free to adapt/modify the tickers in the settings as history evolves, and you can leave your own indexes on the comment section of this post for others to use
- As you might not be able to create/store multiple different indexes at the same time, you might want to add this indicator multiple times on your screen and then modify the tickers of each instance of this indicator, by that you can have multiple indexes.
AI Smart Liquidity Signal Gold SMCver1 🚀AI Smart Liquidity Signal Gold
Description:
This indicator is a comprehensive technical analysis tool designed to identify potential trading opportunities. It combines two core methodologies: a primary signal engine based on pivot trendline breakouts, and a sophisticated confirmation layer using classic technical indicators. Additionally, it includes a separate module for plotting ICT-based market structure for discretionary analysis. This document provides a detailed, transparent explanation of all underlying logic and calculations.
1. Core Engine: Pivot-Based Liquidity Trendline Signals
The indicator's foundational signal is generated from a custom method we call "Liquidity Trendlines," which aims to identify potential shifts in momentum.
How It Works:
The script first identifies significant swing points in the price using the ta.pivothigh() and ta.pivotlow() functions.
It then draws a trendline connecting consecutive pivot points (e.g., two pivot highs).
A "Liquidity Breakout" signal (liquidity_plup for buy, liquidity_pldn for sell) is generated when the price closes decisively across this trendline, forming the basis for a potential trade.
2. The Signal Confirmation Process: A Multi-Layered Filtering System
A raw Liquidity Breakout signal is only a starting point. To enhance reliability and reduce false positives, the signal must pass through a series of user-enabled filters. A final Buy or Sell signal is only plotted on the chart if all active filter conditions are met simultaneously.
General & Smart Trend Filters: These filters use a combination of moving averages (50, 100, 200 EMA), DMI (ADX), and market structure (higher highs/lower lows) to define the short-term and long-term trend. A signal must align with the calculated trend direction to be valid.
RSI & MACD Filters: These are used for momentum confirmation. For example, a buy signal can be configured to be valid only if the MACD line is above its signal line and the RSI is below a certain threshold.
ATR (Volatility) Filter: Ensures trades are considered only when market volatility is sufficient, calculated as the ATR value relative to the closing price.
Support & Resistance (S&R) Filter: Blocks buy signals forming too close to a resistance zone and sell signals near a support zone.
Higher Timeframe (HTF) Filter: Provides confluence by checking that the trend on higher timeframes (e.g., 1H, 4H) aligns with the signal on the current timeframe.
3. ICT-Based Structure & Premium/Discount Zones (Visual Aid)
Separate from the automated signal filtering system, the indicator also includes a module for plotting key ICT (Inner Circle Trader) concepts. This part of the script is for visual and discretionary analysis only and does not directly influence the Buy/Sell signals.
ICT Market Structure: It plots labels for Change of Character (CHoCH), Shift in Market Structure (SMS), and Break of Market Structure (BMS). This is based on a Donchian-channel-like logic that tracks the highest and lowest price over a user-defined period (ict_prd) to identify structural shifts.
ICT Premium & Discount Zones: When enabled, it draws colored zones on the chart corresponding to Premium (for selling), Discount (for buying), and Equilibrium levels. These are calculated based on the range between the highest high and lowest low over the defined ICT period.
4. Risk Management & Additional Features
TP/SL Calculations: Automatically calculates Take Profit (TP) and Stop Loss (SL) levels for every valid signal based on the Average True Range (ATR).
Multi-Timeframe (MTF) Scanner: A dashboard that monitors and displays the final Buy/Sell signal status across multiple timeframes.
Session Filter & Alerts: Allows for restricting trades to specific market sessions and configuring alerts for any valid signal.
By combining pivot-based breakout detection with a rigorous confirmation process, this indicator provides a structured and transparent approach to identifying trading opportunities.
AI Smart Liquidity Signal SMC Gold 🚀AI Smart Liquidity Signal SMC Gold
Description:
This indicator is a comprehensive technical analysis tool designed to identify potential trading opportunities. It combines two core methodologies: a primary signal engine based on pivot trendline breakouts, and a sophisticated confirmation layer using both classic technical indicators and modern Smart Money Concepts (SMC). This document provides a detailed, transparent explanation of all underlying logic and calculations.
1. Core Engine: Pivot-Based Liquidity Trendline Signals
The indicator's foundational signal is generated from a custom method we call "Liquidity Trendlines," which aims to identify potential shifts in momentum.
How It Works:
The script first identifies significant swing points using ta.pivothigh() and ta.pivotlow().
It then draws a trendline connecting consecutive pivot points (e.g., two pivot highs).
A "Liquidity Breakout" signal (liquidity_plup for buy, liquidity_pldn for sell) is generated when the price closes decisively across this trendline, forming the basis for a potential trade.
2. Confirmation Layer 1: Classic Technical Filters
A raw Liquidity Breakout signal is only a starting point. To enhance reliability, it can be passed through a series of user-enabled classic filters. A signal is only considered valid if all active filter conditions are met.
General & Smart Trend Filters: These filters use a combination of moving averages (50, 100, 200 EMA), DMI (ADX), and market structure (higher highs/lower lows) to define the short-term and long-term trend. A signal must align with the calculated trend direction to be valid.
RSI & MACD Filters: These are used for momentum confirmation. For example, a buy signal can be configured to be valid only if the MACD line is above its signal line and the RSI is below a certain threshold.
ATR (Volatility) Filter: Ensures trades are considered only when market volatility is sufficient, calculated as the ATR value relative to the closing price.
Support & Resistance (S&R) Filter: Blocks buy signals forming too close to a resistance zone and sell signals near a support zone.
Higher Timeframe (HTF) Filter: Provides confluence by checking that the trend on higher timeframes (e.g., 1H, 4H) aligns with the signal on the current timeframe.
3. Confirmation Layer 2: Smart Money Concepts (SMC) Filters
This optional but powerful layer analyzes price action for signs of institutional activity. When enabled, the base signal must also satisfy all active SMC conditions.
Break of Structure (BoS):
Logic: Confirms a trend continuation. A buy signal is validated if the price has recently broken above a significant prior swing high (bosUp). A sell signal is validated by a break below a prior swing low (bosDown).
Change of Character (ChoCh):
Logic: Identifies a potential trend reversal. It becomes valid when a pattern of falling lows is broken by a new high (chochUp), or vice-versa, adding strength to a reversal signal.
Liquidity Sweep:
Logic: A "sweep" suggests that liquidity has been taken. A buy signal is confirmed if the price recently swept below a prior low and then closed bullishly (sweepUp).
Supply/Demand Zone Filter:
Logic: The script identifies simple supply and demand zones based on the current high/low. It then checks if a signal is occurring in a "safe" area (i.e., a buy signal is not inside a supply zone).
Order Block (OB) / FVG Filter:
Logic: This is a simplified filter that checks the strength of the signal candle's body. A valid order block is considered to have a strong real body, and the script checks if the candle's body-to-range ratio (obValid) meets a minimum threshold.
4. ICT-Based Structure & Premium/Discount Zones
Separate from the filtering system, the indicator also includes a module for plotting key ICT (Inner Circle Trader) concepts, which can be used for manual analysis.
ICT Market Structure: It plots labels for Change of Character (CHoCH), Shift in Market Structure (SMS), and Break of Market Structure (BMS) based on a Donchian-channel-like logic that tracks highs and lows over a set period.
ICT Premium & Discount Zones: When enabled, it draws zones on the chart corresponding to Premium (for selling), Discount (for buying), and Equilibrium levels, calculated based on the range between the highest high and lowest low over the ICT period.
5. Risk Management & Additional Features
TP/SL Calculations: Automatically calculates Take Profit (TP) and Stop Loss (SL) levels for every valid signal based on the Average True Range (ATR).
Multi-Timeframe (MTF) Scanner: A dashboard that monitors and displays the final Buy/Sell signal status across multiple timeframes.
Session Filter & Alerts: Allows for restricting trades to specific market sessions and configuring alerts for any valid signal.
By combining pivot-based breakout detection with these rigorous, multi-layered confirmation processes, this indicator provides a structured and transparent approach to identifying trading opportunities.
AI Strat ATR Dinamico + ADX + Trend Adaptivo (No Repaint)Below is a fully self-contained, English-language description of every input, function, and logical block inside the “AI Strat ATR Dinamico + ADX + Trend Adaptivo (No Repaint)” indicator. You can copy and paste this into TradingView’s “Description” field when you publish, without exposing any Pine code.
---
## Indicator Name and Purpose
**Name (Short Title):**
AI Strat Adaptive v3 (NoRepaint)
**Overview:**
This indicator combines multiple technical tools—RSI, EMA, ATR (with a dynamic multiplier), ADX/DI, and an “AI‐style” scoring mechanism—to generate trend-filtered and reversal signals. It also optionally confirms signals on a higher timeframe, dynamically adjusts its sensitivity based on volatility, and plots intrabar stop‐loss (SL) and take‐profit (TP) levels derived from ATR. Special care has been taken to ensure that no signals “repaint” (i.e., once drawn on a closed bar, they never disappear or shift).
---
## 1. Main Inputs
All of the inputs appear in the Settings dialog for the published indicator. Below is a detailed explanation of each input, grouped by logical category.
### A. RSI & EMA Base Parameters
1. **RSI Length (Base)**
* **Input type:** Integer (default 14)
* **Description:** Number of bars used to calculate the Relative Strength Index (RSI). A shorter RSI reacts more quickly to price changes; a longer RSI is smoother.
2. **RSI Overbought Threshold**
* **Input type:** Integer (default 60)
* **Description:** If the RSI value rises above this level, it contributes a “sell” signal component. You can adjust this (e.g., 70) to make your system more conservative.
3. **RSI Oversold Threshold**
* **Input type:** Integer (default 40)
* **Description:** If the RSI falls below this level, it contributes a “buy” signal component. Raising this threshold (e.g., 50) makes the strategy more aggressive in seeking reversals.
4. **EMA Length (Base)**
* **Input type:** Integer (default 20)
* **Description:** Number of bars for the Exponential Moving Average (EMA). A shorter EMA will produce more frequent crossovers, a longer EMA is smoother.
### B. ATR & Volatility Filter Parameters
5. **ATR Length (Base)**
* **Input type:** Integer (default 14)
* **Description:** Number of bars to calculate Average True Range (ATR). The ATR is used both for measuring volatility and for dynamic SL/TP levels.
6. **ATR SMA Length**
* **Input type:** Integer (default 50)
* **Description:** Number of bars to compute a Simple Moving Average of the ATR itself. This gives a baseline of “normal” volatility. If ATR rises significantly above this SMA, the indicator treats the market as “high volatility.”
7. **ATR Multiplier Base**
* **Input type:** Float (default 1.2, step 0.1)
* **Description:** Base multiplier for ATR when filtering for volatility. The actual threshold is computed as `ATR_SMA × (ATR_Multiplier Base) × sqrt(current_ATR / ATR_SMA)`. In other words, the multiplier becomes larger if volatility is rising, and smaller if volatility is falling.
8. **Disable Volatility Filter**
* **Input type:** Boolean (default false)
* **Description:** If enabled (true), the indicator will ignore any volatility‐based filtering, using signals regardless of ATR behavior. If disabled (false), signals only fire when ATR > (ATR\_SMA × dynamic multiplier).
### C. Price-Change & “AI Score” Parameters
9. **Price Change Period (bars)**
* **Input type:** Integer (default 3)
* **Description:** The number of bars back to measure percentage price change. Used to ensure that a “trend” signal is accompanied by a sufficiently positive (for longs) or negative (for shorts) price movement over this many bars.
10. **Base AI Score Threshold**
* **Input type:** Float (default 0.1)
* **Description:** The indicator computes a composite “AI-style” score by combining the RSI signal (overbought/oversold) and an EMA crossover signal. Only if the absolute value of that composite score exceeds this threshold will a trend signal be eligible. Raising it makes signals rarer but (potentially) higher-conviction.
### D. SMA “ICT” Trend Filter Parameters
11. **ICT SMA Long Length (Base)**
* **Input type:** Integer (default 50)
* **Description:** Number of bars for the “long” Simple Moving Average (SMA) used in the internal trend filter. Typically, price must be above this SMA (and ADX must be strong) to confirm an uptrend, or below it (and ADX strong) to confirm a downtrend.
12. **ICT SMA Short1 Length (Base)**
* **Input type:** Integer (default 10)
* **Description:** Secondary “fast” SMA used both for reversal logic (e.g., price crossing above it can count as a bullish reversal) and part of the internal trend confirmation.
13. **ICT SMA Short2 Length (Base)**
* **Input type:** Integer (default 20)
* **Description:** A second “medium” SMA used for reversal triggers (e.g., crossovers or crossunders alongside RSI conditions).
### E. ADX & DI Parameters
14. **Base ADX Length**
* **Input type:** Integer (default 14)
* **Description:** Number of bars for the ADX (Average Directional Index) moving averages, which measure trend strength. The same length is used for +DI and –DI smoothing.
15. **Base ADX Threshold**
* **Input type:** Float (default 25.0, step 0.5)
* **Description:** If ADX > this threshold and +DI > –DI, we consider an uptrend; if ADX > this threshold and –DI > +DI, we consider a downtrend. Raising this value demands stronger trends to qualify.
### F. Sensitivity & Cooldown
16. **Sensitivity (0–1)**
* **Input type:** Float between 0.0 and 1.0 (default 0.5)
* **Description:** A general “mixture” parameter used internally to weight how aggressively the indicator leans into trend versus reversal. In practice, the code uses it to fine-tune exact thresholds for switching between trend and reversal conditions. You can leave it at 0.5 unless you want to bias more heavily toward either regime.
17. **Base Cooldown Bars Between Signals**
* **Input type:** Integer (default 5, min 0)
* **Description:** Once a long or short signal fires, the indicator will wait at least this many bars before allowing a new signal in the same direction. Prevents “signal flipping” on each bar. A higher number forces fewer, more spaced-out entries.
18. **Trend Confirmation Bars**
* **Input type:** Integer (default 3, min 1)
* **Description:** After the directional filters (+DI/–DI cross, price vs. SMA), the indicator still requires that price remains on the same side of the long SMA for at least this many consecutive bars before confirming “trend up” or “trend down.” Larger values smooth out false breakouts but may lag signals.
### G. Higher Timeframe Confirmation
19. **Use Higher Timeframe Confirmation**
* **Input type:** Boolean (default true)
* **Description:** If true, the indicator will request a block of values (SMA, +DI, –DI, ADX) from a higher timeframe (default 60 minutes) and require that the higher timeframe is also in agreement (strong uptrend or strong downtrend) before confirming your current-timeframe trend. This helps filter out lower-timeframe noise.
20. **Higher Timeframe (TF) for Confirmation**
* **Input type:** Timeframe (default “60”)
* **Description:** The chart timeframe (e.g., 5, 15, 60 minutes) whose trend conditions must also be true. It’s sent through a `request.security(..., lookahead=barmerge.lookahead_off)` call so that it never “paints ahead.”
### H. Dynamic TP/SL Parameters
21. **TP as ATR Multiple**
* **Input type:** Float (default 2.0, step 0.1)
* **Description:** When a trade is open, the “take-profit” price is determined by looking at the highest high (for longs) or lowest low (for shorts) observed since entry, and then plotting a cross (“X”) at that level when the trend finally flips. This is purely for display. However, separate from that, this parameter can be adapted if you want a strictly ATR–based TP. In the “Minimal” version, TP is ≈ (highest high) once trend inverts, but you could rewrite it to use `entry_price + ATR×TP_Multiplier`.
22. **SL as ATR Multiple**
* **Input type:** Float (default 1.0, step 0.1)
* **Description:** While in a trade, a trailing SL line is plotted each bar. Its value is always `entry_price ± (ATR × SL_Multiplier)`. When the trend inverts, the SL no longer updates, and you see it on the chart.
### I. Display and Mode Options
23. **Show Debug Lines**
* **Input type:** Boolean (default true)
* **Description:** When enabled, the indicator will plot all intermediate lines—ATR SMA, ATR Threshold, +DI, –DI, ADX (current and HTF), HTF SMA, etc.—so that you can diagnose exactly what’s happening. Turn this off to hide all debug information and only see entry/exit shapes.
24. **Enable Scalping Mode**
* **Input type:** Boolean (default false)
* **Description:** If true, many of the “base” parameters are halved (e.g., RSI length becomes 7 instead of 14, ATR length becomes 7 instead of 14, ADX length becomes 7, etc.), and the ADX threshold is multiplied by 0.8. This makes all oscillators and moving averages more reactive, suited for very short-term (scalping) setups.
---
## 2. Core Calculation Blocks
Below is a high-level description of each logical block (in code order), translated from Pine into conceptual steps.
### A. Adjust Inputs if “Scalping Mode” Is On
If **Scalping Mode** = true, then:
* `RSI_Length` becomes `max(1, round(Base_RSI_Length / 2))`
* `EMA_Length` becomes `max(1, round(Base_EMA_Length / 2))`
* `ATR_Length` becomes `max(1, round(Base_ATR_Length / 2))`
* `Price_Change_Period` becomes `max(1, round(Base_Price_Change_Period / 2))`
* `SMA_Long_Length`, `SMA_Short1_Length`, and `SMA_Short2_Length` are each halved (minimum 1).
* `ADX_Length` = `max(1, round(Base_ADX_Length / 2))`
* `ADX_Threshold` = `Base_ADX_Threshold × 0.8`
* `Cooldown_Bars` = `max(0, round(Base_Cooldown_Bars / 2))`
Otherwise, all adjusted lengths = their base values.
### B. RSI, EMA & “AI Score” on Current Timeframe
1. **Compute RSI:**
* Uses the (possibly adjusted) `RSI_Length`.
* Denote this as `RSI_Value`.
2. **Compute ATR & Its SMA:**
* `ATR_Value` = `ta.atr(ATR_Length)`.
* `ATR_SMA` = `ta.sma(ATR_Value, ATR_SMA_Length)`.
* Then define `Volatility_Increase` = (`ATR_Value > ATR_SMA`).
* If the volatility has increased, the weighting of RSI vs. EMA changes.
3. **Compute Weights:**
* If `Volatility_Increase == true`, then:
* `RSI_Weight = 0.7`
* `EMA_Weight = 0.3`
* Otherwise:
* `RSI_Weight = 0.3`
* `EMA_Weight = 0.7`
4. **RSI Signal Component (`RSI_Sig`):**
* If `RSI_Value > RSI_Overbought`, then `RSI_Sig = –1`.
* Else if `RSI_Value < RSI_Oversold`, then `RSI_Sig = +1`.
* Otherwise, `RSI_Sig = 0`.
5. **EMA Value & Signal Component (`EMA_Sig`):**
* `EMA_Value` = `ta.ema(close, EMA_Length)`.
* `EMA_Sig = +1` if the current close crosses **above** the EMA; `EMA_Sig = –1` if the current close crosses **below** the EMA; else `0`.
6. **Compute Raw “AI Score”:**
$$
Raw\_AI = (RSI\_Sig \times RSI\_Weight)\;+\;(EMA\_Sig \times EMA\_Weight)
$$
Then,
$$
AI\_Score = \frac{Raw\_AI}{(RSI\_Weight + EMA\_Weight)}
$$
(This normalization ensures the score always ranges between –1 and +1 if both weights sum to 1.)
### C. Dynamic ATR Multiplier & Volatility Filter
1. **Volatility Factor:**
$$
Volatility\_Factor = \frac{ATR\_Value}{ATR\_SMA}
$$
2. **Dynamic ATR Multiplier:**
$$
ATR\_Multiplier = ATR\_Multiplier\_Base \times \sqrt{Volatility\_Factor}
$$
3. **High Volatility Condition (`High_Volatility`):**
* If `Disable_Volatility_Filter == true`, then treat `High_Volatility = true` always.
* Else, `High_Volatility = (ATR_Value > ATR_SMA × ATR_Multiplier)`.
### D. Price Change Percentage
* **Compute Price Change:**
$$
Price\_Change = \frac{(Close - Close )}{Close } \times 100
$$
* This is the percent return from `Price_Change_Period` bars ago to now.
* For a valid long‐trend signal, we require `Price_Change > 0`; for a short trend, `Price_Change < 0`.
### E. Local SMAs for Trend/Reversal Filters
* `SMA_Close_Long` = `ta.sma(close, SMA_Long_Length)`.
* `SMA_Close_Short1` = `ta.sma(close, SMA_Short1_Length)`.
* `SMA_Close_Short2` = `ta.sma(close, SMA_Short2_Length)`.
These three SMAs help define the “local trend” and reversal breakout points:
* **Primary Trend Filter:**
* Price must be above `SMA_Close_Long` for an uptrend filter, or below `SMA_Close_Long` for a downtrend filter.
* **Reversal Filter:**
* A bullish reversal is detected if **(RSI < Oversold AND close crosses above EMA)** OR **(RSI < Oversold AND close crosses above SMA\_Close\_Short1)**.
* A bearish reversal is detected if **(RSI > Overbought AND close crosses below EMA)** OR **(RSI > Overbought AND close crosses below SMA\_Close\_Short1)**.
### F. Manual +DI, –DI & ADX on Current Timeframe
Instead of relying on the built-in `ta.adx`, the script calculates DI and ADX manually. This makes it easier to replicate the exact logic on a higher timeframe via `request.security`. The steps are:
1. **Directional Movement (DM) Components:**
* `Up_Move` = `high – high `
* `Down_Move` = `low – low`
* `Plus_DM` = `Up_Move` if (`Up_Move > Down_Move` AND `Up_Move > 0`), else `0`
* `Minus_DM` = `Down_Move` if (`Down_Move > Up_Move` AND `Down_Move > 0`), else `0`
2. **True Range (TR) Components:**
* `TR1` = `high – low`
* `TR2` = `abs(high – close )`
* `TR3` = `abs(low – close )`
* `True_Range` = `max(TR1, TR2, TR3)`
3. **Smoothed Averages (RMA):**
* `Sm_TR` = `ta.rma(True_Range, ADX_Length)`
* `Sm_Plus` = `ta.rma(Plus_DM, ADX_Length)`
* `Sm_Minus`= `ta.rma(Minus_DM, ADX_Length)`
4. **Compute DI%:**
$$
Plus\_DI = \frac{Sm\_Plus}{Sm\_TR} \times 100,\quad
Minus\_DI = \frac{Sm\_Minus}{Sm\_TR} \times 100
$$
5. **DX and ADX:**
$$
DX = \frac{|Plus\_DI - Minus\_DI|}{Plus\_DI + Minus\_DI} \times 100,\quad
ADX = ta.rma(DX, ADX_Length)
$$
These values are referred to as `(plus_di, minus_di, adx_val)` for the current timeframe.
---
## 3. Higher Timeframe (HTF) Confirmation Function
If **Use Higher Timeframe Confirmation** is enabled, the script calls a single helper (Pine) function `f_htf` with two parameters: the ADX length and the SMA length (both taken from the “base” or “scaled” values). Internally, `f_htf` simply reruns the manual DI/ADX logic (same as above) on the higher timeframe’s bar data, and also includes that timeframe’s closing price and its SMA for trend comparison.
* **Request.Security Call:**
```
= request.security(
syminfo.tickerid,
higher_tf,
f_htf(adx_length, sma_long_len),
lookahead=barmerge.lookahead_off
)
```
* `lookahead=barmerge.lookahead_off` ensures that no HTF value “paints” early; you always see only confirmed HTF bars.
* The returned tuple provides:
1. `ht_close` = HTF closing price
2. `ht_sma` = HTF SMA of length `sma_long_len`
3. `ht_pdi` = HTF +DI percentage
4. `ht_mdi` = HTF –DI percentage
5. `ht_adx` = HTF ADX value
---
## 4. Trend & Reversal Filters (Current & HTF)
### A. Current-Timeframe Trend Filter
1. **Uptrend\_Basic (Current TF)**
$$
(plus\_di > minus\_di)\;\land\;(adx\_val > ADX\_Threshold)\;\land\;(close > SMA\_Close\_Long)
$$
2. **Downtrend\_Basic (Current TF)**
$$
(minus\_di > plus\_di)\;\land\;(adx\_val > ADX\_Threshold)\;\land\;(close < SMA\_Close\_Long)
$$
3. **Trend Confirmation by Bars:**
* `Bars_Since_Below` = number of bars since `close <= SMA_Close_Long`.
* `Bars_Since_Above` = number of bars since `close >= SMA_Close_Long`.
* If `Uptrend_Basic == true` AND `Bars_Since_Below ≥ Trend_Confirmation_Bars` → mark `Uptrend_Confirm = true`.
* If `Downtrend_Basic == true` AND `Bars_Since_Above ≥ Trend_Confirmation_Bars` → mark `Downtrend_Confirm = true`.
### B. Reversal Filters (Current TF)
1. **Bullish Reversal (`Rev_Bullish`):**
* If `(RSI < RSI_Oversold AND close crosses above EMA_Value)` OR
`(RSI < RSI_Oversold AND close crosses above SMA_Close_Short1)`
→ then `Rev_Bullish = true`.
2. **Bearish Reversal (`Rev_Bearish`):**
* If `(RSI > RSI_Overbought AND close crosses below EMA_Value)` OR
`(RSI > RSI_Overbought AND close crosses below SMA_Close_Short1)`
→ then `Rev_Bearish = true`.
### C. Higher-Timeframe Trend Filter (HTF)
1. **HTF Uptrend (`HT_Uptrend`):**
$$
(ht\_pdi > ht\_mdi)\;\land\;(ht\_adx > ADX\_Threshold)\;\land\;(ht\_close > ht\_sma)
$$
2. **HTF Downtrend (`HT_Downtrend`):**
$$
(ht\_mdi > ht\_pdi)\;\land\;(ht\_adx > ADX\_Threshold)\;\land\;(ht\_close < ht\_sma)
$$
3. **Combine Current & HTF:**
* If **Use\_HTF\_Confirmation == true**, then:
* `Uptrend_Confirm := Uptrend_Confirm AND HT_Uptrend`
* `Downtrend_Confirm := Downtrend_Confirm AND HT_Downtrend`
* Otherwise, just use the current timeframe’s `Uptrend_Confirm` and `Downtrend_Confirm`.
4. **Define `CurrentTrend` (Integer):**
* `CurrentTrend = +1` if `Uptrend_Confirm == true`.
* `CurrentTrend = –1` if `Downtrend_Confirm == true`.
* Otherwise, `CurrentTrend = 0`.
5. **Reset “One Trade Per Trend”:**
* There is a persistent variable `LastTradeTrend`.
* Every time `CurrentTrend` flips (i.e., `CurrentTrend != CurrentTrend `), the code sets `LastTradeTrend := 0`.
* That allows one new entry once the detected trend has changed.
---
## 5. One‐Time “Cooldown” Logic
* **`LastSignalBar`**
* A persistent integer (initially undefined).
* After each confirmed long or short entry, `LastSignalBar` is set to the bar index where that signal fired.
* **`Bars_Since_Signal`**
* If `LastSignalBar` is undefined, treat as a very large number (so that initial signals are always allowed).
* Otherwise, `Bars_Since_Signal = bar_index – LastSignalBar`.
* **Cooldown Check:**
* A new long (or short) can only be generated if `(Bars_Since_Signal > Signal_Cooldown)`.
* This prevents multiple signals in rapid succession.
---
## 6. Entry Conditions (No Repaint)
All of the conditions below are calculated “intrabar,” but the script only actually registers a **signal** on **bar close** (`barstate.isconfirmed`) so that signals never repaint.
### A. Trend‐Based “Raw” Conditions
1. **Trend\_Long\_Raw:**
$$
(AI\_Score > AI\_Score\_Threshold)\;\land\;Uptrend\_Confirm\;\land\;High\_Volatility\;\land\;(Price\_Change > 0)
$$
2. **Trend\_Short\_Raw:**
$$
(AI\_Score < -AI\_Score\_Threshold)\;\land\;Downtrend\_Confirm\;\land\;High\_Volatility\;\land\;(Price\_Change < 0)
$$
### B. Reversal “Raw” Conditions
1. **Rev\_Long\_Raw:**
$$
Rev\_Bullish\;\land\;(CurrentTrend \neq +1)
$$
2. **Rev\_Short\_Raw:**
$$
Rev\_Bearish\;\land\;(CurrentTrend \neq -1)
$$
### C. Combine Raw Signals
* `Raw_Long = Trend_Long_Raw OR Rev_Long_Raw`.
* `Raw_Short = Trend_Short_Raw OR Rev_Short_Raw`.
### D. Confirmed Long/Short Signal Flags
On each new bar **close** (`barstate.isconfirmed == true`):
* **Long\_Signal\_Confirmed** can fire if:
1. `Raw_Long == true`
2. `LastTradeTrend != +1` (we haven’t already taken a long in this same trend)
3. `Bars_Since_Signal > Signal_Cooldown`
If all three hold, then on this bar close the code sets:
* `Long_Signal = true`
* `LastTradeTrend := +1`
* `LastSignalBar := bar_index`
Otherwise, `Long_Signal := false` on this bar.
* **Short\_Signal\_Confirmed** works the same way but with `Raw_Short`, `LastTradeTrend != -1`, etc.
If triggered, it sets `Short_Signal = true`, `LastTradeTrend := -1`, and `LastSignalBar := bar_index`. Otherwise `Short_Signal := false`.
* **Important:** If the bar is still forming (`else` branch of `barstate.isconfirmed`), then both `Long_Signal` and `Short_Signal` are forced to `false`. This guarantees that no shape or alert appears until the bar actually closes.
---
## 7. Plotting Entry/Exit Shapes
1. **Trend Long Signal (Triangle Up)**
* Condition: `Long_Signal == true` **AND** `Trend_Long_Raw == true`.
* Appearance: A small, semi-transparent lime green triangle drawn **below** the bar.
2. **Trend Short Signal (Triangle Down)**
* Condition: `Short_Signal == true` **AND** `Trend_Short_Raw == true`.
* Appearance: A small, semi-transparent maroon triangle drawn **above** the bar.
3. **Reversal Long Signal (Circle)**
* Condition: `Long_Signal == true` **AND** `Rev_Long_Raw == true`.
* Appearance: A tiny, more transparent green circle drawn **below** the bar.
4. **Reversal Short Signal (Circle)**
* Condition: `Short_Signal == true` **AND** `Rev_Short_Raw == true`.
* Appearance: A tiny, more transparent red circle drawn **above** the bar.
Since `Long_Signal` and `Short_Signal` only ever become true at bar close, these shapes are never repainted or removed once drawn.
---
## 8. Unified Alert Message
* As soon as a new bar closes with either `Long_Signal` or `Short_Signal == true`, an alert message is sent:
* If `Long_Signal`, then `alert_msg = "action=BUY"`.
* If `Short_Signal`, then `alert_msg = "action=SELL"`.
* If neither, `alert_msg = ""` (no alert).
* The code calls `alert(alert_msg, freq=alert.freq_once_per_bar)` only if `barstate.isconfirmed` and `alert_msg` is non‐empty. This ensures exactly one alert per confirmed bar, no intrabar pops.
---
## 9. Dynamic TP/SL Logic (Minimal Implementation)
Once a long or short position is “open,” the script tracks these variables:
1. **Persistent Flags and Prices** (all persist between bars until reset):
* `InLong` (Boolean)
* `InShort` (Boolean)
* `Long_Max` (Float)
* `Short_Min` (Float)
* `Entry_Price` (Float)
2. **On Bar Close:**
* If `Long_Signal == true` →
* Set `InLong := true`,
* `Entry_Price := close` of that bar,
* `Long_Max := high ` (last bar’s high, so that we’re not using “future” data).
* If `Short_Signal == true` →
* Set `InShort := true`,
* `Entry_Price := close`,
* `Short_Min := low `.
3. **While `InLong == true`:**
* Continuously update `Long_Max = max(Long_Max, current high)` on each bar (intrabar, but finalized each close).
* Compute a dynamic SL:
$$
SL_{Long} = Entry\_Price - (ATR \times SL\_ATR\_Multiplier).
$$
* If **current trend** flips to non-uptrend (`CurrentTrend != +1`), mark `ExitLong = true`.
* Then the routine plots `TP_Long = Long_Max` as a cross (“X”) at that level.
* Set `InLong := false` so that no further changes to `Long_Max` or `Entry_Price` happen on future bars.
4. **While `InShort == true`:**
* Continuously update `Short_Min = min(Short_Min, current low)`.
* Compute a dynamic SL:
$$
SL_{Short} = Entry\_Price + (ATR \times SL\_ATR\_Multiplier).
$$
* If trend flips to non-downtrend (`CurrentTrend != –1`), mark `ExitShort = true`.
* Then the routine plots `TP_Short = Short_Min`.
* Set `InShort := false` to freeze those values.
5. **Plotting TP/SL if “Show Debug” is On:**
* **TP Shapes:**
* When `ExitLong == true`, plot a solid lime “X” at `TP_Long` (highest high).
* When `ExitShort == true`, plot a solid maroon “X” at `TP_Short` (lowest low).
* **SL Lines:**
* If still `InLong`, draw a thin red line at `SL_Long` on each bar.
* If still `InShort`, draw a thin green line at `SL_Short`.
Thus, your charts visually show the highest‐high take-profit cross for longs, the lowest-low take-profit cross for shorts, and a continuously updating trailing SL until the trend flips. Because all of this is triggered on confirmed bars, nothing “jumps around” after the fact.
---
## 10. Debug‐Only Plot Lines (When Enabled)
When **Show Debug Lines** = true, the indicator will also plot:
1. **ATR SMA (Orange):**
* The simple moving average of ATR over `ATR_SMA_Length`.
2. **ATR Threshold (Yellow):**
* `ATR_SMA × ATR_Multiplier` (the dynamically scaled threshold).
3. **+DI & –DI (Current TF):**
* +DI plotted as a green line, –DI plotted as a red line (opacity \~70%).
4. **ADX (Current TF, Blue):**
* A blue line for the present timeframe’s ADX.
5. **ADX Threshold (Gray):**
* A horizontal gray line showing `ADX_Threshold`.
6. **+DI & –DI (HTF, Darker Colors):**
* If HTF confirmation is on, “HTF +DI” is a greener but more transparent line; “HTF –DI” is a redder but more transparent line.
7. **ADX (HTF, Blue but Transparent):**
* HTF ADX plotted in blue (high transparency).
8. **HTF SMA (Orange, Transparent):**
* The higher timeframe’s SMA (same length as `SMA_Long_Length`), drawn in fainter orange.
9. **Volatility Zone Fill (Yellow Tinted Area):**
* Fills the area between `ATR_SMA` and `ATR_SMA × ATR_Multiplier`.
* Indicates “normal” versus “high‐volatility” regimes.
These debug lines are purely visual aids. Disable them if you want a cleaner chart.
---
## 11. Putting It All Together — Step-By-Step Flow
1. **Read Inputs** (RSI lengths, EMA length, ATR settings, etc.).
2. **Optionally Halve All Lengths** if “Scalping Mode” is checked.
3. **Calculate Current TF Indicators:**
* RSI, ATR, ATR\_SMA, EMA, price change, various SMAs, DI/ADX.
4. **Compute “AI Score”** (weighted sum of RSI and EMA signals).
5. **Compute Dynamic ATR Multiplier** and decide if “High Volatility” is true.
6. **Compute Raw Trend/Reversal Conditions** on the current timeframe (without triggering yet).
7. **Fetch HTF Values** in one `request.security` call (SMAs, DI/ADX).
8. **Combine Current & HTF Trend Filters** to confirm `Uptrend_Confirm` or `Downtrend_Confirm`.
9. **Check Reversal Conditions** (price crossing EMA or SMA short, in overbought/oversold zones).
10. **Enforce “One Trade Per Trend”** (clear `LastTradeTrend` whenever `CurrentTrend` flips).
11. **Enforce Cooldown** (must wait at least `Signal_Cooldown` bars since the prior signal).
12. **On Bar Close:**
* If `Raw_Long` AND not already in a long trend AND cooldown met, then fire `Long_Signal`.
* Else if `Raw_Short` AND not already in a short trend AND cooldown met, then fire `Short_Signal`.
* Otherwise, no new signal on this bar.
13. **Plot Long/Short Entry Shapes** according to whether it was a Trend signal or a Reversal signal.
14. **Send Alert** (“action=BUY” or “action=SELL”) exactly once per confirmed bar.
15. **If New Long/Short Signal, Set `InLong`/`InShort`, Record Entry Price, Initialize `Long_Max`/`Short_Min`.**
16. **While `InLong` is true:** Update `Long_Max = max(previous Long_Max, current high)`. Compute `SL_Long`. If the current trend flips (no longer uptrend), set `ExitLong = true`, plot a “TP X,” and close the position logic.
17. **While `InShort` is true:** Similarly update `Short_Min`, compute `SL_Short`, and if trend flips, set `ExitShort = true`, plot a “TP X,” and close the position logic.
18. **Optionally Display Debug Lines** (ATR SMA, ATR threshold, DI/ADX, HTF DI/ADX, etc.).
---
## 12. How to Use in TradingView Community
When you publish this indicator to the TradingView community—choosing “Protected” or “Invite-only” visibility—you can paste the above description into the “Description” field. Users will see exactly what each input does, how signals are generated, and what the various plotted lines represent, **without ever seeing the script source**. In this way, the code itself remains hidden but the logic is fully documented.
1. **Go to “Create New Indicator”** on TradingView.
2. **Paste Your Pine Code** (the full indicator script) in the Pine editor and save it.
3. **Set Visibility = Protected** (or Invite-only).
4. **In the “Description” Text Box, paste the entirety of this document** (steps 1–11).
5. **Click “Publish Script.”**
Users who view your indicator will see its name (“AI Strat Adaptive v3 (NoRepaint)”), a list of all inputs (with default values), and the detailed English description above. They can then load it on any chart, adjust inputs, and see the plotted signals, TP/SL lines, and optional debug overlays—without accessing the underlying Pine code.
---
### Summary of Key Points
* **RSI, EMA, ATR, DI/ADX, and “AI Score”** work together to define “trend vs. reversal.”
* **Dynamic volatility filter** uses ATR and ATR\_SMA to adapt the weighting of RSI vs. EMA and decide whether “volatility is high enough” to permit a trend trade.
* **One trade per detected trend** and a **cooldown period** prevent over‐trading.
* **Higher timeframe confirmation** (optional) further filters out noise.
* **No-repaint logic**:
* All signals only appear at bar close (`barstate.isconfirmed`).
* HTF values are fetched with `lookahead=barmerge.lookahead_off`.
* **Entry shapes** (triangles and circles) clearly mark trend vs. reversal entries.
* **Dynamic TP/SL**: highest‐high (or lowest‐low) since entry is used as TP, ATR×multiplier as SL.
* **Debug mode** (optional) shows every intermediate line for full transparency.
Use this description verbatim (or adapt it slightly for your personal style) when publishing. That way, your community sees exactly how each component works—inputs, functions, filters—while the Pine source code remains private.