Quantopian's community platform is shutting down. Please read this post for more information and download your code.
Back to Community
How is this different?

I just found your website. It is interesting but how is this different from what platforms like Tradestation, NinjaTrader, MetaTrader or even Amibroker do? Also, there are programs around for quite some time like Price Action Lab and Trading System Lab that configure algos automatically. How different is your platform in general?

7 responses

Hi Ricardo,

Thank you for taking the time to look at Quantopian, and for your question. The three most important and unique aspects of Quantopian are:

You own your IP

We have gone through great lengths in our terms of use and our product design to protect your IP. Anything you create here belongs to you, and you have the choice to share or not share what you create. We believe, quite deeply, in the quant's right to keep the code for their own algorithms private. The problem with the industry is not a quant's privacy, rather we think it is deeply unhealthy for quant finance infrastructure to be kept as secret as the algorithms that run on it.

Quant Community

Wall Street firms know that quant finance runs on talent. Some of the fiercest competition among firms is in the recruiting process. For aspiring quants, the small number of entry positions at major firms each year are highly sought after because those positions are one of the only ways to find mentorship in the field. Once hired, new quants are indoctrinated in a culture of secrecy. They are told not to speak publicly, to refrain from teaching other quants, and otherwise keep a lid on their work.

Now that computers and algorithms account for 80% of trading volumes, we think it is high time for quant finance to be more accessible. We started by knocking down barriers to the technology platform, but our mission and our business goals go far beyond that.

We are convinced that finance in general, and quant finance in particular, are too secretive. The restrictions on sharing know-how, mentorship, and basic plumbing like backtesting stifle innovation and limit the potential of the field. Price Action Lab restricts the number of licenses they will sell -- that approach violates every belief I have for how to develop a product, business, and community. That is why we took what many consider core IP, our backtester, and open sourced the entire codebase as Zipline. We will continue to do the extra work to package key quant components into open source libraries, and we will continue improve and invest in Zipline.

Our business runs on trust, and we plan to build your trust over time by continuing to be open about our business, our technology, and our mistakes.

Technology Platform

We chose python because it is a general purpose language with unique range that supports functional programming, OO, and statistical analysis with matrix operations. Rather than require you to learn a new language, or worse work with a 4GL like EasyLanguage and suffer Dietzler's Law, you just write a little python. Very little python in fact: just two methods are required for an algorithm to be run through Quantopian.

There's no way to say this without snickering, but here goes: Quantopian runs in the cloud. That means we will ship features faster than any desktop product -- and virtually all existing solutions are desktop. Bear in mind that our current system was built since June 2012 (that may say more about our team than the cloud). Cloud also means that you never need to download or install anything - you can just jump into the hard part: creating an algo. That is, unless you'd rather hack on Zipline with us! Lastly, cloud means we can scale capacity based on your needs -- that is a critical capability for computationally intense operations like parameter optimization.

I hope that gives you a sense of our direction. It is still very early days for our company, platform, and community. Already, we have come to depend on our community for advice, criticism, and code contributions. I'd be grateful if you'd continue to evaluate us critically and let us know when you think we're falling short or believing our own press too much.

thanks,
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.

Hello Ricardo,

Thought you might like to hear from a user/member.

The Quantopian team has a good thing going here. I was involved in beta testing and I'm at the level of "skeptical hobbiest" in the field of quantitative trading. Fawce is correct that the barrier to entry here is very low (so long as you are willing to learn a little Python, if necessary). Seems that you may have some experience in the field, so I'd encourage you to try your hand at writing an algorithm and posting it here. Or recommend one you'd like to see backtested.

Regarding Python, my experience so far is that it was a good choice for the backtester. On the help page, you'll find a list of a list of the modules available, and the Quantopian guys are open to adding additional ones.

In the area of support, Quantopian is very responsive...which is amazing for a free application!

Do you do quantitative trading, either personally or professionally?

Grant

Thank you guys. Multithreaded apps like Amibroker have virtually eliminated all execution speed constraints plus they offer portfolio backtesting, walk forward optimization and more. One issue is data availability and that is where this platform has an advantage but the drawback is that 99% of traders do not know how to develop code and the 1% that does may be reluctant to program in a public system no matter what you declare about privacy. This is one reason for example I do not use any platform to backtest systems that can communicate with a host. I develop my systems offline and I use an API to send trades to the platform. IMO, your platform is more useful as an education tool for aspiring quant traders but the language choice is limited to python. As far as my experience: 25 years of system coding for hedge funds. Currently I work for an EU based hedge fund and I use data mining methods, properly applied, to develop systems for ETF, futures and forex trading. At work, all system development platforms have no Internet access and data is transferred to them using external disks.

Thanks Ricardo,

Wow...your statement that "99% of traders do not know how to develop code" is revealing! So who develops the algorithms in a typical algorithmic trading business? And do the folks who provide the insights and tools to the traders get fairly compensated for their contributions?

If I understand correctly, for your personal trades, you basically generate a list of orders offline and then manually send the orders to the broker via their API (perhaps via a small file transferred with a USB stick from your offline pc), right? If so, how to you get up-to-date market data to your offline pc--in the same fashion, with a USB stick or equivalent?

In the hedge fund world, I'd suspected that sneakernet/air gap measures were probably in place, in conjunction with standalone workstations/internal networks. If you're interested, there are some details regarding Quantopian security on http://blog.quantopian.com/post-mortem-of-121212-attack-on-quantopian/.

Regarding the Python limitation, it is probably not fundamental, since I suspect wrappers could be written to accommodate other languages. What languages would be preferred over Python? Fawce, can you comment on the feasibility?

In the large investment banks you have coders sitting on the higher floors and traders sitting on the 2nd floor of the building, and there are a series of meetings to discuss an idea and then the coders write the implementation. Depending on the level of sophistication of the systems, some amount of live debugging will take place, where the orders are simulated. Then it goes to the traders see if it works in the way they expected and they check logs to see if everything is working under the hood.

I'm guessing that hedge funds have more to protect in terms of IP though, especially if strategies are arbitrage based..........

Grant, you are right that we could support other languages, but we're going to remain focused on python. We think it is far from a limitation - one language that can span research, statistical analysis, simulation, and live trading is a huge productivity boost.

Since I have used most of these platforms, there are differences.
1. Python is open source. It is not a "strategy development" language. That makes it more cumbersome to code in but you get no software pre-set biases to doing things a certain way.
2. Except maybe for Metatrader, you must be well skilled and always alert if you want to implement real-time intraday trading. If you are not U.S based you probably need to go on the cloud. Configure the instance and it's security. Configure your software API's to the broker. Auto start IB without the extra security card, etc,etc, etc....
As for Metatrader, it's great if you can trust the broker that runs it and you can code in C++. And it's only forex.
3. You can always backtest in other software. If you have a good strategy and know it by heart, chances are that you can code it in Python.
4. It's free.
5. I have a couple of simple strategies that I would run right now, if Quantopian had a reliable API to IB, OPG and MOC orders and a reasonable fee that would not kill my small edge. Cannot say the same with the other software some of which I own and like a lot.