exponenta event banner

fitLGDModel

Создание указанного типа объекта модели LGD

Описание

пример

lgdModel = fitLGDModel(data,ModelType) создает объект модели с потерями по умолчанию (LGD), указанный data и ModelType. fitLGDModel принимает данные кредита в табличной форме и подходит для модели LGD. ModelType поддерживается для Regression или Tobit.

пример

lgdModel = fitLGDModel(___,Name,Value) указывает параметры, использующие один или несколько аргументов пары имя-значение в дополнение к входным аргументам в предыдущем синтаксисе. Доступные необязательные аргументы пары имя-значение зависят от указанного ModelType.

Примеры

свернуть все

В этом примере показано, как использовать fitLGDModel для создания Regression модель для потерь по умолчанию (LGD).

Загрузить данные LGD

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

load LGDData.mat
head(data)
ans=8×4 table
      LTV        Age         Type           LGD   
    _______    _______    ___________    _________

    0.89101    0.39716    residential     0.032659
    0.70176     2.0939    residential      0.43564
    0.72078     2.7948    residential    0.0064766
    0.37013      1.237    residential     0.007947
    0.36492     2.5818    residential            0
      0.796     1.5957    residential      0.14572
    0.60203     1.1599    residential     0.025688
    0.92005    0.50253    investment      0.063182

Создать Regression Модель LGD

Использовать fitLGDModel для создания Regression модель с использованием data.

lgdModel = fitLGDModel(data,'regression',...
        'ModelID','Example',...
        'Description','Example LGD regression model.',...
        'PredictorVars',{'LTV' 'Age' 'Type'},...
        'ResponseVar','LGD');
disp(lgdModel)
  Regression with properties:

    ResponseTransform: "logit"
    BoundaryTolerance: 1.0000e-05
              ModelID: "Example"
          Description: "Example LGD regression model."
      UnderlyingModel: [1x1 classreg.regr.CompactLinearModel]
        PredictorVars: ["LTV"    "Age"    "Type"]
          ResponseVar: "LGD"

Отображение базовой модели. Переменная ответа базовой модели представляет собой логитовое преобразование данных ответа LGD. Используйте 'ResponseTransform' и 'BoundaryTolerance' аргументы для изменения преобразования.

disp(lgdModel.UnderlyingModel)
Compact linear regression model:
    LGD_logit ~ 1 + LTV + Age + Type

Estimated Coefficients:
                       Estimate       SE        tStat       pValue  
                       ________    ________    _______    __________

    (Intercept)        -5.1939      0.28351     -18.32     1.203e-71
    LTV                 3.3217      0.33058     10.048    1.9484e-23
    Age                -1.4953     0.068658    -21.779    1.0596e-98
    Type_investment     1.3813      0.19406     7.1178    1.3259e-12


Number of observations: 3487, Error degrees of freedom: 3483
Root Mean Squared Error: 4.3
R-squared: 0.195,  Adjusted R-Squared: 0.194
F-statistic vs. constant model: 281, p-value = 2.32e-163

Прогнозирование LGD

Для прогнозирования LGD модель LGD применяет обратное преобразование, так что прогнозы находятся в шкале LGD, а не в преобразованной шкале, используемой для соответствия базовой модели.

predictedLGD = predict(lgdModel,data);
histogram(predictedLGD)
title('Predicted LGD Histogram')
xlabel('Predicted LGD')
ylabel('Frequency')

Figure contains an axes. The axes with title Predicted LGD Histogram contains an object of type histogram.

Проверка модели LGD

Для проверки модели используйте modelDiscrimination, modelDiscriminationPlot, modelAccuracy, и modelAccuracyPlot.

Например, использовать modelDiscriminationPlot для построения кривой ROC.

modelDiscriminationPlot(lgdModel,data)

Figure contains an axes. The axes with title ROC Example, AUROC = 0.68987 contains an object of type line. This object represents Example.

Использовать modelAccuracyPlot чтобы показать график рассеяния предсказаний.

modelAccuracyPlot(lgdModel,data)

Figure contains an axes. The axes with title Scatter Example, R-Squared: 0.063213 contains 2 objects of type scatter, line. These objects represent Data, Fit.

Входные аргументы

свернуть все

Данные для потерь, заданные по умолчанию, указаны как таблица.

Типы данных: table

Тип модели PD, определяемый как скалярная строка или символьный вектор. Используйте одно из следующих значений:

  • Regression - преобразование переменной отклика LGD и подгонка под модель линейной регрессии.

  • Tobit - Подбор регрессионной модели Тобита.

Типы данных: string | char

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: lgdModel = fitLGDModel(data,'regression','PredictorVars',{'LTV' 'Age','Type'},'ResponseVar','LGD','ResponseTransform','probit','BoundaryTolerance',1e-6)

Доступные аргументы пары имя-значение зависят от значения, указанного для ModelType.

Аргументы пары «имя-значение» для объектов модели

Выходные аргументы

свернуть все

Потеря данной модели по умолчанию, возвращенная как lgdModel объект. Поддерживаемые классы: Regression и Tobit.

Ссылки

[1] Бэзенс, Барт, Даниэль Рош и Харальд Шиле. Анализ кредитных рисков: методы измерения, приложения и примеры в SAS. Уайли, 2016.

[2] Беллини, Тициано. МСФО (IFRS) 9 и CECL «Моделирование и валидация кредитных рисков: практическое руководство с примерами, работающими в R и SAS». Сан-Диего, Калифорния: Elsevier, 2019.

Представлен в R2021a