Back to all posts

Contest Qualification Made Easier

Having trouble getting your algorithm into the contest? Thanks to our new backtest interface, it’s now easier than ever to write a qualified entry.

When you’ve written your algorithm, hit ‘Run Full Backtest’, and then ‘View New Backtest Page’ to get to the new page. You’ll see something that looks like this:

The goal is pretty simple - once you see three green check marks on the page above, you’re ready to enter the contest.

Note: When working towards three check marks, make sure to pay attention to your backtest dates and capital. Some ideas may look good over a few days or months, but may not hold up over a longer time period. For contest eligibility, consider running a two-year backtest going back from the present date, with a $10 million capital base. The best approach is to pick a different time period as your training set, and then use today through 2 years ago as your testing set.

Let’s walk through each of the three sections (Structure, Risk, and Performance) of the evaluation criteria, and how to get a check mark on each of them:


This section is a good first one to work on, and the easiest to get right. To meet the criteria here, you need to order using the order_optimal_portfolio method, and use the Quantopian Tradable Universe as your algorithm’s stock universe.


There are various factors you want to keep controlled while writing a good algorithm. For example, you don’t want to be over-invested in any one single stock, to control your position risk. On the risk section, you can view your position concentration and learn how to keep it within a reasonable limit. The risk section allows you to look at several such factors, including your exposure to economic sectors, beta to the broader market, and the net long/short exposure of the algorithm. You can start controlling these risks with a single line of code.


To be eligible for the contest, an algorithm must make money. If you’re looking for interesting ideas that generate positive returns, the community forumslecture series, or alternative datasets are good resources to get started. The performance section also gives you other useful information about your algorithm, like its Sharpe ratio over time.

Once you’re ready for an even more in-depth analysis of your algorithm, head over to the 'Notebook' section and use pyfolio to take things a step further. As always, though, be wary of overfitting when optimizing your algorithm.

We’ll be walking through this interface, with a real-world example, in a webinar on May 16 at 3pm EDT. If you’d like to join, sign up today.


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.