Quality Money Management : Process Engineering and Best Practices for Systematic Trading and Investment

(Michael S) #1

114 CHAPTER ◆ 1 0 Prototype in Modeling Software


The final pass through this step should construct a single prototype with the chosen,
benchmarked methods for the trade selection algorithms, trade execution and trade cost
analysis calculations, cash management procedures, risk algorithms, and performance
metrics. The consolidated prototype will be the primary input into the technology specifi-
cation requirements documents for Stage 3.

10.7. Summary


The advantage of prototyping (either in Excel, Resolver, MATLAB, Zack ’ s, Mathematica,
SAS, and/or in other software) is to allow the team the ability to quickly prove complex
mathematics and trading strategies in code.

● Transferring from math to code allows everyone to understand the math.
● The spiral method with firm deliverables focuses financial engineers on deliverables
and not elegant mathematics.
● Prototypes force data issues early in the development cycle.
● Excel is an excellent prototyping language due to its ability to model quickly.
● Prototypes are the deliverable of the first stage since the prototypes will be used as a
foundation input into later stages.
● Prototypes should be throwaways. They are not implementation mechanisms. Teams
should discard prototypes and build proper algorithms in code over the course of
Stages 2 and 3.
● Prototype the hardest parts first.

Managers can avoid the problem of not throwing away throwaway prototypes by main-
taining a firm commitment to whatever prototyping paradigm was initially chosen.
Developers can do their part by fully defining and communicating a prototype ’ s scope
and purpose.^16
Spreadsheet testing is important, because the spreadsheet becomes the oracle for later
stages of development in K|V. For the remainder of the book we will use “ well defined ”
to mean that a trading system has been fully prototyped.

10.7.1. Best Practices


We have touched on many low-level best practices over the course of the chapter, but to
summarize here are more high-level recommendations.

● Prototype the hardest parts first and test component prototypes as you build them.
● Use team-oriented testing and inspection. Do not rely on standardized functions in
Excel and third-party software. Understand first how they work.
● For spreadsheet prototypes, follow the six golden rules as well as the additions by
Grossman and Ozluk.
● Specify and communicate to users beforehand whether a prototype is throwaway or
evolutionary.
● Document prototypes internally.
Free download pdf