Back

QuantConnect vs Quantopian

What are the main differences and advantages? anyone with experience on both?
Update Backtest








Hey Lucas! I'm glad you asked; we're often asked this so I decided to write a blog article about it which is shared here. There are many differences in product and vision; but ultimately I think the biggest is that we're taking a grass roots, community driven approach.

We're aspiring to be the algorithmic trading infrastructure of the future; much like Linux drives the world's servers, we'll power the world of finance. We are not a hedge-fund; and believe that business model would create a bad relationship with you, our clients.

We're engineering perfectionists; and love beautiful code. Lean is a beautiful work of art. We are keeping it this way to ensure we have a solid platform for the future. I'd welcome the communities feedback on our path and decisions.

Many of the differences are just financial ones; fundamental data isn't hard for us to add, its just expensive. We'll probably launch a crowd funding campaign for fundamental data soon :)
0

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 QuantConnect. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. QuantConnect 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. All investments involve risk, including loss of principal. You should consult with an investment professional before making any investment decisions.


While I just started with QuantConnect. I can add my 2c here:

The largest difference between the two services I've noticed thus far are the backtesting engines: Lean (QuantConnect) engine vs Zipline (Quantopian) engine.

Both are very powerful; however, with Lean I can pretty much take my code directly from the online QuantConnect IDE and paste it directly into Lean and run it without changes (as long as I have the necessary equity/forex data). This alone makes debugging code quite a bit easier for me, as I can use a local IDE and a proper debugger. With Zipline, its not so easy for more complex algorithms, as there are several API differences between online Quantopian and Zipline... although I'm not saying it is impossible, it is certainly harder to transfer code from Quantopian <-> Zipline than it is QuantConnect <-> Lean. Quantopian does however, provide a basic online debugger which is not available in QuantConnect.

In addition, Lean seems to have better support for multiple timeframes, with tick, minute and daily built in. You can quite easily work with other timeframes in QuantConnect/Lean by creating callbacks, in my opinion, its harder to work with timeframes other than 1m or 1day in Quantopian/Zipline.

They both support creating data structures of historical data... I think Quantopian's method is a bit easier, but they both seem to work fine.

Quantopian lets you use the powerful python scikit-learn library, while Lean allows AForge and Accord.NET C# libraries. I love the ease of use of scikit-learn; however, I suppose if you are a C# wizard and are used to Accord, you'd like that better.

Furthermore, it seems Lean has the necessary plugin's to trade directly with Interactive Brokers (though I haven't tried it yet).

Speed seems to be an advantage of Lean over Zipline, though that would depend on how many backtests you are running.

Finally, the final big difference is C# vs Python. I feel python/pandas is better suited toward algo trading than c# is. I guess this final one is quite subjective and each individual would have their own opinion on C# vs python.

Overall, I feel QuantConnect/Lean has enough advantages over Zipline that I've moved over (even though I'm primarily a python developer).
1

Thank you @Gene; although my background is in C#, I see LEAN as language agnostic and hope very soon to publish the algorithm-connector-endpoint which will allow us to work with any language. By choosing a C language as our engine/foundation we can do all the hard work in C, and drop down to Python for the math :)
1

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 QuantConnect. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. QuantConnect 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. All investments involve risk, including loss of principal. You should consult with an investment professional before making any investment decisions.


I am starting to check out QuantConnect now, some differences I noticed
It is faster here, I cloned an algorithm tried to run it and I got locked for some order limitation. So Quantopian is free no restrictions in that direction. Also no fundamental data here?
Do you guys support Options/Future that is an Open area in Quantopian.
How does the slippage models compare? If we compare the result of the same strategy in the two platforms how does it look like? Although I think python is not appropriate for large projects they have some nice libraries indeed.

Another big difference is Quantopian has stopped evolving their platform and are focused on a open fund and you guys are evolving the platform faster here I have the feeling.

Can I optimize a backtest strategy here? Like TradeStation? Say I define a set of parameter and optimize it using GA. Do you guys support bracket orders, trailing etc?
0

We model cash as reality -- so if you don't have buying power, you can't place the trade. We aim to make our backtests 100% [painfully] realistic. We even model margin calls in the even you are over leveraged and the brokerage calls in your debts!

We'd love to add fundamental data but don't have the capital (its very expensive). We'll raise venture funding or do a crowd funding campaign soon to cover it. @MichaelMancini is working on options and futures data at the moment :)

We're working on the technology constantly, but the roadmap for the next 2-3 months includes optimization, futures, options, F#-python,and universe selection.

Re: Evolution - that makes sense. We're 100% focused on being the best quant infrastructure for trading, and being paid for that directly (infrastructure as a service).
1

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 QuantConnect. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. QuantConnect 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. All investments involve risk, including loss of principal. You should consult with an investment professional before making any investment decisions.


Dear Jared,
just a quick note to say I'm impressed by what QC achieved in a short period of time. "being Live", and enabling users to make $$, is the essence I believe.

Could you provide more info on "Live Trading with IB" (reconnection, system failure, multi-account, multi-strategy on a single IB account? ...), basically anything that would motivate switching from a 35 ppl team at Q, from a 4 ppl team at QC when there is actual $$ at play. This is now my only concern (and recoding from python to c# but apparently you may support python soon .. yet switching to c# might actually be a good thing).

Best,
0

Hey @florent, good question and our ultimate goal is to make you profitable and be long loyal customers of QuantConnect. The primary reasons are;

Technology - we give you a dedicated VPS, (allocated 512MB ram, allocated CPU), and have designed the system to handle tick data. Processing minute strategies on this horse power is a piece of cake. Technology is our primary business, so you can be sure you'll always have a leading top of line platform.

Our error system fires run-time errors emails to the users with details of the error, and copies in one of our team. We immediately review the error to ensure stability. We've got robust re-connection logic in the engine (which is all open sourced) and allows you to trade locally from your desktop. QuantConnect itself also has funds in IB and Tradier and have live strategies on both :)

Secondly this is our focus - we're infrastructure specialists, on call 24/7 and care about your success. You work directly with us and we adapt and evolve quickly. For example 9pm last night (Sunday) we were working with a user to ensure he could deploy this morning, we're 100% committed to your live trading success. We even offer code reviews on all the live strategies to give you a second pair of eyes!
0

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 QuantConnect. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. QuantConnect 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. All investments involve risk, including loss of principal. You should consult with an investment professional before making any investment decisions.


Another difference is the backtesting queue. Here we have a queue and we may not get immediately response or back-test right? Yesterday there was 24 users online and I had to wait for a minute or so to start my backtest.
How would this scale? Would my backtest run in parallel but slower or would the waiting time increase?
0

Hey Lucas, we're actually installed a "zero wait time" load balancer, so in theory you should never need to wait :) If there was any queuing time its probably a combination of a heavy backtest (we send first result packet after 1% processed), and that we're currently doing some heavy server work behind the scenes. The processing work should be finished today.
0

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 QuantConnect. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. QuantConnect 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. All investments involve risk, including loss of principal. You should consult with an investment professional before making any investment decisions.


Hi guys,

I've recently started implementing trading systems in Quantopian and I must say that it's a great platform, though some important features are missing IMO.

Being more into Python than C#, I don't know much of QuantConnect at this point but I would appreciate it if you could tell me where does it stand regarding the following limitations that I've found in Quantopian:

- all open orders are cancelled at 4 pm EST
- can't make decisions overnight (eg, running some tasks like calculating portfolio risk, doing optimization, etc. after markets close/before markets open the next day, sending orders to brokers for execution at the open of the next session for trade adjustments, etc.)
- no MOO/MOC orders
- skips the first minute bar of every trading day

Thanks!
0

Hey @Alexis!

I'll answer these inline for you:
- all open orders are cancelled at 4 pm EST
+QuantConnect will never cancel your orders unless your algorithm requests cancellation

- can't make decisions overnight (eg, running some tasks like calculating portfolio risk, doing optimization, etc. after markets close/before markets open the next day, sending orders to brokers
for execution at the open of the next session for trade adjustments, etc.)
+When running in live mode you have your own personal, dedicated VPS. You can do what you wish with your compute resources :) This includes scheduling chron jobs (via System.Timers)

- no MOO/MOC orders
+QuantConnect natively supports MarketOnOpen and MarketOnClose. If the selected brokerage does not support those order types than the LEAN engine will simulate them by placing the orders at open or just before close.

- skips the first minute bar of every trading day
+Data is never skipped unless you specify a data filter for your security.

I hope these answers help!
0

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 QuantConnect. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. QuantConnect 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. All investments involve risk, including loss of principal. You should consult with an investment professional before making any investment decisions.


Fantastic! Many thanks, MichaelH.
0

Jared,
I prefer C# over python any day since i use it at work, but i have been hanging out on quantopian for the simple reason that they have fundamental data. Any plans to add fundamentals here?
0

Yes absolutely @Chris, we've got the quote from Morning Star for the data and are doing the engineering to support it now :). We're starting with index selection. Like all the other Lean engine components it will be 100% compatible to run locally from your desktop!
1

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 QuantConnect. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. QuantConnect 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. All investments involve risk, including loss of principal. You should consult with an investment professional before making any investment decisions.


Another Example

http://www.slideshare.net/TipRanks/quantconnect-vs-quantopean
1

Update Backtest





0

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 QuantConnect. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. QuantConnect 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. All investments involve risk, including loss of principal. You should consult with an investment professional before making any investment decisions.


Loading...

This discussion is closed