Adding performance metrics to compare trading strategies
-
Standardised Strategy Comparison: I wanted a way to blend profitability and risk management into a single, evenly weighted score. The metric combines Expectancy and the Calmar Ratio. This lets us easily compare completely different algorithms.
-
Fairness Across Trading Styles: I designed this metric to be fair across the board. It multiplies expectancy by the square root of total trades, much like Van Tharp's SQN. This actively rewards the consistency of high-frequency scalpers. Importantly, it does this without unfairly punishing long-term trend followers.
-
Drawdown Reality Checks: I added a minimum divisor, like a 2% floor, to the Calmar calculation. Sometimes strategies show unrealistic zero drawdown curves. This floor stops those curves from generating artificially explosive scores.
-
Filters Out Statistical Noise: I introduced a Statistical Confidence Multiplier to deal with noise. It heavily penalises strategies that execute too few trades per year. This ensures we aren't deploying capital based on lucky anomalies or overfitted data.
-
Automated Quality Control: I included hard cut-offs like minimum trade ratios. This allows the engine to immediately reject poor-performing algorithms. It saves us a lot of time by doing this early in the analysis pipeline.
Adding performance metrics to compare trading strategies
Standardised Strategy Comparison: I wanted a way to blend profitability and risk management into a single, evenly weighted score. The metric combines Expectancy and the Calmar Ratio. This lets us easily compare completely different algorithms.
Fairness Across Trading Styles: I designed this metric to be fair across the board. It multiplies expectancy by the square root of total trades, much like Van Tharp's SQN. This actively rewards the consistency of high-frequency scalpers. Importantly, it does this without unfairly punishing long-term trend followers.
Drawdown Reality Checks: I added a minimum divisor, like a 2% floor, to the Calmar calculation. Sometimes strategies show unrealistic zero drawdown curves. This floor stops those curves from generating artificially explosive scores.
Filters Out Statistical Noise: I introduced a Statistical Confidence Multiplier to deal with noise. It heavily penalises strategies that execute too few trades per year. This ensures we aren't deploying capital based on lucky anomalies or overfitted data.
Automated Quality Control: I included hard cut-offs like minimum trade ratios. This allows the engine to immediately reject poor-performing algorithms. It saves us a lot of time by doing this early in the analysis pipeline.