The Top 21 Python Trading Tools For 2020 - Analyzing Alpha
The Top 21 Python Trading Tools For 2020 - Analyzing Alpha
https://analyzingalpha.com/python-trading-tools 1/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
Analyzing Alpha algorithmic trading in reach for the retail trader. Below you’ll find a curated
Share this
1. Trading Platforms
2. Data Providers
3. Execution Broker-Dealers
4. Return Analyzers
5. Popular Libraries
Trading Platforms
https://analyzingalpha.com/python-trading-tools 2/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
Quantopian’s Zipline is the local backtesting engine that powers Quantopian. Zipline is a
Pythonic algorithmic trading library. It is an event-driven system for backtesting. Zipline is the
backtesting engine powering Quantopian’s free, community-centered, hosted platform for
building and executing trading strategies.
Pros:
https://analyzingalpha.com/python-trading-tools 3/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
Analyzing Alpha Return and factor analysis tools are excellent. Share this
Cons:
Live trading isn’t supported natively either in the cloud or on-premise.
Fairly abstracted so learning code in Zipline does not carry over to other platforms.
Addtional Information
How to Install Zipline on Ubuntu Linux
https://analyzingalpha.com/python-trading-tools 4/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
Backtrader is a feature-rich Python framework for backtesting and trading. Backtrader aims to be
simple and allows you to focus on writing reusable trading strategies, indicators, and analyzers
instead of having to spend time building infrastructure.
Pros:
Very clean “pythonic” code that gets out of your way.
Cons:
Can have issues when using enormous datasets.
Good at everything but not great at anything except for its simplicity.
Addtional Information
https://analyzingalpha.com/python-trading-tools 5/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
Analyzing Alpha Getting Started with Backtrader and Trading Strategies Share this
QuantConnect’s LEAN is an open-source algorithmic trading engine built for easy strategy
research, backtesting and live trading. Lean integrates with the standard data providers and
brokerages deploy algorithmic trading strategies is quick.
The core of the LEAN Engine is written in C#; but it operates on Linux, Mac and Windows
operating systems. It supports algorithms written in Python 3.6, C#, or F#. Lean drives the web-
based algorithmic trading platform QuantConnect.
https://analyzingalpha.com/python-trading-tools 6/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
Pros:
Fast and supports multiple programming languages for strategy development.
Cons:
Return analysis could be improved.
Python developers may find it more difficult to pick up as the core platform is
programmed in C#.
Additional Information
QuantConnect Tutorials
https://analyzingalpha.com/python-trading-tools 7/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
QuantRocket is installed using Docker and can be installed locally or in the cloud.
Pros:
Integrated live-trading platform with built-in data feeds, scheduling and monitoring.
Cons:
No paper-trading or live trading without paying a subscription fee.
Additional Information
How to Install QuantRocket
Data Providers
https://analyzingalpha.com/python-trading-tools 9/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
Intrinio mission is to make financial data affordable and accessible. The Intrinio API serves
realtime and historical stock price quotes, company financials, and more with 200+ financial
data feeds across the investment spectrum.
Pros:
Extremely well designed and easy to use API.
Cons:
Bulk CSV download and API access require different purchases.
Additional Information
How to Import Stock Data Using Intrinio
https://analyzingalpha.com/python-trading-tools 10/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
Quandl is a premier source for financial, economic, and alternative datasets, serving investment
professionals. Quandl’s platform is used by over 400,000 people, including analysts from the
world’s top hedge funds, asset managers and investment banks.
https://analyzingalpha.com/python-trading-tools 11/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
Has over 400,000 users including top hedge funds, asset managers, and investment
banks.
Cons:
Not as affordable as other options.
Additional Information
Getting Quandl Data Using Python
https://analyzingalpha.com/python-trading-tools 12/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
Norgate Data provides updates for “end-of-day” financial market data (it doesn’t offer live
quotes, delayed quotes, or intra-day “tick” data).
They specialize in data for U.S. and Australian stock markets. Data is also available for selected
World Futures and Forex rates.
The service is provided on a subscription-only basis (historical data is not available as a “stand-
alone” item). For Stock Market subscriptions, the extent of historical data provided depends on
the subscription level.
Pros:
Great value for EOD pricing data.
https://analyzingalpha.com/python-trading-tools 13/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
Additional Info:
Norgate Data Overview
Execution Broker-Dealers
https://analyzingalpha.com/python-trading-tools 14/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
Analyzing Alpha Interactive Brokers provides online trading and account solutions for traders, investors and
Share this
institutions - advanced technology, low commissions and financing rates, and global access from
a single online brokerage account. Interactive Brokers is the primary broker used by retail
systematic and algorithmic traders, and multiple trading platforms have built Interactive Brokers
live-trading connectors.
Pros:
Stable, publicly-traded broker that’s been in business for over 41 years.
Cons:
Retail systematic and algorithmic traders are a small fraction of IBKR’s customer base and
have traditionally been deprioritized.
Additional Information
Interactive Brokers Python API
https://analyzingalpha.com/python-trading-tools 15/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
Alpaca started in 2015 as a pure technology company building a database solution for
unstructured data, initially visual data and ultimately time-series data. After seeing a growing
need for live-trading APIs, they created Alpaca Securities, an API-first broker-dealer.
Pros:
API-first, technology-minded company.
Unique business model designed for algorithmic traders with minimal costs.
Cons:
Not a full-service broker.
https://analyzingalpha.com/python-trading-tools 16/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
Return Analyzers
https://analyzingalpha.com/python-trading-tools 17/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
Pyfolio is a Python library for performance and risk analysis of financial portfolios developed by
Quantopian. It works well with the Zipline open source backtesting library.
https://analyzingalpha.com/python-trading-tools 18/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
Alphalens is a Python Library for performance analysis of predictive (alpha) stock factors.
Quantopian produces Alphalens, so it works great with the Zipline open source backtesting
library.
Popular Libraries
https://analyzingalpha.com/python-trading-tools 19/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
NumPy is the fundamental package for scientific computing with Python. It contains N-
dimensional array objects, sophisticated (broadcasting) functions, tools for integrating C/C++
and Fortran code, useful linear algebra, Fourier transform, and random number capabilities.
NumPy can also be used as an efficient multi-dimensional container of generic data. Arbitrary
data-types can be defined. This allows NumPy to seamlessly and speedily integrate with a wide
https://analyzingalpha.com/python-trading-tools 20/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
https://analyzingalpha.com/python-trading-tools 21/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
https://analyzingalpha.com/python-trading-tools 22/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
Tensorflow is a free and open-source software library for dataflow and differentiable
programming across a range of tasks. It is a symbolic math library and is also used for machine
learning applications such as neural networks. It is used for both research and production at
Google. Tensflor offers multiple levels of abstraction so you can choose the right one for your
needs. Build and train models by using Tensorflow or the high-level Keras API.
Keras is a high-level neural networks API, written in Python and capable of running on top of
TensorFlow, CNTK, or Theano. It was developed with a focus on enabling fast experimentation.
https://analyzingalpha.com/python-trading-tools 23/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
Analyzing Alpha Being able to go from idea to result with the least possible delay is key to doing good research.
Share this
Pytorch is an open source machine learning library based on the Torch library, used for
applications such as computer vision and natural language processing. It is primarily developed
by Facebook’s artificial intelligence research group. It is free and open-source software released
under the Modified BSD license.
https://analyzingalpha.com/python-trading-tools 24/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
PyQL library is a new set of wrappers using Cython on top of QuantLib. The QuantLib project is
aimed at providing a comprehensive software framework for quantitative finance. QuantLib is a
free/open-source library for modeling, trading, and risk management.
https://analyzingalpha.com/python-trading-tools 25/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
TA-Lib is widely used by trading software developers requiring to perform technical analysis of
financial market data.
https://analyzingalpha.com/python-trading-tools 26/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
SymPy is a Python library for symbolic mathematics. It aims to become a full-featured computer
algebra system (CAS) while keeping the code as simple as possible in order to be comprehensible
and easily extensible. SymPy is written entirely in Python.
https://analyzingalpha.com/python-trading-tools 27/32
4/5/2020 The Top 21 Python Trading Tools for 2020 | Analyzing Alpha
PyMC3* allows you to write down models using an intuitive syntax to describe a data generating
process. Fit your model using gradient-based MCMC algorithms like NUTS, using ADVI for fast
approximate inference — including minibatch-ADVI for scaling to large datasets — or using
Gaussian processes to build Bayesian nonparametric models.
https://analyzingalpha.com/python-trading-tools 28/32