1
$\begingroup$

I am trying to solve the equation for PD but struggling to bring it to the LHS. Any ideas as to how I can do that?

$$ LGD = \frac{\Phi \left [ \Phi^{-1}(DR) - \frac{\Phi^{-1}(PD)-\Phi^{-1}(PD\cdot LGD)}{\sqrt{1-\rho}} \right ]}{DR}$$

where
$ \Phi(.) = \text{cumulative normal pdf}$
$ LGD = \text{Loss given default} $
$ PD = \text{Probability of default} $
$ \rho = \text{correlation}?$
$ DR = \text{asymptotic default rate}? $

$\endgroup$
  • 1
    $\begingroup$ Hi and welcome to the forum! Is there a connection between your question and the risk weight formula in the capital adequacy regulation (CRR)? It reminds of this formula (which is based in the one-factor asymptotic risk model). $\endgroup$ – Ric Feb 20 at 10:17
  • $\begingroup$ Looks also similar to Eqn 2.3 in Frye and Jacobs, Credit loss and systematic loss given default, Journal of Credit Risk, 2012 $\endgroup$ – noob2 Feb 20 at 16:34
1
$\begingroup$

Failing an analytic answer I would use Newton's method as a quick and dirty numerical iterator:

You can rearrange to:

$$ (1-\rho) \left (\Phi^{-1}(LGD.DR) - \Phi^{-1}(DR) \right ) + \Phi^{-1}(PD) - \Phi^{-1}(PD.LGD) = 0$$

which given you have fixed DR, LGD and $\rho$ is essentially:

$$K + \Phi^{-1}(PD) - \Phi^{-1}(PD.LGD) = f(PD) = 0$$

Newton's iterative formula yeilds the iterative scheme:

$$ PD_{n+1} = PD_n + \frac{f(PD_n)}{f'(PD_n)} $$

or $$PD_{n+1} = PD_n + \frac{K + \Phi^{-1}(PD_n) - \Phi^{-1}(PD_n.LGD)}{\frac{\partial}{\partial PD} \left( \Phi^{-1}(PD_n) - \Phi^{-1}(PD_n.LGD) \right )} $$

And actually there are numerous algorithms you might use - its not a computationally intensive task: in python you can try:

https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.root_scalar.html#scipy.optimize.root_scalar

from scipy import optimize
def f(x, *args):
    val = # define your function in terms of x = PD, and other static args
    return val

sol = optimize.root_scalar(f, args={}, bracket=[0, 3], method='brentq')
sol = optimize.root_scalar(f, args={}, x0=0.2, fprime=fprime, method='newton')
| improve this answer | |
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.