Сравнение модели Мертона одноточечный подход к Timeseries

Этот пример показывает, как сравнить подход модели Мертона, где предусмотрена волатильность капитала, с подходом временных рядов.

Загрузите данные из MertonData.mat.

load MertonData.mat
Dates     = MertonDataTS.Dates;
Equity    = MertonDataTS.Equity;
Liability = MertonDataTS.Liability;
Rate      = MertonDataTS.Rate;

Для заданной точки данных в возвратах соответствующая волатильность капитала вычисляется с последних предыдущих 30 дней.

Returns     = tick2ret(Equity);
DateReturns = Dates(2:end);
SampleSize  = length(Returns); 

EstimationWindowSize = 30;
TestWindowStart      = EstimationWindowSize+1;
TestWindow           = (TestWindowStart : SampleSize)';

EquityVol = zeros(length(TestWindow),1);

for i = 1 : length(TestWindow)
    t = TestWindow(i);
    EstimationWindow = t-EstimationWindowSize:t-1;
    EquityVol(i) = sqrt(250)*std(Returns(EstimationWindow));
end

Сравните вероятности дефолта и предполагаемые значения волатильности основных средств и основных средств только в окне тестирования.

[PDTS,DDTS,ATS,SaTS] = mertonByTimeSeries(Equity(TestWindow),Liability(TestWindow),Rate(TestWindow));

[PDh,DDh,Ah,Sah] = mertonmodel(Equity(TestWindow),EquityVol,Liability(TestWindow),Rate(TestWindow));

figure
plot(Dates(TestWindow),PDTS,Dates(TestWindow),PDh)
xlabel('Date')
ylabel('Probability of Default')
legend({'Time Series','With \sigma_E'},'Location','best')

Figure contains an axes. The axes contains 2 objects of type line. These objects represent Time Series, With \sigma_E.

Вероятности дефолта по сути нулевые до начала 2016 года. На этой точке обе модели начинают предсказывать положительные вероятности по умолчанию, но мы наблюдаем некоторые различия между двумя моделями.

Обе модели калибруют значения активов и волатильность активов. Значения основных средств для обоих подходов совпадают. Однако метод timeseries по проекту вычисляет волатильность одного актива для всего временного окна, а версия модели Мертона с одной точкой вычисляет одну волатильность для каждого временного периода, как показано на следующем рисунке.

figure
plot(Dates(TestWindow),SaTS*ones(size(TestWindow)),Dates(TestWindow),Sah)
xlabel('Date')
ylabel('Asset Volatility')
legend({'Time Series','With \sigma_E'},'Location','best')

Figure contains an axes. The axes contains 2 objects of type line. These objects represent Time Series, With \sigma_E.

Ближе к концу временного окна вероятность дефолта в одной точке выше вероятности дефолта во timeseries, когда волатильность активов в одной точке также выше вероятности timeseries (и наоборот). Однако до 2016 года волатильность не влияет на вероятность по умолчанию. Это означает, что другие факторы должны влиять на чувствительность вероятности по умолчанию к волатильности актива и общему уровню вероятности по умолчанию.

Коэффициент долевого участия фирмы, определяемый как отношение пассивов к собственному капиталу, является ключевым фактором для понимания значений вероятностей дефолта в этом примере. Ранее в временном окне коэффициент кредитного плеча был низким. Однако во второй половине временного окна коэффициент рычага значительно увеличивается, как показано на следующем рисунке.

Leverage = Liability(TestWindow)./Equity(TestWindow);

figure
plot(Dates(TestWindow),Leverage)
xlabel('Date')
ylabel('Leverage Ratio')

Figure contains an axes. The axes contains an object of type line.

Следующий график показывает вероятность по умолчанию относительно волатильности активов для низких и высоких коэффициентов кредитного плеча. Коэффициент кредитного плеча используется, чтобы разделить точки на две группы, в зависимости от того, является ли коэффициент кредитного плеча большим или меньшим, чем значение отсечения. В этом примере значение отсечения 1 хорошо работает.

Для низкого кредитного плеча вероятность дефолта по существу равна нулю, независимо от волатильности активов. В ситуациях с высоким плечом, таких как конец временного окна, вероятность дефолта сильно коррелирует с волатильностью активов.

figure
subplot(2,1,1)
gscatter(Leverage,PDh,Leverage>1,'br','.*')
xlabel('Leverage')
ylabel('Probability of Default')
legend('Low Leverage','High Leverage','Location','northwest')
subplot(2,1,2)
gscatter(Sah,PDh,Leverage>1,'br','.*')
xlabel('Asset Volatility')
ylabel('Probability of Default')
legend('Low Leverage','High Leverage','Location','northwest')

Figure contains 2 axes. Axes 1 contains 2 objects of type line. These objects represent Low Leverage, High Leverage. Axes 2 contains 2 objects of type line. These objects represent Low Leverage, High Leverage.

См. также

|

Похожие темы