WF Testing Interpretation…
Forums › ProRealTime English forum › ProOrder support › WF Testing Interpretation…
- This topic has 29 replies, 5 voices, and was last updated 3 years ago by Vonasi.
Tagged: walk forward
-
-
01/02/2021 at 12:30 PM #155944
yes. I have backtested and manually optimised the algos to give the best results
So if you have previously (prior to WF) optimised over the full period of your Walk Forward then you have not done a Walk Forward over any TRUE / previously unused Out of Sample period??
Hence the good looking results?
01/02/2021 at 12:44 PM #155946No – a pure simple WF test of your stategy has all the setting variables fixed in the strategy
Then I guess it is broken 🙂
01/02/2021 at 12:48 PM #155948TRUE / previously unused Out of Sample period??
OK, so I understand… do you mean that in order for me to get “true” OOS results I need to wait some time so that I can run it against “new” OOS data that hasn’t been previously tested?
If not that, then I can confirm I havent ran the WF then optimised. I (manually) optimised my algo then ran the WF after. no changes have been made since any WF. is that what you mean?
perhaps, could you explain the right sequence in order to get trusted WF results?
example order:
- Build Algo
- Backtest and adjust algo (as I can only assume you HAVE to adjust and not just start from scratch again)
- Run WF
Is that the correct sequence?
01/02/2021 at 12:55 PM #155949There are lots of different ways of working it. Personally I build the algo (ie add and optimize each new indicator/variable) using 1 WF iteration @ 75/25 so I always have one eye on the OOS as it develops.
Then I run VRT over the whole thing when finished.
01/02/2021 at 12:55 PM #155950Then I run VRT over the whole thing when finished.
What is VRT?
01/02/2021 at 1:00 PM #155953https://www.prorealcode.com/topic/day-month-year-strategy-robustness-tester/
1 user thanked author for this post.
01/02/2021 at 1:39 PM #155960Is that the correct sequence?
Yes, but some period needs to be not included in the period over you optimise variables … then you have a true OOS period over which to do WF.
Best if the period not included in optimise runs is the most recent, for example, the most recent 10k bars.My Method
A twist on above and not using WF at all, but you get the idea …I optimise over the most recent 10k bars and then backtest over 100k bars and if my Algo does not break the bank / dip loads below zero (over the 90k bars OOS) then I put it on Demo Forward Test for at least 40 to 50 trades.
1 user thanked author for this post.
01/02/2021 at 2:32 PM #155967put it on Demo Forward Test for at least 40 to 50 trades.
Thank you, but what is demo forward test? i dont bother with demo, maybe I shoud?
01/02/2021 at 3:42 PM #155974i dont bother with demo, maybe I shoud?
Not putting a strategy on live demo is like jumping out of a plane with a parachute that you packed yourself having never ever packed a parachute before. It might work but then again it might not. Would you still jump knowing that?
No matter how much we try to not curve fit a strategy and no matter how much we WF and robustness test it there is still a chance that it is a pile of poop. Put it on forward test live and sit back on your hands and don’t be tempted to put it really live until you have plenty of OOS trades to show you how it really performs. Then jump!
1 user thanked author for this post.
01/02/2021 at 4:36 PM #155985Dear people – FWIW, this is what I do; amd saying in advance, this is nothing really new, but Monobrow perhaps can now grasp this better.
First off, the last time I worked on this 1 second system, was March 2020. This is already quite crucial, because I have a LOT of WF to examine.
ehh … WF ? why ? Why not WB(ackward) ? … and that thus is the whole idea (at least mine) …You create a system (algo) on any random period of time – as long as you can load the data.
Look here. I am not interested in Out of Sample data whatsoever; What I am interested in, is a super-easy means to run a back test over numerous periods of time, without pressing buttons. OK, to be honest, 1. 😉
Obviously (?) it is crucial that you run the Backtest with “WF” functionality as much as possible over a period you did not optimize at all. Like my example here, because it was March last year I worked on it, while I run the system today. But, would I develop it “today” and use the last week, for example, then I’d try to backtest it over e.g. last November *and* use the WF means. And as you can see I selected a 97:3 ratio because that apparently gives me a nice spread of the starting and ending times. Of course you got it that for a 1 second system it is super crucial to not always have that nice gain fallen into your backtesting, so while the one period of backtest may incorporate it, the other will (quite explicitly) miss it (and even run into a big loss). Here you can see the importance of that, because it looks quite more red-ish :Let’s keep in mind that I can do this for November, but also for September etc. (each is a separate run which as many “Repetitions” as you like, and besides this, I could also change the start-date/time myself (shift it a few hours forward) and repeat the lot).
I surely would allow myself to re-optimize after looking at the results by the above described means, and the more red lines get out of the way, the more gain there will be. … If I only keep on running all these varying start and end times.
Of course this implies a kind of over-optimization but in the end you’d do that to net always gain – seen over the longer period of time.Btw, I would always try to make each day profitable, like this one (ran over 3 days only, but with 30 days I’d aim for the same) :
Yes, 3 days is not much, but it is still 121 trades and commission (the biggest pain) is well included.
1 user thanked author for this post.
01/02/2021 at 4:37 PM #155989Put it on forward test live
Thanks Vonsai. And by “forward test” you mean just let it run on live demo, correct? Or is there some sort of random bar generator with demo?
01/02/2021 at 4:54 PM #155990but Monobrow perhaps can now grasp this better.
Thank you very much for sharing your approach Peter, it helps a lot. It feels like most people who post here regularly have been here a long time and know much. I am sure the newer members appreciate this a lot,
01/02/2021 at 5:02 PM #155994Sorry I should have added the word ‘demo’. Yes forward test live is put it on demo live.
You should be aware though that even when you do this your forward test could fool you. If your strategy opens a trade and stays on the market for a period of time then during that time you are potentially missing other trades and those trades could all be losers. So your forward demo live test tells you that your strategy is great whereas in reality you just got lucky with the bar that you chose to start it on. So even after a long successful forward test I would recommend further robustness testing (I use my VRT and SEB techniques) on the new OOS data that your forward test was carried out on just to confirm that you didn’t just get lucky.
1 user thanked author for this post.
01/02/2021 at 6:43 PM #156006SEB techniques
Uh oh…. got a link?
i have literally spent all morning getting to grips with VRT 😬
thanks again
01/02/2021 at 6:46 PM #156007got a link?
https://www.prorealcode.com/topic/a-strategy-for-every-bar/
1 user thanked author for this post.
-
AuthorPosts