Simulate Rating Changes

Simulation of Weibull-distributed arrival times for rating changes.
33 Downloads
Updated 19 Apr 2018

View License

I made this function as an attempt to model the credit rating changes for a company based on increasing or decreasing intensities in upgrades and downgrades over time.
The function simulates rating changes in a continuous time Markov chain. The arrival times are distributed as a Weibull-distribution, with the scale and shape parameters of rating upgrades and downgrades given as inputs. By having a shape parameter for rating upgrades that is above 1, means in this function that the rate at which upgrades occur will increase in time. Likewise, by having a shape parameter that is below 1, means that the rate decreases over time. A shape parameter of 1, means that the intensities are constant over time and the same as the scale parameters.
The inputs are:
*Initial rating score, a positive integer where the lowest, 1, is the best rating and higher than that means a worse score.
*The time for how long the simulation is made.
*Intensities, a n-by-n matrix of intensities for changing into each ratings, rows are initial rating, and columns final rating. These are the scale parameter of each event in the Weibull distribution.
*Upgrade shape-parameter for the time-variation in rating upgrades.
*Downgrade shape-parameter for the time-variation in rating downgrades.
The outputs are:
*A m-by-2 matrix of the rating changes arrival times and the rating.
*A n-by-n matrix of the rating migrations.

Cite As

Jesper Karlsson (2026). Simulate Rating Changes (https://se.mathworks.com/matlabcentral/fileexchange/66990-simulate-rating-changes), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2016b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Tags Add Tags
Version Published Release Notes
1.0.0.0