Python Bootcamp Series
Coursalytics is an independent platform to find, compare, and book executive courses. Coursalytics is not endorsed by, sponsored by, or otherwise affiliated with Fitch Learning.Full disclaimer.
Presented by Dr J Yves Hilpisch, this series is designed to provide participants with the Python tools and techniques to get started with algorithmic trading. It starts with the very basics, covers backtesting, machine & deep learning and illustrates the deployment of algorithmic trading in the cloud.
Python Infrastructure and Basics
This bootcamp focuses on setting up Python environments for interactive financial analytics and application deployment. Dr Hilpisch will cover a number of important tools and Python packages; illustrating the use of such packages as NumPy and pandas. Dr Hilpisch will introduce participants to a trading platform and its API as well as the Python wrapper packages; examples cover basic and first steps, working with historical financial data; streaming data and visualization.
This bootcamp will introduce participants to techniques to analyze historical financial data, in particular vectorized backtesting for algorithmic trading strategies based on typical financial indicators. Different classification algorithms to derive algorithmic trading strategies will be discussed.
In order to be able to deploy and run algorithmic trading strategies in real-time, it is necessary to deal with streaming data and to transform offline algorithms to online algorithms; this bootcamp covers basic concepts in this regard. Important aspects when it comes to the robust and reliable deployment of algorithmic trading code, cloud deployment, logging and monitoring will be discussed.
Participants should bring their own notebook and should have installed a Python 3.6 or 3.7 distribution, such as Anaconda, with the major tools and packages from the scientific stack, such as IPython, Jupyter, NumPy, pandas, scikit-learn and matplotlib.
Day One - Python Infrastructure & Basics
Beginner, no prior experience required.
During this day, participants learn the basics of Python programming for data analysis and for financial analysis; tools covered include IPython and Jupyter Notebook; topics covered include data types and structures, control structures, basic algorithms, basic finance with Python, NumPy & pandas, basic visualization.
Participants should be able to use important tools for interactive Python development, work with in-memory data and data files, use basic methods of handling data types and structures, to visualize data and to implement simple (financial) algorithms.
Day Two - Trading Strategies
Intermediate, knowledge from day one.
During this day, participants learn to work with financial time series data making use of the pandas package for Python; they also learn to implement statistical methods such as OLS regression and to make use of more advanced machine learning and deep learning algorithms based on the scikit-learn package for Python; this day makes use of the Oanda trading platform, its algorithmic trading REST API as well as the tpqoa Python package for the use of the API with Python; topics covered include financial time series, visualization, simple trading strategies, algorithmic trading strategies based on machine & deep learning, backtesting of such trading strategies.
Participants should be able to handle financial time series data efficiently, to visualize such data and associated statistics, to apply methods from statistics and machine learning to financial time series, to backtest algorithmic trading strategies (including train-test splits).
Day Three - Automation
Intermediate, knowledge from day one and two.
During the third day, participants learn how to work and deal with real-time, streaming data, how to formulate online algorithms for algorithmic trading and how to automate the deployment of such strategies; topics covered include real-time (tick) data, socket communication, online algorithms, automated execution of algorithmic trading strategies; during this day the Oanda trading platform in combination with the REST API for algorithmic trading is again used to implement the single elements relevant for deployment in a realistic real-time environment.
Participants should be able to deal with streaming data, formulate online trading algorithms, place buy and sell orders programmatically, write code to deploy an algorithmic trading strategy in automated fashion, execute algorithmic trading strategies on the Oanda trading platform.