1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| new;
library pgraph;
Maturity = 5;
N = 100;
Nominal = 100;
Lambda = 50/1e4;
RR = 0.40;
r = 0.03; // Taux d'int¶er^et
Ns = 1e3; // Nombre de simulations
Tm = seqa(0.25,0.25,Maturity/0.25); // Echeancier trimestriel
dTm = 0.25;
B0Tm = exp(-r*Tm); // B(t0,tm)
rho = 0.5;
u = cdfn(sqrt(rho)*rndn(1,Ns) + sqrt(1-rho)*rndn(N,Ns));
tau = -ln(1-u)./lambda;
Lower_Tranche = 0.05;
Upper_Tranche = 0.10;
MaxLoss = N * Nominal * (1-RR);
Lower_Tranche = Lower_Tranche * MaxLoss;
Upper_Tranche = Upper_Tranche * MaxLoss;
Loss = zeros(rows(Tm),Ns);
for i(1,Ns,1);
Loss[.,i] = sumc( Nominal * (1-RR) * (tau[.,i] .<= Tm') );
endfor;
fn _max_(x,y) = x .* (x .> y) + y .* (x .<= y); |