Backtest Performance Report

MODEL VERSION 4 WITHOUT TRANSACTION COSTS.


  • Past performance is for illustration only and does not predict future results.
  • Although extensive efforts have been made to faithfully simulate real-world trading conditions and ensuring all stages of this system only use "point in time" available historical data, it's important to recognize that a backtest primarily offers a retrospective and approximate perspective of actual trading results.
  • The backtest doesn't factor in transaction costs or the market impact of orders (slippage).
    • The average and median trade returns exceed 0.5% across model versions, making the 0.03% transaction costs per order immaterial to system performance.
    • The system trades highly liquid equities listed on the ASX stock exchange during the market closing auction to minimize market impact at typical order sizes.
    • Starting from model version 4, optimization aims to minimize market impact and reduce the likelihood of orders affecting the closing auction.
  • The model uses market prices as of 4pm to guide trading decisions for the final closing auction price at 4:10pm.
    • The backtests utilize official closing prices available at 4:10pm, which is unrealistic and likely the main contributor to the performance gap observed between the backtests and actual trading outcomes so far.
    • Model version 4 introduced a simple real-time execution engine during the closing auction to narrow this disparity.
    • Model version 5 implemented a faster and more advanced execution engine that mitigates the performance gap by up to 90% during the closing auction in simulations.
  • Model versions 1 to 3 traded 10 equally-weighted positions, whereas versions 4 onwards manage 20 to 60 positions with stricter allocation limits. Individual limits are also dynamically adjusted based on volatility and turnover.
  • These results are not compounded, which enhances comparability but also underestimates drawdowns.
  • The available capacity to operate this system is constrained by the point at which trading's market impact surpasses anticipated profits. While there is sufficient capacity for a small private fund trading on the ASX, scaling beyond this point will require system adaptation to additional markets.

Version 1
Utilized a hybrid multi-factor model along with a basic ML-based predictive model and ML-based portfolio selection. Launched on 26/5/2021.
Version 2

Focused on streamlining data processes, enhancing system reliability, and improving transparency. Launched on 10/2/2022.

Note: Version 1 & 2 experienced significant losses in unfavorable market conditions prior to the improved modeling and risk management implemented in version 3 onwards. While not representative of the running system's performance, they are included for transparency.

Version 3
Introduced a highly optimized predictive ML-based model. Launched on 22/06/2022.
Version 4
All positions and position sizing now handled by a portfolio optimiser along with numerous risk management and optimization features. Launched on 8/12/2022.
Version 5
Integrated lessons learned from live operations, enhancing robustness, order execution, and incorporating numerous minor optimizations. Launched on 17/7/2023.
Version 5.1
Order execution enhancements at market closing auction and optimised intraday exit conditions to better match deployed capital. Launched on 18/9/2023.
2023-01-15T09:20:33.996168 image/svg+xml Matplotlib v3.6.2, https://matplotlib.org/

2023-01-15T09:20:34.239958 image/svg+xml Matplotlib v3.6.2, https://matplotlib.org/

2023-01-15T09:20:34.470345 image/svg+xml Matplotlib v3.6.2, https://matplotlib.org/

2023-01-15T09:20:34.773758 image/svg+xml Matplotlib v3.6.2, https://matplotlib.org/

2023-01-15T09:20:35.094943 image/svg+xml Matplotlib v3.6.2, https://matplotlib.org/

2023-01-15T09:20:35.255362 image/svg+xml Matplotlib v3.6.2, https://matplotlib.org/

2023-01-15T09:20:35.503674 image/svg+xml Matplotlib v3.6.2, https://matplotlib.org/

2023-01-15T09:20:35.716628 image/svg+xml Matplotlib v3.6.2, https://matplotlib.org/

2023-01-15T09:20:35.911793 image/svg+xml Matplotlib v3.6.2, https://matplotlib.org/

2023-01-15T09:20:36.454970 image/svg+xml Matplotlib v3.6.2, https://matplotlib.org/

2023-01-15T09:20:37.630031 image/svg+xml Matplotlib v3.6.2, https://matplotlib.org/

2023-01-15T09:20:37.813172 image/svg+xml Matplotlib v3.6.2, https://matplotlib.org/

2023-01-15T09:20:38.293415 image/svg+xml Matplotlib v3.6.2, https://matplotlib.org/

2023-01-15T09:20:38.781045 image/svg+xml Matplotlib v3.6.2, https://matplotlib.org/
Key Performance Metrics
Metric Strategy Benchmark
Risk-Free Rate 0.0% 0.0%
Time in Market 95.0% 100.0%

Total Return 1,404.16% 114.14%
CAGR﹪ 14.49% 3.87%

Sharpe 6.23 0.41
Prob. Sharpe Ratio 100.0% 93.7%
Smart Sharpe 5.84 0.39
Sortino 11.53 0.57
Smart Sortino 10.79 0.53
Sortino/√2 8.15 0.4
Smart Sortino/√2 7.63 0.38
Omega 2.78 2.78

Max Drawdown -20.02% -53.94%
Longest DD Days 95 4288
Volatility (ann.) 16.22% 19.89%
R^2 0.35 0.35
Information Ratio 0.29 0.29
Calmar 4.97 0.08
Skew 0.53 -0.55
Kurtosis 17.87 7.54

Expected Daily 0.27% 0.02%
Expected Monthly 5.91% 0.36%
Expected Yearly 93.3% 4.21%
Kelly Criterion 45.7% -7.08%
Risk of Ruin 0.0% 0.0%
Daily Value-at-Risk -1.12% -1.69%
Expected Shortfall (cVaR) -1.12% -1.69%

Max Consecutive Wins 25 12
Max Consecutive Losses 7 12
Gain/Pain Ratio 1.78 0.06
Gain/Pain (1M) 32.62 0.36

Payoff Ratio 1.34 0.76
Profit Factor 2.78 1.06
Common Sense Ratio 4.53 0.98
CPC Index 2.56 0.44
Tail Ratio 1.63 0.92
Outlier Win Ratio 4.32 3.84
Outlier Loss Ratio 4.57 3.23

MTD 3.43% 2.23%
3M 18.73% 7.86%
6M 28.73% 8.07%
YTD 3.43% 2.23%
1Y 46.95% -2.15%
3Y (ann.) 50.37% 2.99%
5Y (ann.) 35.54% 5.24%
10Y (ann.) 22.49% 4.42%
All-time (ann.) 14.49% 3.87%

Best Day 10.18% 7.0%
Worst Day -10.81% -9.7%
Best Month 23.66% 9.96%
Worst Month -13.44% -21.18%
Best Year 223.89% 30.85%
Worst Year 3.46% -41.29%

Avg. Drawdown -0.89% -2.13%
Avg. Drawdown Days 6 55
Recovery Factor 5123736.13 2.55
Ulcer Index 0.02 0.21
Serenity Index 8488909.26 0.18

Avg. Up Month 8.02% 2.91%
Avg. Down Month -2.56% -5.83%
Win Days 68.94% 53.65%
Win Month 92.53% 61.0%
Win Quarter 97.53% 67.9%
Win Year 100.0% 66.67%

Beta 0.49 -
Alpha 0.97 -
Correlation 59.57% -
Treynor Ratio 211143195.41% -
EOY Returns vs Benchmark
Year Benchmark Strategy Multiplier Won
2003 9.10 81.19 8.92 +
2004 20.74 82.32 3.97 +
2005 16.70 69.93 4.19 +
2006 18.32 80.52 4.40 +
2007 12.63 76.28 6.04 +
2008 -47.37 46.18 -0.97 +
2009 29.13 119.56 4.10 +
2010 -1.37 69.76 -50.91 +
2011 -13.78 44.10 -3.20 +
2012 14.34 70.54 4.92 +
2013 14.86 65.60 4.41 +
2014 1.71 68.21 39.87 +
2015 -0.71 67.78 -95.99 +
2016 7.80 54.21 6.95 +
2017 7.24 59.85 8.27 +
2018 -6.52 49.95 -7.66 +
2019 17.48 64.69 3.70 +
2020 3.00 111.68 37.18 +
2021 12.89 72.47 5.62 +
2022 -4.29 45.91 -10.71 +
2023 2.23 3.43 1.54 +
Worst 10 Drawdowns
Started Recovered Drawdown Days
2008-10-02 2009-01-05 -20.02 95
2020-02-21 2020-03-26 -11.69 34
2011-07-28 2011-10-27 -8.62 91
2008-06-05 2008-08-20 -8.60 76
2007-07-26 2007-08-23 -8.48 28
2010-01-12 2010-03-02 -8.21 49
2010-04-28 2010-07-14 -6.96 77
2022-04-26 2022-07-08 -6.79 73
2009-01-08 2009-03-26 -6.78 77
2008-02-05 2008-04-07 -6.51 62