tbfi

Время между независимостью отказов тестирует на подверженный риску значения (VaR) backtesting

Описание

пример

TestResults = tbfi(vbt) генерирует тест времени между независимостью отказов (TBFI) для подверженного риску значения (VaR) backtesting.

пример

TestResults = tbfi(vbt,Name,Value) добавляет дополнительный аргумент пары "имя-значение" для TestLevel.

Примеры

свернуть все

Создайте varbacktest объект.

load VaRBacktestData
vbt = varbacktest(EquityIndex,Normal95)
vbt = 
  varbacktest with properties:

    PortfolioData: [1043x1 double]
          VaRData: [1043x1 double]
      PortfolioID: "Portfolio"
            VaRID: "VaR"
         VaRLevel: 0.9500

Сгенерируйте tbfi результаты испытаний.

TestResults = tbfi(vbt)
TestResults=1×14 table
    PortfolioID    VaRID    VaRLevel     TBFI     LRatioTBFI    PValueTBFI    Observations    Failures    TBFMin    TBFQ1    TBFQ2    TBFQ3    TBFMax    TestLevel
    ___________    _____    ________    ______    __________    __________    ____________    ________    ______    _____    _____    _____    ______    _________

    "Portfolio"    "VaR"      0.95      reject      88.491      0.0047475         1043           57         1         3        9      25.25      85        0.95   

Используйте varbacktest конструктор с аргументами пары "имя-значение", чтобы создать varbacktest объект.

load VaRBacktestData
    vbt = varbacktest(EquityIndex,...
       [Normal95 Normal99 Historical95 Historical99 EWMA95 EWMA99],...
       'PortfolioID','Equity',...
       'VaRID',{'Normal95' 'Normal99' 'Historical95' 'Historical99' 'EWMA95' 'EWMA99'},...
       'VaRLevel',[0.95 0.99 0.95 0.99 0.95 0.99])
vbt = 
  varbacktest with properties:

    PortfolioData: [1043x1 double]
          VaRData: [1043x6 double]
      PortfolioID: "Equity"
            VaRID: [1x6 string]
         VaRLevel: [0.9500 0.9900 0.9500 0.9900 0.9500 0.9900]

Сгенерируйте tbfi результаты испытаний с помощью TestLevel дополнительный вход.

TestResults = tbfi(vbt,'TestLevel',0.90)
TestResults=6×14 table
    PortfolioID        VaRID         VaRLevel     TBFI     LRatioTBFI    PValueTBFI    Observations    Failures    TBFMin    TBFQ1    TBFQ2    TBFQ3    TBFMax    TestLevel
    ___________    ______________    ________    ______    __________    __________    ____________    ________    ______    _____    _____    _____    ______    _________

     "Equity"      "Normal95"          0.95      reject      88.491      0.0047475         1043           57         1           3      9      25.25      85         0.9   
     "Equity"      "Normal99"          0.99      accept      22.929        0.15157         1043           17         3       21.25     48      78.25     215         0.9   
     "Equity"      "Historical95"      0.95      reject      82.719       0.022513         1043           59         1           3     13         25      85         0.9   
     "Equity"      "Historical99"      0.99      accept      16.228        0.18101         1043           12         3        19.5     45      152.5     200         0.9   
     "Equity"      "EWMA95"            0.95      accept      71.635        0.12517         1043           59         1           4     13      25.75      82         0.9   
     "Equity"      "EWMA99"            0.99      reject       31.83       0.080339         1043           22         2          16     40         56     143         0.9   

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

свернуть все

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

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

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

Пример: TestResults = tbfi(vbt,'TestLevel',0.99)

Протестируйте доверительный уровень в виде разделенной запятой пары, состоящей из 'TestLevel' и числовое между 0 и 1.

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

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

свернуть все

tbfi результаты испытаний, возвращенные как таблица, где строки соответствуют всем комбинациям ID портфеля, VaR ID и уровней VaR, которые будут протестированы. Столбцы соответствуют следующей информации:

  • 'PortfolioID' — ID портфеля для определенных данных

  • 'VaRID' — VaR ID для каждого из обеспеченных столбцов данных VaR

  • 'VaRLevel' — Уровень VaR для соответствующего столбца данных VaR

  • 'TBFI' — Категориальный массив с категориями accept и reject это указывает на результат tbfi тест

  • 'LRatioTBFI' — Отношение правдоподобия tbfi тест

  • 'PValueTBFI' — P-значение tbfi тест

  • 'Observations' — Количество наблюдений

  • 'Failures' — Количество отказов

  • 'TBFMin' — Минимальное значение наблюдаемых времен между отказами

  • 'TBFQ1' — Первый квартиль наблюдаемых времен между отказами

  • 'TBFQ2' — Второй квартиль наблюдаемых времен между отказами

  • 'TBFQ3' — Третий квартиль наблюдаемых времен между отказами

  • 'TBFMax' — Максимальное значение наблюдаемых времен между отказами

  • 'TestLevel' — Протестируйте доверительный уровень

Примечание

Для tbfi результаты испытаний, условия accept и reject используются для удобства, технически tbfi тест не принимает модель. Скорее тесту не удается отклонить его.

Больше о

свернуть все

Время между независимостью отказов (TBIF) тест

tbfi функция выполняет время между тестом независимости отказов. Этот тест является расширением теста времени до первого отказа (TUFF) Купика.

TBFI был предложен Хаасом (2001), чтобы протестировать на независимость. Это учитывает не только время до первого отказа, но также и время между всеми отказами. В течение времени между отказами смешанный тест смотрите tbf функция.

Алгоритмы

Отношение правдоподобия (тестируют статистическую величину) теста TBFI является суммой ТУФОВЫХ отношений правдоподобия в течение каждого раза между отказами. Если x является количеством отказов, и n 1 является количеством периодов до первого отказа, n 2 количество периодов между первым и вторым отказом, и, в целом, n, i является количеством периодов между отказом i1 и отказ i, затем отношение правдоподобия LRatioTBFI i для каждого i n основан на ТУФОВОЙ формуле

LRatioTBFIi=LRatioTUFF(ni)=2i=1xlog(pVaR(1pVaR)ni1(1ni)(11ni)ni1)=2(log(pVaR)+(ni1)log(1pVaR)+nilog(ni)(ni1)log(ni1))

Как с tuff тест, LRatioTBFI i = −2log (pVaR), если n i = 1.

Отношение правдоподобия TBFI LRatioTBFI является затем суммой отдельных отношений правдоподобия навсегда между отказами

LRatioTBFI=i=1xLRatioTBFIi

который асимптотически распределяется как распределение хи-квадрат со степенями свободы x, где x является количеством отказов.

p - значение tbfi тест является вероятностью, что распределение хи-квадрат со степенями свободы x превышает отношение правдоподобия LRatioTBFI

PValueTBFI=1F(LRatioTBFI)

где F является кумулятивным распределением переменной хи-квадрата со степенями свободы x, и x является количеством отказов.

Результат теста состоит в том, чтобы принять если

F(LRatioTBFI)<F(TestLevel)

и отклоните в противном случае, где F является кумулятивным распределением переменной хи-квадрата со степенями свободы x, и x является количеством отказов.

Если нет никаких отказов в выборке, тестовая статистическая величина не задана. Это обработано то же самое как ТУФОВЫЙ тест без отказов. Для получения дополнительной информации смотрите tuff.

Ссылки

[1] Хаас, M. "Новые методы в Backtesting". Финансовая разработка, научно-исследовательский центр Цезарь, Бонн, 2001.

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