exponenta event banner

моделировать

Моделирование статистики тестирования ожидаемого дефицита (ES)

Описание

пример

ebts = simulate(ebts) выполняет моделирование статистики тестов ES. simulate функция моделирует результаты портфеля в соответствии с допущениями распределения, указанными в esbacktestbysim и вычисляет все поддерживаемые статистические данные тестирования для каждого сценария. Смоделированная статистика тестов используется для оценки значимости обратных тестов ES.

пример

ebts = simulate(ebts,Name,Value) добавляет необязательные аргументы пары имя-значение.

Примеры

свернуть все

Создание esbacktestbysim и выполните моделирование 1000 сценариев.

load ESBacktestBySimData
rng('default'); % for reproducibility
ebts = esbacktestbysim(Returns,VaR,ES,"t",...
       'DegreesOfFreedom',10,...
       'Location',Mu,...
       'Scale',Sigma,...
       'PortfolioID',"S&P",...
       'VaRID',["t(10) 95%","t(10) 97.5%","t(10) 99%"],...
       'VaRLevel',VaRLevel);

unconditional и minBiasAbsolute отчет о тестах 1000 сценариев (см. Scenarios столбец в отчете).

unconditional(ebts) 
ans=3×10 table
    PortfolioID        VaRID        VaRLevel    Unconditional    PValue    TestStatistic    CriticalValue    Observations    Scenarios    TestLevel
    ___________    _____________    ________    _____________    ______    _____________    _____________    ____________    _________    _________

       "S&P"       "t(10) 95%"        0.95         accept        0.093       -0.13342         -0.16252           1966          1000         0.95   
       "S&P"       "t(10) 97.5%"     0.975         reject        0.031       -0.25011          -0.2268           1966          1000         0.95   
       "S&P"       "t(10) 99%"        0.99         reject        0.008       -0.57396         -0.38264           1966          1000         0.95   

minBiasAbsolute(ebts)
ans=3×10 table
    PortfolioID        VaRID        VaRLevel    MinBiasAbsolute    PValue    TestStatistic    CriticalValue    Observations    Scenarios    TestLevel
    ___________    _____________    ________    _______________    ______    _____________    _____________    ____________    _________    _________

       "S&P"       "t(10) 95%"        0.95          accept         0.062      -0.0014247       -0.0015578          1966          1000         0.95   
       "S&P"       "t(10) 97.5%"     0.975          reject         0.029      -0.0026674       -0.0023251          1966          1000         0.95   
       "S&P"       "t(10) 99%"        0.99          reject         0.005      -0.0060982       -0.0039004          1966          1000         0.95   

Запуск второго моделирования с помощью 5000 сценарии с использованием simulate функция. Повторно запустите unconditional и minBiasAbsolute тесты с использованием обновленного esbacktestbysim объект. Обратите внимание, что тесты теперь показывают 5000 сценариев вместе с обновленными значениями p и критическими значениями.

ebts = simulate(ebts,'BlockSize',10000,'NumScenarios',5000,'TestList',["conditional","unconditional","quantile","minBiasAbsolute","minBiasRelative"]);   
unconditional(ebts) 
ans=3×10 table
    PortfolioID        VaRID        VaRLevel    Unconditional    PValue    TestStatistic    CriticalValue    Observations    Scenarios    TestLevel
    ___________    _____________    ________    _____________    ______    _____________    _____________    ____________    _________    _________

       "S&P"       "t(10) 95%"        0.95         accept        0.0952      -0.13342         -0.17352           1966          5000         0.95   
       "S&P"       "t(10) 97.5%"     0.975         reject        0.0456      -0.25011         -0.24318           1966          5000         0.95   
       "S&P"       "t(10) 99%"        0.99         reject         0.009      -0.57396         -0.38608           1966          5000         0.95   

minBiasAbsolute(ebts,"TestLevel",0.99)
ans=3×10 table
    PortfolioID        VaRID        VaRLevel    MinBiasAbsolute    PValue    TestStatistic    CriticalValue    Observations    Scenarios    TestLevel
    ___________    _____________    ________    _______________    ______    _____________    _____________    ____________    _________    _________

       "S&P"       "t(10) 95%"        0.95          accept         0.0622     -0.0014247       -0.0021797          1966          5000         0.99   
       "S&P"       "t(10) 97.5%"     0.975          accept          0.026     -0.0026674       -0.0032702          1966          5000         0.99   
       "S&P"       "t(10) 99%"        0.99          reject          0.006     -0.0060982       -0.0054814          1966          5000         0.99   

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

свернуть все

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

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

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

Пример: ebts = simulate(ebts,'NumScenarios',1000000,'BlockSize',10000,'TestList','conditional')

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

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

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

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

Индикатор, для которого моделируется статистика тестирования, указанный как пара, разделенная запятыми, состоящая из 'TestList' и массив ячеек из символьных векторов или строковый массив со значением conditional, unconditional, quantile, minBiasAbsolute или minBiasRelative.

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

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

свернуть все

esbacktestbysim (ebts), возвращен как обновленный объект. После выполнения simulate, обновленный esbacktestbysim объект сохраняет смоделированную статистику тестирования, которая используется для вычисления значений p и генерации результатов тестирования.

Для получения дополнительной информации о esbacktestbysim объект, см. esbacktestbysim.

Подробнее

свернуть все

Моделирование статистики испытаний и значимость тестов

Модели VaR и ES предполагают, что для каждого периода t результаты портфеля Xt имеют кумулятивное распределение вероятности Pt.

При предположении, что распределения Pt верны (нулевая гипотеза), статистика теста моделируется:

  • Моделирование M сценарии N каждый, например, Xs = (X1s,..., Xts,..., XN), с Xts ~ Pt,t = 1,…,N, и s = 1,…,M.

  • Для каждого смоделированного сценария Xs, вычислить интересующую статистику теста Zs = Z(Xs), s = 1,…,M.

  • Получающееся M смоделированные статистические значения теста Z1,…,ZM из распределения тестовой статистики, предполагающей распределения вероятностей Pt являются правильными.

Значение p определяется как доля сценариев, для которых смоделированная статистика теста меньше, чем статистика теста, оцененная при наблюдаемых результатах портфеля: Zobs = Z (X1,... XN):

Pvalue=1M∑s=1MI (Zs≤Zobs)

где I(ZsZobs) - индикаторная функция со значением 1 если ZsZobs, и 0 в противном случае. Если Ptest is 1 минус уровень достоверности теста, результат теста равен ‘reject’ если Pvalue < Ptest.

Критическое значение определяется как минимальная смоделированная статистика теста. Zкритерии со значением p, большим или равным Pтест.

Ссылки

[1] Ацерби, С. и Б. Секели. Обратное тестирование ожидаемого дефицита. MSCI Inc. Декабрь 2014 года.

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