Course Outline
Part 1
A Brief Introduction to MATLAB
Objectives: Provide an overview of MATLAB's purpose, components, and capabilities.
- Example: C vs. MATLAB
- Overview of MATLAB Products
- Application Areas for MATLAB
- Benefits of Using MATLAB
- Course Structure
Navigating the MATLAB User Interface
Objective: Become familiar with the primary features of the MATLAB integrated development environment and its interfaces. Gain an understanding of the course's core themes.
- MATLAB Interface
- Loading data from files
- Saving and loading variables
- Generating plots
- Customizing graphical outputs
- Computing statistics and best-fit lines
- Exporting graphics for use in external applications
Variables and Expressions
Objective: Execute MATLAB commands, focusing on the creation and retrieval of data within variables.
- Command input
- Variable creation
- Accessing help resources
- Retrieving and modifying variable values
- Creating character variables
Analysis and Visualization with Vectors
Objective: Execute mathematical and statistical operations on vectors and generate basic visualizations. Observe how MATLAB syntax allows for whole-dataset calculations with a single command.
- Vector calculations
- Plotting vectors
- Basic plot settings
- Annotating plots
Analysis and Visualization with Matrices
Objective: Utilize matrices as mathematical entities or as collections of vector data. Understand the specific MATLAB syntax required to differentiate between these uses.
- Size and dimensionality
- Matrix calculations
- Statistics using 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 reproducibility and experimentation. As task complexity grows, entering lengthy command sequences in the Command Window becomes inefficient.
- Modeling Example
- The Command History
- Creating script files
- Executing scripts
- Adding Comments and Code Cells
- Publishing scripts
Working with Data Files
Objective: Import data into MATLAB from formatted files. Given the diverse types and formats of imported data, emphasis is placed on handling cell arrays and date formats.
- Data importation
- Mixed data types
- Cell arrays
- Conversions between numbers, strings, and cells
- Data exportation
Multiple Vector Plots
Objective: Create more complex vector plots, such as multi-plot graphs, utilizing color and string manipulation techniques to produce engaging data visualizations.
- Graphics structure
- Multiple figures, axes, and plots
- Plotting equations
- Using color
- Customizing plots
Logic and Flow Control
Objective: Employ logical operations, variables, and indexing techniques to write flexible code capable of decision-making and adaptation. Explore programming constructs for code repetition and user interaction.
- Logical operations and variables
- Logical indexing
- Programming constructs
- Flow control mechanisms
- Loops
Matrix and Image Visualization
Objective: Visualize images and matrix data in two or three dimensions. Examine the differences between displaying images and visualizing matrix data through imagery.
- Scattered Interpolation using vector and matrix data
- 3-D matrix visualization
- 2-D matrix visualization
- Indexed images and colormaps
- True color images
Part 3
Data Analysis
Objective: Perform standard data analysis tasks in MATLAB, such as developing and fitting theoretical models to real-world data. This naturally leads to one of MATLAB's most powerful features: solving systems of linear equations with a single command.
- Handling missing data
- Correlation analysis
- Smoothing techniques
- 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.
- Rationale for functions
- Creating functions
- Adding comments
- Calling subfunctions
- Workspaces
- Subfunctions
- Path and precedence
Data Types
Objective: Investigate data types, focusing on the syntax for creating variables and accessing array elements, while discussing conversion methods among data types. Data types vary in the kind of data they hold and how that data is organized.
- MATLAB data types
- Integers
- Structures
- Converting types
File I/O
Objective: Explore low-level data import and export functions in MATLAB that provide precise control over text and binary file input/output. These functions include textscan, which allows for detailed control over reading text files.
- Opening and closing files
- Reading and writing text files
- Reading and writing binary files
Please note that the actual delivered content may have minor discrepancies from the outline above without prior notification.
Part 4
Overview of the MATLAB Financial Toolbox
Objective: Learn to apply the various features of the MATLAB Financial Toolbox to conduct quantitative analysis for the financial industry. Acquire the knowledge and practice necessary to efficiently develop real-world applications involving financial data.
- Asset Allocation and Portfolio Optimization
- 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 Optimization
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 optimization and analysis
- Examining the time evolution of efficient portfolio allocations
- Performing capital allocation
- Accounting for turnover and transaction costs in portfolio optimization problems
Risk Analysis and Investment Performance
Objective: Define and solve portfolio optimization 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: Conduct fixed-income analysis and option pricing.
- Analyzing 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: Analyze time series data in financial markets.
- Performing data math
- Transforming and analyzing 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 function and standard errors for hypothesis testing
- Completing calculations when data is missing
Technical Indicators and Financial Charts
Objective: Practice using performance metrics and specialized 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: Summarize what we have learned
- A summary of the course
- Other upcoming courses on MATLAB
Note: the actual content delivered may differ from the outline as a result of customer requirements and the time spent on each topic.
Requirements
- Fundamental undergraduate-level mathematical understanding, including linear algebra, probability theory, statistics, and matrices
- Basic computer operation skills
- Familiarity with high-level programming languages such as C, PASCAL, FORTRAN, or BASIC is advantageous but not mandatory
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