Skip to content

Assignments as part of CS 7646 at GeorgiaTech under Dr. Tucker Balch in Fall 2017

Notifications You must be signed in to change notification settings

DavidY0903/CS7646-Machine-Learning-for-Trading

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CS7646-Machine-Learning-for-Trading

Assignments as part of CS 7646 at GeorgiaTech under Dr. Tucker Balch in Fall 2017

Course links

Course Page : http://quantsoftware.gatech.edu/CS7646_Fall_2017

Udacity course by Tucker Balch : https://www.udacity.com/course/machine-learning-for-trading--ud501

Course structure

This course is composed of three mini-courses:

Mini-course 1: Manipulating Financial Data in Python

Mini-course 2: Computational Investing

Mini-course 3: Machine Learning Algorithms for Trading

Projects

Completed 8 projects in total:

Project 1:

Title : Assess portfolio

Goal : To evaluate and compare different portfolios by computing certain metrics based on available historical data, and plot a comparison graph

Link : http://quantsoftware.gatech.edu/Assess_portfolio

Project 2:

Title : Optimize portfolio

Goal : To find how much of a portfolio's funds should be allocated to each stock so as to optimize it's performance by considering 'minimum volatility' as the optimizer metric

Link : http://quantsoftware.gatech.edu/Optimize_something

Project 3:

Title : Market simulator

Goal : To create a market simulator that accepts trading orders and keeps track of a portfolio's value over time and then assesses the performance of that portfolio

Link : http://quantsoftware.gatech.edu/Marketsim

Project 4:

Title : Defeat learners

Goal : To generate data that will work better for one learner than another. The two learners are:

(1) A decision tree learner with leaf_size = 1 (DTLearner). Note that for testing purposes we will use our implementation of DTLearner

(2) The LinRegLearner provided as part of the repo.

Data generation should use a random number generator as part of its data generation process. Generators will be passed a random number seed. Whenever the seed is the same return exactly the same data set. Different seeds should result in different data sets.

Link : http://quantsoftware.gatech.edu/Defeat_learners

Project 5:

Title : Assess learners

Goal : To implement and evaluate three learning algorithms as Python classes: A "classic" Decision Tree learner, a Random Tree learner, and a Bootstrap Aggregating learner (Assume data to be static, and consider this to be a regression problem)

Link : http://quantsoftware.gatech.edu/Assess_learners

Project 6:

Title : Qlearning robot

Goal : To implement the Q-Learning and Dyna-Q solutions to the reinforcement learning problem, and apply them to a navigation problem in this project

Link : http://quantsoftware.gatech.edu/Qlearning_robot

Project 7:

Title : Manual strategy

Goal : To develop a trading strategy using your intuition and Technical Analysis, and test it against a stock using the market simulator built in project 3

Link : http://quantsoftware.gatech.edu/Manual_strategy

Project 8:

Title : Strategy learner

Goal : To design a learning trading agent and perform following tasks: - Devise numerical/technical indicators to evaluate the state of a stock on each day - Build a strategy learner based on one of the learners described above that uses the indicators - Test/debug the strategy learner on specific symbol/time period problems - Write a report describing your learning strategy

Link : http://quantsoftware.gatech.edu/Strategy_learner

About

Assignments as part of CS 7646 at GeorgiaTech under Dr. Tucker Balch in Fall 2017

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%