From Quantwiki
Jump to: navigation, search

This course introduces students to the real world challenges of implementing machine learning based trading strategies including the algorithmic steps from information gathering to market orders. The focus is on how to apply probabilistic machine learning approaches to trading decisions. We consider statistical approaches like linear regression, KNN and regression trees and how to apply them to actual stock trading situations. The course is suited for graduate students and upper-division undergraduates with strong programming skills. No finance or machine learning experience is assumed.

Note that this course serves CS major students with machine learning experience, as well as students in other majors such as ISYE, MGMT, or MATH who have finance experience. Both types of students are welcome! The ML topics might be "review" for CS students, and finance parts will be review for finance students. However, even if you have experience in some of these topics, you will find that we consider them in a different way than you might have seen before, in particular with an eye towards implementation for trading.

Topics in machine learning:

  • Supervised Learning / Regression & Classification
    • What is Classification?
    • What is Regression?
    • Learning algorithms covered:
      • Linear Regression
      • Kernel Regression & KNN
      • Decision Trees
      • Decision Forests
    • Classification / Regression Projects: Use learners above to predict stock price movement
    • How to evaluate a learning method (i.e., which should you use?)
      • Training sets / Testing sets
      • Cross validation by time
      • Cross validation by symbol (stock name)
  • Reinforcement Learning (will cover this topic only if time permits)
    • Markov Decision Processes
    • Model-Free Reinforcement Learning (Q-Learning)
    • Model-Based Reinforcement Learning
    • Project: Tic-Tac-Toe Player

Topics in algorithms for trading:

  • Event studies and event profiles
  • Architecture of a quantitative trading system
  • The Python programming language and tools:
    • NumPy
    • PyTables
    • MatLibPlot
  • How to treat time
  • Back testing
  • Transaction costs
  • Survivor bias
  • How data mining fails

Topics in Finance:

  • Most Finance material from text: Active Portfolio Management by Grinold and Kahn
  • The Capital Assets Pricing Model
  • The "Fundamental Law" of Active Management
  • Forecasting
    • The Information Ratio
    • The information horizon (time value of information)
  • Risk
    • Beta
    • Factor Risk
    • Market Risk
  • Technical analysis
  • Portfolio construction
    • Asset allocatin
    • The Universal Portfolio
    • Long/short investing
    • Transaction Costs
    • Performance analysis