{"id":3882,"date":"2020-06-23T08:59:34","date_gmt":"2020-06-23T08:59:34","guid":{"rendered":"http:\/\/algotrading101.com\/learn\/?page_id=3882"},"modified":"2020-06-23T09:00:58","modified_gmt":"2020-06-23T09:00:58","slug":"course-syllabus","status":"publish","type":"page","link":"https:\/\/algotrading101.com\/learn\/course-syllabus\/","title":{"rendered":"AlgoTrading101 Course Syllabus"},"content":{"rendered":"\n<p>AlgoTrading101 consists of 2 main courses:<\/p>\n\n\n\n<ul><li>AT101: Algorithmic Trading Immersive Course<\/li><li>PT101: Practical Quantitative Trading with Python Masterclass<\/li><\/ul>\n\n\n\n<p>AT101 focuses on the fundamentals of trading strategy design, testing and execution.<\/p>\n\n\n\n<p>PT101 focuses on modern and more advanced strategies such as:<\/p>\n\n\n\n<ul><li>Obscure markets like Canadian bond <a rel=\"noreferrer noopener\" href=\"https:\/\/en.wikipedia.org\/wiki\/Interest_rate_future\" target=\"_blank\">STIR<\/a> futures<\/li><li>Multi-asset strategies<\/li><li><a href=\"https:\/\/algotrading101.com\/wiki\/alternative-data-finance\/\" target=\"_blank\" rel=\"noreferrer noopener\">Alternative data<\/a><\/li><li>Web scraping<\/li><li><a href=\"https:\/\/algotrading101.com\/wiki\/machine-learning\/\" target=\"_blank\" rel=\"noreferrer noopener\">Machine learning<\/a><\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>AT101: Algorithmic Trading Immersive Course<\/strong><\/h2>\n\n\n\n<p><em>Chapter list (along with learning objectives for each chapter)<\/em><\/p>\n\n\n\n<p>AT101: Algorithmic Trading Immersive Course<\/p>\n\n\n\n<p>Chapter list (along with learning objectives for each chapter)<\/p>\n\n\n\n<ol><li>Here&#8217;s What You Are In For!<ul><li>What is an Algo Trading Robot, its key traits and code structure<\/li><li>What makes a successful Algo Trader<\/li><li>How to set up and navigate your infrastructure\/coding software<\/li><\/ul><\/li><li>Programming Basics 1: Variables and Conditional<ul><li>Basics of our coding language (MQL4)<\/li><li>Syntax, Variables, Operations and Conditional Expressions<\/li><\/ul><\/li><li>Robot 1: Adeline &#8211; Our First Robot! <ul><li>Background to Forex markets, chart reading, basic indicators<\/li><li>Coding Adeline together<\/li><li>Testing Adeline using past data<\/li><li>Brief look at modelling quality<\/li><\/ul><\/li><li>Uncommon Common Sense. Design Effective And Logical Robots<ul><li>Overview of our Strategy Development Guide<ul><li>Preliminary Research<\/li><li>Backtesting<\/li><li>Optimisation<\/li><li>Live Execution<\/li><\/ul><\/li><li>Pros and Cons of an Algo Trading Robot<\/li><li>Mathematical Expectations of our robots\u2019 performance<\/li><\/ul><\/li><li>Garbage In, Garbage Out. Understanding Data<ul><li>Data Sources and Storage<\/li><li>A look at the importance of data cleanliness<\/li><li>Cleaning data (basic)<\/li><li>Bad ticks, inaccurate testing and market tricksters<\/li><\/ul><\/li><li>Programming Basics 2: Loops<ul><li>Learning how to code loops<\/li><li>Practice Exercises for Loops<\/li><\/ul><\/li><li>Robot 2: Belinda &#8211; Utilising Volatility!<ul><li>Our first measure of volatility (ATR)<\/li><li>Introducing Belinda, the improved version of Adeline<\/li><li>Coding and testing Belinda<\/li><\/ul><\/li><li>To Buy Big or Small? Position Sizing and Money Management<ul><li>Understanding trade\/bet size (how much to trade per position) using a coin flip game<\/li><li>Designing a bet sizing algorithm based on account size<\/li><li>Coding our bet sizing algorithm<\/li><\/ul><\/li><li>Robot 2A: Belinda Upgraded (No Gambler&#8217;s Ruin for Me!)<ul><li>Implementing our bet sizing algorithm in Belinda<\/li><\/ul><\/li><li>Where To Start? Idea Generation and Expectations<ul><li>Setting expectations for our robots based on our resources, personality, skill set, lifestyle and goals<\/li><li>Understand the essence of a trading idea \u2013 Proxies and Relationships<\/li><li>Sources of trading ideas<\/li><li>A look at the different types of strategies<\/li><li>Grading ideas &#8211; Introducing our framework for vetting ideas<\/li><li>How to fight against big hedge funds<\/li><\/ul><\/li><li>Programming Basics 3: Functions, Time and Self-Learning<ul><li>Learn to learn programming<\/li><li>Code errors and debugging<\/li><li>Coding Functions<\/li><li>Practice Exercises for Functions<\/li><\/ul><\/li><li>Relevant Statistics 101!<ul><li>Statistical significance and Law of Large numbers and their role in robot testing<\/li><li>Deriving suitable minimum sample size for our backtests<\/li><\/ul><\/li><li>Understanding Robot Behaviour and Robustness: Backtesting!<ul><li>Ensuring code accuracy<\/li><li>Types of market condition<\/li><li>Testing for Robustness<ul><li>Period Robustness<\/li><li>Timeframe Robustness<\/li><li>Seasonal Robustness<\/li><li>Instrument Robustness<\/li><\/ul><\/li><li>Testing our robots through intended and unintended periods<\/li><li>Stress testing our robots through black swans<\/li><li>The butterfly Effect \u2013 Backtest bias via start point selection<\/li><li>Grading the performance of our robots<\/li><\/ul><\/li><li>Programming Basics 4: Arrays And Indicators<ul><li>A look at our mentality towards Indicators<\/li><li>Math behind Indicators<\/li><li>Coding Arrays and Indicators<\/li><\/ul><\/li><li>Robot 3: Clarissa \u2013 Playing with Time<ul><li>Understanding the Datetime data type<\/li><li>Coding rules revolving date and time manipulation<\/li><li>Introducing and coding Clarissa \u2013 our robot that uses time entries<\/li><\/ul><\/li><li>What A Mess &#8211; Managing Trades, Orders and Positions<ul><li>Order limitations by your brokers<\/li><li>Coding our customised order function<\/li><li>Multiple order management<\/li><li>Modelling transaction cost, spreads and slippage<\/li><\/ul><\/li><li>Robot 4: Desiree \u2013 Trade like the Turtles<ul><li>The history of the Turtle Traders<\/li><li>Introducing and coding a simplified turtle strategy<\/li><\/ul><\/li><li>Design Theories I &#8211; Improving Robots By Manipulating Time, Entries and Exits<ul><li>Profitability in different timeframes<\/li><li>Deriving optimal stop loss levels<\/li><li>Comparing the importance of entries vs exits<\/li><li>Analysing asymmetrical long and short rules<\/li><\/ul><\/li><li>Add A Twist To Your Orders &#8211; Advanced Order Management<ul><li>Breakeven and trailing stops<\/li><li>Hiding from your broker &#8211; Creating virtual stops and take profit orders<\/li><\/ul><\/li><li>Robot 5: Desiree 2.0<\/li><li>Buff Up Your Robot Responsibly &#8211; Optimisation Without Curve Fitting<ul><li>Objective Functions, Robustness and Curve Fitting<\/li><li>10 Ways to minimise curve fitting (overfitting)<\/li><li>Degrees of Freedom<\/li><li>Parameter Robustness<\/li><li>In and out-of-sample testing<\/li><li>Optimisation Evaluation<\/li><\/ul><\/li><li>Perfect Your Bet Sizing &#8211; Advanced Position Sizing Methods<ul><li>Relationship between sizing and trading frequency<\/li><li>Gearing up and down with volatility<\/li><li>Impossible Trinity of Sizing &#8211; Relationship between Leverage, % Risked and Stop Loss<\/li><li>First Principles of sizing &#8211; Building customised sizing algorithms<\/li><li>Other types of sizing &#8211; Kelly Criterion, Martingales and Anti-Martingales<\/li><\/ul><\/li><li>Robot 6: Elizabeth<\/li><li>Programming Basics 5: Clean Up Your Codes! Simple Is Fast!<ul><li>Clean and robust coding<\/li><li>MT4 Global Variables<\/li><li>MQL4 Libraries<\/li><\/ul><\/li><li>Garbage In, Garbage Out Again. Advanced Data Cleaning (Part 1)<ul><li>Creating custom timeframes<\/li><li>Clean data, biased output<\/li><\/ul><\/li><li>Excel VBA \u2013 Using Excel Magic to Improve our Trading<ul><li>Excel trading game<\/li><li>Syntax<\/li><li>Conditional statements<\/li><li>Loops<\/li><\/ul><\/li><li>Garbage In, Garbage Out Again. Advanced Data Cleaning (Part 2)<ul><li>Data time zone manipulation<\/li><li>Defining \u201cclean enough\u201d data<\/li><li>Scanning for errors<\/li><li>Advanced data cleaning methodologies<\/li><\/ul><\/li><li>I Like Colors And Shapes &#8211; Adding Graphics<ol><li>Creating a Dashboard: Graphics and Labels<\/li><li>Creating trendlines and levels<\/li><\/ol><\/li><li>Ring Ring! Notify Yourself When Something Goes Wrong (Or Right)<ul><li>Coding smartphone notifications<\/li><li>Notify yourself during trade or price events<\/li><\/ul><\/li><li>Robot 7: Faye \u2013 Semi-Automated Trading<\/li><li>Connect with the outside world &#8211; Importing and Exporting Data out of our Trading Platform<ul><li>Read and write information to Excel<\/li><li>Build a spread logger<\/li><\/ul><\/li><li>Programming Basics 6: Trading Platform Nuances<ul><li>Perfecting the little coding details<\/li><li>Understanding trading and backtesting nuances<\/li><\/ul><\/li><li>Design Theories II &#8211; The &#8220;Secret Sauce&#8221;<ul><li>Prudence-Behavioural Framework<\/li><li>Alpha 1: Data<\/li><li>Alpha 2: Global Macro<\/li><li>Alpha 3: High-Frequency Trading<\/li><li>Alpha 4: Market Microstructure<\/li><li>Hybrid Model \u2013 Semi-Algorithmic Trading<\/li><li>5 Realities of Algorithmic Trading<\/li><li>Crowd Behaviour \u2013 Outwitting the Masses<\/li><\/ul><\/li><li>Walking Forward &#8211; Advanced Optimisation<ul><li>Walk Forward Optimisation<\/li><li>Performance patterns, consistency and seasonality<\/li><li>3D Parameter space evaluation<\/li><\/ul><\/li><li>Trading CFDs<\/li><li>Looking Outwards &#8211; Trading On External Info and Alternative Data<ul><li>Trading using volume<\/li><li>Feeding external data into MT4<\/li><li>Trade on external events<\/li><\/ul><\/li><li>Robot 8: Gwen<\/li><li>Cash Is King! &#8211; Running Robots With Real Money<ul><li>Paper versus Live trading<\/li><li>Minimum Capital Determination<\/li><li>Broker Selection<\/li><li>Virtual Private Servers<\/li><li>Downtime Prevention Protocol<\/li><li>Hedging issues<\/li><li>Strategy Monitor &#8211; Updating our robots regularly<\/li><li>Live walk-forward optimisation<\/li><li>Investor Marketplace<\/li><\/ul><\/li><li>Watch Her Well &#8211; Monitoring Your Robot(s)<ul><li>Operational Risk Management<\/li><li>Monitoring our robots<\/li><li>When to manually intervene<\/li><li>Reviewing performance<\/li><li>Understanding Trading Psychology &#8211; Emotions during drawdowns<\/li><\/ul><\/li><\/ol>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>PT101: Practical Quantitative Trading with Python Masterclass <\/strong><\/h2>\n\n\n\n<p><strong>(In progress, we are still adding content) <\/strong><\/p>\n\n\n\n<p><em>Practical Strategies for Modern Markets<\/em><\/p>\n\n\n\n<p><strong>Basic Python and Test Strategies<\/strong><\/p>\n\n\n\n<ul><li>Just enough Python to get you started (we will learn more advanced Python techniques in the later part of the course)<\/li><li>Designing a simple pair trading test strategy to whet your appetite and give you an rough sense of what to expect<\/li><\/ul>\n\n\n\n<p><strong>Cointegration (Mean reversion: When A and B moves apart, we bet they will revert)&nbsp;<span class=\"has-inline-color has-vivid-cyan-blue-color\">(WE ARE HERE NOW)<\/span><\/strong><\/p>\n\n\n\n<ul><li>(Concept) Synthetic assets (ranging assets that are made by combining different assets)<\/li><li>(Strategy) Bond futures calendar spreads and structures (creating ranging assets using bond futures)<\/li><li>(Strategy) Market making using a proxy asset (entering and exit trades at the bid and ask prices)<\/li><li>(Strategy) Statistical Arbitrage. Trading hundreds of stocks in a mean reversion manner.<\/li><\/ul>\n\n\n\n<p><strong>Sentiment Analysis and Web API (Collect data from websites via special &#8220;links&#8221;)<\/strong><\/p>\n\n\n\n<ul><li>(Concept) Use Web API to collect data (eg. Google trends to analyse search traffic)<\/li><li>(Strategy) Scour tons of stocks to see which stocks have sudden increase in search traffic volume<\/li><\/ul>\n\n\n\n<p><strong>Alternative Data (Non-price data like Credit card, Location data etc)<\/strong><\/p>\n\n\n\n<ul><li>(Strategy) Use paid alternative data from vendors to analyse stocks<\/li><li>(Strategy) Create your own special index by combining different alternative data (eg. combine retail receipts + foot traffic + search traffic to create a special index to predict retail stock prices. Live eg:&nbsp;<a href=\"https:\/\/db-engines.com\/en\/ranking_trend\/system\/MongoDB\" target=\"_blank\" rel=\"noreferrer noopener\">MongoDB tracker<\/a>,&nbsp;<a href=\"https:\/\/alternative.me\/crypto\/fear-and-greed-index\/\" target=\"_blank\" rel=\"noreferrer noopener\">Crypto Tracker<\/a>)<\/li><li>(Strategy) Creatively find data on websites and scrape them to predict market moves<\/li><\/ul>\n\n\n\n<p><strong>Correlation (If A moves, trade B)<\/strong><\/p>\n\n\n\n<ul><li>(Concept) Understand the statistical methods to test correlations<\/li><li>(Strategy) Use Google search data, job listings and other scrapped data to predict stock and spread movements<\/li><li>(Strategy) Use synthetic assets to predict other synthetic assets<\/li><\/ul>\n\n\n\n<p><strong>Sentiment and Text analysis (Machine Learning)<\/strong><\/p>\n\n\n\n<ul><li>(Concept) Evaluate the sentiment of a particular phrase, sentence, paragraph or article<\/li><li>(Strategy) Analyse tons of news articles in different language to find out the market sentiment towards an asset<\/li><\/ul>\n\n\n\n<p>The full chapter list for PT101 is not finalised yet. We will update this syllabus when it is. Note that the first part of the PT101 course is launched and we are adding content monthly.<\/p>\n\n\n\n<p>Note: The listed content of AT101 and PT101 may be subject to change \u2013 we are constantly adding new content.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Future courses: Interactive Brokers API, Multi-exchange Crypto API<\/strong>.<\/h2>\n","protected":false},"excerpt":{"rendered":"<p>AlgoTrading101 consists of 2 main courses: AT101: Algorithmic Trading Immersive Course PT101: Practical Quantitative Trading with Python Masterclass AT101 focuses on the fundamentals of trading strategy design, testing and execution. PT101 focuses on modern and more advanced strategies such as: Obscure markets like Canadian bond STIR futures Multi-asset strategies Alternative data Web scraping Machine learning [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_lmt_disableupdate":"","_lmt_disable":"","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.7 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>AlgoTrading101 Course Syllabus - Quantitative Trading Ideas and Guides - AlgoTrading101 Blog<\/title>\n<meta name=\"description\" content=\"Authentic Stories about Algorithmic trading, coding and life.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/algotrading101.com\/learn\/course-syllabus\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"AlgoTrading101 Course Syllabus - Quantitative Trading Ideas and Guides - AlgoTrading101 Blog\" \/>\n<meta property=\"og:description\" content=\"Authentic Stories about Algorithmic trading, coding and life.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/algotrading101.com\/learn\/course-syllabus\/\" \/>\n<meta property=\"og:site_name\" content=\"Quantitative Trading Ideas and Guides - AlgoTrading101 Blog\" \/>\n<meta property=\"article:modified_time\" content=\"2020-06-23T09:00:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/algotrading101.com\/learn\/wp-content\/uploads\/2020\/11\/AlgoTrading101-Lucas-Liew.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"627\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"6 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"AlgoTrading101 Course Syllabus - Quantitative Trading Ideas and Guides - AlgoTrading101 Blog","description":"Authentic Stories about Algorithmic trading, coding and life.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/algotrading101.com\/learn\/course-syllabus\/","og_locale":"en_US","og_type":"article","og_title":"AlgoTrading101 Course Syllabus - Quantitative Trading Ideas and Guides - AlgoTrading101 Blog","og_description":"Authentic Stories about Algorithmic trading, coding and life.","og_url":"https:\/\/algotrading101.com\/learn\/course-syllabus\/","og_site_name":"Quantitative Trading Ideas and Guides - AlgoTrading101 Blog","article_modified_time":"2020-06-23T09:00:58+00:00","og_image":[{"width":1200,"height":627,"url":"https:\/\/algotrading101.com\/learn\/wp-content\/uploads\/2020\/11\/AlgoTrading101-Lucas-Liew.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/algotrading101.com\/learn\/course-syllabus\/","url":"https:\/\/algotrading101.com\/learn\/course-syllabus\/","name":"AlgoTrading101 Course Syllabus - Quantitative Trading Ideas and Guides - AlgoTrading101 Blog","isPartOf":{"@id":"https:\/\/algotrading101.com\/learn\/#website"},"datePublished":"2020-06-23T08:59:34+00:00","dateModified":"2020-06-23T09:00:58+00:00","description":"Authentic Stories about Algorithmic trading, coding and life.","breadcrumb":{"@id":"https:\/\/algotrading101.com\/learn\/course-syllabus\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/algotrading101.com\/learn\/course-syllabus\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/algotrading101.com\/learn\/course-syllabus\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/algotrading101.com\/learn\/"},{"@type":"ListItem","position":2,"name":"AlgoTrading101 Course Syllabus"}]},{"@type":"WebSite","@id":"https:\/\/algotrading101.com\/learn\/#website","url":"https:\/\/algotrading101.com\/learn\/","name":"Quantitative Trading Ideas and Guides - AlgoTrading101 Blog","description":"Authentic Stories about Algorithmic trading, coding and life.","publisher":{"@id":"https:\/\/algotrading101.com\/learn\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/algotrading101.com\/learn\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/algotrading101.com\/learn\/#organization","name":"AlgoTrading101","url":"https:\/\/algotrading101.com\/learn\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/algotrading101.com\/learn\/#\/schema\/logo\/image\/","url":"https:\/\/algotrading101.com\/learn\/wp-content\/uploads\/2020\/11\/AlgoTrading101-Lucas-Liew.jpg","contentUrl":"https:\/\/algotrading101.com\/learn\/wp-content\/uploads\/2020\/11\/AlgoTrading101-Lucas-Liew.jpg","width":1200,"height":627,"caption":"AlgoTrading101"},"image":{"@id":"https:\/\/algotrading101.com\/learn\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/algotrading101.com\/learn\/wp-json\/wp\/v2\/pages\/3882"}],"collection":[{"href":"https:\/\/algotrading101.com\/learn\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/algotrading101.com\/learn\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/algotrading101.com\/learn\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/algotrading101.com\/learn\/wp-json\/wp\/v2\/comments?post=3882"}],"version-history":[{"count":11,"href":"https:\/\/algotrading101.com\/learn\/wp-json\/wp\/v2\/pages\/3882\/revisions"}],"predecessor-version":[{"id":3893,"href":"https:\/\/algotrading101.com\/learn\/wp-json\/wp\/v2\/pages\/3882\/revisions\/3893"}],"wp:attachment":[{"href":"https:\/\/algotrading101.com\/learn\/wp-json\/wp\/v2\/media?parent=3882"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}