My review of everything

My Review of ML4T (CS7646) Machine Learning for Trading



           Grade: A 
      Difficulty: 2/10 
          Rating: 10/10 
 Time commitment: 8 hours/week 
------------------------------

Overall

I took ML4T as my 6th course. It turned out this became my favorite course in the entire omscs program. The course splits into 3 modules: (1) pandas/numpy market data processing, (2) stock investment framework, (3) ML applied to stock trading. Each of these topics is a huge subject and can easily be a course of its own. But ML4T managed to condense them all into one course.

Lecture quality

I thought the lecture quality was excellent. The professor Tucker Balch is truly knowledgeable on both quant investment principles and ML algorithms. He left his tenure at GT to join JP Morgan and led their AI Research team. This kind of job offer doesn't happen to random professors.

Assignments


Grading

The grading on project reports are extremely strict. For example, if they told you to round numbers to the 3rd decimal place, and if you rounded to the 2nd place, then they will have no mercy. There are pages and pages of detailed instructions about the report formatting. They call it JDF (Joyner Document Format). So you have to be careful. Otherwise it's easy to score 90+% on all projects.

Another distinct aspect of grading in this course is that it's extremely slow. Many students (legitimately) complain about this. You barely get one assignment graded before the withdrawal deadline and it's hard to evaluate your performance in the course until much later in the semester. Also, because the projects incrementally build on previous projects, the slow grading means students don't get feedback on early projects until several projects later.

Thoughts

I thought the projects were well designed. Building an ML trading engine (even if it's a toy example) is an overwhelmingly complex task, involving so many components such as data ingestion pipeline, model, portfolio optimizer, backtest simulator, and analytics/visualization. But they carefully crafted each mini project so that you implement piece by piece throughout the semester. Each project may feel like a relatively small scale task but you can learn a lot about the concepts while getting hands-on with pandas/numpy.

I know some students complain the project instructions are annoyingly verbose. I understand the sentiment. But I personally liked it because they made it unambiguously clear on what they want you to implement. Also they give unlimited access to the autograder to verify the code, which was nice.

One legitimate criticism of the course is they never go deep into either of finance or ML. But that's the design of the course. It's actually a good intro course for both subjects.

FAQ


Reference

Syllabus : https://omscs.gatech.edu/cs-7646-machine-learning-trading