Computational Investing, Part I

Tucker Balch, Georgia Institute of Technology

Find out how modern electronic markets work, why stock prices change in the ways they do, and how computation can help our understanding of them.  Build algorithms and visualizations to inform investing practice.

Why do the prices of some companies’ stocks seem to move up and down together while others move separately? What does portfolio “diversification” really mean and how important is it? What should the price of a stock be? How can we discover and exploit the relationships between equity prices automatically? We’ll examine these questions, and others, from a computational point of view. You will learn many of the principles and algorithms hedge funds and investment professionals use to maximize return and reduce risk in equity portfolios.

TopicsWe start with a tour of the mathematics and statistics that underlie equity price changes, and the relationships between different groups of equities. We’ll review the most important economic theories of investing and how to create programs that take advantage of them. We’ll look at the data needed to do this, and how to manipulate it effectively. Take a look at the course syllabus here.

Important note: This is a project oriented course involving Python programming.

Be sure this course is right for you!
This course is intended for folks who have a strong programming background, but who are new to finance and investing.  Check out the two links below to see if the course is a good match.
  • Take a look at the course syllabus here.
  • Take a look at what other students thought of the course here.
Course options
You can enroll in the course in several ways:

  • Regular enrollment. In this track you are expected to watch the videos and complete the assignments.
  • Signature track: This is a brand new option offered by Coursera. More information below.
Outcomes for regular and signature tracks
At the end of the course you will have created a working market simulator that you can use to test your own investing strategies.  You will understand the basic principles of Modern Portfolio Theory and Active Portfolio Management.

On average you can expect to spend up to 8 to 12 hours per week on programming.


Please take a look at the course syllabus here.

Recommended Background

Who this course is for
The course is intended for people with software programming experience and introductory level knowledge of investment practice. The primary prerequisite is an excitement about the stock market.

Who this course is not for
If you already use advanced software tools such as Mean Variance Optimizers in your regular investing practice, you will probably find that you are "overqualified" for this course.

Find out what others think
Check out the two links below to see if the course is a good match.
  • Take a look at the course syllabus here.
  • Take a look at what other students thought of the course here.
Prerequisites for regular enrollment
If you would like to receive a certificate of completion, you will have to turn in  several programming projects using the Python programming language. You should have Python experience, and Python software installation experience (i.e., PyPI, apt-get, easy install, homebrew). You should have a genuine interest in the stock market and an understanding of basic statistical principles such as probability distributions.

Prerequisites for preview/video only track
You are invited to watch the lectures in "preview mode." In this mode you do not have to complete the homework assignments and quizzes. You will not receive a certificate in this track. The course is designed so that the videos are useful  even if you do not do the projects. You will get the most out of the course if you have a genuine interest in the stock market and an understanding of basic statistical principles such as probability distributions. The instructor assumes students have introductory level programming skills and a basic knowledge of statistics. Algorithmic and statistical aspects of the course will be illustrated using Excel spreadsheets and Python programs, so familiarity with these tools is helpful.

Suggested Readings

The course textbook is: What Hedge Funds Really Do: An Introduction to Portfolio Management by Philip Romero and Tucker Balch.  We will assign readings in this text during the course.  In order to support this course, the text is being offered in a low-cost ebook version by the publisher.

Other optional readings that support the theme of the course:

Course Format

The course will be 8 weeks long with two modules covered each week.  Each module will be presented as several 8 to 15 minute segments.  The modules will be followed by a multiple choice quiz.  Assignments using Excel and the Python programming language will be provided.


Will I get a certificate after completing this class?
If you complete the project track, you will receive a Statement of Accomplishment.  If you do not complete the projects you will not receive a Statement of Accomplishment.  You can also optionally enroll in the Signature Track.

What is Signature Track?
Signature Track is a new option that will give students in select classes the opportunity to earn a Verified Certificate for completing their Coursera course. Signature Track securely links your coursework to your identity, allowing you to confidently show the world what you’ve achieved on Course.  Joining a course’s Signature Track is optional. You can still fully participate in the course if you decide not to join, and you will still receive the standard Statement of Accomplishment if you successfully complete the free course, though this Statement will not be able to attest to your real identity. Learn more.

What resources will I need for this class?
You will need a PC or Mac with an internet connection.  To complete the projects you will need to install Python and several other Python libraries on your machine. We would be providing detailed instructions on the installation process.

What is the coolest thing I'll learn if I take this class?
You will build a working stock market simulator that you can use to test investing strategies.
  • 12 September 2014, 8 weeks
  • 26 August 2013, 8 weeks
  • 23 February 2013, 9 weeks
  • 22 October 2012, 9 weeks
Course properties:
  • Free:
  • Paid:
  • Certificate:
  • MOOC:
  • Video:
  • Audio:
  • Email-course:
  • Language: English Gb


No reviews yet. Want to be the first?

Register to leave a review

Included in selections:
Introfinance Mathematics of Finance
Basic understanding of finance and mathematics behind it.
More on this topic:
43319_36fd_6 Options Trading Basics (3-Course Bundle)
A bundle combines 1)Intro to Call and Put Options 2) Time decay, Implied Volatility...
42040_7d1f_14 Buying Call and Put Options - Options beginner strategies
The first Options trades you make must be a Long Call (Bullish) and a Long Put...
91750_d1a0_7 Best Investment Options: Investments That Return Over 10%
How to beat the stock market without participating in it With stocks, you'll...
22161_6849_6 Value Investing Code
Always wanted to learn how to invest like the world's greatest investor - Warren...
110162_e162_23 Fundamentals of Investing: Six Step DIY Investor Plan - Udemy
Learn How to Invest, Build a Portfolio, Increase Returns and Gain Confidence...
More from 'Computer Science':
D4c7cc7d-aa4a-4e74-849c-d17417e0a649-fa9c75a8bc1f.small Introduction to Management Information Systems (MIS): A Survival Guide
Gain the skills and knowledge needed to succeed in an MIS-dominated corporate...
20e2ce7f-0e98-43eb-a956-ac820d822afd-891b8dccf7dd.small Introduction to Computational Thinking and Data Science
6.00.2x is an introduction to using computation to understand real-world phenomena...
2aa9e070-fc03-49b4-9240-b5df5d79cb15-0838bc13b7cd.small Information Security - Authentication and Access Control
Learn more fundamentals of information security, including Introduction to Cryptography...
19bbc9bb-5e0d-4205-ad7c-752a7bd87eac-b9d1304bbc7d.small The Software Architect Code: Building the Digital World
An introductory course aimed at helping you to discover and develop your software...
A0af5b37-e5fb-442f-9b95-910e57674085-a80d8eef9cf6.small Introduction to Java Programming: Writing Good Code
Learn to program in an easy and interactive way and enter the fascinating world...
More from 'Coursera':
Success-from-the-start-2 First Year Teaching (Secondary Grades) - Success from the Start
Success with your students starts on Day 1. Learn from NTC's 25 years developing...
New-york-city-78181 Understanding 9/11: Why Did al Qai’da Attack America?
This course will explore the forces that led to the 9/11 attacks and the policies...
Small-icon.hover Aboriginal Worldviews and Education
This course will explore indigenous ways of knowing and how this knowledge can...
Ac-logo Analytic Combinatorics
Analytic Combinatorics teaches a calculus that enables precise quantitative...
Talk_bubble_fin2 Accountable Talk®: Conversation that Works
Designed for teachers and learners in every setting - in school and out, in...

© 2013-2019