21201730 - Computational Finance

The course objective is to educate students about the MATLAB language and development environment, for programming, numerical calculation and visualization applied to financial problems.
The rule of Computational Finance is becoming increasingly important in the financial industry, both for the modeling and analysis phase, as well as for the decision-making phase.
Many models used in practice are formulated via complex mathematical problems, for which an exact or a closed-form solution could not be obtained. Consequently, computational techniques and specific numerical algorithms are required to solve such cases.
Over the duration of the Course, we attempt to integrate the understanding of theoretical with their practical use. The application of quantitative financial models will be used to simplify the comprehension of some mathematical and statistical concepts and to learn the main computational techniques, which are useful to deal with a wide range of financial problems, such as portfolio optimization, risk management and derivatives pricing. Therefore, this course is not only suitable for university students, but also for professionals who want to deepen their knowledge and understanding of the quantitative financial models explored in this course.
teacher profile | teaching materials

Mutuazione: 21201730 FINANZA COMPUTAZIONALE in Finanza e impresa LM-16 CESARONE FRANCESCO


1 A rapid introduction to MATLAB
1.1 MATLAB basics: Preliminary elements; Variable assignment; Workspace; Arithmetic operations; Vectors and matrices; Standard operations of linear algebra; Element-by-element multiplication and division; Colon (:) operator; Predefined function; inline Function; Anonymous Function.
1.2 M-file: Script and Function
1.3 Programming fundamentals: if, else, and elseif scheme; for loops; while loops
1.4 Matlab graphics
1.5 Preliminary exercises on programming
1.6 Exercises on the financial evaluation basics

2 Preliminary elements on Probability Theory and Statistics
2.1 Random variables
2.2 Probability distributions
2.3 Continuous random variable
2.4 Higher-order moments and synthetic indices of a distribution
2.5 Some probability distributions: Uniform, Normal, Log-normal, Chi-square, Student-t
3 Linear and Non-linear Programming
3.1 Some Matlab built-in functions for optimization problems
3.2 Multi-objective optimization: Determining the efficient frontier
4 Portfolio Optimization
4.1 Portfolio of equities: Prices and returns
4.2 Risk-return analysis: Mean-Variance; Effects of the diversification in an Equally Weighted portfolio; Mean-MAD; Mean-MinMax; VaR; Mean-CVaR; Mean-Gini portfolios
4.3 Bond portfolio immunization

5 Further elements on Probability Theory and Statistics
5.1 Introduction to the Monte Carlo simulation
5.2 Stochastic processes: Brownian motion; Ito’s Lemma; Geometrical Brownian motion
6 Pricing of derivatives with an underlying security
6.1 Binomial model (CRR): A replicating portfolio of stocks and bonds; Calibration of the model; Multi-period case
6.2 Black-Scholes model: Assumptions of the model; Pricing of a European call; Pricing equation for a call; Implied Volatility
6.3 Option Pricing with Monte Carlo Method: Solution in integral form; Path Dependent Derivatives

Core Documentation

F Cesarone (2020), Computational Finance. MATLAB oriented modeling, Routledge-Giappichelli Studies in Business and Management, ISBN 978-0-367-49303-5

Type of delivery of the course

The lessons will be in-person and will also be streamed on Microsoft Teams. - Team link: https://teams.microsoft.com/l/team/19%3aqyJxck95uxybTZqROCExCmIibYxPO4kyrAojrAj6Qbg1%40thread.tacv2/conversations?groupId=96a3be25-ecca-48c8-9e9b-9f7de8b08119&tenantId=ffb4df68-f464-458c-a546-00fb3af66f6a - Team code: aqqm841 The lessons will be held according to the following schedule: Tuesday 10:30-12:30 Wednesday 10:30-12:30 Thursday 15:00-17:00 We will use the following tools: - slides; - in-person and streaming lesson with direct interaction via voice and chat; - digital blackboard; - live programming on Matlab (https://www.uniroma3.it/servizi/software-in-convenzione/mathworks-campus/);​ - Professor's textbook: http://host.uniroma3.it/docenti/cesarone/Books.htm.

Type of evaluation

The exam is composed of a written and an oral part. The written part consists of the implementation on Matlab of three exercises, one for each module. The oral part covers all the topics of the program and can include both theory questions and exercises. Students who have scored no less than 16/30 on the written test are admitted to the oral exam. Students who have obtained a score that is no less than 18/30 could avoid the oral exam and obtain a score corresponding to that of the written test but with an upper limit of 24/30 (in the case of a vote in the written part that is greater than or equal to 24/30). To aspire to a higher score, the oral exam is mandatory.