GA Tech OMSCS Machine Learning for Trading (ML4T) Course Review

5 minute read

Published:

I. Overall Impression

This was the first course I took in my OMSCS journey (Spring 2026), and overall I found it to be a very good introductory course to ease students into the program. The concepts taught are themselves not particulary difficult, but the constant deadlines for quizzes, projects, and exams give students a good sense of the expected pace in graduate school and prepare them for the more difficult courses to come.

Some musings on the course:

  • The course involves implementation of machine learning algorithms from scratch, which is a good exercise to understand the underlying mechanics of these algorithms and also great for honing python skills. Do not expect to use any pre-built libraries like scikit-learn in this course.
  • The finance concepts taught in the course are surprisingly interesting and useful. However, I would not commence day trading based on the strategies and indicators learned in this course alone given the fickle nature of the stock market. The fact that my final project reported a -60% return on investment when backtested on historical data is a testament to this… :D
  • The lecture videos are ancient and seems to date back to the Udacity days of the course. However, the content is still relevant and useful, and Tucker Balch, the original instructor of the course, is truly an excellent lecturer. The lecture videos are supplemented with a set of reading materials, which are also very useful and informative.
  • The TAs are very active and engaged on the forums, albeit their helpfulness is limited to clarifying concepts and answering questions about the course materials. The grading of the projects was very slow, which was heart-wrenching at times given that some of the projects were dependent on the correctness of previous projects. This is understanable given that more than 1.5k students are enrolled in the course, but it would be nice if the grading turnaround time was improved.
  • This course presents a good opportunity to practice academic writing and using LaTeX. Other popular OMSCS courses directed by Dr. Joyner, such as Human Computer Interaction (HCI) and Knowledge-based AI (KBAI), are also very writing-intensive, so this course can be a good primer for those courses.

II. Workload & Difficulty

The estimated workload reported on OMSCentral is largely accurate, with students typically spending around 10-13 hours per week. The difficulty is low to moderate, with the main challenge being the time management required to complete all assignments on time. Students with basic background in Python should have no issues passing the course.

III. Course Content

The materials covered in ML4T, as the name suggests, can be broadly catergorized into two main areas: machine learning and financial trading.

Machine learning concepts covered:

  • Python refresher
  • Data cleaning and preprocessing with numpy and pandas, and basic plotting with matplotlib
  • Supervised learning algorithms (Parametric regression, K-nearest neighbors, decision trees, random forests, etc.)
  • Ensemble methods (bagging, boosting)
  • Reinforcement learning (Q-learning, Dyna)
  • Application to financial data (e.g. stock price prediction, portfolio optimization)

Financial trading concepts covered:

  • Sharpe ratio and other performance metrics
  • Portfolio optimization
  • Backtesting and simulation of trading strategies
  • Capital asset pricing model (CAPM), alpha and beta, and efficient frontier
  • Efficient market hypothesis
  • Technical analysis and trading indicators (moving averages, Bollinger bands, etc.)
  • Market microstructure and order book dynamics
  • Option trading

IV. Projects

There are a total of 8 projects in the course, making up the majority of the grade (~70%). Some of the projects depend on the completion of previous projects, with the final project being a culmination of all the previous ones: constructing a functional, simulated trading system.

Some projects require a written report ranging from 7 to 10 pages, while others are purely coding-based. The projects are generally well-designed, with clear instructions and grading rubrics. In terms of time needed, projects 3 (assess learners), 6 (indicator evaluation), and 8 (strategy evaluation) are by far the most difficult and time-consuming.

V. Quizzes & Exams

There are weekly quizzes (2% grade) that are open-book, and they are generally straightforward and easy to complete.

The midterm and final exams are definitely my least favorite part of the course. As of Spring 2026, they are both closed-book, honorlocked proctored exams, and account for 25% of the final grade. The format of the exams were 22 multiple choice question with potentially multiple correct answers, effectively making the exams a long series of true/false questions. Sounds simple enough right? False. The questions are often long-winded and convoluted, and to be honest, they are not a good measure of a student’s understanding of the material. To prepare for the exams, it is recommended by the faculty to utilize generative AI tools to generate practice questions and drill over and over on them. Unfortunately, compared to previous terms, it seems that practice exams are no longer provided.

VI. Final Verdict

CategoryRating
Difficulty2.5/5
Workload3/5
Usefulness4/5
Would recommendYes