Quantopian's community platform is shutting down. Please read this post for more information and download your code.
Back to Community
help with order problem

When I do a "Build Algorithm" and submit orders on the first day of the backtest (01/03/2012), all of the orders are placed the next day, except the second SID listed (sid(8229) or WMT). Any idea why?

Also, on subsequent days, it appears that even though all orders are for 100 shares, this line is reporting non-integer multiples of 100 shares:

log.debug(context.portfolio.positions[stock].amount)  

Why?

8 responses

Hi @Grant,

I cloned your algorithm and did some digging, and contrary to what we've mentioned in other replies, I think you have uncovered a real bug in the transaction simulator. Based on some tests tonight, I believe that the start of the simulation is failing to properly initialize the internal date and time used by the transaction simulator to figure out which orders are ready to be filled. I wasn't able to get to the bottom of it tonight, but we will keep working on it.

Thank you so much for reporting the problem and providing a novel test case - I realized there was something awry when I started adding and removing stocks from the list, and found a pattern to the missing positions. The pattern is that if you remove stock 8229, then a different stock will always miss the first trade. Remove that stock, and another will miss, and so on, until you have a list of one stock and it always misses the trade on 1/4. In fact, any single stock will behave this way.

Thanks again,
fawce

Disclaimer

The material on this website is provided for informational purposes only and does not constitute an offer to sell, a solicitation to buy, or a recommendation or endorsement for any security or strategy, nor does it constitute an offer to provide investment advisory services by Quantopian. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. No information contained herein should be regarded as a suggestion to engage in or refrain from any investment-related course of action as none of Quantopian nor any of its affiliates is undertaking to provide investment advice, act as an adviser to any plan or entity subject to the Employee Retirement Income Security Act of 1974, as amended, individual retirement account or individual retirement annuity, or give advice in a fiduciary capacity with respect to the materials presented herein. If you are an individual retirement or other investor, contact your financial advisor or other fiduciary unrelated to Quantopian about whether any given investment idea, strategy, product or service described herein may be appropriate for your circumstances. All investments involve risk, including loss of principal. Quantopian makes no guarantees as to the accuracy or completeness of the views expressed in the website. The views are subject to change, and may have become unreliable for various reasons, including changes in market conditions or economic circumstances.

Fawce,

Glad to help. I encountered the problem when fiddling around with the project Thomas W. and I have been trying to complete (the so-called "OLMAR" algorithm). It requires daily re-balancing of a portfolio...which obviously won't work quite right if an order for one of the securities does not get fulfilled!

From my perspective, there is no rush to fix the bug. Just let me know when I should test again to verify the solution.

Hi @Grant,

Great find! We pushed out a fix for this today, so when you have some time, you can try your daily re-balancing again. Definitely continue letting us know when you find any problems!

Thanks,
Rich

Disclaimer

The material on this website is provided for informational purposes only and does not constitute an offer to sell, a solicitation to buy, or a recommendation or endorsement for any security or strategy, nor does it constitute an offer to provide investment advisory services by Quantopian. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. No information contained herein should be regarded as a suggestion to engage in or refrain from any investment-related course of action as none of Quantopian nor any of its affiliates is undertaking to provide investment advice, act as an adviser to any plan or entity subject to the Employee Retirement Income Security Act of 1974, as amended, individual retirement account or individual retirement annuity, or give advice in a fiduciary capacity with respect to the materials presented herein. If you are an individual retirement or other investor, contact your financial advisor or other fiduciary unrelated to Quantopian about whether any given investment idea, strategy, product or service described herein may be appropriate for your circumstances. All investments involve risk, including loss of principal. Quantopian makes no guarantees as to the accuracy or completeness of the views expressed in the website. The views are subject to change, and may have become unreliable for various reasons, including changes in market conditions or economic circumstances.

Thanks Rich,

Will do.

Grant

Rich and Fawce,

I still see that sometimes orders are not completely fulfilled. For example, I get:

2012-01-05 handle_data:10 DEBUG 199

Should be 200 instead of 199, right?

That does sound right, Grant. I'll take a look!

-Rich

Ok, Grant, the partial fulfillment should be fixed now too. Keep em coming...

Best,
Rich

Thanks Rich,

It's fixed! I'll see what else I can break... : )

Grant