This function implements the Merton Model (1974) to compute a measure of credit risk of a firm: Distance to default (DtD). DtD indicates how many standard deviations is a firm away from the default point.

1 | ```
dtd(mcap, debt, vol, r)
``` |

`mcap` |
Is a scalar specifying the market capital of the firm. |

`debt` |
Is a scalar specifying the threshold level of debt for the firm below which the firm will default. Should be a non-zero number. |

`vol` |
Is a scalar specifying the equity volatility of the firm. |

`r` |
Is a scalar specifying the annualized risk free interest rate. |

DtD is calculated as the difference between the market value of the assets of the firm and the face value of its debt, scaled by the standard deviation of the firm's asset value. While the face value of the debt of the firm is known, the market value of the assets is not.

Exploiting the option nature of equity as a European call option on the underlying assets of a firm, the Merton Model (1974) derives the implied market value of the firm's assets and its volatility by solving the Black-Scholes (BS) equation backwards.

Returns a vector of three elements:

`dtd.v` |
Distance to default value of the firm |

`asset.v` |
Estimated asset value of the firm |

`sigma.v` |
Estimated volatility of the asset value of the firm |

Ajay Shah ajayshah@mayin.org;

Manish K. Singh mks344@gmail.com;

Nidhi Aggarwal nidhi@igidr.ac.in

Merton, R.C. (1974). “On the pricing of corporate debt: The risk structure of interest rate", The Journal of Finance, 29(2), 449-470

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | ```
# Example 1:
mcap <- 10000 ## Market capital of firm X
debt <- 5000 ## Default point for firm X
vol <- 0.4 ## Equity volatility of firm X
r <- 0.1 ## Annual risk free interest rate
dtd(mcap, debt, vol, r) ## Distance to default value
# Example 2: Generate a time-series of DtD
data(dtd_reliance) ## Load the data
ans <- apply(X=dtd_reliance[ , -1], MARGIN=1,
FUN=function (i) dtd(mcap=i[["E"]],
vol=i[["sE"]], debt=i[["F"]], r=0.05))
ans <- data.frame(date=dtd_reliance[ , "date"], t(ans))
head(ans)
``` |

Questions? Problems? Suggestions? Tweet to @rdrrHQ or email at ian@mutexlabs.com.

All documentation is copyright its authors; we didn't write any of that.