MATLAB & Simulink

Language and Programming

MATLAB for Financial Applications
Hands-on Course with Practical Exercises

Course Highlights

This three-day course provides a comprehensive introduction to the MATLAB® technical computing environment for financial professionals. 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, with an emphasis on practical application to finance, such as time-series analysis, Monte Carlo simulation, portfolio management, and empirical modeling.

Topics include:

• Working with the MATLAB user interface

• Importing data from spreadsheets and other data sources

• Representing financial data in MATLAB

• Working with dates and times

• Visualizing data and results using advanced plots and graphics

• Filtering large datasets based on logical criteria

• Automating tasks using code files

• Algorithm development using programming constructs

• Performing data analysis, modeling, and simulation

• Generating reports and exporting results

Who Should Attend

This course is intended for existing and prospective MATLAB users involved in financial services research, data analysis, and modeling

Course Prerequisites

Attended MATLAB Fundamentals or Image Processing with MATLAB



Techsource Systems is
Mathworks Sole and Authorised Distributor and Training Partner

Upcoming Program

xilinx ATP 黑.png

Course Benefits

Upon the completion of the course, the participants will be able to 

  • Navigate the MATLAB user interface

  • Create, access and modify vectors and matrices

  • Perform calculations with vector and matrix data

  • Visualize vector and matrix data

  • Import and export data

  • Write and debug scripts and functions

Course Outline

Day 1 of 3

Working with the MATLAB User Interface


Objective: Become familiar with the main features of the MATLAB integrated design environment and its user interfaces. Interactively create customized visualizations that can later be used for financial reporting.

  • Importing data from files

  • Saving and loading variables

  • Visualizing data interactively

  • Exporting and customizing graphics

  • Sharing graphical results


Variables and Commands


Objective: Enter MATLAB commands, with an emphasis on creating and accessing numerical and text data. Collect MATLAB commands into code files for reproduction and automation. Learn how to perform tasks such as data import, analysis and report generation.

  • Entering commands

  • Creating numerical and text variables

  • Finding help and documentation

  • Importing data programmatically

  • Accessing and modifying values in variables

  • Creating and running scripts


Visualizing Results


Objective: Create informative visualizations of numeric and time-based data. Enhance the appearance of charts by customizing graphics and annotations.

  • Visualizing data

  • Customizing graphics options

  • Working with individual graphics components

  • Annotation

  • Converting between numbers and text


Data Analysis


Objective: Perform mathematical and statistical calculations on numerical data. Use MATLAB syntax to perform preprocessing and analysis tasks on multiple price series with single commands.

  • Performing calculations on data

  • Interpreting matrix data

  • Using matrices for analysis

Day 2 of 3

Dates and Times


Objective: Use variables to represent and manipulate dates and time durations. Extract components of dates and durations as numeric variables.

  • Representing dates and durations

  • Performing calculations with dates and durations

  • Extracting numeric components of dates and durations

  • Plotting with dates


Working with Tabular Data


Objective: Import data as a MATLAB table. Work with tabular financial datasets that include mixed data types.

  • Storing data as a table

  • Extracting data from tables

  • Modifying tables

  • Table operations

  • Exporting data from tables


Conditional Data Selection


Objective: Analyze subsets of data that satisfy given criteria. Perform fast data extraction and manipulation using logical variables.

  • Defining logical conditions uins logical operators

  • Extracting and filtering data by indexing with a logical variables

  • Identifying and counting subsets of data

  • Managing discrete variables using categorical arrays


Programming Flow Control


Objective: Create flexible code that can interact with the user, make decisions, and adapt to different situations. Automate tasks using programming constructs.

  • Managing command-driven and graphical interaction with a user

  • Controlling program flow using conditional programming constructs

  • Performing iterative tasks using loops

 Day 3 of 3

Working with Missing Data


Objective: Perform statistical calculations on data with missing values. Identify, remove, and replacex missing values in a data set.

  • Locating missing values

  • Ignoring, removing, and replacing missing values


Customizing Graphics


Objective: Create charts comprising multiple graphics components. Use color, text, and data  manipulation techniques to produce eye-catching visualizations.

  • Working with MATLAB graphics hierarchy

  • Accessing and modifying individual graphics components

  • Managing graphical tables


Fitting Models to Empirical Data


Objective: Preprocess data prior to model fitting. Fit probability distributions and linear models to data. Generate random numbers from a theoritical or fitted distribution.

  • Fitting linear regression models

  • Fitting probability distributions

  • Simulating from distribution fits


Increasing Automation with Functions


Objective: Increase automation by encapsulating modular tasks as user-defined functions. Understand how MATLAB resolves references to files and variables. Explore MATLAB tools for debugging code.

  • Creating and calling functions

  • Managing data in workspaces

  • Writing plain text code files

  • Managing the MATLAB path

  • Debugging code files

  • Simplifying interfaces using structures