35 hours (usually 5 days including breaks)
- Basic concept of undergraduate-level mathematical knowledge such as linear algebra, probablilty theory and statistics, as well as matrix
- Basic computer operations
- Preferably basic concept of another high-level programming language, such as C, PASCAL, FORTRAN, or BASIC, but not essential
This course provides a comprehensive introduction to the MATLAB technical computing environment + an introduction to using MATLAB for financial applications. The course is intended for beginning users and those looking for a review. No prior programming experience or knowledge of MATLAB is assumed. Themes of data analysis, visualization, modeling, and programming are explored throughout the course. Topics include:
- Working with the MATLAB user interface
- Entering commands and creating variables
- Analyzing vectors and matrices
- Visualizing vector and matrix data
- Working with data files
- Working with data types
- Automating commands with scripts
- Writing programs with logic and flow control
- Writing functions
- Using the Financial Toolbox for quantitative analysis
A Brief Introduction to MATLAB
Objectives: Offer an overview of what MATLAB is, what it consists of, and what it can do for you
- 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: Get an introduction to the main features of the MATLAB integrated design environment and its user interfaces. Get an overview of course themes.
- MATALB Interface
- Reading data from file
- Saving and loading variables
- Plotting data
- Customizing plots
- Calculating statistics and best-fit line
- Exporting graphics for use in other applications
Variables and Expressions
Objective: Enter MATLAB commands, with an emphasis on creating and accessing data in variables.
- Entering commands
- Creating variables
- Getting help
- Accessing and modifying values in variables
- Creating character variables
Analysis and Visualization with Vectors
Objective: Perform mathematical and statistical calculations with vectors, and create basic visualizations. See how MATLAB syntax enables calculations on whole data sets with a single command.
- Calculations with vectors
- Plotting vectors
- Basic plot options
- Annotating plots
Analysis and Visualization 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
Automating Commands with Scripts
Objective: Collect MATLAB commands into scripts for ease of reproduction and experimentation. As the complexity of your tasks 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: Bring data into MATLAB from formatted files. Because imported data can be of a wide variety of types and formats, emphasis is given to working with cell arrays and date formats.
- Importing data
- Mixed data types
- Cell arrays
- Conversions amongst numerals, strings, and cells
- Exporting data
Multiple Vector Plots
Objective: Make more complex vector plots, such as multiple plots, and use color and string manipulation techniques to produce eye-catching visual representations of data.
- Graphics structure
- Multiple figures, axes, and plots
- Plotting equations
- Using color
- Customizing plots
Logic and Flow Control
Objective: Use logical operations, variables, and indexing techniques to create flexible code that can make decisions and adapt to different situations. Explore other programming constructs for repeating sections of code, and constructs that allow interaction with the user.
- Logical operations and variables
- Logical indexing
- Programming constructs
- Flow control
Matrix and Image Visualization
Objective: Visualize images and matrix data in two or three dimensions. Explore the difference in displaying images and visualizing matrix data using images.
- Scattered Interpolation using vector and matrix data
- 3-D matrix visualization
- 2-D matrix visualization
- Indexed images and colormaps
- True color images
Objective: Perform typical data analysis tasks in MATLAB, including developing and fitting theoretical models to real-life data. This leads naturally to one of the most powerful features of MATLAB: solving linear systems of equations with a single command.
- Dealing with missing data
- Spectral analysis and FFTs
- Solving linear systems of equations
Objective: Increase 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
- Path and precedence
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 differ in the kind of data they may contain and the way the data is organized.
- MATLAB data types
- Converting types
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 delivered might be subject to minor discrepancies from the outline above without prior notification.
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 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
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)
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.
Tomasz (the trainer) was knowledgeable and friendly and made the training very interesting. He helped me learnt a lot about a subject I was very new to.
Paul Cox - Network Rail
Course: MATLAB Programming
MAN Bus Sp. z o.o.; EDAG Engineering Polska Sp. z o.o.; AVL Software and Functions GmbH Sp. z o. o. - Oddział w Polsce
Course: MATLAB and Simulink
Trainer took the initiative to cover additional content outside our course materials to improve our learning.
Chia Wu Tan - SMRT Trains Ltd
Course: MATLAB Programming
Bookings, Prices and Enquiries
|Number of Delegates||Private Remote|
|Number of Delegates||Public Classroom|
|Location||Date||Course Price [Remote/Classroom]|