Crosses Above/Below Adaptive” Comparison Blocks

Adaptive trading systems are strategies designed to “learn” from historical market and asset data, enabling them to adjust their rules to align with new market dynamics. A self-adaptive or auto-adaptive trading system can modify its buy and sell rules based on the performance of these rules in the past.

In algorithmic trading, traders rely on various strategies and technical indicators to make data-driven decisions about when to enter or exit trades. A key component in these strategies is the use of comparison blocks, which are essential tools for identifying market conditions and generating trade signals. One of the new advanced comparison blocks is the “Crosses Above Adaptive/Crosses Below Adaptive” block.

This article delves into the concept of comparison blocks, explaining their function and significance in automated trading. It also provides a detailed analysis of the Crosses Above Adaptive block, exploring the logic behind its adaptive nature, how it responds to changing market conditions, and how incorporating it can enhance your overall trading strategy.

 

Understanding Comparison Blocks in Trading Strategies

In StrategyQuant X, comparison blocks are essential tools used to compare different indicators, prices, or values on a chart. They help define conditions that can trigger buy or sell signals in an automated trading strategy. For example, a comparison block can check if a short-term moving average crosses above a long-term moving average, signaling a potential buy opportunity.

Comparison blocks act like decision-making checkpoints, answering questions such as “Is one value higher than another?” or “Has an indicator crossed a key threshold?” By combining multiple comparison blocks, traders can create sophisticated rules to refine their strategies and improve decision-making based on market conditions.

There are several types of comparison blocks designed to help traders build automated trading strategies by comparing different indicators, prices, or custom values.

These blocks allow for flexible and precise control over when certain conditions are met. Here are the main types of comparison blocks available in StrategyQuant:

  • Crosses Above / Crosses Below

  • Greater Than / Less Than

  • Equal To / Not Equal To

  • Greater Count / Lower Count

  • Greater Percentile / Lower Percentile

  • Greater Than or Equal To / Less Than or Equal To

  • Is True / Is False

While basic comparison blocks are widely used in trading strategies, they have a significant limitation: they don’t account for the reliability of the signal. For instance, just because an indicator crosses above another doesn’t guarantee a profitable trade. This brings us to adaptive comparison blocks, which offer a more sophisticated approach by considering historical performance and market conditions before confirming a signal.

Introduction to Adaptive Crossover Signals: “Crosses Above Adaptive/Crosses Below Adaptive”


The Crosses Above Adaptive block is an advanced type of comparison block. Unlike a simple crossover, which only looks at present market conditions, the adaptive version digs deeper.It doesn’t just check whether one indicator has crossed above another; it also evaluates the past performance of similar crossovers and determines whether the signal is statistically reliable.

The goal of this block is to provide more intelligent signals—signals that have a higher probability of success based on historical data, rather than relying solely on real-time crossovers, which can often lead to false signals.

In the image above, you can see the settings of the Comparison block Crosses Above Adaptive.

Once a crossover is detected, the signal is only confirmed if key conditions are met. The following parameters are essential in shaping the decision-making process:

  • Trades Look Back: This specifies how many historical trades the system examines to calculate performance metrics like profit factor and win percentage. For instance, if set to 50, the system will analyze the last 50 crossover trades to make an informed decision.

  • Exit After Bars: This parameter defines how long the system monitors the trade after entry (in terms of bars or periods) before determining an exit. For example, if set to 5 bars, the system evaluates the trade’s performance after 5 periods, ensuring the trade is time-bound and not held indefinitely.

  • Metrics : You can choose from several evaluation metrics to determine the signal’s reliability, such as:

    1. Profit Factor: The ratio of total profits to total losses from similar past trades. A higher value indicates a more reliable signal.

    2. Win Percentage: The percentage of past trades triggered by similar crossover events that ended in profit. A win percentage of 60% or more is typically considered strong.

    3. Average Performance: The absolute average gain or loss resulting from similar crossovers, regardless of direction (up or down). This provides a neutral measure of potential risk.

    4. Internal Profit Factor: It refines the traditional profit factor by calculating it as the sum of individual bar returns during a position, divided by the sum of bar losses, providing a more granular and realistic measure of performance.

  • Performance Threshold: This sets a minimum performance level that must be met before the signal is confirmed. If the signal’s past performance doesn’t meet this threshold—such as a profit factor of 1.5 or higher—the system ignores the trade, filtering out unreliable signals and minimizing risk.

  • TS Max Bars Back  is a parameter used exclusively for backtesting on the TradeStation or MultiCharts engine. This parameter must match the exact value set directly in the TradeStation or MultiCharts TS Max Bars Back setting.

 

How to Use Crosses Above Adaptive / Crosses Below Adaptive in StrategyQuant X

Importing the Block: A guide on how to import the snippet can be found in the Docs section here

After successful import you can use the new comparison blocks in : 

Builder

In the Builder, you can enable this block under Builder / Blocks. When conducting blind datamining, it’s recommended to use the Avg Performance metric, which is non-directional and calculates the average absolute strength of a signal. The level of detail and specificity in the settings is up to each user.

 

AlgoWizard – Custom Blocks

Custom blocks in StrategyQuant X allow traders to create personalized building blocks for their trading strategies without needing to code. These blocks can be used to define specific conditions, indicators, or logic tailored to the user’s requirements. Once created, custom blocks can be seamlessly integrated into AlgoWizard, StrategyQuant’s visual strategy builder, to build complex and adaptive trading strategies. 

Custom blocks enhance flexibility by allowing you to parameterize key metrics like indicator periods, profit factors, and win percentages, providing more control over your strategy’s behavior. In summary, custom blocks enable more precise, dynamic, and sophisticated

  Crosses Above Adaptive  / Crosses Below Adaptive are blocks that are highly recommended for use in AlgoWizard as either custom blocks or cross-site templates. Because these blocks require careful configuration, it’s beneficial to create custom blocks where each setting follows a logical structure. While creating strategy templates is a slightly more advanced topic, these blocks are ideal for such advanced strategies. In the next article, we’ll provide a detailed tutorial on how to use them.”

For now, I have prepared several custom blocks based on this condition. You can download them using this link and import them by following these steps.

 

AlgoWizard – Templates

This is a more advanced topic that we will cover in greater depth in an upcoming article. By combining custom blocks and random groups, you can create a prototype strategy and instruct SQX to search for specific types of strategies and maintain its adaptiveness.

 

Examples of Strategy Improvement

The following strategies are examples of how the Crosses Above Adaptive logic can enhance performance compared to the classic Crosses Above approach.

Original Without Adaptive Logic

The strategy is based on breakout logic using Bollinger Bands, with an exit after 10 bars. In its classic setup, it shows positive performance but experiences long periods of stagnation and significant fluctuations in the equity curve.

Adaptive Logic Applied

In the adaptive version, these large fluctuations are stabilized, and performance has dramatically improved.

Original Without Adaptive Logic

This strategy is based on a breakout of the daily High/Low with an exit after 10 bars. Its performance has been good in recent years, but in previous years it was marginal. In other words, the strategy has been inconsistent over time.

Adaptive Logic Applied

When adaptive logic is applied, the number of trades significantly decreases, resulting in a much smoother equity curve.

Both examples showcase strategies generated from custom blocks I prepared, which you can download here. I recommend using this block exclusively as a custom block. If you have indicators enabled in the builder and are using adaptive comparison blocks, I suggest setting the comparison block very conservatively, as follows.

 

Conclusion

This is just the beginning. There are several ways to extend this logic. For example, we can simulate buy/sell logic within the trading system, effectively performing a backtest within a backtest. Additionally, we can analyze the profitability of these rules across multiple markets simultaneously (yes, this is indeed possible!).

We welcome any feedback, comments, or suggestions for improving these snippets. In the near future, I plan to provide more snippets like these and eventually aim to integrate them directly into SQX.

 

These comparison blocks are implemented for MetaTrader  4, MetaTrader 5, TradeStation, and MultiCharts. You can download all the snippets in codebase here.

 

Previous
Previous

Analysis of the Effectiveness of Adaptive Blocks