Skip to content
Corrections

Fixes that changed results

When we find a fault in how a test is worked out, or change a rule in a way that changes results, every result made before the change is treated as suspect.

This page lists each change: what it changed, which results it touched, how we tell, and whether those results can be worked out again. The counts are made from the database each time this page is opened. They count saved strategies only, and name no one.

The list starts on 24 September 2026, when Quantis Trade moved to a new server with an empty database. No result from before that day is stored.

Changelog

Recalculation is switched off at the moment. Results made before a fix keep their original figures and say so.

Counted at 23 Oct 2026, 09:53 UTC.

Live from 15 Oct 2026

Higher standard trading costs

What changed
Every order in a test now pays 0.05% of its value in trading costs, up from 0.015%. The old figure was below what investors usually pay once the gap between the buying and the selling price is counted.
Which results
Tests made before the change. A test that trades often moves the most.
How we tell
The stored test request names no slippage, so the engine charged its old fallback. Every request since names the standard.
Can they be recalculated?
Yes. The same test request, charged today's standard trading costs.

Saved results

Saved results checked
4
Made before the fix
4
We can't tell
none
Recalculated
none
Waiting to be recalculated
none
Could not be recalculated
none
Read the changelog entry
In technical terms

Requests that name no slippagePct (the engine then charges its fallback slippage and commission).

In our code from 15 Oct 2026, 14:48 UTC (commit 92b9e0b1).

Live from 15 Oct 2026

Stops and targets sell during the day

What changed
A stop-loss or a profit target used to be checked on each day's closing price only. Since 15 October it behaves like a real order: a stop sells at its price on a day whose low reaches it, or at the opening price when the day opens below it. A target is the mirror image.
Which results
Tests with a stop-loss or a profit target, made before the change.
How we tell
The stored test request has a stop or a target and does not say how it is checked. Every request since says so.
Can they be recalculated?
Yes. The same test request, with its stops and targets checked during the day.
Also
A saved strategy that pretend money follows, or that has a public record, keeps checking its stops on closing prices (decided on 15 October 2026), so its tracking is unchanged. A recalculated figure is shown beside the original and changes neither.

Saved results

Saved results checked
4
Made before the fix
none
We can't tell
none
Recalculated
none
Waiting to be recalculated
none
Could not be recalculated
none
Read the changelog entry
In technical terms

Requests with a stop-loss or a profit target and no risk.exitBasis (checked on closing prices; the engine setting EXIT_PRICE_BASIS_DEFAULT decides such a request).

In our code from 15 Oct 2026, 14:48 UTC (commit 92b9e0b1).

Live from 4 Oct 2026

RSI, EMA and MACD as a chart shows them

What changed
The engine's RSI was a simple average of recent moves, and its EMAs and MACD were started again over a short window on each day. Since 4 October the RSI is Wilder's and the EMAs and MACD run over the whole price history, as a chart shows them. The two versions can be far apart, so these rules can trade on different days.
Which results
Tests of rules that use RSI, an EMA or MACD, made before the change.
How we tell
The rule uses RSI, an EMA or MACD, and the engine's answer carries no stamp of the new definitions (every answer since does), or the test was made before the change went in.
Can they be recalculated?
Yes. Sending the saved test again gives the corrected figure.

Saved results

Saved results checked
4
Made before the fix
none
We can't tell
1
Recalculated
none
Waiting to be recalculated
none
Could not be recalculated
none
In technical terms

Engine runs with no insights.indicatorConvention stamp (simple-average RSI; EMAs and MACD restarted over a trailing window).

In our code from 4 Oct 2026, 20:38 UTC (commit 98dc8958).

Live from 4 Oct 2026

Accounts in another currency than their shares

What changed
A test in a pound or euro account on dollar shares used to be worked out in dollars and converted at one exchange rate. Now the engine values the holdings at each day's exchange rate, keeps the cash in the account's currency and charges the currency fee on each trade.
Which results
Tests in an account whose currency differs from its shares' currency, made before the change.
How we tell
The result says its money figures were converted at one rate. A result made since says the engine ran in the account's currency.
Can they be recalculated?
No, not automatically. Its figures went through a conversion after the engine, so the engine's answer alone cannot be set beside them.

Saved results

Saved results checked
4
Made before the fix
none
We can't tell
3
In technical terms

Results whose account block converted the money figures at one exchange rate (smallAccount.capital.conversionRate set) instead of the engine running in the account's currency (smallAccount.fx.basis "engine").

In our code from 4 Oct 2026, 14:37 UTC (commit 03cd2dab).

Live from 28 Sep 2026

The buy-and-hold comparison is bought once

What changed
The equal-weight benchmark a test was compared with was put back to equal weights at the start of every month, which sells the winners and tops up the losers. Simply holding the same shares does not do that. The benchmark is now bought once on the first day and held.
Which results
The comparison with buying and holding, on tests made before the change. A test's own figures did not change. The difference is largest for tests on several shares.
How we tell
The saved result does not say how its benchmark was held. Every result made since the change says so.
Can they be recalculated?
No, not automatically. Only the comparison changed, not the test's own figures, and an older result already labels its benchmark as rebalanced monthly.

Saved results

Saved results checked
4
Made before the fix
1
We can't tell
2
Read the changelog entry
In technical terms

The default equal-weight benchmark run with a monthly rebalance (engine benchmark cadence before 'once').

In our code from 28 Sep 2026, 21:16 UTC (commit c367241f).

Live from 28 Sep 2026

Dividends, withholding tax and UK stamp duty

What changed
Tests used to count price moves only. Since 28 September a test puts dividends back into the shares after withholding tax, and charges UK stamp duty on purchases where it applies. A share that pays dividends shows a higher return than before.
Which results
Tests made before the change, unless they asked for price moves only.
How we tell
The stored test request names no return basis (the agent has named one on every request since the change), or the engine reported price moves only for a request that did not ask for that.
Can they be recalculated?
No, not automatically. The corrected figure needs the dividend and tax settings the agent adds when it builds a new test, and the stored test request does not have them.

Saved results

Saved results checked
4
Made before the fix
2
We can't tell
none
Read the changelog entry
In technical terms

Test requests with no return basis (the engine then counts price moves only).

In our code from 28 Sep 2026, 12:07 UTC (commit a2871dd0).

Live from 26 Sep 2026

Daily prices, and timing rules that can sell

What changed
Two faults made moving-average, RSI and breakout tests look almost exactly like buying and holding. The price loader had stored monthly prices where daily ones were asked for. And a sell signal in a one-share timing rule put the money straight back in, so the rule never left the market. Both were fixed: tests run on daily prices, and a timing rule moves to cash on its sell signal. Indicators also got their warm-up history, and a momentum ranking uses the period asked for.
Which results
Every test made before the fix. The new server started on 24 September 2026, so these are tests from the first two days.
How we tell
The result says it ran on monthly prices, or it was made before the fix went in (by the time the test ran, or by the time it was saved).
Can they be recalculated?
Yes. Sending the saved test again gives the corrected figure.

Saved results

Saved results checked
4
Made before the fix
none
We can't tell
3
Recalculated
none
Waiting to be recalculated
none
Could not be recalculated
none
Read the changelog entry
In technical terms

Engine before cc548ae9, and the price tables seeded on 24 September 2026 (monthly or quarterly bars stored as daily).

In our code from 26 Sep 2026, 15:41 UTC (commit cc548ae9).

What a recalculation does

We send the saved test to today's engine again, over the same dates, with only the change the fix needs.

The original figures are kept and shown beside the new ones. Nothing is overwritten, and nothing is charged.

It runs in the background, a few tests at a time, and waits while people are running their own tests.