Back to Community
Success stories?

Before putting too much time and effort in quantopian, I'd like to know whether there are genuine quantopian success stories. Are there people who are trading daily with live money using quantopian and making serious money or is quantopian more of a hobby for most people?

52 responses

So, no real success stories or nobody wants to share?

Hi Mete,

It's tricky for us to speak directly to this question because part of our core promise is to protect the privacy and intellectual property of our members. That said, I'm happy to share some general information on our live trading beta program to date. In aggregate, we're seeing $100 million traded per month on $5 million in algorithmically directed assets (ADA). Looking at our individual quants, it's not surprising that we see a large spread of performance. In the graph below, each dot represents a strategy that traded more than 10 days; you can see a lot of success, and some failures.

We're working on formalizing these results and looking more closely at things like risk adjusted returns as well, and we'll be presenting some of this work publicly next week at the Boston Data Festival (see Thomas Wiecki's talk on Evaluating Trading Algorithms using Probablistic Programming - http://www.bostondatafest.com/. I will post the recording from the talk on this thread and our blog post event.

We are also working on a profile series of interviews with folks who've participated in our live trading beta, hoping to get the first of those up on Quantopian's blog (http://blog.quantopian.com/) in the near future. As you can imagine, some people are more enthusiastic than others about talking publicly about their trading tools and results.

And Derek Tishler - your insight above is spot on. We couldn't be more excited about the possibilities of our quant community leveraging our platform to execute their investment strategies.

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.

I've had a good experience so far. To get straight to the point, the performance is exactly in line with what I expect, near the cluster of those dots in the center.

The transparency has been very valuable though. It has given me the confidence to sit through poor performance when it occurred. And as a software developer, seeing the actual trading rules written in code is far better than, "Whatever the CFA's interns are e-mailing to people that day." You might be imagining I use a really complex trading strategy. I don't. Getting a really accurate picture of a simple strategy is where the platform has shined for me. Transparency helps me stick to a plan in spite of the psychological pressures to pull out.

Since I was already interested in automated financial management, I was not comparing Quantopian to e.g., Wells Fargo and T. Rowe Price funds. I was comparing Quantopian to services like WealthFront. I think at the current pricing, free, Quantopian is a steal. Philosophically speaking, you're better off picking through a search space of well-specified trading algorithms than the search space of whichever service pays WealthFront the highest commission for a referral. So my completely uninformed opinion is, long term performance could be better with Quantopian's model than other online financial management tools.

Take my notes with some caveats. I've been on the platform for about three months of live trading. I use a very conventional strategy. I hope to do something more sophisticated.

Thanks everyone for the information. Regarding, "$100 million traded per month on $5 million in algorithmically directed assets (ADA)", what does that mean exactly? I thought Quantopian was all algorithmically directed, so I don't understand the distinction between $100 million vs. $5 million.

To make sure I read the graph correctly, most daily returns seem to be around 0.1% to 0.2% range with some outliers above 0.4%. Assuming low 0.1% and high 0.4%, that means I can expect annual return of 36% (0.1% * 30 * 12) on the low end and 144% (0.4% * 30 * 12) on the high end. Is that correct?

Hi Mete,

Regarding your question: "Assuming low 0.1% and high 0.4%, that means I can expect annual return of 36% (0.1% * 30 * 12) on the low end and 144% (0.4% * 30 * 12) on the high end. Is that correct?"

Not quite. The graph does seem to show an average of a little over 0% - not quite 0.1% though, and 0.1% certainly isn't the 'low'. Removing outliers (i.e. only considering the bulk of results in that center cluster), the low seems to be around -0.18%. So a fair range to consider, assuming you make a somewhat 'average' algorithm, is around -0.18%/day to around +0.19%/day.
The correct math for calculating average returns is more like: ((1+avg_daily_returns)^number_of_trading_days) - 1, where the average daily returns are expressed as a decimal. The number of trading days in the US is 251/year, so for say 0.1% daily returns, your expected annual return would be something like ((1+0.001)^251) - 1 = 0.285 = 28.5%. Similarly an average daily return of -0.05% would yield an annual return of ((1-0.0005)^251) -1 = -0.118 = -11.8%.

Obviously, what you can 'expect' from your algorithm is defined by how good it is! Personally I have not yet had enough faith in any of my algorithms to deploy them with real money. Only you can decide when they are well armed to fend for themselves in the battlefield that we call the market, and come out winning.

Hope this helps!

Mete,
The distinction between $100 million vs. $5 million is that the $5 million is the equity base (ADA), and the $100million is the approximate dollars traded per month.

It's really impossible to say what you can expect to make on the platform, or any platform, it all depends on the strategies you decide to implement. I'm sure there are some standouts on the platform, but I'm willing to bet that a lot of them would rather remain quiet about it. It's also tough to collect cumulative data for each trader because the majority of algorithms get stopped and started fairly often.

I'm not sure where I fall in the distribution, but I've been having success so far. To give you something concrete, I've only ever traded the account in this screenshot via Quantopian.

Ditto the scatter plot. Pardon my interuption, I noticed that during October all over the internet pretty much everyone said the sky is falling, predicting doom and gloom for the market.
The Dow and S&P 500 hit all time highs today.

@Anony,

I think the question is whether the stand-outs have done well because they're trading on actual 'information' or if they are simply statistical outliers. And what part did the Quantopian platform play in their success? Perhaps that's what Thomas W.'s will talk about at http://www.bostondatafest.com/events/. How does one sort out the monkeys on typewriters from the brainiacs? In other words, which algorithms are true black boxes that print money?

Hello Kelly,

It'd be interesting to compare your data set with info. from Interactive Brokers. The idea here is to address if Quantopian traders stand out, relative to the crowd. So, you need the crowd as a baseline. If you can get your hands on it, it would be interesting to see statistics from Interactive Brokers for the type of trading Quantopian folks are doing (e.g. capital, frequency, leverage, securities, etc.).

Grant

Before putting too much time and effort in quantopian, I'd like to know whether there are genuine quantopian success stories. Are there people who are trading daily with live money using quantopian and making serious money or is quantopian more of a hobby for most people?

Its the wrong question. Entirely the wrong question. Take a purely algorithmic stock index and ask yourself the question "does it work"? Look at track record for some long established algorithmic traders: has algorithmic trading "worked" for them? If your answer to such questions are "yes" then provided you are adept at coding you can use Quantopian or anthing else in the software world to emulate them.

This is not a "Quantopian " question. Either you are comfortable with algorithmic trading and can put together your own system or systems or you are not and /or can't.

Hi Anthony, thanks for your feedback but I don't agree at all that it's the wrong question.

There are a few algorithmic trading platforms out there and they can't be all perfect. Each of them require a certain amount of time and effort to master, so it makes sense to get an idea how successful people have been with a platform. Just because algorithmic trading worked for some traders on some platforms, it doesn't necessarily mean that any platform is a good platform for algorithmic trading. Quantopian right now only supports US stocks, no FX or anything else, maybe that's a major limitation for success, maybe not. Quantopian does not support offline algorithmic optimization, maybe that's a limitation to success, maybe not. Quantopian provides data for free, do you have any guarantee that the data is good? Maybe it's just a myth that a solo algorithmic trader can beat the market and make serious money and you really need to be part of a hedge fund to make serious money, and maybe not. These are all valid questions.

Your assertion that "If you're good with algorithmic trading, the platform does not matter" has some degree of truth but if you're a beginner, it's better to make sure that you start with the best vs. a mediocre platform.

Let me clarify a bit. I have traded using Trading Blox for many years. It is not automated trading and it is long term not day trading. Trading Blox has the benefit of multi currency multi system back testing and trading and can mix futures, stocks and FX. You can trdae multi currency instruments in the same portfolio. So, I know mechanical trading works.

Back to Quantopian: agreed, as it stands it is not workable. Which is why my partners and I are developing zipline rather than Quantopian - which is the underlying python based engine behind Quantopian.

Why? because we don't wish to rely on a proprietary back testing engine any longer.

As to data, we do not rely on free sources. We use Reuters and CSI data.

Hope that has clarified things a bit. In summary, zipline + Quantopian + python/pandas etc is, in my opinion, a good way to go though it will be a great deal of uphill struggle.

Hello Anthony,

Would you being willing to elaborate on the elements of Quantopian that are "not workable"? I'm not looking to "stir the pot" of negativity here, but based on your bio, you may have some insights.

Grant

Yep, I'm interested in more insights on that as well. I'm considering zipline, mainly because I want to do offline development and optimization of algorithms and the manual nature of Quantopian is simply too slow for me.

One input voiced on this forum is that Quantopian, as it stands now, would work for swing trading. There's also a case for algorithmic/systematic investing (e.g re-balancing a portfolio based on an optimization routine). Jess Stauth put together a blog post that summarizes the various backtests that have been posted, along with their styles: http://blog.quantopian.com/5-basic-quant-strategies-implemented-by-the-quantopian-community/ (although it is not known which, if any, have been deployed with real money).

Regarding development and optimization, the under-development Quantopian research environment promises to be useful.

I am not negative on Quantopian at all. It is a fantastic effort and to be applauded greatly. I intend to delve much deeper into its workings and to help it help me understand Zipline.The only "negativity" is that it is going to take a lot of work to get it into the sort of shape I need to produce the sort of sophistication I have got out of the Trading Blox product. I don't have any more insight than that at the moment but expect to be able to provide a great deal more as I work with the product over the next few months.

Let me repeat: I have nothing but respect for the efforts put in by the Quantopian team but expect that in its current state it is not sufficient or my purposes. I am very confident however that I can adapt Zipline to suit me.

I found Quantopian over a year ago. I started trading live money on 4/7/14 and have been 100% satisfied with Quantopian. The execution of trades between Quantopian and Interactive Brokers has been 100% accurate - flawless, perfect execution. I am currently not using a very aggressive algorithm (based on my own risk tolerance), so my returns are probably considered modest. I am working on many more aggressive strategies.

This is a great platform and I'm very excited to be using it. And, the alignment with Interactive Brokers is tremendous. I think Quantopian will be a major player in three areas:

  1. Active Traders
  2. Low Cost Automated/Algorithmic Wealth Management - Wealthfront, Betterment, and FutureAdvisor offer little to no value as the investor can do everything they are offering for free instead of paying them 0.15% to 0.25% to 0.50%. Quantopian's value proposition to investors could be that of an inexpensive, very sophisticated, active, nimble, powerful and disciplined wealth management approach more suited for current and future global economic and market conditions.
  3. Hedge Fund Wealth Management (for accredited high net worth investors who want a hedge fund) - sounds like Quantopian is planning a fund of funds that could become a very strong choice for people and institutions looking for hedge fund investments.

Dear all,
one thing that puzzles me: how can you live trade a system if you have to maintain the whole logic in one, single, file. That goes against any logic in terms of maintaining a system that carries any significant level of risk.

[suggested edit to define further my comment: thx Gary] I believe reusing same code over and over decreases the risk level of some portion of code, as it gives more opportunity to see and address shortcomings. There is a benefit, thus, in changing a piece of code in one place (i.e. one file), and re-using (importing) the same single file over and over. As well, splitting different logic into different files allows to open source part of the code (or get third-party reviews of any sort) while maintaining the core logic proprietary. And finally, while thinking of collaborative development, I personally find it more efficient to use different files for different modules and making sure altering one part of the code will not impact others (because splitting modules into different files eventually will force you to improve code readability, ins and outs).

But as you can guess, I do come on Quantopian to see when this will be available, and benefit from the community in terms of sharing code and strategies (I confess not having contributed at all for now).

best,

I agree. Any semi-complex software system has thousands of lines of code split over tens, if not hundreds, different files. It's hard to imagine code fitting in a single file making any decent profit for people. Of course, I'd love to be wrong, otherwise, I wouldn't be spending my time here.

The current single file algo structure will eventually be improved upon, but it is not on the immediate horizon. Security is a big concern with this, allowing people to import code they wrote raises a lot of flags. Ideally we would have a directory structure and version control to work with. Quantopian is young, so there's a lot of room for improvement, and this is definitely on the radar.

Hello David,
It does not have to be "allowing people to import code", but merely allowing people, on Quantopian, to work with separate files from and on your very own server; Even from a collaborative aspect that would make sense : open source non strategy-core/proprietary info to make sure this is extensively reviewed and improved, while keeping, eventually, the proprietary core to you.
Anyways, thanks for bringing Quantopian and Zipline to us.

Hello Mete,

I've been following this thread, and it is not clear that your question has been answered adequately. As background, although I've been active with Quantopian since its early days, I've yet to jump into paper/live trading. This has been a personal choice, since Quantopian has made it incredibly easy for novices (and I'm in this camp) to venture into trading. The more I use Quantopian, the more I am reminded of how much I need to learn, which means the platform has worked for me.

In my mind, the general question is, across all markets, where are the best opportunities for relatively small-time individual retail traders (speculators)? And does Quantopian provide access to those markets? It would be interesting to hear from professionals in this area. For example, Interactive Brokers must have data that would provide guidance.

Grant

Thanks Grant for bringing the conversation back to the topic. Indeed, those are my fundamental questions still pending as well.

@Anony Mole, what kind of success story are you looking for? You seem like an active trader...have you started using the platform?

Hi Anony Mole, I don't think any of us are naive enough to expect a "here's the code for money printing algo, take it" kind of response from anyone here. All I'm interested to know is whether the notion of a solo trader making a decent living out of algo trading is real or not, and if so, a secondary question is whether Quantopian provides the right platform to achieve that. The camaraderie you mentioned also includes people who have the potential to making money trading but they haven't realized it yet, because they have been focusing on other things. That's why I think platforms like Quantopian are great, they provide a forum for like minded people to exchange ideas. Even if those ideas might not help much, as you claim, it maintains interest for those who want to pursue those ideas further.

Hi Mete,

Some details I believe to be factual (somebody please jump in, if I'm mistaken):

If you haven't already figured it out, once per minute, handle_data is called with bar data from Nanex and account status information from Interactive Brokers (e.g. order status). The closing price for a given security is not timestamped, so there is no way to determine its freshness. If I understand the definition of a bar correctly, assuming thin trading in the security, the price could be almost a minute stale (since the 'closing price' is, I believe, the last price available within the minute). Within the 50 second time allotted to handle_data, orders (and order cancellations, I think) can be submitted and sent to the broker immediately (and if you want, the orders could be staggered with delays within the 50 second window). If you hang around in handle_data beyond 50 seconds, the algorithm will crash (I don't think there is any way to catch the error, but I could be mistaken on this point).

Additionally, any open orders are cancelled at market close, so there is no way to have an order execute at the open, for example (just after 9:31 am is the earliest an order would arrive at the broker).

So, if you are comparing Quantopian to other platforms, maybe this info. will be useful.

Grant

I'd like to revisit the original question now that it has been over 2 years. Does anyone have any new information or input to this topic? Are there genuine Quantopian success stories?

Last I heard, 17 user algos had been awarded seed money of $100K average each, to help get the Q fund started (not sure if I've got the facts exactly straight, but the order of magnitude is about right, I think). So, some users are successfully plugging into the Q business plan. There are also published contest results. I can't say about the retail trading platform, which is along for the ride, presumably (Q supports it, but it is not the focus, as far as I can tell). Personally, I haven't used it.

I guess I'd suggest posing the question differently. Something like "I'd like to do X on Quantopian. Can it be done?" It is basically a blank slate with lots of data, both free and for sale. So it is up to you what you do with it.

Grant, Thanks for your answer. That does give some insight.

To be more specific, my question is: has anyone successfully beat the market as a whole in both a significant and consistent way while hedging the market's inherent risk using Quantopian? By Significant I mean achieving a much higher annual return than 10%, and by consistent I mean over the last couple years that people have been using Quantopian. All while dodging big losses that come with being in the market.

To me, the above would be the goal of diving deep into algo-trading. Which leads me to ask: Why have you decided not to do retail trading with Quantopian? If you're creating successful algorithms, there is money to be made right?

a 22% drawdown seems more acceptable in a backtest than your own money.

My algo hasn't made money. It's had some frustratingly bad luck in timing. The good news is that despite the lack of performance, I see similar results in the backtest over the same time period, and it historically has had a nonperforming year, so its overall results over the past few years seem genuine. If I eventually get a pay day I'll post it.

My Robinhood real money is up 83%. Its paper trading copy is up 148% though and they have only been running 2 months (Alpha 4.3 Beta -1.3 Sharpe 4.38, not a success story yet) so I'm not aware of any success stories and would like to hear some if there are any.

@ Benjamin -

I can answer your basic question, "If you're creating successful algorithms, there is money to be made right?" The answer is "yes"--if you can create algos that meet certain criteria, you can get lots of capital, and get some return, in the context of Quantopian's fund. If you are looking to learn, then in my opinion, there's pretty much only upside.

It seems that you are trying to decide, based on the experience of other users (i.e. convincing, complete reports), if you should get up the learning curve in this domain, so that you could venture your own capital, and achieve a consistently high return (>> 10%/year) at a low risk, as an individual retail trader. Generally, folks don't share enough detail to really assess their claims, if they share at all.

For me, Quantopian has been a free hobby and learning experience, which I would like to be "self-funding" (meaning that if I am going to get into trading my own capital, the original capital should have come from someone else). So, if I win some money in the contest, or get a payout as a fund "manager" (presently, I'm not even close to getting an allocation), I might then allocate some of it to a Quantopian algo of my own and eventually trade it live with real money.

By Significant I mean achieving a much higher annual return than 10%, and by consistent I mean over the last couple years that people have been using Quantopian. All while dodging big losses that come with being in the market.

Quantopian and Quantopian users are not acting in isolation.

To answer your question you really need to look at the disclosed results of hedge funds and CTAs and gross up their reported CAGR for their absurd fees.

Numerous websites report CTA and hedge fund returns for free. Here is one such:

http://www.iasg.com/en-us/

Consider Winton Capital whose results are widely available on the web. They employ 200 people most of them with degrees in maths and science. Some years ago they traded for high returns and accepted high drawdown: their max DD is/was 25%. These days they tone their trading right down so that institutional investors are not scared off by high vol and DD. They manage $20 or $30 bn.

In general high returns come with high volatility and high drawdown. Except if you are Bernie Madoff. You are barking up the wrong tree if you are looking for high returns ">>10%" at low risk....."All while dodging big losses that come with being in the market."

The pursuit of such an ambition is presumably why the vast majority of people lose money trading.

The pursuit of such an ambition is presumably why the vast majority of people lose money trading.

Well, presumably someone is profiting off of those misguided ambitions, right?

One reference point would be to have a look at the book Systematic Trading by Robert Carver. I wouldn't consider it strictly an "entry-level" book, but it is pretty comprehensive and comes at things in a sobering fashion; it is not a get-rich-quick manual. I was able to glean some basic ideas from it.

Well, presumably someone is profiting off of those misguided ambitions, right?

Well I can quote you one particularly loathsome individual who appears to have made a fortune on trend following.

Not by trading but through book sales, useless "system" sales, ghastly guest appearances and bottom licking renowned hedge fund managers who are always looking for adulation.

The ghastly snakeoil salesmen clean up. Not many others do.

Well, I'd say that Quantopian empowers anyone with an Internet connection to do their own due-diligence on any scheme. Plenty of data and tools for doing homework.

Anthony, thanks for your input, but I disagree with your claim that I'm "barking up the wrong tree if I'm looking for high returns with low risk," mainly for two reasons:

  1. Grant is right, someone is making money off of the inexperienced traders in the market. And using algorithms is certainly a way to obtain that money.
  2. What do you think the Quantopian team is trying to do in the first place? Do you think they're after the status quo? They just want the same risk/reward ratio as everyone has always gotten? No. They're crowd sourcing an algorithm that achieves exactly what I stated: excellent returns at low risk consistently over time. This concept is not a unicorn. Although I'm sure it's extremely difficult to achieve.

I am trying to evaluate if any Quantopian users have inched closer to this type of portfolio performance.

Benjamin,

Regarding Quantopian, even if they did share all of the nitty-gritty details of their nascent fund, I wouldn't expect it to reveal much. My sense is they've had ~6-9 months of low levels of real money on the algos. I guess it depends on how frequently they trade, but it'll take several years minimum at big dollars to understand if they've really got something. And it is my understanding that the big family office and institutional markets they are going after will require the track record.

If you look at the workflow and requirements, familiarize yourself with the data and tools available, and then find out what successful hedge funds actually do in this space, then perhaps you could at least decide if it would be possible to compete with the pros head-to-head (not counting the crowd-sourcing factor of potentially a more diverse, less-correlated harvest of strategies). My hunch is 'yes' they've got some of the basic building blocks in place, but my read is that they are holding off jazzing up their infrastructure (adding cost) until they get traction on making a profit.

In any case, if you are interested, just jump in and give it a go. If you write an algo that meets the fund requirements, then you'll have part of your answer. And if you get an allocation, you'll have confirmation.

The rain doth come...

If I could take back the 10 years I wasted learning the in-depth operations, data, formats, protocols, exchanges, instruments, techniques and strategies of analytic algorithmic market trading -- I would.

I would have been much better off learning how to play guitar and the piano and the saxophone.
Or learning how to build cabinetry, or sculpt using clay or metal. Or blow glass. Or write novels or screenplays.

Using a platform like the Q to learn a variation of Python is one thing. Python can be fun and useful tool for many other endeavors aside from wasting it trying to grift the markets out of a few pennies here and there. Besides being an unsavory, shallow and immoral occupation, that which a "market trader" represents, ultimately, the majority of them will fail.

Success? Yeah, I had success -- as soon as I quit this foolish dream of thinking I could contrive a system to thieve money from a bloated world economic exchange system.
AM

Anony Mole, that was profound.

The reason I resurrected this thread was to hear people's stories regarding their journey through trading, algo trading, and Quantopian, and to ultimately decide if I wanted to sink hundreds of hours into it or walk away now. As a programmer, I would enjoy the Python side of it, but I desire to know if the time spent would be worth it otherwise.

Your post definitely contributes to that end.

Anony Mole
Hee hee hee, well said indeed!

💣

Hi Benjamin,

Regarding your "desire to know if the time spent would be worth it" it all depends on your perspective. Will you make lots of money? Hard to say. Could you lose lots of money? Definitely possible. Will you learn something? Maybe. In the end, on an hourly basis, will you make anything close to minimum wage? Probably not.

Regarding Anony Mole's comments, if you conclude that it is "an unsavory, shallow and immoral occupation" whose only purpose is "to thieve money from a bloated world economic exchange system" then you should probably avoid Quantopian, since they are well-aligned with the powers-that-be in this domain (e.g. they are backed by Steve Cohen who got into some serious trouble with the SEC).

I'll go out on a limb here and state my own personal conviction

If one wants to invest in securities, and has an aptitude for coding,
then algorithmic trading is the only sensible approach. Period.

Who want's to invest in securities? I'd speculate virtually everyone who is saving for retirement as a starter. Who has an aptitude for coding? I'd speculate not many. Judging from my personal experience, as well as a lot of the posts here in the Q forums, developing a logical robust trading process within the framework of python code is beyond the ability of most people.

Why do I say it's the only sensible approach?

First, it saves time and isn't prone to errors. If the ONLY thing an algorithm did was to automatically execute trades which would otherwise be entered manually, then that seems reason enough to move to algorithmic trading. I have spent many hours manually calculating number of shares and entering trades into the E-trade portal. Not a good use of time.

Second, it allows for backtesting and some rational basis for choosing an investment/trading strategy. The ability to simulate how investment decisions would have played out places algorithmic trading on a whole different level from other approaches. How else would an individual decide on an investment 'approach'? I'd say the most common is to invest in 2 or 3 mutual funds. Rotate every once in while (when one thinks of it) and choose one that did great last year (hey this energy sector fund went up 34% last year - I'll buy that one). There are of course other approaches but they generally require putting faith in some 'expert' or 'system'. Algorithmic trading at least allows for the ability to do credible comparisons between well articulated strategies.

Third, it provides very important numbers beyond simple returns. I feel that volatility, drawdown, and beta are more important than raw returns. These numbers can be estimated with backtesting an algorithm, but are VERY hard to deduce from any other kind of investment approach.

Now, I sense the theme in this post was if anyone had any 'big wins' or even 'consistent wins'. Unless there is big money why should I bother? That seems quite shallow. That seems quite like asking 'why should I bother exercising if I'm not going to make it to the olympics?". Even a little exercise would benefit most people. And who knows, maybe one can make it to the olympics? But you'll never know if you don't even make that first effort.

I have had a live trading algorithm on Robinhood for awhile and it's pretty much matched the backtest results. So far I don't see any reason to believe it won't continue to do so. The annualized return 2011-2016 is 21%. Volatilty 12%. Max Drawdown -11%. Beta .11. Leverage 1. Some of the past 5 years have a backtest showing annual returns only in the 8-10% range but they are offset by some much better years.

A couple of caveats... This trades in leveraged ETFs even though the leverage is technically 1. The ETFs started in 2011 so that's the earliest backtest date. Not a lot of history but something. The last few years have been good for both bonds and stocks so that may account for much of the gain.

Now, I'm not saying that this is by any means a great algo. It's not Q material because of the leveraged ETFs (and other reasons). However, it shows that with a relatively simple algorithm one can 1) automate trades 2) have a degree of confidence that the strategy is sound 3) have numbers that can be monitored (ie beta and volatility) to see if things get too out of line from expectations (maybe stop the algo?) and 4) has better returns than the mutual funds in my 401K.

A good place to begin a personal success story is with a simple ETF strategy. ETF strategies such as this are far more than simple beginner investor escapades. These simple ETF strategies can be used as 'top down' high level frameworks to create better performing, scalable stock strategies. Beginning with an ETF strategy such as this (ie 45% 3x leveraged SP500), create a stock buying strategy which duplicates only the SP500 portion. Keep the other 3 ETFs in place but trade a basket of stocks which mimic (or ideally outperform in volatility, beta, and/or return) the SPXL ETF. Having the baseline of the leveraged ETFs, one can then replace them with stocks and un-leveraged ETFs and then add your own leverage to potentially outperform the ETF version.

Very few can probably put together the ideas and code to create a Q, hedge fund potential, strategy. Much like very few can put together the ideas and effort to create a multi-million dollar company. However, there are not only the Bill Gates and the Steven Jobs who have succeeded but many many others who did make the effort and did succeed because they took the initiative, availed themselves of technology, and collaborated with other like minded individuals.

The Quantopian platform is much like a virtual silicon valley for quant entrepreneurs. Not everyone packed their bags and moved to San Jose and not everyone who did struck it rich. However, I'd say most who did try have been better off than not.

Anyway, just my opinion(s) for what it's worth.

Clone Algorithm
113
Loading...
Backtest from to with initial capital
Total Returns
--
Alpha
--
Beta
--
Sharpe
--
Sortino
--
Max Drawdown
--
Benchmark Returns
--
Volatility
--
Returns 1 Month 3 Month 6 Month 12 Month
Alpha 1 Month 3 Month 6 Month 12 Month
Beta 1 Month 3 Month 6 Month 12 Month
Sharpe 1 Month 3 Month 6 Month 12 Month
Sortino 1 Month 3 Month 6 Month 12 Month
Volatility 1 Month 3 Month 6 Month 12 Month
Max Drawdown 1 Month 3 Month 6 Month 12 Month
'''
Trading algorithm for Robinhood

'''
# Imports needed for the pipeline
from quantopian.algorithm import attach_pipeline, pipeline_output
from quantopian.pipeline import Pipeline

# Imports needed for VIX data and others
from quantopian.pipeline.data.quandl import cboe_vix
from quantopian.pipeline.data.builtin import USEquityPricing

# Import any factors we want to use
from quantopian.pipeline.factors import CustomFactor, SimpleMovingAverage

# Imports for pandas and numpy
import pandas as pd
import numpy as np


def initialize(context):
    """
    Called once at the start of the algorithm.
    """   
    
    # Set any algorithm 'constants' you will be using
    
    # Here are the ETFs we want to trade along with the weights 
    # Kind of an inelegant way to handle the weights. Ensure these add to 1.0
    # SPXL and EUO are my bullish high beta assets / EDZ and TMF are less correlated
    # Weights are half bullish / half bearish
    stocks = [symbol('SPXL'), symbol('EDZ'), symbol('TMF'), symbol('EUO')] 
    weights = [.45, .2, .25, .05]
    
    # Here are the account constants
    # Below is min percent to adjust reballance and min cash to keep in account
    context.min_adjust = .00
    context.min_account_cash = 0.00
    
    
    # Make our dataframe to hold all our stock/trading data in one place
    context.universe = pd.DataFrame(
        index = stocks, 
        columns = ['price',
                   'high',
                   'low'
                   'held_shares',
                   'held_value'
                   'target_shares',
                   'target_value',
                   'order_shares',
                   'order_value',
                   'weight',
                  ], 
        )

    
    # Initialize the weights
    context.universe['weight'] = pd.DataFrame(index = stocks, columns = ['weight'], data = weights)
    
    # Add a held_shares column and initialize to 0
    context.universe = context.universe.assign(held_shares = 0)

    
    # Set commision model for Robinhood and ETFs
    # Assume no slippage on ETFs especially at the volumes we will be trading
    set_commission(commission.PerShare(cost=0.0, min_trade_cost=0.0))
    set_slippage(slippage.FixedSlippage(spread=0.0))

    # Ensure no short trading in Robinhood (just a precaution)
    set_long_only()
    
    # Try to place orders
    # Sell on Mondays / Buy on Fridays (no particular reason for that choice)
    # Ensure the buys are scheduled at least 3 days after sells to make sure they settle
    schedule_function(enter_sells, date_rules.week_start(days_offset=0), time_rules.market_open(hours = 1))
    schedule_function(enter_buys, date_rules.week_start(days_offset=4), time_rules.market_open(hours = 1))

   
    # Record tracking variables at the end of each day.
    schedule_function(my_record_vars, date_rules.every_day(), time_rules.market_close())


def enter_buys(context, data):
    # We want to buy anything greater than our min number of shares
    # First get current stock data
    update_stock_data(context, data)
    
    # Adjust the buy shares based upon available current cash
    adjust_buy_orders_per_available_cash(context, data)

    buys = context.universe.query('order_value >= @context.min_adjust * @context.portfolio.portfolio_value')
    
    for stock in buys.index:
        order(stock, 
              buys.loc[stock, 'order_shares'],
              style=LimitOrder(buys.loc[stock, 'price'])
              )
                 
def enter_sells(context, data):    
    # We want to sell anything less than our min number of shares
    # First get current stock data
    update_stock_data(context, data)
    sells = context.universe.query('order_value < [email protected]_adjust * @context.portfolio.portfolio_value')
    
    for stock in sells.index:
        order(stock, 
              sells.loc[stock, 'order_shares'],
              style=LimitOrder(sells.loc[stock, 'price']),
              )
    

def update_stock_data(context, data):
     # Calculate the percent of each security that we want to hold
    net_portfolio_value = context.portfolio.portfolio_value - context.min_account_cash
    
    # find out how much we have of each
    stock_data = context.universe.copy(deep=True)
    stocks = stock_data.index.values
    
    for stock in stocks:
       if stock in context.portfolio.positions:
            stock_data.loc[stock, 'held_shares'] = context.portfolio.positions[stock].amount
       else:
            stock_data.loc[stock, 'held_shares'] = 0        
    
    prices = data.history(stocks, 'price', 2, '1d').fillna(method='ffill', axis=1)
    stock_data['price'] = prices.ix[-1, :]
    
       
    stock_data['held_value'] = stock_data['held_shares'] * stock_data['price']
    stock_data['target_value'] = stock_data['weight'] * net_portfolio_value    
    stock_data['target_shares'] = stock_data['target_value'] / stock_data['price']
    
    stock_data.replace([np.inf, -np.inf], 0.0, inplace=True)
    
    stock_data['target_shares'] = stock_data['target_shares'].apply(np.floor)    
    stock_data['order_shares'] = stock_data['target_shares'] - stock_data['held_shares']
    stock_data['order_value'] = stock_data['order_shares'] * stock_data['price']
        
    context.universe = stock_data


def adjust_buy_orders_per_available_cash(context, data):
    buys = context.universe.query('order_shares > 0')
    
    required_cash = buys['order_value'].sum(axis=0)
    
    if required_cash < context.portfolio.cash:
        # We're good to go
        return
    elif required_cash <> 0:
        reduce_by_ratio = context.portfolio.cash / required_cash
        buys.loc[:,'order_shares'] = buys['order_shares'] * reduce_by_ratio
        buys.loc[:,'order_shares'] = buys.loc[:,'order_shares'].apply(np.floor)
        buys.loc[:,'order_value'] = buys['order_shares'] * buys['price']
        
    context.universe.loc[buys.index, :] = buys

    adjusted_cash = buys['order_value'].sum(axis=0)
    if adjusted_cash > context.portfolio.cash:
        log.info('got a problem %f  %f' % (adjusted_cash, context.portfolio.cash))
        


def my_record_vars(context, data):
    """
    Plot variables at the end of each day.
    """
            
    record(cash=context.portfolio.cash)
 

There was a runtime error.

so 17 * 100k = 1.7 mm allocated so far? Is that up to date? What is the largest amount of capital currently allocated to one quantopian algorithm?

Hi Dan

Thanks for sharing your success story first, very helpful.

"I'd say the most common is to invest in 2 or 3 mutual funds. Rotate every once in while (when one thinks of it) and choose one that did great last year (hey this energy sector fund went up 34% last year - I'll buy that one)."

I am looking for how to use algorithm trading to manage mutual fund portfolio, say, 5-8 funds, so far I could not found any algorithm from Quantopian for trading mutual funds like you mentioned above. Wonder if you know people to use algorithm trading to automate mutual funds investing? Like you mentioned above, but using zipline/quantopian?

Thanks

@ David -

Quantopian doesn't have mutual funds. You'd have to find equivalent ETFs if you want to trade using Quantopian and Interactive Brokers/Robinhood.

I've been a developer for the past 20 years. I recently started to build a site called Vicentex.com. Then I decided to utilize the google and yahoo historical API's to do my own backtesting, and stumbled upon an algorithm that turned 30,000 into 3.1 million over 4 months. I built a visual backtester with a multitude of inputs, corresponding to the various variables you can code for across all exchanges. It prints out every single trade it makes. I know it sounds unbelivable, but I'm scared to death to put this in Quantopian and have sought to copyright this before converting it to python from C#. How can I ensure that Quantopian won't steal what I compose? And No, I'm not joking at all. I'm 100% serious about what I'm saying.

Regards,

Leo P. Williams

I love martingales, their songs are so pretty. But I've been lured to the cliff, and having stumbled, fell to my death.

So sure of your algo? Run it yourself on IB. A full C# API is there waiting for you. Might take you a month to get it running real time.

Interesing, Quantopian deleted my response. How's that for building trust.

Leo's post about trust was not deleted - you can read it above.

I did delete three subsequent posts that contained personal insults and other content that violated our terms of use. The authors of those posts were emailed privately, the terms of use were explained, and they were counseled to refrain from similar posts in the future.

This thread is not the right place to talk about moderation. If anyone has other questions or comments about moderation, please create a new, separate thread or email us at [email protected]. Thank you.

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.

Leo, If you need some guidance on IB TWSAPI and C# integration, I'd be happy to poke you down the trail. I've been around the corral on IB a time or three and might lend a hand. Ya can't blame Q.deDunn wantin' to keep the forum sparkling clean; they're beholden to SAC now and can't afford any contention, coercion or controversy.

I have been using C# IB TWSAPI. Its quite nice. I am a C# programmer (10 years) and python is new for me. The real advantage of IB C# is that I can trade easily within the minute. Quantopian algorithms just tend to trade just a few times a day. In the tutorials it is also advised not to use the handle_data excessively because it can result in timeouts. That's a shame. However I love the backtest functionality of Quantopian. I have been missing just that in building algorithmic trading code. My little success was in trading (live money) futures automatically just after opening. However there was no backtesting to confirm my algorithm. So it was quite volatile. I have to see where I go next....