Backtest turning bad

nikola told me that they are working on this issue in dec 2019… it’s botheting me so often that i had to rerise the issue here… sorry. a strat will come with a nice lloking backtest out if the gen. then a few days later it will show only one clised position i drawdown sone years back and nether opened a position again

Facing a similar situation. I noticed one of my recently created strategies showing negative backtest report and apparently I can’t fix it. I’m sure it was not how I built it.

its happening to at leat 50% of my strats

I deleted a strat because of this before I realised it was a glitch, now I can’t get it back

yes i try to keep running in simulation and then clone from time to time to see the broken backtest…

This is due to backtests having a floating starting point. A high-SLI strategy might make huge profits if started at the right point, or, it might make a couple of losses right out of the gate, rendering it unable to open further positions as it fell below the minimum required balance to do so.

I would suggest avoiding strategies which depend so much on the moment in which they are started - I’m sure we can all agree these strategies are not to be considered “stable”.

I will say, though, that this backtest behaviour is confusing for everyone and we will think about changing backtesting to work with a fixed starting point. The reason we haven’t done this is that the current implementation means we always work with a constant amount of data for one strategy (unless you change the Max Data Bars setting). With the new implementation, the amount of data required to backtest would increase with time, indefinitely.

I hope this post sheds some light on the situation.

3 Likes

hi nikola
please have a close look at my screenshot. the strat has only lost 2.03% on this first loosing trade. then it never opens a position again.
new thought: could it be that any initial loss will make another static trade size 100% impossible, since we then have less than 100% left? so in above case if trade size would have been set to 97.97% or lower it could have opened another position!
regards
dlc

I don’t think that’s the only issue. For example, you create a strategy (say on the weekend, when markets are closed), copy it, start one copy, run it for a week. Then, in another copy you adjust the backtest length bars to cover the last week, will the backtest reliably repeat the positions of the copy, which was running for real?

it’s definitely the trade size percentage!

wrong it’s the funds for trading

well it a combination

You are correct. We deployed a hot fix today to make static trade size work like dynamic when balance is below the initial Funds for trading. Please take a look at your backtests now.

still not good!

after rebacktesting

another problem still there. overview shows one position.


but list shows many

seems we have to change a small thing in the strat like +/-1 bar for it to rerun backtest and get it right.

The backtest never mirrors the real trades because the real trades are always one period later (and looking at the graphs the backtest is right). If your trading frequency is 1 hour the trades will be 1 hour later than the signal and you’ll get a different result. See my problem post for screen shots of timings