Autoplay
Autocomplete
Previous Lesson
Complete and Continue
AT101: Algorithmic Trading Immersive Course (2nd Edition)
Chapter 1 > Here's What You Are In For!
Why Code for Trading? The New Mindset - Trading Ideas and Concepts (Part 1) (5:38)
Why Code for Trading? The New Mindset - Trading Ideas and Concepts (Part 2) (5:35)
The First Step - How To Start Your Journey?
The Real Holy Grail of Trading
Using the Course for Manual Trading
Our Main Mental Model - TEST Trading Framework
Hello and Thanks | Feedback Channel
Chapter 2 > QuantConnect Set Up - Get Started on Our Algo Trading Platform
What is QuantConnect and Why Choose it?
Let's Sign Up for QuantConnect! (1:28)
Overview of the QC Coding Area (4:26)
Robot 1: Jarrine_A - A Sneak Peek! (9:09)
Chapter 3 > TEST Framework Step 1: Thesis - The Reason for Your Trade (Part 1)
What is a Thesis and Why should it be Falsifiable
When To Use Algo Trading, When to Use Manual Trading
Simple vs Complex - Overview and Approach to Strategies in this Course
The 2 Main Behaviours - Lagged Correlation and Cointegration (4:25)
What is X worth? Valuation is a Social Construct
A Trading Strategy that Wins in All Conditions? Don't Build That
Optional Resources for those new to finance and markets
Finding Alpha! What Type of Strategies Should I go for?
Chapter 4 > Python Basics 1 - The First Step
This chapter is optional for those who know Python
Why Python over other Programming Languages
What is Coding Really About?
What is Jupyter Notebook? Why do we need it when we have QuantConnect
Get the Snake - Installing Anaconda (1:45)
2 Ways to Open Your Jupyter Notebook
Alternative Coding Platform: Google Colaboratory
AlgoTrading101 Partners with Holistic Coding and Algo-Hunter
Overview of our Research and Execution Tool - Jupyter Notebook (12:03)
What Snakes are these? Anaconda vs Python
The Basic Building Blocks - Variables and Expressions (6:55)
Comparing A and B - Comparison Operators (8:11)
Know what You Can Do - Jupyter Notebook & Python Superpower List
Store your code well
Resources for Learning Python
Chapter 5 > Python Basics 2 - Storing a Table of Values + If Statements
This chapter is optional for those who know Python.
Run all cells
Data Types - Your Variables contain different Types of Info
The Simplest Table - A LIST of Values (10:12)
The Simplest Tables with Unchangeable Values - Tuples (4:16)
Printing stuff - Formatting your texts and numbers (9:17)
Meaning behind String Symbols
If A happens, do B - Conditional Statements (17:11)
Chapter 6 > QuantConnect Basics 1 - Pew Pew Fire All The Orders!
Backtesting Simplified - What Happens + Why Backtest?
How does a Backtest Work? (2:43)
Your "System Settings" - Understanding the Initialize() Area (4:26)
Types of Orders
How to Fire a Market Order (2:32)
How to Fire a Limit Order (1:25)
How to Fire a "Market Order" using a Limit Order (1:12)
How to Cancel a Pending Order (0:59)
How to Modify a Pending Order (1:17)
How to Use SetHoldings() to Target a Certain Stock Allocation (2:37)
Sell it all! How to Liquidate Your Portfolio (1:14)
How to "Print" Important Info and Warnings
How to Check Your Order Status (2:41)
How to Get Your Order Details (1:06)
How to use the QC Help Features and Documentation (5:54)
Stuck at Programming? Self-Learning and Getting Help Guide
Other ways to get help
Save your code offline
Chapter 7 > QuantConnect Basics 2 - Getting Price Data + Fire More Interesting Orders
How to Get Current Price
Use self.spy instead of "SPY"
How to Get Historical Data (Part 1) (2:38)
How to Get Historical Data (Part 2) (2:09)
Adjusting Prices for Stock Splits and Dividends (3:02)
How to Get Portfolio Information (2:59)
List all Positions (1:59)
Coding Differences for Adding Different Asset Classes
How to Fire an Order based on a Rule - If X Happens then Buy Y (2:46)
Exploring the Different Types of Orders (1:30)
Fire a Stop Loss order (1:50)
Fire a Take Profit order (1:14)
Time-in-Force (1:56)
Debugging Your Code using the QC Debugger (4:18)
Reading our Backtest Results (3:00)
Resources for Learning QuantConnect Coding
Need a QC paid account for Live Trading
Chapter 8 > Robot Jarrine - Understanding the Thesis and Thought Process
General Structure of a Strategy
Jarrine_A Trading Rules
Robot 1: Let's Build Our First Strategy, Jarrine_A! (Part 1) (12:15)
Robot 1: Let's Build Our First Strategy, Jarrine_A! (Part 2) (13:41)
Robot 1: Let's Build Our First Strategy, Jarrine_A! (Part 3) (9:45)
Robot 2: Jarrine_B - Risk Measures + Faster Backtesting (Part 1) (10:23)
Robot 2: Jarrine_B - Risk Measures + Faster Backtesting (Part 2) (5:29)
Glimpse of future strategies that we will cover
Does this course suck? Or is it adding value to you?
Chapter 9 > TEST Framework Step 1: Thesis - The Reason for Your Trade (Part 2)
How to Choose What Markets/Strategies to Trade
How many Domain Expertise do I need + My Domain Expertise
Build Intuition - Visualisation and Manual Trading
How to Verify Your Thesis
How to use TradingView Charts
Understanding Lagged Correlation and Looking for it in Charts
Understanding Cointegration and Looking for it in Charts
Is it Priced in?
It is not what it is, it is what the market expects
Freeroll Trades - Almost Free Money
Economic Data Releases - Potential Source of Freeroll Trades
Outwitting the Masses - Second-Order Thinking
David vs Goliath – Can we outwit the Big Funds?
Falsifying a Thesis using Statistics - A Dangerous Area
How to Reverse Engineer a Thesis
Us vs Hedge Funds: Why We Dislike Trading on Lower Timeframes
Semi-algo Trading - A Hope for Retail Traders?
Resources and Books
Chapter 10 > TEST Framework Step 2 : EV - The Expected Value Of Your Trade
What is Expected Value (EV) and Why do We Care
EV Formula for $ and % returns
What makes a Good Trader? How to determine EV inputs?
Decisions Points (DP). Trade to the Nearest DP
When is Your DP Exactly? It is before the Key Event
Short Term DP within a Long Term DP but Opposite Directions
EV per time
Think in Probabilities not Binary
Estimation Errors and Lower Bound EV
Freerolls are +EV in spite of Estimation Errors
Conviction and Accuracy
Poorer Entry Price, Higher EV
Trading when P(W) is near 0
Bubbles - EV Management When there is Potential High Upside
Even if +EV, Volatility Can Wreck You
3 outcomes
EV for Comparing Trades
How to Determine EV Inputs for Algorithmic Strategies
Long Term EV Calculation (6:40)
Chapter 11 > Get Data For Analysis - Getting Some Basic Data (Outside of QC)
Why Do We Need Data Outside of QC
Copy Others' Code - Python Libraries and Packages
Installing Library for Yahoo Finance API (0:35)
Retrieving Data from Yahoo Finance API - Just a One-Liner (6:14)
Different Ways to Install Libraries
Chapter 12 > Python Basics 3 - Doing Something Many Times with Code (Loops!)
Do Something Many Times Using Code - For Loops (10:26)
Loops Practice 1 - Basic For Loops
Do Something Many Times in a Different Way - While Loops (10:04)
Loops Practice 2 - Basic While Loops
Looping Twice - Nested Loops (4:52)
Loops Practice 3 - Nested Loops
If A then B, Many Times - Loops with Conditionals (6:54)
Loops Practice 4 - Conditional + Nested Loops
Answers to Loops Practice 1 to 4 (11:19)
Loops with some Control (Continue, Break and Pass) (4:34)
Loops Practice 5 - Calculating Stock Metrics
Answers to Loops Practice 5 (12:30)
For Loops without the Range Method
When to use For vs While Loops
Get Data from CSV and TXT (10:32)
Exporting dataframe to CSV
Elegant Code vs Learning Trading
Chapter 13 > Python Basics 4 - A Library for Data Analysis, Pandas (Not the lazy animal!)
Generating Random Numbers
What is Pandas and Why Do We Need It?
One Column Tables of Data - Series (8:34)
Two Column Tables of Data - Dataframe (This one is important) (14:35)
Managing Dataframes - Editing our Tables (7:24)
Managing Dataframes 2 - Changing the Shape of our Dataframes (7:55)
Datetime Management - Adding Dates to Dataframes (7:54)
Pandas Exercise 1 - All You Need for Managing Dataframes
Changing Dataframe's Data Type
Not-a-Number? Dealing with NaN and NaT
Chapter 14 > Python Basics 5 - Functions and OOP
What are Functions - Our Little Factories
User-Defined Functions - Learn to Code Your Own Factories! (20:29)
Functions Practice 1 - Questions
Functions Practice 1 - Solutions (Part 1) (9:02)
Functions Practice 1 - Solutions (Part 2) (10:56)
What are Scripts - Simple Python file (Also: How to import your own code) (10:18)
Uses of Python Scripts vs Jupyter Notebooks
Modules vs Libraries vs Packages - Understanding the Terminologies
OOP Series - Object-Oriented Programming (OOP) Simplified. Objects store values and/or does stuff (5:06)
OOP Series - Difference between Classes and Objects (2:40)
OOP Series - Why do we need to learn OOP? Ans: We have no choice
OOP Series - Object Variables: Storing Values (Part 1) (9:13)
OOP Series - Object Variables: Storing Values (Part 2) (11:40)
OOP Series - Object Functions: Doing stuff (11:18)
Objects Practice 1 - Object Variables (Questions + Solutions)
Objects Practice 2 - Object Functions (Questions)
Objects Practice 2 - Object Functions (Solutions) Part 1 (5:34)
Objects Practice 2 - Object Functions (Solutions) Part 2 (8:55)
Naming Conventions - How to name your classes, variables etc
Chapter 15 > Practical Statistics 101 - Making Sense of Key Figures
Statistical Significance and Law of Large Numbers - More is better (6:58)
Minimum Sample Size and Application to Trading (10:59)
What is an Abnormal Move – Understanding Standard Deviations
Stock Returns Behaviour – Understanding Normal Distributions
Statistical View on Correlation and Sensitivity/Regression
Statistical vs Practical View on Cointegration (Part 1)
Statistical vs Practical View on Cointegration (Part 2)
The Real Role of Statistics in our Trading
Optional Readings on Statistics
Chapter 16 > TEST Framework Step 3 : Sizing - Bad Sizing Breaks Good Strategies (Part 1)
Why Bother with Position Sizing - Does it Really Matter? (7:10)
Translating Risk per Trade to Position Size
Is there an Optimal Sizing - Do we bet more when EV goes up?
What is the Optimal Bet Size?
Kelly Criterion Formula
New EV Formula -> EV with Sizing Formula
Same EV, different P(L) different L = Different Sizing
Freerolls! Is low L always good? Ratio Matters
Kelly Criterion 3 Drawbacks
Drawback 1 + Solution: Sensitive to Small Changes
Drawback 2 + Solution: Doesn't consider Trade Management Issues like Drawdowns and Psychology
Drawback 3 + Solution: Only Considers 2 Outcomes (Part 1)
Drawback 3 + Solution: Only Considers 2 Outcomes (Part 2)
Does this course suck? Or is it adding value to you? (Part 2)
Chapter 17 > TEST Framework Step 3 : Sizing - Inversion, Diversification and other Tips (Part 2)
What if Kelly is Negative? Do we Short? Ans: Yes
Inversing your trade might not always work
Don't Lose More than 30%
Kelly asks me to lose 30%?! That's crazy! Yes it is. Do NOT follow it
Slow and Steady leads to Safer Leverage leads to More Profits
Don't take Trades that can lead to Complete Ruin
Larger Capital, Lower Size. Vice versa
High Risk High Return is Leverage, Not Skill
When you are a Beginner, Your aim is to Learn not Earn. Bonus: Fund Raising
Longs' Profits Compound, Shorts' Do Not
Understanding Diversification. Diversify then Leverage
How to Allocate Capital into Different Strategies (Upcoming)
Upcoming Chapters
13 Upcoming Chapters
Installing Library for Yahoo Finance API
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock