Sie sind auf Seite 1von 5

Financial Trading Systems Design and Development with C++ Copyright 2011 Gaurav Mangla Table of Contents BASIC

C CONCEPTS AND DATA MODEL 1. Capital Markets and Trading Environment a. Introduction b. Trading System Defined c. Importance of Business Knowledge d. Primary markets i. Issuance of a Security ii. Registration of a an issue iii. Exemption from registration e. Secondary markets i. Exchange Trading ii. OTC Trading iii. Electronic Trading f. Overview of institutional trading environment i. Organizational Structure ii. Institutional Trading Activities iii. Front Office 1. Tasks performed by Front office iv. Middle Office 1. Tasks performed by Middle office v. Back Office 1. Tasks performed by Back office g. Trading workflow i. Pre-Trade/Analysis Phase ii. Execution Phase iii. Post-Trade Phase h. Summary 2. Basic financial concepts and instruments a. Time value of money b. Basic calculations c. Basic financial products 3. Overall Architecture a. Overview of the various subsystems b. High level design of the identified subsystems 4. Basic data model a. Introduction b. Core classes

c.

d.

e.

f. g.

h. i. j. k. l.

i. Date Class ii. Calendar class iii. Day count classes iv. Cash flow classes Product classes i. Stocks ii. Bonds iii. Futures iv. Forwards v. FRAs vi. Options Market data elements i. Prices ii. Yields iii. Volatilities iv. Correlations Curve classes i. Yield curves ii. Interest rate curves iii. Credit Curves Trade classes Portfolios i. Static Portfolio ii. Dynamic Portfolio/Filters Books Accounts Pricers i. Risk Measures Reports BO Elements (Payments, Accounting Entries)

5. Numerical algorithms a. Polynomial evaluation b. Root finding c. Interpolation d. Integration and differentiation e. Differential equations f. Matrix algebra g. Probability and statistics h. Graph algorithms

FINANCIAL MODELLING 6. Foundation Classes for a QA Framework (a.k.a. Model Library) a. Curve Generation subsystem

i. ii. iii. iv. v. vi. vii.

Description of various curves used in Financial Analytics/Pricing Treasury yield curve Bootstrapping the treasury yield curve Treasury fitted curve using B-spline interpolation LIBOR curve generation Credit curve generation Design of curve generation subsystem

b. Cash flow Generation subsystem i. Basic cash flow generation example using bullet bond ii. Interest rate swap cash flow generation and pricing iii. Design of a basic cash flow generator in C++ iv. Extending the basic cash flow generator v. Design of a generic cash flow generator 1. Payment Schedule 2. Reset Schedule 3. Amortisation Schedule 4. Frequency, Day Count, Date Roll, Stub Rules 5. Compounding 6. Formulas 7. Case Study: Bootstrapping the LIBOR curve and design of a generic swap curve generator 8. Quantitative Analytics subsystem a. Overview of various quantitative models b. The Black Scholes Model for Derivatives pricing i. Black Scholes Overview ii. The Black Scholes Partial Differential Equation iii. Valuation Model for a Plain Vanilla Option c. Designing a Generic Framework for Finite Difference Methods i. Explicit Finite Differences ii. Implicit Finite Differences iii. Crank-Nicholson method iv. Requirements for a generic Finite Difference Solver v. Design of a Generic FD Solver d. Designing a Generic Framework for Monte Carlo Simulation i. Monte Carlo Simulation Overview ii. Requirements for a generic MC Solver iii. Random Number Generation iv. Path Generation v. Variance Reduction Methods vi. Design of a Generic Monte Carlo Engine e. Designing a generic framework for implementing lattice methods i. Binomial Method ii. Trinomial Method

f. Design of a generic analytics framework i. Concept of CalculationNode ii. Models as a graph (DAG) of CalculationNodes iii. Evaluation of a CalculationNode DAG 9. Volatility Surfaces a. Equity Volatility Surfaces b. Interest Rate Volatility Surfaces c. FX Volatility Surfaces 10. Case Study: Caplet Volatility Calibrator 11. Model Interface a. Repository b. Models c. Product-to-Model binding d. GUI for configuration of model bindings 12. Advanced Case Study: Implementing the LIBOR MARKET MODEL using Monte Carlo simulation 13. Profit & Loss subsystem a. Components of P&L of a trading book b. Intra-day (Flash) P&L c. End-of-Day P&L d. P&L Explain Report e. P&L Attribution f. Design of a generic P&L engine 14. Risk Management subsystem BASIC TRADING SYSTEM 15. Market data subsystem a. Generic system to handle data feeds b. Description of various data elements needed i. Referential data ii. Real-time data iii. Volatility data c. Design of data entry subsystem d. Validation of data, reporting of outliers/extreme movements 16. Design of a business logic server e. Design of a business logic server f. Request, Response, Task classes g. Asynchronous processing of requests h. Multithreaded design and synchronization issues i. Choice of technologies, and implementation options for the request, response, and server side classes j. Choice of Middleware technologies 17. Trade Entry/Trade Capture Subsystem k. Trade ticket: general design considerations

l. Trade blotter design m. Trade templates n. Portfolio viewers o. Trade querying screens p. Creating Portfolios 18. Case Study: Design of an equity derivatives trading system Appendix Index

Das könnte Ihnen auch gefallen