simulate

Симулируйте тестовую статистику ожидаемого недостатка (ES) Дю-Эсканкяно (DE)

Описание

пример

ebtde = simulate(ebtde) выполняет симуляцию Дю-Эсканкяно (DE) [1] тестовая статистика ожидаемого недостатка (ES). simulate симулирует сценарии и вычисляет поддерживаемую тестовую статистику для каждого сценария. Функция использует симулированную тестовую статистику, чтобы оценить значение ES backtests когда CriticalValueMethod аргумент пары "имя-значение" для unconditionalDE или conditionalDE установлен в 'simulation'.

пример

ebtde = simulate(___,Name,Value) задает опции с помощью одного или нескольких аргументов пары "имя-значение" в дополнение к входному параметру в предыдущем синтаксисе.

Примеры

свернуть все

Создайте esbacktestbyde объект для t модели с 10 степенями свободы. Во-первых, запустите conditionalDE протестируйте на основе 1 000 сценариев и затем используйте simulate функционируйте, чтобы запустить вторую симуляцию с 5 000 сценариев.

load ESBacktestDistributionData.mat
  rng('default'); % For reproducibility
    % Constructor runs simulation with 1000 scenarios
  ebtde = esbacktestbyde(Returns,"t",...
       'DegreesOfFreedom',T10DoF,...
       'Location',T10Location,...
       'Scale',T10Scale,...
       'PortfolioID',"S&P",...
       'VaRID',["t(10) 95%","t(10) 97.5%","t(10) 99%"],...
       'VaRLevel',VaRLevel);
% Run conditionalDE tests
conditionalDE(ebtde,'CriticalValueMethod','simulation')
ans=3×13 table
    PortfolioID        VaRID        VaRLevel    ConditionalDE    PValue    TestStatistic    CriticalValue    AutoCorrelation    Observations    CriticalValueMethod    NumLags    Scenarios    TestLevel
    ___________    _____________    ________    _____________    ______    _____________    _____________    _______________    ____________    ___________________    _______    _________    _________

       "S&P"       "t(10) 95%"        0.95         reject        0.003        15.285           3.2822           0.088175            1966           "simulation"           1         1000         0.95   
       "S&P"       "t(10) 97.5%"     0.975         reject        0.006        16.177           3.9304           0.090711            1966           "simulation"           1         1000         0.95   
       "S&P"       "t(10) 99%"        0.99         reject        0.037        6.9975           4.1995            0.05966            1966           "simulation"           1         1000         0.95   

Тестовые сценарии отчета 1000, смотрите Scenarios столбец.

Запустите вторую симуляцию с 5 000 сценариев

ebtde = simulate(ebtde,'NumScenarios',5000);
conditionalDE(ebtde,'CriticalValueMethod','simulation')
ans=3×13 table
    PortfolioID        VaRID        VaRLevel    ConditionalDE    PValue    TestStatistic    CriticalValue    AutoCorrelation    Observations    CriticalValueMethod    NumLags    Scenarios    TestLevel
    ___________    _____________    ________    _____________    ______    _____________    _____________    _______________    ____________    ___________________    _______    _________    _________

       "S&P"       "t(10) 95%"        0.95         reject        0.0016       15.285           3.2535           0.088175            1966           "simulation"           1         5000         0.95   
       "S&P"       "t(10) 97.5%"     0.975         reject        0.0046       16.177           3.7668           0.090711            1966           "simulation"           1         5000         0.95   
       "S&P"       "t(10) 99%"        0.99         reject        0.0362       6.9975           3.8144            0.05966            1966           "simulation"           1         5000         0.95   

Тесты показывают 5 000 сценариев и обновленных p-значений и критических значений.

Входные параметры

свернуть все

esbacktestbyde объект, который содержит копию данных (PortfolioData, VarData, ESData, и Distribution свойства) и все комбинации ID портфеля, VaR ID и уровней VaR, которые будут протестированы. Для получения дополнительной информации о создании esbacktestbyde возразите, смотрите esbacktestbyde.

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

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

Пример: ebtde = simulate(ebtde,'NumLags',10,'NumScenarios',1000000,'BlockSize',10000,'TestList','conditionalDE')

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

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

Количество сценариев, чтобы симулировать, заданное использование разделенной запятой пары, состоящей из 'NumScenarios' и скалярное положительное целое число.

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

Количество сценариев, чтобы симулировать в одном блоке симуляции, заданное использование разделенной запятой пары, состоящей из 'BlockSize' и скалярное положительное целое число.

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

Индикатор, для который тестовая статистика симулировать в виде разделенной запятой пары, состоящей из 'TestList' и массив ячеек из символьных векторов или массив строк со значением 'conditionalDE', 'unconditionalDE'.

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

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

свернуть все

ebtde возвращен как обновленный esbacktestbyde объект. После того, как вы запускаете simulate, обновленный esbacktestbyde объектно-ориентированная память симулированная тестовая статистика, который unconditionalDE использование, чтобы вычислить p - значения и сгенерировать результаты испытаний.

Для получения дополнительной информации о esbacktestbyde возразите, смотрите esbacktestbyde.

Больше о

свернуть все

Симуляция тестовой статистики

simulation тестовой статистики требует сценариев симуляции возвратов, принятия распределения возвратов X t ~ P, t правилен (нулевая гипотеза) и вычисление соответствующей тестовой статистики для каждого сценария.

А именно, следующие шаги описывают процесс симуляции. Описание использует условную тестовую статистическую величину C ES для конкретности, но те же шаги применяются к безусловной тестовой статистической величине U ES.

  1. Симулируйте сценарии M возвратов как

    Xs=(X1s,...,XNs), s=1,...,M.

  2. Вычислите соответствующую тестовую статистическую величину как

    CESs=CES(X1s,...,XNs), s=1,...,M.

  3. Задайте P C как эмпирическое распределение симулированных тестовых значений статистической величины как

    PC=P[CESx]=1MI(CESsx),

    где I(.) является функцией индикатора.

Чтобы вычислить тестовую статистическую величину на шаге 2, ранги или сопоставленный возвращают U t =, P t (X t) должен быть вычислен (см. определение тестовой статистики для unconditionalDE и conditionalDE). Предположение, что распределение модели правильно, ранги U, t всегда равномерно распределен в единичном интервале. Поэтому на практике непосредственно симуляция занимает место, более эффективно, чем симуляция возвращается и затем преобразование возвратов в ранги.

simulate функционируйте реализует процесс симуляции более эффективно можно следующим образом:

  1. Симулированные сценарии M возвратов как

    Us=(U1s,...,UNs), s=1,...,M,с Uts~Uniform(0,1).

  2. Вычислите соответствующую тестовую статистическую величину C ES с помощью симулированных рангов U s как

    CESs=CES(U1s,...,UNs), s=1,...,M.

  3. Задайте P C как эмпирическое распределение симулированных тестовых значений статистической величины как

    PC=P[CESx]=1MI(CESsx).

После того, как вы определите эмпирическое распределение тестовой статистической величины P C на шаге 3, значение теста следует предусмотренным описаниям unconditionalDE и conditionalDE. Те же шаги применяются к безусловной тестовой статистической величине U ES и его функция распределения P U.

Ссылки

[1] Du, Z. и Х. К. Эскансиано. "Бэктестинг ожидаемый недостаток: составление риска хвоста". Наука управления. Издание 63, выпуск 4, апрель 2017.

[2] Базельский комитет по банковскому надзору. "Требования минимального капитала для риска рынка". Январь 2016 (https://www.bis.org/bcbs/publ/d352.pdf).

Введенный в R2019b
Для просмотра документации необходимо авторизоваться на сайте