exponenta event banner

Оценка существующего контракта CDS

Текущая стоимость или маркировка на рынок существующего контракта CDS - это сумма денег, которую владелец контракта получит (если положительная) или заплатит (если отрицательная), чтобы отменить этот контракт. Исходная часть договора представляет собой текущую стоимость, выраженную в виде доли от условной суммы договора, и обычно используется для цитирования рыночной стоимости.

Стоимость существующих контрактов CDS получена с cdsprice. По умолчанию cdsprice рассматривает контракты как длинные позиции. Является ли договорная позиция длинной или короткой, определяется с точки зрения защиты, то есть длинная означает, что защита была куплена, и короткие средства защиты были проданы. В следующем примере существующий договор CDS оплачивает премию, которая ниже текущих рыночных условий. Цена положительная, как и ожидалось, поскольку купить такой же вид защиты сегодня было бы дороже.

Settle = '17-Jul-2009';   % valuation date for the CDS
MarketDates = datenum({'20-Sep-10','20-Sep-11','20-Sep-12','20-Sep-14',...
'20-Sep-16'});
MarketSpreads = [140 175 210 265 310]';
MarketData = [MarketDates MarketSpreads];

ZeroDates = datenum({'17-Jan-10','17-Jul-10','17-Jul-11','17-Jul-12',...
'17-Jul-13','17-Jul-14'});
ZeroRates = [1.35 1.43 1.9 2.47 2.936 3.311]'/100;
ZeroData = [ZeroDates ZeroRates];

[ProbData,HazData] = cdsbootstrap(ZeroData,MarketData,Settle);

Maturity2 = '20-Sep-2012';
Spread2 = 196;
 
[Price,AccPrem,PaymentDates,PaymentTimes,PaymentCF] = cdsprice(ZeroData,...
ProbData,Settle,Maturity2,Spread2);
 
fprintf('Dirty Price: %8.2f\n',Price+AccPrem);
fprintf('Accrued Premium: %8.2f\n',AccPrem);
fprintf('Clean Price: %8.2f\n',Price);
fprintf('\nPayment Schedule:\n\n');
fprintf('Date \t\t Time Frac \t Amount\n');
for k = 1:length(PaymentDates)
   fprintf('%s \t %5.4f \t %8.2f\n',datestr(PaymentDates(k)),...
      PaymentTimes(k),PaymentCF(k));
end

Таким образом, график платежей:

Dirty Price: 56872.94
Accrued Premium: 15244.44
Clean Price: 41628.50

Payment Schedule:

Date 		 Time Frac 	 Amount
20-Sep-2009 	 0.1806 	 35388.89
20-Dec-2009 	 0.2528 	 49544.44
20-Mar-2010 	 0.2500 	 49000.00
20-Jun-2010 	 0.2556 	 50088.89
20-Sep-2010 	 0.2556 	 50088.89
20-Dec-2010 	 0.2528 	 49544.44
20-Mar-2011 	 0.2500 	 49000.00
20-Jun-2011 	 0.2556 	 50088.89
20-Sep-2011 	 0.2556 	 50088.89
20-Dec-2011 	 0.2528 	 49544.44
20-Mar-2012 	 0.2528 	 49544.44
20-Jun-2012 	 0.2556 	 50088.89
20-Sep-2012 	 0.2556 	 50088.89

Также можно использовать cdsprice оценить портфель контрактов CDS. В следующем примере простая хеджированная позиция с двумя ванильными контрактами CDS, одним длинным, одним коротким, с немного отличающимися спредами, оценивается в одном вызове, и стоимость портфеля представляет собой сумму возвращенных цен:

[Price2,AccPrem2] = cdsprice(ZeroData,ProbData,Settle,...
repmat(datenum(Maturity2),2,1),[Spread2;Spread2+3],...
'Notional',[1e7; -1e7]);

fprintf('Contract \t Dirty Price \t Acc Premium \t  Clean Price\n');
fprintf('    Long \t $ %9.2f \t $ %9.2f \t $ %9.2f \t\n',...
   Price2(1)+AccPrem2(1), AccPrem2(1), Price2(1));
fprintf('   Short \t $ %8.2f \t $ %8.2f \t $ %8.2f \t\n',...
   Price2(2)+AccPrem2(2), AccPrem2(2), Price2(2));
fprintf('Mark-to-market of hedged position: $ %8.2f\n',sum(Price2)+sum(AccPrem2));

Итоговая стоимость портфеля:

Contract 	 Dirty Price 	 Acc Premium 	  Clean Price
    Long 	 $  56872.94 	 $  15244.44 	 $  41628.50 	
   Short 	 $ -48185.88 	 $ -15477.78 	 $ -32708.11 	
Mark-to-market of hedged position: $  8687.06

См. также

| | |

Связанные темы