Course Outline
Part 1
A Brief Introduction to MATLAB
Objectives: Provide an overview of what MATLAB is, its components, and its capabilities.
- An Example: C vs. MATLAB
- MATLAB Product Overview
- MATLAB Application Fields
- What MATLAB can do for you?
- The Course Outline
Working with the MATLAB User Interface
Objective: Introduce the main features of the MATLAB integrated design environment and its user interfaces, and provide an overview of the course themes.
- MATLAB Interface
- Reading data from files
- Saving and loading variables
- Plotting data
- Customising plots
- Calculating statistics and best-fit lines
- Exporting graphics for use in other applications
Variables and Expressions
Objective: Enter MATLAB commands, with a focus on creating and accessing data in variables.
- Entering commands
- Creating variables
- Getting help
- Accessing and modifying values in variables
- Creating character variables
Analysis and Visualisation with Vectors
Objective: Perform mathematical and statistical calculations with vectors and create basic visualisations. See how MATLAB syntax enables calculations on entire data sets with a single command.
- Calculations with vectors
- Plotting vectors
- Basic plot options
- Annotating plots
Analysis and Visualisation with Matrices
Objective: Use matrices as mathematical objects or as collections of (vector) data. Understand the appropriate use of MATLAB syntax to distinguish between these applications.
- Size and dimensionality
- Calculations with matrices
- Statistics with matrix data
- Plotting multiple columns
- Reshaping and linear indexing
- Multidimensional arrays
Part 2
Automating Commands with Scripts
Objective: Group MATLAB commands into scripts to facilitate reproduction and experimentation. As task complexity increases, entering long sequences of commands in the Command Window becomes impractical.
- A Modelling Example
- The Command History
- Creating script files
- Running scripts
- Comments and Code Cells
- Publishing scripts
Working with Data Files
Objective: Import data into MATLAB from formatted files. Given the wide variety of data types and formats, emphasis is placed on working with cell arrays and date formats.
- Importing data
- Mixed data types
- Cell arrays
- Conversions among numerals, strings, and cells
- Exporting data
Multiple Vector Plots
Objective: Create more complex vector plots, such as multiple plots, and utilise colour and string manipulation techniques to produce visually engaging data representations.
- Graphics structure
- Multiple figures, axes, and plots
- Plotting equations
- Using colour
- Customising plots
Logic and Flow Control
Objective: Use logical operations, variables, and indexing techniques to develop flexible code capable of making decisions and adapting to different scenarios. Explore other programming constructs for repeating code sections and those that enable user interaction.
- Logical operations and variables
- Logical indexing
- Programming constructs
- Flow control
- Loops
Matrix and Image Visualisation
Objective: Visualise images and matrix data in two or three dimensions. Explore the differences between displaying images and visualising matrix data using images.
- Scattered Interpolation using vector and matrix data
- 3-D matrix visualisation
- 2-D matrix visualisation
- Indexed images and colormaps
- True colour images
Part 3
Data Analysis
Objective: Perform typical data analysis tasks in MATLAB, including developing and fitting theoretical models to real-world data. This naturally leads to one of MATLAB's most powerful features: solving linear systems of equations with a single command.
- Dealing with missing data
- Correlation
- Smoothing
- Spectral analysis and FFTs
- Solving linear systems of equations
Writing Functions
Objective: Enhance automation by encapsulating modular tasks as user-defined functions. Understand how MATLAB resolves references to files and variables.
- Why functions?
- Creating functions
- Adding comments
- Calling subfunctions
- Workspaces
- Subfunctions
- Path and precedence
Data Types
Objective: Explore data types, focusing on the syntax for creating variables and accessing array elements, and discuss methods for converting among data types. Data types vary in the kind of data they may contain and how that data is organised.
- MATLAB data types
- Integers
- Structures
- Converting types
File I/O
Objective: Explore the low-level data import and export functions in MATLAB that allow precise control over text and binary file I/O. These functions include textscan, which provides precise control of reading text files.
- Opening and closing files
- Reading and writing text files
- Reading and writing binary files
Note that the actual delivery may be subject to minor discrepancies from the outline above without prior notification.
Part 4
Overview of the MATLAB Financial Toolbox
Objective: Learn to apply the various features included in the MATLAB Financial Toolbox to perform quantitative analysis for the financial industry. Gain the knowledge and practice needed to efficiently develop real-world applications involving financial data.
- Asset Allocation and Portfolio Optimisation
- Risk Analysis and Investment Performance
- Fixed-Income Analysis and Option Pricing
- Financial Time Series Analysis
- Regression and Estimation with Missing Data
- Technical Indicators and Financial Charts
- Monte Carlo Simulation of SDE Models
Asset Allocation and Portfolio Optimisation
Objective: Perform capital allocation, asset allocation, and risk assessment.
- Estimating asset return and total return moments from price or return data
- Computing portfolio-level statistics, such as mean, variance, value at risk (VaR), and conditional value at risk (CVaR)
- Performing constrained mean-variance portfolio optimisation and analysis
- Examining the time evolution of efficient portfolio allocations
- Performing capital allocation
- Accounting for turnover and transaction costs in portfolio optimisation problems
Risk Analysis and Investment Performance
Objective: Define and solve portfolio optimisation problems.
- Specifying a portfolio name, the number of assets in an asset universe, and asset identifiers.
- Defining an initial portfolio allocation.
Fixed-Income Analysis and Option Pricing
Objective: Perform fixed-income analysis and option pricing.
- Analysing cash flow
- Performing SIA-Compliant fixed-income security analysis
- Performing basic Black-Scholes, Black, and binomial option pricing
Part 5
Financial Time Series Analysis
Objective: Analyse time series data in financial markets.
- Performing data maths
- Transforming and analysing data
- Technical analysis
- Charting and graphics
Regression and Estimation with Missing Data
Objective: Perform multivariate normal regression with or without missing data.
- Performing common regressions
- Estimating log-likelihood functions and standard errors for hypothesis testing
- Completing calculations when data is missing
Technical Indicators and Financial Charts
Objective: Practise using performance metrics and specialised plots.
- Moving averages
- Oscillators, stochastics, indexes, and indicators
- Maximum drawdown and expected maximum drawdown
- Charts, including Bollinger bands, candlestick plots, and moving averages
Monte Carlo Simulation of SDE Models
Objective: Create simulations and apply SDE models
- Brownian Motion (BM)
- Geometric Brownian Motion (GBM)
- Constant Elasticity of Variance (CEV)
- Cox-Ingersoll-Ross (CIR)
- Hull-White/Vasicek (HWV)
- Heston
Conclusion
Objectives: Summarise what we have learned
- A summary of the course
- Other upcoming courses on MATLAB
Note: the actual content delivered might differ from the outline as a result of customer requirements and the time spent on each topic.
Requirements
- Basic undergraduate-level mathematical concepts, including linear algebra, probability theory, statistics, and matrix theory
- Basic computer operation skills
- Preferably, a basic understanding of another high-level programming language, such as C, PASCAL, FORTRAN, or BASIC, though this is not essential
Testimonials (5)
Good communication, open for discussion, kept it interesting and engaging
Ahmet Keyman - Keytrade AG
Course - Management Accounting and Finance for Non-Finance Professionals
Experience of the trainer and his way of conveying the content
Roggli Marc - Bechtle Schweiz AG
Course - FinOps
The trainer did not leave a single minute unexploited! He was up a storm throughout every lesson and provided much material for whatever he dealt with.
Elpida - Unemployed
Course - Anti-Money Laundering (AML) and Combating Terrorist Financing (CTF)
The pricing strategies. Need to have more real case examples on the strategies and the pricing methods.
Ruziham A Razak - Telekom Malaysia Berhad
Course - A Practical Guide to Successful Pricing Strategies
Personal service and orientated to my needs