Youness,
My programming time is limited by my daily investor advisor activities, so I have not yet finished my day trading algo and launched it. I am optimistic that I can make it work. So far, though, my conclusions are that it can only be tested on on IB trading account, as opposed to a Quantopian one. That is because Q's version will always report incorrect (too high or too low) profit/loss statuses on day trades. That's because the order object, which you can monitor, surprisingly does not contain a "transaction price" attribute! So how in the heck can you judge what you made or lost on a trade?
The Q framework is a wonderful one, but day trading obviously did not fit within the designers' conceptual framework of profitable activities, so no priority has been given to fixing such lapses. I do not expect this to change in the near future. Now if somebody like you or me can show Q's management team a day trading algo averaging 50 or 100 basis points profits per day, I think they might be inclined to change their view...
My workaround will be a) to use stop and stop limits on all trades (I do that anyways) and b) to use IB 's own measurement reporting to judge the profits and losses of trades. You must be cautious with accessing IB 's account trading through Q. Connecting to it through TWS to view trading activity will stop the Q algo if performed during regular trading hours. And it will only restart the next day.
If I run the algo on IB's paper trading account and see it is making money, I'll be comfortable launching it in a real world money app. I've side traded IB's paper trading account with a live acount on identical trades over many years, and found that the paper trading results are surprisingly accurate. The exception to that is on thinly traded stocks, where your buying volume severely impacts the fill prices, which is not properly accounted for in IB's paper trading reports. But I don't trade low volume stocks in day trading activities for just that reason.
Hope this makes sense. Let me know how you fare. Good luck!