Ожидаемый недостаток (ES) квантиля backtest Acerbi и Szekely
запускает ES квантиля backtest Acerbi-Szekely (2014).TestResults
= quantile(ebts
)
[
добавляет дополнительный аргумент пары "имя-значение" для TestResults
,SimTestStatistic
] = quantile(ebts
,Name,Value
)TestLevel
.
Создайте esbacktestbysim
объект.
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);
Сгенерируйте протокол испытаний квантиля ES.
TestResults = quantile(ebts)
TestResults=3×10 table
PortfolioID VaRID VaRLevel Quantile PValue TestStatistic CriticalValue Observations Scenarios TestLevel
___________ _____________ ________ ________ ______ _____________ _____________ ____________ _________ _________
"S&P" "t(10) 95%" 0.95 reject 0.002 -0.10602 -0.055798 1966 1000 0.95
"S&P" "t(10) 97.5%" 0.975 reject 0 -0.15697 -0.073513 1966 1000 0.95
"S&P" "t(10) 99%" 0.99 reject 0 -0.26561 -0.10117 1966 1000 0.95
ebts
— esbacktestbysim
объектesbacktestbysim
(ebts
) объект, который содержит копию определенных данных (PortfolioData
, VarData
, ESData
, и Distribution
свойства) и все комбинации ID портфеля, VaR ID и уровней VaR, которые будут протестированы. Для получения дополнительной информации о создании esbacktestbysim
возразите, смотрите esbacktestbysim
.
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
[TestResults,SimTestStatistic] = quantile(ebts,'TestLevel',0.99)
'TestLevel'
— Протестируйте доверительный уровень
(значение по умолчанию) | числовой со значениями между 0
и 1
Протестируйте доверительный уровень, заданный как разделенная запятой пара, состоящая из 'TestLevel'
и числовое значение между 0
и 1
.
Типы данных: double
TestResults
— РезультатыРезультаты, возвращенные как таблица, где строки соответствуют всем комбинациям ID портфеля, VaR ID и уровней VaR, которые будут протестированы. Столбцы соответствуют следующей информации:
'PortfolioID'
— ID портфеля для определенных данных
'VaRID'
— VaR ID для каждого из обеспеченных столбцов данных VaR
'VaRLevel'
— Уровень VaR для соответствующего столбца данных VaR
'Quantile'
— Категориальный массив с категориями 'принимает' и 'отклоняет' указание на результат теста квантиля
'PValue'
— P - значение теста квантиля
'TestStatistic'
— Тестовая статистическая величина квантиля
'CriticalValue'
— Критическое значение для теста квантиля
'Observations'
— Количество наблюдений
'Scenarios'
— Количество сценариев, симулированных, чтобы получить p - значения
'TestLevel'
— Протестируйте доверительный уровень
SimTestStatistic
— Симулированные значения тестовой статистической величиныСимулированные значения тестовой статистической величины, возвращенной как NumVaRs
- NumScenarios
числовой массив.
Тест quantile (также известный как третий тест Acerbi-Szekely) использует демонстрационное средство оценки ожидаемого недостатка.
Ожидаемый недостаток для демонстрационного Y
1, …, Y
N:
где
N
количество периодов в тестовом окне (t = 1
N
).
P
VaR является вероятностью отказа VaR, заданного как уровень с 1 var.
Y
[1], …, Y
[N] отсортированные демонстрационные значения (от самого маленького до самого большого), и самое большое целое число, меньше чем или равное Np
Var.
Чтобы вычислить квантиль тестируют статистическую величину, выборку размера N
создается в каждый раз t можно следующим образом. Во-первых, преобразуйте результаты портфеля в X
t к рангам использование кумулятивной функции распределения P
t. Если предположения распределения правильны, значения ранга U
1, …, U
N равномерно распределены в интервале (0,1). Затем в каждый раз t:
Инвертируйте ранги U = (U
1, …, U
N) получить N
квантили .
Вычислите демонстрационное средство оценки .
Вычислите ожидаемое значение демонстрационного средства оценки
где V
= (V
1, …, V
N является выборкой N
независимые универсальные случайные переменные в интервале (0,1). Это значение может быть вычислено аналитически.
Задайте тестовую статистическую величину квантиля как
Знаменатель в сумме может быть вычислен аналитически как
где I
x (z
W
) упорядоченная неполная бета-функция. Для получения дополнительной информации смотрите betainc
.
Предположение, что дистрибутивные предположения правильны, ожидаемое значение тестовой статистической величины Z
квантилем является 0
.
Это выражается как:
Отрицательные величины тестовой статистической величины указывают на недооценку риска. Тест квантиля является односторонним тестом, который отклоняет модель, когда существует доказательство, что модель недооценивает риск. (Для технических деталей на пустых и альтернативных гипотезах см. Acerbi-Szekely, 2014). Тест квантиля отклоняет модель, когда p - значение меньше 1
минус тестовый доверительный уровень.
Для получения дополнительной информации о симуляции тестовой статистики и вычислении p - значения и критические значения, смотрите simulate
.
Тестовая статистическая величина квантиля четко определена, когда нет никаких отказов VaR в данных.
Однако, когда ожидаемое количество отказов Np
VaR мал, корректировка требуется. Демонстрационное средство оценки ожидаемого недостатка берет среднее значение самого маленького N
наблюдения хвоста в выборке, где . Если Np
VaR <1
, затем N
хвост = 0
, демонстрационное средство оценки ожидаемого недостатка становится пустой суммой, и тестовая статистическая величина квантиля не определена.
Составлять это, каждый раз, когда Np
VaR <1
, значение N
хвост установлен в 1
. Таким образом демонстрационное средство оценки ожидаемого недостатка имеет один термин и равно минимальному значению выборки. С этой корректировкой тестовая статистическая величина квантиля затем четко определена, и анализ значения неизменен.
[1] Acerbi, C. и Б. Сзекели. Бэктестинг ожидаемый недостаток. Декабрь 2014 MSCI Inc.
conditional
| esbacktestbyde
| esbacktestbysim
| runtests
| simulate
| summary
| unconditional
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.