Fundamentals of Algorithmic Trading
This course will take you from novice algo trader to skilled strategy researcher and developer. After successfully completing the course, you will have the ability to automate, test and optimize a trading strategy. More importantly, you will have the tools to make objective decisions about what to do with that strategy. You will be well placed to tackle the exciting realms of quant finance, machine learning and artificial intelligence based on a solid foundation of robust strategy development.
Module 1 Introduction
Background reading and an overview of what you're in store for.
Unit 1 Welcome to Fundamentals of Algorithmic Trading Module 1: Introduction
Unit 2 Welcome Aboard!
Unit 3 Why Algorithmic Trading?
Unit 4 What this Course Is Not
Unit 5 What Can You Expect from This Course?
Module 2 Introduction to Algorithmic Trading Tools
This module gets you up and running with the Lite-C scripting language and the Zorro trading automation platform, both the syntax of the language and practicalities such as connecting to a broker, downloading historical data and simulating certain trading conditions. Lite-C is simple yet extremely powerful and flexible. Even complete beginners can learn to code in Lite-C relatively quickly. Zorro is a backtesting and trade execution platform that was specifically designed with accuracy, simplicity and robust design in mind. A student of ours who comes from an MQL background says that developing with Zorro is like a breath of fresh air in comparison. If there is a simpler way to get started with coding, I have not seen it.
Unit 1 Welcome to Fundamentals of Algorithmic Trading Module 2: Introduction to Algorithmic Trading Tools
Unit 2 Introduction To My Programming Tools Of Choice
Unit 3 A Simple Trading Strategy Put To The Test
Unit 4 Introduction to Lite-C
Unit 5 Digression - Digital Filters
Unit 6 Variables and Constants
Unit 7 Variable Types
Unit 8 Arrays
Unit 9 Pointers
Unit 10 Strings
Unit 11 Structs
Unit 12 Commenting Your Code
Unit 13 Operators
Unit 14 Expressions
Unit 15 Comparisons
Unit 16 Statements
Unit 17 Statement Blocks
Unit 18 Functions
Unit 19 Global, Local And Static Variables
Unit 20 Static Variables - A Common Application
Unit 21 Using The Manual For General Function Syntax
Unit 22 Series
Unit 23 Frequently Used Keywords and Commands
Unit 24 Script Flow Control
Unit 25 Debugging
Unit 26 Header Files
Unit 27 Lite-C For Trading Systems Development
Module 3 Developing Trading Algorithms
This module focuses on robust strategy development. It takes what was learned in the previous module and applies it to a practical workflow for strategy development. In particular, you will learn how easy it is to abuse the incredible power of the tools we use and how to harness it sensibly to build robust strategies. While the previous module shows you how to use the tools of the trade, this one shows you how to use them properly.
Unit 1 Welcome To Fundamentals of Algorithmic Trading Module 3: Developing Trading Algorithms
Unit 2 Should This System Be Automated? An Introduction To Robust Development
Unit 3 Back-Test Theory, Biases and Measuring Performance
Unit 4 Simulation Accuracy
Unit 5 Development Methodology And Biases
Unit 6 Documentation And Record Keeping
Unit 7 Robust Optimization Part 1 - Setting Up And Looking Under The Hood
Unit 8 Controlling Trade Entries and Exits
Unit 9 Trade Entry Functions
Unit 10 Trade Entry Parameters
Unit 11 Example Usage Of Trade Entry Functions and Parameters
Unit 12 Trade Entry Helper Functions
Unit 13 Robust Development Part Two: An Optimization Work-Flow
Unit 14 Development Step 1: System Description
Unit 15 Development Step 2: Validation Data Set
Unit 16 Development Step 3: Strategy Framework
Unit 17 Development Step 4: Initial Parameter Investigations
Unit 18 Development Step 5: Optimize Exits
Unit 19 Development Step 6: Optimize Entry And Exits Together
Unit 20 Development Step 7: Feedback
Unit 21 Development Step 8: Out Of Sample Testing
Unit 22 Development Step 9: Walk Forward Analysis
Module 4 Understanding Automated Trading Strategies
This module consists of 10 example strategies with explanatory notes to illustrate the practicalities of using Lite-C for research and development. The strategies are examples only and we don’t recommend trading them. However, they provide practical insight into how a strategy is put together algorithmically. They might even provide you with inspiration or a starting point for your own strategies. The example strategies include indicator-based and price-action systems, mean-reversion and trend following systems, breakout strategies, a system that takes signals from multiple time frames, one that uses digital signal processing algorithms, and one based on a machine learning algorithm.
Unit 1 Welcome to Fundamentals of Algorithmic Trading Module 4: Understanding Automated Trading Strategies
Unit 2 Introduction
Unit 3 Strategy 1: MAX
Unit 4 Strategy 2: A Classic Breakout
Unit 5 Strategy 3: Classic Mean Reversion
Unit 6 Strategy 4: Price Action 1
Unit 7 Strategy 5: Price Action 2
Unit 8 Strategy 6: The London Breakout
Unit 9 Strategy 7: The Alligator
Unit 10 Strategy 8: Multiple Time Frames
Unit 11 Strategy 9: Digital Filters
Unit 12 Strategy 10: Artificial Intelligence
Module 5 Conclusions
Wrapping up!
Unit 1 Welcome to Fundamentals of Algorithmic Trading Module 5: Conlusions
Unit 2 Concluding Remarks
Unit 3 Final Word