This course focuses on the use of MATLAB, R, and C++ and Visual Basic in Microsoft Visual Studio.NET for financial programming and modeling. Students pick up materials such as programming basics, SQL, database operations, file operations, graphical user interface design, object-oriented programming, XML, JSON, Component Object Model (COM) client and server, and application programming interface (API). Fundamental concepts are reviewed. Students learn modeling techniques such as Monte-Carlo simulation, binomial and trinomial trees, Black-Scholes, finite difference methods, constrained and unconstrained optimization, linear and non-linear programming, heuristic optimization, mean-variance, Value at Risk, data envelopment analysis (DEA), and data mining techniques applied in risk management, and apply these in financial contexts. More specifically, students construct various applications, for example portfolio optimization with live data from the internet using various methods, option pricing using Monte-Carlo, binomial trees, Black-Scholes, asset pricing models, capital budgeting, efficiency evaluation, finding betas of stocks, risk evaluation using data mining techniques, etc., across several programming languages.
Slides are provided by the instructor.
1. Simulation and Optimization in Finance: Modeling with MATLAB, @Risk, or VBA, Frank J. Fabozzi
2. Numerical Methods and Optimization in Finance, Manfred Gilli, Dietmar Maringer, Enrico Schumann
3. Financial Modeling 3rd edition, Simon Benninga
4. Foundations and Methods of Stochastic Simulation: A First Course, Barry Nelson
5. Numerical Methods in Finance and Economics: A MATLAB-Based Introduction (Statistics in Practice), Paolo Brandimarte
6. Financial Numerical Recipes in C++, Bernt Arne Ødegaard
7. Building Financial Risk Management Applications with C++, Robert Brooks