This course will be taught by a veteran Wall St. technology manager currently employed at a top tier investment bank. The theme of this course will be “applied case study” and will focus on Fixed Income markets. The semester will begin with a big-picture view of the markets, the inner workings of an investment bank, the market players, and where software engineers fit in. The students will be grouped into small teams to build a financial application using practical software engineering principles.
It is assumed that the students can code in C++ or C for the server side. Students can choose the language/framework for the client side.
No prior experince in the financial
sector is required - just a desire to learn it.
Execution speed & size
Final Presentation - Each
group will demo their application and present design rationale
||Capital Markets - Fixed Income
Market players, where are technology dollars spent?
|Set up development environment,
build test case handler
||NYU_class2.ppt||makefile SBB_util.h SBB_util.cc|
|| Financial instruments
|Implement yield-to-price calculator using slide 2 of NYU_class3.ppt as spec. Quiz on chapters 1-6 of Mythical Man-Month!||ytm_sheet_closed_formula.xls NYU_class3.ppt||SBB_io.h SBB_io.cc SBB_date.h SBB_date.cc||data.txt|
||Basic Fixed Income Products –
the “bullet” bond
Yield to Maturity formula - Price/Yield
|General YTM formula, coupon bearing and discount type (e.g., "Zero" or "STRIP") implementation||NYU_class4.ppt ytm_sheet.xls||run.sh||tradingbook.txt|
||Basic Fixed Income Products –
the “bullet” bond (continued)|
Yield to Maturity formula - Price/Yield continued
|Pricing off our yield curve. Performing scenarios by shocking our yield curve, credit ratings.|| Building the onion – start
with simple, fast, separately testable classes libraries|
|6 (10/16) fall break
|Pricing off our yield curve. Performing scenarios by shocking our yield curve, credit ratings.||
Mid-term submission specification
||code_example.cc SBB_ratings.h SBB_ratings.cc||tradingbook.txt|
||Risk Types Review. Historical VaR, Stress Testing, Questions a Risk Manager might ask...
||MID TERM SUBMISSION - expected output: results.txt tradingbook.txt||NYU_class7.ppt||results.txt tradingbook.txt|
||Serverize our executable||NYU_class8.ppt||GUIrequirements_V1.xls||
|9 (Nov 13 - class after storm)
||Requirements of Final Project continued. Sserver side enhancements||
Quiz 2 of 3 - Mythical Man-Month ch 7-12!
||Variations of VaR. Total Market Risk Framework, server-side recovery - SERVER SUBMISSION 1 of 2||
Server submission 1 of 2 due - RETURN TOTAL RESULTS AS WITH OUR EXECUTABLE - the 4 numbers in results.txt!
SBB_lecture9.ppt - (lecture 9 cont)...
Implement VaR calculation using living-spec spreadsheet
Total VaR ONLY - (breaking out it into Rate and Spread won't be required for this phase
||Attribution of VaR risk factors ...||NYU_class11.ppt|| |
Show example code for doing VaR attribution.
SBB_0011.txt SBB_0012.txt README
||Risk management methodologies - how we apply what we built to total risk||
Server-side (2 of 2) requirement: return LGD and total VaR change - two numbers
||Market Risk measurement
PnL attribution, Value at Risk (VaR), Stress Testing, Notional exposure
QUIZ 3 of 3 !
Server submission 2 of 2 - server to return LGD and total VaR change between trading book
(between start and end of day files)
Results detail for 1 security (SBB_0011) to check the pnl vector calculation. There is one row per day with intermediate results showing the daily pnl calculation...
|14||Summary of Risk Management Principles and how our app helps us measure and manage risk||
Team presentation - Final (GUI demo) final_files.tar.Z