Get in Touch

Course Outline

Part 1

A Brief Introduction to MATLAB

Objectives: Provide an overview of MATLAB’s capabilities, components, and potential benefits.

  • Example: Comparing C and MATLAB
  • Overview of MATLAB Products
  • Application Domains for MATLAB
  • Potential Benefits of MATLAB
  • Course Structure

Navigating the MATLAB User Interface

Objective: Introduce the main features of MATLAB’s integrated development environment (IDE) and user interfaces, while outlining course themes.

  • MATLAB Interface
  • Importing data from files
  • Saving and loading variables
  • Plotting data
  • Customizing plots
  • Calculating statistics and fitting lines
  • Exporting graphics for external use

Variables and Expressions

Objective: Master MATLAB command entry, focusing on creating and accessing data within variables.

  • Entering commands
  • Creating variables
  • Accessing help resources
  • Accessing and modifying variable values
  • Creating character variables

Analysis and Visualization with Vectors

Objective: Execute mathematical and statistical calculations on vectors and create basic visualizations. Understand how MATLAB syntax allows operations on entire datasets with a single command.

  • Vector calculations
  • Plotting vectors
  • Basic plot options
  • Annotating plots

Analysis and Visualization with Matrices

Objective: Utilize matrices as mathematical entities or collections of vector data. Learn to distinguish between these applications using appropriate MATLAB syntax.

  • Size and dimensionality
  • Matrix calculations
  • Statistical analysis with matrix data
  • Plotting multiple columns
  • Reshaping and linear indexing
  • Multidimensional arrays

Part 2

Automating Commands with Scripts

Objective: Consolidate MATLAB commands into scripts for ease of reproduction and experimentation. As task complexity grows, manually entering long command sequences in the Command Window becomes inefficient.

  • Modeling Example
  • The Command History
  • Creating script files
  • Running scripts
  • Comments and Code Cells
  • Publishing scripts

Working with Data Files

Objective: Import data from formatted files into MATLAB. Given the 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 between numerals, strings, and cells
  • Exporting data

Multiple Vector Plots

Objective: Create more complex vector plots, such as multiple overlaid plots, and use color and string manipulation techniques to produce visually compelling data representations.

  • Graphics structure
  • Multiple figures, axes, and plots
  • Plotting equations
  • Using color
  • Customizing plots

Logic and Flow Control

Objective: Use logical operations, variables, and indexing to create flexible code that makes decisions and adapts to various situations. Explore programming constructs for code repetition and user interaction.

  • Logical operations and variables
  • Logical indexing
  • Programming constructs
  • Flow control
  • Loops

Matrix and Image Visualization

Objective: Visualize images and matrix data in two or three dimensions. Explore 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, including developing and fitting theoretical models to real-world data. This highlights one of MATLAB’s most powerful features: solving linear systems of equations with a single command.

  • Handling 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 use functions?
  • Creating functions
  • Adding comments
  • Calling subfunctions
  • Workspaces
  • Subfunctions
  • Path and precedence

Data Types

Objective: Explore data types, focusing on syntax for creating variables and accessing array elements, and discuss methods for converting among data types. Different data types vary in the kind of data they contain and how it is organized.

  • MATLAB data types
  • Integers
  • Structures
  • Converting types

File I/O

Objective: Explore low-level data import and export functions in MATLAB that allow precise control over text and binary file I/O. These include textscan, which provides 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 vary slightly from the outline above without prior notification.

Part 4

Overview of the MATLAB Financial Toolbox

Objective: Learn to apply various features of the MATLAB Financial Toolbox to perform quantitative analysis for the financial sector. Gain the knowledge and practical skills needed to efficiently develop real-world financial applications.

  • 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: Perform 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 key learnings from the course.

  • A summary of the course
  • Other upcoming courses on MATLAB

Note: The actual content delivered may differ from the outline due to customer requirements and the time allocated to each topic.

Requirements

  • Fundamental undergraduate-level mathematical knowledge, including linear algebra, probability theory, statistics, and matrix concepts
  • Basic computer operational skills
  • Familiarity with a high-level programming language (e.g., C, PASCAL, FORTRAN, or BASIC) is advantageous but not mandatory
 35 Hours

Testimonials (3)

Upcoming Courses

Related Categories