Hi guys, I have a few questions/comments regarding the nuances of Quantopian's backtester:
First, just as sort of a NB/FYI for the other coders on the site: as demonstrated by this backtest, if you're using data from quandl, etc, with the fetcher and backtesting in minute mode, you do still have some lookahead bias! Right at the beginning of the day you'll have access to all the information from that day's line in the CSV, which if you're using quandl, includes the close. So to really avoid lookahead bias when using the fetcher, it may be appropriate to shift your data's timestamps by a day. (Maybe everyone else already knows this, but I didn't, and it seems pretty important.)
Second, how does the above situation work with live trading?
Third, is there any detailed documentation how are executions determined in daily mode? For instance, I have an algorithm that uses schedule_function once a day to trade right at the close, and in minute mode it does, the executions are time-stamped 4:00. In daily mode, the transactions are marked with the same date but no timestamp, though my understanding is that they are filled somehow the next day. My algo happens to perform significantly better in daily mode, and I'd like to know if there's a good way to actually mimic this behavior, or at least learn something from it.
Thanks!
