CSE 510 -- Computational Finance

Hong Kong University of Science and Technology Fall 2008 Course Time: 9:00-10:20AM Tuesday-Thursday Place: 4621 Academic Building, Lifts 31-32 (note change!) Instructor: Steven Skiena

The financial industry is a tremendous consumer of advanced computing technologies and mathematical modeling techniques, and a primary employer of computer science graduates. In this course, we will present the principles of computational finance and financial data analysis, focusing on research problems of algorithmic interest.

There will be divided roughly equally into three major topics:

• Derivatives -- financial markets, arbitrage arguments, options, and other financial instruments, options pricing, numerical methods.
• Time Series Analysis -- financial data, linear and non-linear time series analysis, clustering and pattern recognition.
• Trading / Investment Strategies -- CAPM, Kelly criteria, online algorithms, order execution, technical analysis.

Prerequisite: Mathematical and computational maturity, or or consent of instructor.

Texts:

Lecture Notes

We have posted lecture videos for the full 2008 HKUST course, along with the complete lecture notes.

These lectures have been mirrored at C2Class

Lecture notes with audio are available from the previous time I taught a similar course (CSE 691 at Stony Brook in Spring 2007). A tentative lecture schedule for the current semester is available.

Handouts

• Course Syllabus
• Semester Projects
• HW 1 is on options pricing and is due Tuesday, October 28, 2008. Use the following data on options to price, interest rates, and historical stock prices.
• HW 2 is on trading strategies pricing and is due TUESDAY, DECEMBER 2, 2008. THE CORRECTED VERSION OF THE EVALUATOR IS AVAILABLE AT http://www.cse.ust.hk/~youyi/update.html

One student's problem was that he did not have his orders sorted in increasing order of time. This has hopefully been fixed. The output has been changed to make it more intuitive. See the following:

original output format:

• date (monthly date)
• # of trades (# of trades in this month)
• cash (current cash amount)
• stock value (the value of stocks that you own currently)
• short liability (current total short liability)
• monthly portfolio
• return since last period (= this month's portofolio - last month's)
• return since beginning (total portfolio gained so far)

new format:

• date (monthly date)
• # of trades (# of trades in this month)
• cash (current cash amount)
• stock value (the value of stocks that you own currently)
• short liability (current total short liability)
• monthly return
• diff in return compare to last month (= this month's return - last month's)
• return since beginning (total return gained so far)

One small change in category.csv(just add the TICKER NAME because it was previously missing)
Note that the stock data can have different begin and end dates, e.g. Google begins at 2004. The stock begin and end dates are contained in the file category.csv. Strategies should be aware of this issue,but deal with it in the simplest possible way.

• Graduate projects on trading strategies shead light on volatility trading (1), volatility trading (2), dynamic time warping, automated trading agents, buying strategies for exploiting predictions, employing options to realize a desired payoff function and leveraged trading strategies.

Papers

Online Algorithms / Competitive Analysis

Competitive analysis provides a way to measure the performance of online algorithms, which repeatedly make decisions to act based on knowledge of past/current conditions, but not the future. Online algorithms naturally model real-time trading strategies.

The best introduction to the field is the book Online Computation and Competitive Analysis by Borodin and El-Yaniv.

• Competitive solutions for online financial problems Ran El-Yaniv, ACM Computing Surveys, Volume 30, (March 1998) 28 - 69. This is a good and self-contained survey article.

Microstructures / Short-Term Trading

Many advanced trading strategies attempt to profit from short-term fluctuations of supply and demand for particular financial securities. To sell a large block of a given stock, financial institutions must employ strategies to avoid swamping the market and depressing the price.

Here we focus on real-time trading systems and strategies:

Technical Analysis

Technical analysis focuses on the shape of curves reflecting historical stock prices as a means to predict the future. Such technical analysis methods clearly have no merit if stock prices are pure random walks, however they have many outspoken adherents and may well reflect psychological aspects of trader behavior. We will look at the evidence for and against technical analysis, as well as algorithmic notions to measure and/or exploit it: