I'm just getting started with live trading. This is a multiday strategy.
I established positions with a bunch of orders today (Monday.) Now I'm running quantrocket moonshot trade
for today (Tuesday.) I would have expected this to generate no orders, or some bite-sized buys and sells to rebalance.
Instead, it's generating essentially the same set of orders as Monday. It is like moonshot has ignored the positions in the blotter. This would double my positions and blow the strategy allocation, although, YOLO.
When I run quantrocket blotter positions
, yep, the positions look accurate. Same for quantrocket accound portfolio
(only this strategy has an allocation.)
I can tell these are "new" orders because the position sizes are a bit different reflecting Monday's prices.
One slight twist is I have a bunch of GTC trailing limit stops submitted in the blotter. Is this likely to mess up how it calculates the position?
One bit of feedback: I would like to run this on Monday evening to generate orders for Tuesday, but moonshot complains that Tuesday's data are missing. If I wait until midnight ticks over I can generate the orders pre-open. (I'm using CALENDAR = 'TSEJ'
.) It would be nice if I didn't have to be up late/early.
I assume live trading is indexing prices_to_signals
by date and the signals.shift()
to avoid lookahead when backtesting doesn't mean live trading is looking at two day old data...