Hello Dan,
Not sure...I'll have to think about that one. I typically use the batch transform, which returns None until the trailing window is full, so the logic I outlined above would work fine. The built-in transforms (e.g. mavg) would require some additional coding, since they start returning values immediately (which has thrown off more than one algorithm, I bet).
I don't know how you do the warm-up for live trading and paper trading, so it's hard to think of use cases that would be problematic. How do you figure out how far back to start warming up? What is the trigger for the start of logging the performance?
Yes, it'd be nice not to worry about warm-up, but perhaps there is a hidden downside by doing it in the background? One concern is that if I have built-in or batch transforms within conditional logic, wouldn't there be a risk that the warm-up would be incorrect? Or do you somehow sort out the maximum warm-up period ever possibly required?
Grant