Frequently Asked Questions

Basics

What is QuantRocket?

QuantRocket is a Python-based platform for researching, backtesting, and running automated, quantitative trading strategies. It provides data collection tools, multiple data vendors, a research environment, multiple backtesters, and live and paper trading through Interactive Brokers (IB). It provides scheduling, notification, and maintenance tools to allow your strategies to run fully automated. It allows you to track and analyze your live performance on a strategy-by-strategy basis.

Does QuantRocket support international markets?

Absolutely! QuantRocket offers first-class support for running your trading strategies on international markets. The lack of support for international markets among most available trading platforms (which tend to be US-centric) was a major reason for QuantRocket's development.

QuantRocket was built from the ground up with global markets in mind and seamlessly handles the technical details associated with international trading, such as differing timezones, trading hours, currencies, tick sizes, etc. QuantRocket makes it easy to build a diversified portfolio of international trading strategies.

How much programming skill do I need?

QuantRocket is well-suited for traders and data scientists who would describe themselves as "quants first, programmers second." QuantRocket focuses on providing turn-key infrastructure and data management tools so that you don't have to be a professional software developer to trade your strategies, allowing you to focus on your research and backtesting.

Experienced software developers will appreciate QuantRocket's modern, Docker-based stack, cloud integrations, clean APIs, flexibility, and developer-centric workflows.

We also offer premium support options if you prefer customized, hands-on help.

Is QuantRocket a command line tool or is there a user interface?

The "home base" for interacting with QuantRocket is a web-based Jupyter research environment in which you can view, create, and edit your research notebooks, algorithm files, and configuration files. You can use QuantRocket's Python API within your notebooks and algorithms, or you can open a terminal inside the Jupyter interface and use QuantRocket's command line interface.

The intro video provides a demonstration of the Jupyter environment.

Installation

Does QuantRocket run on my computer or yours?

QuantRocket installs on your hardware. This could be your local computer or a server in the cloud.

If you're interested in a hosted version of QuantRocket that includes server monitoring and maintenance, we offer a hosted infrastructure premium support option.

What are the minimum hardware requirements?

QuantRocket runs anywhere Docker runs: Windows, Linux, or Mac. For Windows users, Windows 10 Professional or higher is required.

Your computer should have at least 8 GB of memory to ensure a good user experience.

See more about system requirements.

How do I run QuantRocket in the cloud?

See the cloud installation tutorials.

Is an Interactive Brokers account required?

For most use cases, an IB account is required. IB is the only supported broker and is also a primary data source. QuantRocket offers a top-notch experience for quantitative trading with IB because it is custom-built around IB's strengths and capabilities.

Some use cases do not require an IB account. If you wish to use non-IB data and do not intend to trade or connect to IB, no IB account is required.

How does QuantRocket connect to IB?

QuantRocket connects to IB using IB Gateway, a slimmed-down version of Trader Workstation (TWS) which provides access to the IB API for collecting market data, placing orders, checking your account balance, etc.

IB Gateway is bundled with QuantRocket and doesn't need to be installed separately.

Markets

How many exchanges are available?

IB offers listings on over 60 global exchanges. With QuantRocket you can trade nearly all of them.

The exchange selector on the account page (login required) shows the approximate number of listings for each exchange.

Please note that, due to restrictions imposed by the exchanges, IB does not provide market data via API for Norway or mainland China stocks, therefore these exchanges are currently unsupported by QuantRocket.

What asset classes are supported?

QuantRocket supports equities, futures, and currencies. Options support is limited but will be expanded in the future.

Are cryptocurrencies supported?

You can trade Bitcoin futures on CME or CBOE. IB does not offer spot cryptocurrency trading.

Data

What historical data is available with QuantRocket?

QuantRocket integrates historical price data from IB and fundamental data from the Reuters Worldwide Fundamentals dataset (available through IB).

QuantRocket also provides premium US fundamental and end-of-day price data from Sharadar.

For IB historical data, you must subscribe to the relevant market data through IB Account Management then use QuantRocket to collect the data from IB.

What bar sizes are available from IB?

IB offers over 20 bar sizes ranging from 1 month to 1 second. The full list includes: 1 month, 1 week, 1 day, 8 hours, 4 hours, 3 hours, 2 hours, 1 hour, 30 mins, 20 mins, 15 mins, 10 mins, 5 mins, 3 mins, 2 mins, 1 min, 30 secs, 15 secs, 10 secs, 5 secs, and 1 secs.

How far back does IB's historical data go?

For stocks and currencies, historical data depth varies by exchange and bar size. End of day prices go back as far as 1980 for some exchanges, while intraday prices down to 1-minute bars go back as far as 2004. The amount of data available from the IB API is the same as the amount of data available when viewing the corresponding chart in Trader Workstation.

Historical data availability for select exchanges is shown here.

For futures, historical data is available for contracts that expired no more than 2 years ago. IB removes historical futures data from its system 2 years after the contract expiration date.

For bar sizes of 30 seconds or smaller, historical data goes back 6 months only.

How long does it take to collect data from IB?

Initial data collection can take anywhere from a few minutes to several days or more, depending on the bar size, date range, and number of securities. The usage guide provides more detail on the practicalities of historical data collection.

Is QuantRocket suitable for collecting large amounts of data?

Yes. IB is a treasure trove of global market data, but few IB customers tap its potential due to the complexity of the API and the long runtimes required to collect it due to IB's rate limits. QuantRocket can collect data in the background continuously for days, weeks, or months on end, surviving network interruptions, IB server blackouts, and other challenges and idiosyncrasies of the IB API. With sufficient hard drive space and a little patience, you can collect terabytes and terabytes of market data.

Is IB historical stock data split- and dividend-adjusted?

All IB historical data is split-adjusted.

Dividend-adjusted data is optional for daily bars. Dividend-adjusted data is unavailable for bar sizes smaller than 1 day.

Does IB historical stock data provide consolidated prices or primary exchange prices?

Either! You can choose.

Does IB historical stock data include delisted tickers?

No. If a stock went bankrupt, was acquired, went private, etc. it won't be in IB's data.

QuantRocket doesn't delete delisted tickers, so over time you will build up a database that includes delisted tickers.

End-of-day data that includes active and delisted tickers for US stocks and is free of survivorship bias is available as a premium dataset from Sharadar.

Does QuantRocket support continuous futures?

Yes. Futures can be queried as individual (non-continuous) contracts or as continuous contracts which are concatenated based on configurable rollover rules.

What fundamental data is available with QuantRocket?

QuantRocket can collect Reuters fundamental data from IB and store it in a database for analysis, backtesting, and trading. There are 2 types of fundamental data available.

Financial statements provide over 125 cash flow, balance sheet, and income metrics. Statements are time-indexed to the relevant fiscal period as well as the filing date for point-in-time backtesting.

Estimates and actuals provide analyst estimates and actuals for a variety of indicators. The actuals include the announcement date, for point-in-time backtesting.

To learn more, see the Reuters Worldwide Fundamentals data guide.

Sharadar US fundamentals, available as a premium dataset, offers over 20 years of history and includes active and delisted tickers.

What data is available for short sellers?

QuantRocket maintains a historical archive of shortable shares and borrow fees data from IB. You can use this data to model the costs and constraints of short selling.

Moonshot

What is Moonshot?

Moonshot is a fast, Pandas-based backtester that supports daily or intraday data, multi-strategy backtests and parameter scans, and live trading. It is well-suited for running cross-sectional strategies or screens involving hundreds or even thousands of securities.

Learn more about Moonshot in the usage guide.

What asset classes does Moonshot support?

Moonshot works with equities, futures, and currencies. For futures, individual contracts or continuous contracts can be used.

Does Moonshot support intraday strategies?

Yes, Moonshot supports both intraday and end-of-day strategies.

How does live trading with Moonshot work?

Live trading with Moonshot can be thought of as running a backtest on up-to-date historical data and placing a batch of orders based on the latest signals generated by the backtest.

For Quantopian users

How is QuantRocket similar to and different from Quantopian?

Like Quantopian, QuantRocket is a platform for developing automated, quantitative trading strategies using Python. Like Quantopian, QuantRocket can be used for strategies that screen hundreds or thousands of securities. QuantRocket integrates several open source Python libraries developed by Quantopian, including Zipline, Alphalens, Pyfolio, and QGrid.

Unlike Quantopian, QuantRocket supports live trading and does not run contests or license user-created algorithms for capital allocations. Rather, QuantRocket customers use QuantRocket to trade their own money.

Does QuantRocket support backtesting and live trading with Zipline?

QuantRocket supports backtesting with Zipline. We do not yet support live trading with Zipline but we plan to add this capability in the future.

How do I live trade my Quantopian strategy using QuantRocket?

You can live trade your Quantopian algo by porting it to Moonshot. If you need help, we offer a paid service for porting your Quantopian algo to QuantRocket.

My Quantopian strategy uses fundamentals in Pipeline. Can I run it using Moonshot?

You can use Reuters Worldwide Fundamentals. Check out the Reuters fundamentals data guide page.

My Quantopian strategy screens thousands of stocks in Pipeline. Can I run it using Moonshot?

Yes, but for large universes of stocks your strategy will need to utilize a bar size larger than 1-minute (for example, 15 or 30 minutes). See the usage guide regarding the total data quantity for intraday strategies in Moonshot.