Instructor

Brian G. Peterson

Brian Peterson is author or co-author of over ten packages for using R in Finance. Brian is a partner and head of quantitative trading for DV Trading in Chicago, and has previously held similar roles at other Chicago proprietary trading firms and a quantitative global macro hedge fund. He has published papers on risk and portfolio construction in multiple peer-reviewed journals.

Prerequisites

AMATH 551 or prior approval from the instructors for students in the industry who already have working knowledge of the topics and tools to be covered.

A working knowledge of R and trading related packages such as xts, quantstrat, blotter, PerformanceAnalytics will be required.

Course work will also reference packages such as caret, forecast, ROCR, and e1071, among others, but prior knowledge of these packages should not be necessary. Analytical techniques will be briefly covered in lectures, and covered in full in the readings.

Specific analytical techniques and packages will vary widely across student projects. Students should understand that they will likely need to self-study package examples or online references for specific analytical techniques to complete their projects.


Course Description

This course will provide a detailed research process and tools for replicating, assessing, conceptualizing, and developing systematic trading strategies. Students will apply their knowledge in hands-on projects to replicate and evaluate existing research and to create and evaluate a new strategy model.

Development of systematic trading strategies should follow a highly scientific and repeatable process. This course will start by reviewing categories of systematic strategies, drawing out patterns followed throughout the industry.

We will demonstrate a repeatable process for evaluating ideas, constructing hypotheses, building each of the strategy components, and evaluating and improving the strategy at each step. Students will use the R Language for Statistical Computing and Graphics to replicate academic research and evaluate the claims made in papers. Students will also construct a non-trivial strategy from scratch, evaluate the power of each of its components, and examine the likelihood of overfitting. The strategy will be documented and presented in lieu of a final exam.


Learning objectives

Upon successful completion of this course students will be able to:

  1. Articulate the major classes of trading strategies and explain what market behavior different classes of strategies seek to exploit.
  2. Evaluate and Replicate research results presented in academic papers on trading system development or analytical techniques applicable to trading strategies.
  3. Create, evaluate, backtest, and optimize their own non-trivial quantitative trading strategy in R using appropriate R packages such as quantstrat and blotter.

Course Approach

We will be teaching the class using a “flipped” model. Lectures will be provided on the course website in advance, and will be structured as short (10-30 minute) videos on a single topic. Multiple short lectures will be reviewed by students before each class period.

During class sessions, our primary focus will be on the student projects.

We will start by answering questions or providing clarification submitted to the instructor in advance which have not been answered already on the course site. Time will be given to answering questions about the lectures, whether submitted in advance or asked in class.

We will then move to an interactive session focused on further clarification and the individual project work. Students will be encouraged to discuss what they are working on in their project, and collaborate with peers. Because each student’s strategy or paper will be different, an open mode of communication between students about their projects is encouraged. Questions about student projects will be addressed in a manner designed to benefit all students in the class in their projects by targeting common patterns for problems and solutions raised by the question.


Projects

The major portion of the grade for the class will come from two projects designed to mimic the activities of working strategy quants.

Students will have two individual projects to complete over the quarter.

The final deliverable for both projects will include a Rmarkdown or knitr document which includes both written commentary and all the code necessary to produce the analysis. Intermediate deliverables will help guide the student, and make sure that they are progressing towards a completed analysis, in much the same way that an analyst would confer with management and colleagues during the course of an analytical project.

Both projects will allow students to choose from a suggested topic list, or propose another appropriate paper or strategy model as the basis for their project. Two students will not be allowed to work on the same paper, though many papers or strategies will be related (they may share citations or techniques, for example)

Midterm Project: Paper Replication

The first project will replicate an academic paper. Analysis of new trading system hypotheses often starts when an analyst or their management reads something interesting, providing the seed of a new idea. The analyst needs to first replicate the paper, since most papers do not publish data and code.
After replicating the paper, the results need to be analyzed to determine whether the model or results are credible, and how the analysis of the paper can be improved. No two students will share the same paper. This will allow students to openly assist each other on project approach, code problems, etc. in a manner that is more realistic to a real environment, where colleagues would be contacted for ideas and assistance.

Final Project: Strategy Development

The second project will apply the process learned in class to create a new strategy from scratch. It will start from identifying constraints and objectives, proceed through hypothesis generation and test plans, and move to creating and evaluating each component of the strategy. Finally, the strategy will be tested for data snooping, look ahead biases, and overfitting.


Schedule

Planned Schedule of lectures, readings, and deadlines:

Date Lecture Topic Readings Project Work
6/20 1 Introduction/Quantstrat Review Tomasini, CFRM 551 slides on quantstrat
6/22 2 Process overview: replicating papers / creating strategies / formulating hypotheses essays on these topics
6/27 3 Classes of strategies I Narang, Ilmanen Paper Summary due
6/29 4 Classes of strategies II Narang, Ilmanen Data Summary due
7/4 No Class, US Holiday
7/6 5 Constraints, Benchmarks, and Objectives / Indicators and Filters Hypothesis Summary due
7/8 6 Evaluating and Improving Indicators Literature Review due
7/11 7 Signals Hyndman, Kuhn Key Techniques due
7/13 8 Evaluating and Improving Signals Tomasini
7/18 9 Entry Rules / Execution Assumptions Hyndman, Kuhn Replication Project due
7/20 10 Exit and Risk Rules / Strategy Project Introduction
7/25 11 Order Sizing/Rule burden Strategy Hypothesis Summary and Tests
7/27 12 Evaluating the Whole Strategy Strategy Specification
8/1 13 Parameter Optimization Tomasini, Aronson
8/3 14 Walk Forward Analysis Tomasini, Aronson Evaluation of Indicators and Signals
8/8 15 Overfitting I Hyndman, Kuhn, Aronson
8/10 16 Overfitting II Hyndman, Kuhn, Aronson Rule Evaluation and Walk Forward
8/15 17 Common Mistakes Asset Allocation
8/17 18 Loose Ends Final Project Due

The lecture titles above should be reviewed by students in approximately this order. Questions on the lectures may be submitted at any time via email or Canvas. Questions submitted more than 24 hours in advance of a scheduled class period are more likely to merit formal/structured responses, rather than ad-hoc or informal responses during class.

The interactive class periods (Lectures) are from 2:20pm to 4:30 pm, Seattle time, on Mondays and Wednesdays. They may not take this entire time. From experience, interactive class periods averaged about 1.5 hrs each, not the full allotted 2:10. _________________

Required Texts

Tomasini, Emilio, and Urban Jaekle. 2011. Trading Systems. Harriman House.

Narang, Rishi K. 2013. Inside the Black Box: A Simple Guide to Quantitative and High Frequency Trading. John Wiley & Sons.

Hyndman, Rob J., and George Athanasopoulos. 2014. Forecasting: principles and practice. OTexts.

Peterson, Brian G. 2015. “Developing & Backtesting Systematic Trading Strategies”.

Supplementary Reading

Supplemental texts will be referred to in the lectures, and referenced by other readings, but no readings will be required from these texts. Whether a student should own these texts will in part be influenced by your career goals, or the types of analysis you choose to do for your projects.

Kuhn, Max, and Kjell Johnson. 2013. Applied Predictive Modeling. New York: Springer.

Hastie, Trevor, et. al. 2009. The Elements of Statistical Learning. Vol. 2, no. 1. New York: Springer.

Ilmanen, Antti. 2011. Expected Returns: An Investor’s Guide to Harvesting Market Rewards. John Wiley & Sons.

Pardo, Robert. 2008. The Evaluation and Optimization of Trading Strategies, Second Edition. John Wiley & Sons.

Aronson, David. 2006. Evidence-Based Technical Analysis: Applying the Scientific Method and Statistical Inference to Trading Signals. Wiley.

Both projects will require extensive additional reading. Required project reading will be determined by the paper or strategy chosen, and demonstrating understanding of your project-specific supplementary readings will be a key part of your grade.


Learning technology

Canvas learning management system

The Canvas learning management system is the central means of interaction and participation during the course.

  • news and announcements
  • general discussion forum with other students, TA, and instructor
  • links to recorded lectures
  • lecture slides
  • assignment posting
  • online quizzes

Students should post all course related questions to the general discussion forum for TA, instructor, and peer responses and discussion.

Zoom web conferences

Lectures and office hours will be conducted via Zoom Web Conferencing. - Live web conferencing - Screen sharing - Interactive chat


Office Hours

Brian Peterson is in the office from approximately 6am-6pm Chicago Time Monday-Friday. Google Hangouts or Zoom conferences may be scheduled at student request during these times, with flexibility for prior commitments.

Times outside the listed Office hours times will be considered on a case by case basis. Office hours should be utilized for provate matters not suitable for interactive class/lecture periods or unsuitable for email.

Students are encouraged to network with and collaborate with their classmates, but the instructor will be available for appointments as well. _________________

Grading

The final grade will be determined as follows:

Assessment % of final grade

Paper Project

50%

Strategy Project

50%

Total

100%

Policy on late assignment/project submission

No late project submissions will be accepted. Extenuating circumstances (documented medical issue or death in the family) will be handled on an individual basis.

Assignments are targeted to help the students make progress on their projects.
Failure to keep up with the assignments will likely result in lower project grades, as it will be difficult to cover all the project steps if you do not do all the interim steps. The projects reflect significant, non-trivial outlays of research, reading, coding, and writing time, and can not easily be completed in a marathon before the due date.