CS7646 Fall 2019
This page provides information about the Georgia Tech CS7646 class on Machine Learning for Trading relevant only to the Fall 2019 semester. Note that this page is subject to change at any time. The Fall 2019 semester of the CS7646 class will begin on August 19, 2019. Below, find the course’s calendar, grading criteria, and other information. For more complete information about the course’s requirements and learning objectives, please see the general CS7646 page.
Note in the event of conflicts between the Fall 2019 page and the general CS7646 page, this page supercedes the general course page.
OMS and On-Campus Integration
Fall 2019 semester will host both online (OMS) and on-campus with the same resources for the CS7646 ML4T class. This includes the course Wiki pages, Piazza classroom chat and Canvas course page. The only exception to this is when specifically expressed or noted otherwise.
To help with navigation, here are some of the links you'll be using frequently in this course:
- Tools: Canvas | Udacity Sign-On | Course Materials
- Class Pages: CS7646 Home | Fall 2019 Syllabus
- Projects: Project 1 | Project 2 | Project 3 | Project 4 | Project 5 | Project 6 | Project 7 | Project 8
Course Calendar At-A-Glance
Below is the calendar for the Fall 2019 CS7646 class. Note that assignment due dates are all Sundays at 11:59PM Anywhere on Earth time. All assignments are finalized 3 weeks prior to the listed due date.
The on campus class meets each Tuesday and Thursday from 1:30 - 2:45 PM in Scheller Rm 100 (the big auditorium in the front).
Readings come from the three course textbooks listed on the course home page. Online lessons, readings, and videos are required for online students unless marked with an asterisk; asterisk-marked items are optional. All lessons, readings, and videos are optional for on-campus students, but attendance in person at lectures is required.
|Week #||Week Of||Online Lessons||Online Readings/Videos||Assignment||Assignment Due Date|
|Python for Finance Ch. 4*
Python for Finance Ch. 6*
|Python for Finance Ch. 5*||Project 1||09/01/2019|
|Python for Finance Ch. 11*
Machine Learning Ch. 1*
Machine Learning Ch. 8*
Decision Trees 1
Decision Trees 2
Machine Learning Ch. 3*
|What Hedge Funds Really Do Ch. 2
What Hedge Funds Really Do Ch. 4
|Is the stock market rigged?
What Hedge Funds Really Do Ch. 5
What Hedge Funds Really Do Ch. 7
What Hedge Funds Really Do Ch. 8
What Hedge Funds Really Do Ch. 12
|Exam 1||Online exam window: 10/07 - 10/13/2019
On campus exam: 10/10/2019
|9||10/14/2019||The Big Short (Also on other streaming services)
Time Series Data (First 30 Minutes)
|Decision Tree-Based Trading - 1
Decision Tree-Based Trading - 2
What Hedge Funds Really Do Ch. 9
Machine Learning Ch. 13*
|13||11/11/2019||03-07||Strategies for Q-Learner Trader||Project 7||11/17/2019|
Interview with Tammer Kamel (Canvas)
|Exam 2 (campus)
|Campus exam 2: 11/26/2019
Project 8: 12/01/2019
|16||12/02/2019||Exam 2 (online)||Online exam window: 12/02 - 12/08/2019|
Your grade in this class is derived from three categories: eight Projects, two Exams, and Participation.
Final grades will be calculated as an average of all individual grade components, weighted according to the percentages below. Students receiving a final average of 90.0 or above will receive an A; of 80.0 to 89.9 will receive a B; of 70.0 to 79.9 will receive a C; of 60.0 to 69.9 will receive a D; and of below 60 will receive an F. We do not plan to have a curve.
There are eight projects in this class. All together, the projects account for 73% of your final grade. The projects are not all equal in scope or difficulty, and thus they do not all count evenly. The projects are:
- Project 1, 3%: Martingale
- Project 2, 3%: Optimize Something
- Project 3, 15%: Assess Learners
- Project 4, 5%: Defeat Learners
- Project 5, 10%: Marketsim
- Project 6, 12%: Manual Strategy
- Project 7, 10%: Qlearning Robot
- Project 8, 15%: Strategy Learner
Participation is 2% of your average. All participation activities will be shared as part of the Participation section of assignments in Canvas. Complete all of these by the due dates shown in Canvas to fulfill your participation credit.
There are two exams, each worth 12.5% of your average. Exam 2 is not cumulative; it only covers material after Exam 1. Exams are closed-book, closed-note: you may not consult any resources. You are encouraged to peruse materials from previous semesters to prepare for the exams, including the Exam 1 Study Guide, Exam 2 Study Guide, and Practice Exam.
Online students: Exams will be delivered via Canvas and Proctortrack. Any material in the lecture videos or in the non-optional items listed under Readings/Videos until the week of the exam is eligible for inclusion on the exams. On campus students: Exams will be taken in class. Dates will be announced soon. Any material in the lecture videos or covered during in-person lectures until the test date is eligible for inclusion on the exams.
The following policies are binding for this course.
Official Course Communication
You are responsible for knowing the following information:
- Anything posted to this syllabus (including the pages linked from here, such as the general course landing page).
- Anything emailed directly to you by the teaching team (including announcements via Piazza), 24 hours after receiving such an email.
- On campus students: Any announcements made by the instructor during a scheduled lecture period.
Because Piazza announcements are emailed to you as well, you need only to check your Georgia Tech email once every 24 hours to remain up-to-date on new information during the semester. Georgia Tech generally recommends students to check their Georgia Tech email once every 24 hours. So, if an announcement or message is time sensitive, you will not be responsible for the contents of the announcement until 24 hours after it has been sent.
We generally prefer to handle class-wide communication via Piazza, but for individual grade-specific communication, your grading TA will generally email you directly, and you should generally email him or her directly as well with questions. We recommend that you do *not* post privately to Piazza in order to communicate with TAs and instructors; email your grading TA first, and escalate to the head TA or instructor if need be. Slack is a wonderful tool, but is not officially monitored: stick to email and Piazza for official questions and answers.
Note that this means you won’t be responsible for knowing information communicated in several other methods we’ll be using. You aren’t responsible for knowing anything posted to Piazza that isn’t linked from an official announcement. You aren’t responsible for anything said in Slack or other third-party sites we may sometimes use to communicate with students. You don’t need to worry about missing critical information so long as you keep up with your email and understand the documents on this web site. This also applies in reverse: we do not monitor our Canvas message boxes. If you need to get in touch with the course staff, please email the instructor/TAs in question.
The provided Georgia Tech servers (Buffet servers) are to be used for testing all submitted code (except Project 1). If your code fails to run on the provided servers, you will get a 0 on the assignment and its report. For any grade-specific issues, the first question we ask is if you tested on a Buffet server prior to the assignment due date. If you have not, we cannot proceed further on your behalf. Be sure as well to keep the tested code in Buffet to ensure code integrity. Any issues that could have been discovered with proper Buffet submissions cannot be used as valid arguments in any grade reviews.
Most of our teaching assistants will hold weekly office hours using Hangouts, Webex, or another teleconferencing tool. Office hours are not recorded, and are intended for more individually-focused help and conversations. If anything comes up in office hours that is relevant to the entire class, it will be shared via Piazza.
On campus TAs will hold office hours in easily accessible public locations on the Atlanta campus.
A schedule of office hours will be made available via Piazza early in the semester.
Running such a large class involves a complex grading workflow. As such, work that does not enter into that workflow presents a major delay. Thus, we cannot accept any late work in this class. All assignments must be submitted by the posted deadlines. We have made the descriptions of all assignments available on the first day of class so that if there are expected interruptions (business trips, family vacations, etc.), you can complete the work ahead of time.
If you have technical difficulties submitting the assignment to Canvas, email your assignment to your grader immediately. They will generally instruct you to resubmit to Canvas once able, but this will provide a timestamp on your submission.
If you have an emergency and absolutely cannot submit an assignment by the posted deadlines, we ask you to go through the Dean of Students’ office regarding class absences. The Dean of Students is equipped to address emergencies that we lack the resources to address. Additionally, the Dean of Students office can coordinate with you and alert all your classes together instead of requiring you to contact each professor individually. You may find information on contacting the Dean of Students with regard to personal emergencies here: https://gatech-advocate.symplicity.com/care_report/
The Dean of Students is there to be an advocate and partner for you when you’re in a crisis; we wholeheartedly recommend taking advantage of this resource if you are in need. Justifiable excuses here would involve any major unforeseen disruption to your classwork, such as illnesses, injuries, deaths, and births, all for either you or your family. Note that for foreseen but unavoidable conflicts, like weddings, business trips, and conferences, you should complete your work in advance; this is why we have made sure to provide all assignment and project resources in advance. If you have such a conflict specifically with the tests, let us know and we’ll try to work with you.
All students in the class are expected to know and abide by the Georgia Tech Academic Honor Code. Specifically for us, the following academic honesty policies are binding for this class:
- In written essays, all sources are expected to be cited according to APA style, both in-line with quotation marks and at the end of the document. You should consult the Purdue OWL Research and Citation Resources for proper citation practices, especially the following pages: Quoting, Paraphrasing, and Summarizing, Paraphrasing, Avoiding Plagiarism Overview, Is It Plagiarism?, and Safe Practices. You should also consult our dedicated pages on how to use citations and how to avoid plagiarism.
- Any non-original figures must similarly be cited. If you borrow an existing figure and modify it, you must still cite the original figure. It must be obvious what portion of your submission is your own creation.
- In written essays, you may not copy any content from any current or previous student in this class, regardless of whether you cite it or not.
- You may not copy any code from any other source, including but not limited to repositories on the internet and former students in the class. Every line of code you submit should be your own work. Any code copying will result in an automatic 0 on the project and a report to the Office of Student Integrity.
- During exams, you are prohibited from consulting outside material, interacting directly with any other person (except for the teaching staff) on the topic of the exam, or any other behaviors that could be used to gain an unfair advantage.
Note, however, when seeking help from the TAs via office hours or the course forum, you may assume that a TA will not share too much information. If a TA gives you a line of code, for example, you may use it.
These policies, including the rules on all pages linked in this section, are binding for the class. Any violations of this policy will be subject to the institute's Academic Integrity procedures, which may include a 0 grade on assignments found to contain violations; additional grade penalties; and academic probation or dismissal.
Note that if you are accused of academic misconduct, you are not permitted to withdraw from the class until the accusation is resolved; if you are found to have participated in misconduct, you will not be allowed to withdraw for the duration of the semester. If you do so anyway, you will be forcibly re-enrolled without any opportunity to make up work you may have missed while illegally withdrawn.
Every semester, we make changes and tweaks to the course formula. As a result, every semester we try some new things, and some of these things may not work. We ask your patience and support as we figure things out, and in return, we promise that we, too, will be fair and understanding, especially with anything that might impact your grade or performance in the class. Second, we want to consistently get feedback on how we can improve and expand the course for future iterations. You can take advantage of the feedback box on Piazza (especially if you want to gather input from others in the class), give us feedback on the surveys, or contact us directly via private Piazza messages.