Professional Documents
Culture Documents
Credit Valuation Adjustment
Credit Valuation Adjustment
Valuation
Adjustment
Banks enter into financial contracts such as bonds, loans, swaps, derivatives etc with counterparties. This
exposes the bank to the risk that the counterparty may not be able to make the future contractual
payments. Such an event is called a default, and the risk is called counterparty credit risk.
Let us assume that you have entered into a contract with counterparty with notional . This contract
expires in time years. The value of this contract at any time in the future is where is a random
variable with distribution (this distribution may vary with time t).
If this value is positive and counterparty defaults, you bear a loss equal to this value of the contract at that
time. This amount is called loss in default. Note that the counterparty can default at any time. Even if it does
not owe anything to you immediately, you cannot guarantee that it will pay when it is supposed to, because
it has already defaulted.
1. Assume that the counterparty can default with a constant probability in time to given
that it has not defaulted till . What is the expected value of the loss in default (in terms of percentage
of notional)? This is called credit valuation adjustment or CVA.
2. To reduce the CVA exposure, the counterparty agrees to pay the value of the contract above a
specified threshold (in terms of percentage of the notional). This way, if the counterparty defaults,
you can lose maximum amount . Calculate the CVA in this case.
3. The counterparty can be categorized into 4 ratings - , , and where is default. The
thresholds for each rating are different, with corresponding thresholds > > (thresholds
dont make any sense in default). The counterparty rating can change from to with probability
in time to , given that it was in at time . Given the transition probabilities and the
thresholds, calculate CVA.
Clearly, the way to ensure a smaller CVA is by setting lower thresholds. However, the counterparty may
not like a low threshold and disagree from doing any transactions with you.
1. Come up with a way to set thresholds for the counterparty such that your CVA exposure is less than a
given of the notional
2. The counterparty can refuse to transact with you unless you set a reasonably high threshold for its
initial rating. Incorporate this into your model for calculating thresholds so that CVA is less than a given
of notional
The counterparty ensures that the full amount over threshold is paid at all times. This way the loss in
default is less than or equal to the threshold. If the amount above threshold falls, the counterparty will
take back the appropriate amount. Note that the threshold and rating just before default will dictate the
loss you bear.
Ratings can change one level up or down. Default can occur at any time from any rating. However,
ratings cannot jump by 2 levels (for example, rating cannot change from A to C, but can change from A
to D). Once in default, always in default.
Initial threshold is based on initial rating R. Threshold changes when rating changes.
You can ignore discount factor. If you do not know what that is, you can ignore this point altogether
2. : where will be a number. This represents a normal distribution with time dependent std dev =
. For example, d=n0.1 means normal distribution with and
3. : where will be a number. This represents a lognormal distribution with time dependent
. For example, d=l0.1 means lognormal distribution with and
If you do not want to attempt a test case, you can skip that input index. For part 4 and 5, if it is impossible
to find a threshold, please print i,4,-1,-1,-1 or i,5,-1,-1,-1 respectively.
For part 1, 2 and 3, your output should match within a reasonable tolerance (less than 1% relative error) of
the correct answer. For parts 4 and 5, your output should ensure that all constraints are satisfied.
Datasets
Downloads: CVA_A.txt, CVA_B.txt
To help you start off, we have given answers to a few tests cases from CVA_A.txt in Sample_Output.txt
CORRECTION Please use the following correction for the last 2 lines in Sample_Output.txt:
31,3,0.3529
35,3,0.3781
Output
The output for each tests case should a separate file named Output_A.txt and Output_B.txt. Ensure that
you submit it at the appropriate upload link.
Please upload the following as part of model documentation & source code in a single zip file:
1. All source code files (quoting any references you may have used)
2. A documentation of your solution. This can be in PDF, PPT, PPTX, DOC or DOCX formats. Do
include the following aspects in your model doc:
Assumptions
3. Please ensure consistency between output and the methodology you explain in model document.
4. If there are any additional ideas that you wish to include in the documentation which could not be
implemented, please clearly mark them so.
You may use Monte Carlo techniques to find the solution. However, it is not necessary to do so.
References:
Credit Rating
Survival Analysis
Variance Reduction
Variance Reduction: 2