INVITE-ONLY SCRIPT

LuxAlgo - Backtester (S&O)

Updated
The S&O Backtester is an innovative strategy script that encompasses features + optimization methods from our Signals & Overlays™ toolkit and combines them into one easy-to-use script for backtesting the most detailed trading strategies possible.

Our Signals & Overlays™ toolkit is notorious for its signal optimization methods such as the 'Optimal Sensitivity' displayed in its dashboard which provides optimization backtesting of the Sensitivity parameter for the Confirmation & Contrarian Signals.

This strategy script allows even more detailed & precise backtests than anything available previously in the Signals & Overlays™ toolkit; including External Source inputs allowing users to use any indicator including our other paid toolkits for take profit & stop loss customization to develop strategies, along with 10+ pre-built filters directly Signals & Overlays™' features.

🔶 Features

  • Full Sensitivity optimization within the dashboard to find the Best Win rates or Best Profits.
  • Counter Trade Mode to reverse signals in undesirable market conditions (may introduce higher drawdowns)
  • Built-in filters for Confirmation Signals w/ Indicator Overlays from Signals & Overlays™.
  • Built-in Confirmation exit points are available within the settings & on by default.
  • External Source Input to filter signals or set custom Take Profits & Stop Losses.
  • Optimization Matrix dashboard option showing all possible permutations of Sensitivity.
  • Option to Maximize for Winrate or Best Profit.


🔶 Settings

  • Sensitivity signal optimizations for the Confirmation Signals algorithm
  • Buy & Sell conditions filters with Indicator Overlays & External Source
  • Take Profit exit signals option
  • External Source for Take Profit & Stop Loss
  • Sensitivity ranges
  • Backtest window default at 2,000 bars
  • External source
  • Dashboard locations


🔶 Usage

Backtests are not necessarily indicative of future results, although a trader may want to use a strategy script to have a deeper understanding of how their strategy responds to varying market conditions, or to use as a tool for identifying possible flaws in a strategy that could potentially be indicative of good or bad performance in the future.

A strategy script can also be useful in terms of it's ability to generate more complete & configurable alerts, giving users the option to integrate with external processes.

In the chart below we are using default settings and built-in optimization parameters to generate the highest win rate.

snapshot

Results like the above will vary & finding a strategy with a high win rate does not necessarily mean it will persist into the future, however, some indications of a well-optimized strategy are:

  • A high number of closed trades (100+) with a consistently green equity curve
  • An equity curve that outperforms buy & hold
  • A low % max drawdown compared to the Net Profit %.
  • Profit factor around 1.5 or above


In the chart below we are using the Trend Catcher feature from Signals & Overlays™ as a filter for standard Confirmation Signals + exits on a higher timeframe.

By filtering bullish signals only when the Trend Catcher is bullish, as well as bearish signals for when the Trend Catcher is bearish, we have a highly profitable strategy created directly from our flagship features.

snapshot

While the Signals & Overlays features being used as built-in filters can generate interesting backtests, the provided External Sources can allow for even more creativity when creating strategies. This feature allows you to use many indicators from TradingView as filters or to trigger take-profit/stop-loss events, even if they aren't from LuxAlgo.

The chart below shows the HyperWave Oscillator from our Oscillator Matrix™ being used for take-profit exit conditions, exiting a long position on a profit when crossing 80, and exiting a short position when crossing 20.

snapshot

🔶 Counter Trade Mode

Our thesis has always firmly remained to use Confirmation Signals within Signals & Overlays™ as a supportive tool to find trends & use as extra confirmation within strategies.

We included the counter-trade mode as a logical way to use the Confirmation signals as direct entries for longs & shorts within more contrarian trading strategies. Many traders can relate to using a trend-following indicator and having the market not respect its conditions for entries.

This mode directly benefits a trader who is aware that market conditions are generally not-so-perfect trends all the time. Acknowledging this, allows the user to use this to their advantage by introducing countertrend following conditions as direct entries, which tend to perform very well in ranging markets.

The big downfall of using counter-trade mode is the potential for very large max-drawdowns during trending market conditions. We suggest for making a strategy to consider introducing stop-loss conditions that can efficiently minimize max-drawdowns during the process of backtesting your creations.

Sensitivity Optimization

Within the Signals & Overlays™ toolkit, we allow users to adjust the Confirmation Signals with a Sensitivity parameter.

We believe the Sensitivity paramter is the most realistic way to generate the most actionable Confirmation Signals that can navigate various market conditions, and the Confirmation Signals algorithm was designed specifically with this in mind.

This script takes this parameter and backtests it internally to generate the most profitable value to display on the dashboard located in the top right of the chart, as well as an optimization table if users enable it to visualize it's backtesting.

In the image below, we can see the optimization table showing permutations of settings within the user-selected Sensitivity range.

snapshot

The suggested best setting is given at the current time for the backtesting window that's customizable within the indicator. Optimized settings for technical indicators are not indicative of future results and the best settings are highly likely / guaranteed to change over time.

Optimizing signal settings has become a popular activity amongst technical analysts, however, the real-time beneficial applications of optimizing settings are limited & best described as complicated (even with forward testing).

🔶 Strategy Properties (Important)

We strongly recommend all users to ensure they adjust the Properties within the script settings to be in line with their accounts & trading platforms of choice to ensure results from strategies built are realistic.

🔶 How to access

You can see the Author's Instructions below to learn how to get access on our website.
Release Notes
- Added the ability to place take profits and stop loss orders
- New take profit/stop loss alert
- Added the ability to disable the optimisation dashboard, effectively disabling the optimiser allowing for faster computations
- Fixed a bug causing using external sources as filter to discard other filter conditions
- Fixed a bug causing certain exit alerts to not trigger
- Fixed a bug causing the optimization dashboard to not update on some occasions
- Minor changes
Release Notes
Changed

Changed signal algorithm
Users can now disable exit on an opposite signal.
Minor changes

Fixed

Fixed trend catcher filter inconsistencies
Fixed sell stop loss alert message not returning correct message.
Release Notes
LuxAlgo Premium Backtesting System BETA v2.1

Added

- Added new session filter
- Users can now display take profits/stop losses levels

Changed

- Changed alert system based on order fills and placeholders

Fixed

- Fixed built-in exits generating losses when using filters
Release Notes
Fixed incorrect behavior of session filter for short entries.
Release Notes
- Added new external source filter condition
- Exit Buy/Sell TP/SL can now use multiple external sources
Release Notes
- Fixed tp/sl levels adjusting with no triggered trade.
- Fixed alert on short tp/sl returning wrong tp/sl values.
- Improved Optimal Sensitivity when using take profits/stop losses.
- Added warmup period to improve Optimal Sensitivity results.
Release Notes
Minor Changes
Release Notes
- Fixed an error affecting script loading issue
Release Notes
- Added ability to use entire historical data for backtesting
- New AI classifier filter
- New placeholders for exit tp/sl
- More changes
Release Notes
New in version 1.1:

Added ability to backtest signals using autopilot algorithm. Users can now set take profits/stop losses using ticks away from the price preceding an entry. The entry price is now visible. New styling options.
Release Notes
New in version 1.2. Added Automated take profit/stop loss placement. Added more condition operators for exit take profit/stop loss.
Release Notes
Added

  • New advanced optimization dashboard
  • Added ability to optimize profit factor and maximum drawdown
  • New trailing stop loss
  • Added ability to backtest contrarian signals
  • Added Reversal Zones conditions
  • Added ability to specify if market orders can be opened only if there are no existing positions
  • Added ability to use price placeholders in the numerical input field of the second external source setting
  • New {prefix} placeholder


Changed

  • Changed main backtesting logic, now allowing to use conditions from overlays to trigger entries
  • {ticker} placeholder will no longer return a symbol prefix
  • Minor changes


Fixed

  • Fixed previous take profit/stop loss values being returned on a new entry alert message
  • Fixed wrong messages being returned in certain actions taken by the strategy


Removed

  • Removed "Auto" take profits/stop losses
Release Notes
- Fixed an issue preventing the backtesting window toggle from working
Release Notes
- Fixed AI classifier model not classifying sell signals
- Adjusted initialization to allow the same signal generation on the first data points compared to V1
- Trailing stop loss is now initially set on the entry price
- Dashboard will now be indicating when the optimizer is not available
- Minor changes
Release Notes
- Overlays can now have their settings changed
- Updated Trend Tracer algorithm
- Minor changes
Release Notes
- Added ability to backtest a time window specified using dates
- Added ability to partially exit trades
- New "Potential Ratio (φ)" statistic
Release Notes
Added new Long/Short "Time Exits". Fixed wrong behavior in the optimizer for successive long/shorts positions. Minor changes
Release Notes
- New trade based price forecasting feature
Release Notes
Trade based forecasts will no longer disappear after a trade is exited
Release Notes
- Added forecast method for setting take profits. This method will use user set percentiles of forecasts as take profits levels
- Added "Step Up/Down" conditions for "Neo Cloud"
- Forecasts data tracking will now ignore exits in a strategy.
Release Notes
- Added one additional external condition to the long/short entry conditions
- Minor changes
Release Notes
- Added ability to prevent simultaneous trades from triggering at the same time
backtestingbacktestingsystemeducationalluxalgooverlaysPortfolio managementsignalsstrategysystemtoolkitTrend Analysis

Invite-only script

Access to this script is restricted to users authorized by the author and usually requires payment. You can add it to your favorites, but you will only be able to use it after requesting permission and obtaining it from its author. Contact LuxAlgo for more information, or follow the author's instructions below.

TradingView does not suggest paying for a script and using it unless you 100% trust its author and understand how the script works. In many cases, you can find a good open-source alternative for free in our Community Scripts.

Author's instructions

Get instant access in the Ultimate Plan on https://luxalgo.com/backtesting-system

Want to use this script on a chart?

Warning: please read before requesting access.

Get access to our exclusive tools: luxalgo.com

Join our 150k+ community: discord.gg/lux

All content provided by LuxAlgo is for informational & educational purposes only. Past performance does not guarantee future results.
Also on:

Disclaimer