Free tool
Version journal
A backtest shows the version you kept and says nothing about the ones you discarded. This journal keeps every version you test —what you changed, why, and what you saw— and keeps the count for you: how many so far, how much the noise bar rises with that number, and the probability your Sharpe is real. You report the count; here it stays logged, exportable, with a hash.
How it works
- Log each version as you go, not from memory.
- Watch the noise bar rise with every try.
- When you audit, report your N: you already have it.
Live example
Try an example: move the number of versions and watch the bar.
The example runs in your browser: nothing is sent or saved.
Example with an annualized Sharpe of 1.8 and a sample of 756 daily observations.
Between 1 and 1000.
It is the best annualized Sharpe that noise alone would reach with your number of versions and your amount of data. Clearing it guarantees nothing, and falling short doesn't condemn the strategy.
Probability the Sharpe of your kept version is real: 79.7 %
The Sharpe compares what the strategy earned with how much its result swung along the way.
With a single version there is no selection bias to discount: the calculation reduces to the probability that the true Sharpe exceeds zero (PSR).
Version log template
Five columns are enough. They are filled in at the time, not from memory.
| Version number | Date | What changed from the previous one | What you saw in the previous result that led you to change it | The result you looked at, and whether you kept or discarded it |
|---|---|---|---|---|
| 3 | September 12 | Added a volatility filter | Version 2 lost in sideways markets | Better one year, worse the next · kept |
What counts and what doesn't
Counts:
- Changing or adding an indicator.
- Moving a parameter. Every value tested is a version; an optimizer's grid too: ten values of one parameter by ten of another are a hundred versions, not one.
- Adding or removing a filter, a rule, an exception.
- Testing the same idea on another timeframe, another session, another instrument.
- Running it again "just to see" after moving something.
- Every time you used a reserved period to choose between versions. An out-of-sample period stops being out-of-sample the moment it decides.
Doesn't count:
- Fixing a code bug and re-running the same configuration: it is the same version, computed correctly.
- Changing the report format or the metric you look at on the same trades.
- An idea you discarded without running it. What produced no result doesn't count.
When in doubt, count more, not less. A short count inflates the result in your favor; a long count only makes it more demanding.
The rule in one line: the count doesn't measure changes, it measures results looked at. Every distinct configuration you saw a result for is a version, whether you kept it or not.
Free, no version quota. Your data is yours: export it or delete it whenever you want.
Audit your strategy before you risk capital →
Method and limits
The noise bar and the probability use the Deflated Sharpe Ratio formulas from Bailey & López de Prado (2014), the same as the Overfitting Calculator, with skewness 0 and kurtosis 3 (normal distribution) and the disclosed approximation of cross-trial variance (Lo 2002; Mertens 2002). The number of versions is reported by the user; TRAVIDENCE does not verify it. Reference: Bailey, D. H., & López de Prado, M. (2014). "The Deflated Sharpe Ratio: Correcting for Selection Bias, Backtest Overfitting and Non-Normality." The Journal of Portfolio Management, 40(5), 94–107.