主要内容

varbacktest

创建varbacktest对象以延迟价值(var)的套件

描述

通用的工作流程是:

  1. 加载或生成用于VaR回溯测试分析的数据。

  2. 创建一个varbacktest对象。有关更多信息,请参阅创建varbacktest

  3. 使用概括用于为定向数据生成摘要报告的函数,就观察次数和故障次数。

  4. 使用runtests.功能立即运行所有测试。

  5. 有关其他测试详细信息,请运行以下单个测试:

    • tl-交通灯测试

    • 箱子-二项测试

    • pof-故障比例

    • t- 第一次失败的时间

    • cc-条件覆盖混合

    • cci- 有条件的覆盖独立性

    • TBF.- 混合失败之间的时间

    • TBFI.-故障之间的时间独立性

    有关更多信息,请参阅var回溯工作流程

创建

描述

例子

VBT.= varbacktest(PortfolioDataVaRData创造一个varbacktestVBT.)对象,使用投资组合结果数据和相应的风险值(VaR)数据。的VBT.对象具有以下属性:

  • PortfolioData- - - - - -NumRows-经过-1包含副本的数字数组PortfolioData

  • VaRData- - - - - -NumRows-经过-NumVaRs包含副本的数字数组VaRData

  • portfolioid.-包含portfolioid.

  • varid.- - - - - -1-经过-NumVaRs字符串向量包含varid.S表示中相应的列VaRData

  • VaRLevel- - - - - -1-经过-NumVaRs包含该数组的数字数组VaRLevelS表示中相应的列VaRData

请注意

  • 的所需输入参数PortfolioDataVaRData必须使用相同的单位。这些论点可以用回报或利润和亏损来表示。中没有验证varbacktest对象关于这些参数的单位。

  • 如果缺失值(S)在数据中PortfolioDataVaRData,则在应用测试之前将丢弃数据行。因此,对于缺失值数量不同的模型,报告的观测值数量也不同。报告的观察数等于原始行数减去缺失值数。要确定是否有被丢弃的行,请使用“失踪”列的概括报告。

例子

VBT.= varbacktest(___名称,值特性使用前面语法中的名称-值对和任何参数。例如,vbt = varbacktest (PortfolioData VaRData,‘PortfolioID’,‘Equity100’,‘VaRID’,‘TotalVaR’,‘VaRLevel’,。).您可以将多个名称值对指定为可选名称 - 值对参数。

输入参数

展开全部

投资组合结果数据,指定为aNumRows-经过-1数字数组,NumRows-经过-1表,或者NumRows-经过-1包含包含投资组合的数字列的时间表。PortfolioData输入设置PortfolioData财产。

请注意

的所需输入参数PortfolioDataVaRData必须使用相同的单位。这些论点可以用回报或利润和亏损来表示。中没有验证varbacktest对象关于这些参数的单位。

数据类型:双倍的|表格|时间表

风险值(VaR)数据,用aNumRows-经过-NumVaRs数字数组,NumRows-经过-NumVaRs表,或者NumRows-经过-NumVaRs数字列的时间表。VaRData输入设置VaRData财产。

如果VaRData有多个列(NumVaRs>1), 这PortfolioData是否针对每个列进行测试VaRData.默认情况下,0.95中的所有列使用VaR置信度VaRData.(使用VaRLevel来指定不同的VaR置信水平。)

“公约”是var是正数量。因此,当损失(投资组合数据的负数)超过VAR时,记录故障,即何时

-PortfolioData > VaRData

例如,每当有比1,000,000损失(投资组合结果的负数或损失的负面的结果差,违反了1,000,000(正面)的var。

VaRData值是允许的,但是负的VaR值表明在给定的VaR置信水平下投资组合不会赔钱。也就是说,在给定的信心水平下,最坏的情况仍然是盈利。

请注意

的所需输入参数PortfolioDataVaRData必须使用相同的单位。这些论点可以用回报或利润和亏损来表示。中没有验证varbacktest对象关于这些参数的单位。

数据类型:双倍的|表格|时间表

名称-值对的观点

指定可选的逗号分隔的对名称,值论点。的名字参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数name1,value1,...,namen,valuen

例子:vbt = varbacktest (PortfolioData VaRData,‘PortfolioID’,‘Equity100’,‘VaRID’,‘TotalVaR’,‘VaRLevel’,。)

用户定义的ID forPortfolioData输入,指定为逗号分隔的对,由'portfolioid'和一个字符向量或字符串。的portfolioid.名称 - 值对参数设置portfolioid.财产。

如果PortfolioData是数字数组,默认值为portfolioid.“投资组合”.如果PortfolioData是一张桌子,portfolioid.默认设置为表中相应的变量名。

数据类型:char|细绳

VaR标识符VaRData列,指定为逗号分隔对组成“VaRID”和一个字符向量或字符串。多个varid.S使用a指定1-经过-NumVaRs(或NumVaRs-经过-1)字符向量或字符串向量的单元格数组,具有用户定义的IDVaRData列。的varid.名称 - 值对参数设置varid.财产。

如果NumVaRs1的默认值varid.“VaR”.如果NumVaRs>1,默认值为“VaR1”“VaR2”,等等。如果VaRData是一张桌子,“VaRID”默认设置为表中相应的变量名。

数据类型:char|细胞|细绳

VaR置信水平,指定为逗号分隔的对,由“VaRLevel”和中间的数字01或者一个1-经过-NumVaRs数值数组之间的值01对于相应的列VaRData.的VaRLevel名称 - 值对参数设置VaRLevel财产。

数据类型:双倍的

特性

展开全部

Var BackTesting分析的投资组合数据,指定为aNumRows-经过-1包含投资组合数据副本的数字数组。

数据类型:双倍的

用于VaR回溯测试分析的VaR数据,指定为NumRows-经过-NumVaRs包含VaR数据副本的数值数组。

数据类型:双倍的

组合标识符,指定为字符串。

数据类型:细绳

var标识符,指定为a1-经过-NumVaRs中对应列的VaR id字符串数组VaRData

数据类型:细绳

VaR水平,指定为1-经过-NumVaRs中的对应列的VaR级别的数值数组VaRData

数据类型:双倍的

varbacktest财产 从命令行使用中设置或修改属性varbacktest 使用点符号修改属性
PortfolioData 是的 没有
VaRData 是的 没有
portfolioid. 是的 是的
varid. 是的 是的
VaRLevel 是的 是的

对象的功能

tl 红绿灯的风险值(VaR)回溯测试
箱子 风险值(VaR)回溯检验的二项式检验
pof 风险值(VaR)回溯测试的失败比例测试
t 直到第一个失败测试的最终风险(var)反向击中
cc 风险值(VaR)回溯测试的条件覆盖混合测试
cci 有条件的覆盖范围独立测试,风险(VAR)反向
TBF. 失败之间的时间与风险的价值(var)反向击中的时间
TBFI. 失败在失败的失败 - 风险(var)反垄断的时间
概括 报告varbacktest数据
runtests. 运行所有测试varbacktest

例子

全部折叠

varbacktest引入投资组合结果数据和相应的风险值(VaR)数据,并得到avarbacktest对象。

创建一个varbacktest对象。

负载VaRBacktestDataVBT = varbacktest(EquityIndex,Normal95)
vbt = varbacktest with properties: PortfolioData: [1043x1 double] VaRData: [1043x1 double] PortfolioID:“Portfolio”VaRID:“VaR”VaRLevel: 0.9500

VBT.,varbacktest对象,包含给定投资组合数据的副本(PortfolioData属性),给定的VaR数据(VaRData属性)和待测试的投资组合ID、VaR ID和VaR水平的所有组合(portfolioid.varid.,VaRLevel属性)。

使用。运行测试VBT.对象。

runtests(VBT)
ans =.表1×11PortfolioID VARID VaRLevel TL斌POF凝灰岩CC CCI TBF TBFI ___________ _____ ________ _____ ______ ______ ______ ______ “投资组合”, “VAR” 0.95绿色接受接受接受接受接受拒绝拒绝

改变Portfolfioid.varid.使用点表示法的属性。

vbt。PortfolioID =“标普”
vbt = varbacktest with properties: PortfolioData: [1043x1 double] VaRData: [1043x1 double] PortfolioID: "S&P" VaRID: "VaR" VaRLevel: 0.9500
VBT.Varid =.“正常的95%”
vbt = varbacktest with properties: PortfolioData: [1043x1 double] VaRData: [1043x1 double] PortfolioID: "S&P" VaRID: "Normal at 95%" VaRLevel: 0.9500

使用更新后的代码运行所有测试varbacktest对象。

runtests(VBT)
ans =.表1×11PortfolioID VARID VaRLevel TL斌POF凝灰岩CC CCI TBF TBFI ________ ________ _______________ _____ ______ ______ ______ ______ “S&P” “一般在95%” 0.95绿色接受接受接受接受接受拒绝拒绝

创建一个varbacktest对象。

负载VaRBacktestDataVBT = varbacktest(EquityIndex,Normal95)
vbt = varbacktest with properties: PortfolioData: [1043x1 double] VaRData: [1043x1 double] PortfolioID:“Portfolio”VaRID:“VaR”VaRLevel: 0.9500

VBT.,varbacktest对象,包含给定投资组合数据的副本(PortfolioData属性),给定的VaR数据(VaRData属性)和待测试的投资组合ID、VaR ID和VaR水平的所有组合(portfolioid.varid.,VaRLevel属性)。

使用。运行测试varbacktest对象。

runtests(VBT)
ans =.表1×11PortfolioID VARID VaRLevel TL斌POF凝灰岩CC CCI TBF TBFI ___________ _____ ________ _____ ______ ______ ______ ______ “投资组合”, “VAR” 0.95绿色接受接受接受接受接受拒绝拒绝

改变Portfolfioid.varid.使用点表示法的属性。

vbt。PortfolioID =“标普”
vbt = varbacktest with properties: PortfolioData: [1043x1 double] VaRData: [1043x1 double] PortfolioID: "S&P" VaRID: "VaR" VaRLevel: 0.9500
VBT.Varid =.“正常的95%”
vbt = varbacktest with properties: PortfolioData: [1043x1 double] VaRData: [1043x1 double] PortfolioID: "S&P" VaRID: "Normal at 95%" VaRLevel: 0.9500

使用更新后的代码运行所有测试varbacktest对象。

runtests(VBT)
ans =.表1×11PortfolioID VARID VaRLevel TL斌POF凝灰岩CC CCI TBF TBFI ________ ________ _______________ _____ ______ ______ ______ ______ “S&P” “一般在95%” 0.95绿色接受接受接受接受接受拒绝拒绝

创建一个varbacktest具有不同置信水平的多个VAR标识符的对象。

负载VaRBacktestDataVBT = varbacktest(EquityIndex,...[Normal95 Normal99 Histal65 HistanT99 EWMA95 EWMA99],...'portfolioid''公平'...“VaRID”,{“Normal95”'normal99'“Historical95”“Historical99”“EWMA95”“EWMA99”},...“VaRLevel”,[0.95 0.99 0.95 0.99 0.95 0.99]);

运行摘要报告varbacktest对象。

摘要(VBT)
ans =.6×10表PortfolioID VaRID VaRLevel ObservedLevel观察故障预计比FirstFailure失踪  ___________ ______________ ________ _____________ ____________ ________ ________ ______ ____________ _______ " 股本”“Normal95”57 52.15 - 1.093 0.95 - 0.94535 1043 58 0”股票”“Normal99“17 10.43 - 1.6299 0.99 - 0.9837 1043 173 0”股本Historical95”0.95 0.94343 1043 59 52.15 1.1314 28 0 "Equity" "Historical99" 0.99 0.98849 1043 12 10.43 1.1505 173 0 "Equity" "EWMA95" 0.99 0.97891 1043 59 52.15 1.1314 28 0 "Equity" "EWMA99" 0.99 0.97891 1043 22 10.43 2.1093 143 0

使用。运行所有测试varbacktest对象。

runtests(VBT)
ans =.6×11表PortfolioID VaRID VaRLevel TL Bin POF TUFF CC CCI TBF TBFI ___________ ______________ ______________ ____________ ____________ ____________ ______“Equity”“Normal95”0.95 green accept accept accept accept reject“Equity”“Normal99”0.99 yellow reject accept accept accept accept accept accept accept accept accept accept accept“Equity”“Historical95”0.95 greenaccept accept accept accept accept accept accept "Equity" "Historical99" 0.99 green accept accept accept accept accept "Equity" "EWMA95" 0.95 green accept accept accept accept accept accept "Equity" "EWMA99" 0.99 yellow reject accept accept accept accept accept accept accept accept

进行交通灯测试(tl)使用varbacktest对象。

tl (vbt)
ans =.6×9表PortfolioID VaRID VaRLevel TL TypeI增加观测概率失败  ___________ ______________ ________ ______ ___________ _________ ________ ____________ ________ " 股本”“Normal95“0.95绿色0.77913 - 0.26396 0 1043 57“股本”“Normal99黄色“0.99 0.97991 0.03686 0.26582 1043年17“股本”“Historical95”0.95绿色0.85155 - 0.18232 01043 59 "Equity" "Historical99" 0.99 green 0.74996 0.35269 0 1043 12 "Equity" "EWMA95" 0.95 green 0.85155 0.18232 0 1043 59 "Equity" "EWMA99" 0.99 yellow 0.99952 0.0011122 0.43511 1043 22

使用varbacktest使用表输入和名称 - 值对参数创建两个varbacktest对象并运行连接摘要报告。varbacktest使用表输入中的变量名为portfolioid.varid.

负载VaRBacktestDatavbtE = varbacktest(数据表(:,2),数据表(:,3:4)“VaRLevel”[0.95 - 0.99]);vbtD = varbacktest(数据表(:,5),数据表(:,者),“VaRLevel”[0.95 - 0.99]);[摘要(VBTE);摘要(VBTD)]
ans =.表4×10PortfolioID VaRID VaRLevel ObservedLevel观察故障预计比FirstFailure失踪  _____________ __________________ ________ _____________ ____________ ________ ________ _______ ____________ _______ " 股本”“VaREquity95”0.95 - 0.94343 1043 59 52.15 - 1.1314 28 0”股本VaREquity99”0.99 - 0.97891 1043 22 10.43 - 2.1093 143 0"Derivatives" "VaRDerivatives95" 0.95 0.95014 1043 52 52.15 0.99712 9 0 "Derivatives" "VaRDerivatives99" 0.99 0.97028 1043 31 10.43 2.9722 28 0

运行所有测试并连接结果。

[runtests (vbtE);runtests (vbtD)]
ans =.4×11表PortfolioID VARID VaRLevel TL斌POF凝灰岩CC CCI TBF TBFI _____________ __________________ ________ ______ ______ ______ ______ ______ ______ ______ ______ “公平” “VaREquity95” 0.95绿色接受接受接受接受接受接受接受 “公平” “VaREquity99” 0.99黄拒绝拒绝接受拒绝接受拒绝接受“衍生品”“Varderivatives95”0.95绿色接受接受接受接受接受拒绝拒绝“衍生品”“Varderivative99”0.99红色拒绝拒绝接受拒绝接受拒绝拒绝

跑过pof测试并连接结果。

[POF(VBTE);POF(VBTD)]
ans =.4×9表TestLevel PortfolioID VaRID VaRLevel POF LRatioPOF PValuePOF观察故障  _____________ __________________ ________ ______ __________ __________ ____________ ________ _________ " 股本”“VaREquity95“0.95接受0.95 0.91023 0.34005 1043 59“股本”“VaREquity99“0.99拒绝9.8298 0.95 0.0017171 1043年22“衍生品”“VaRDerivatives95”0.95 accept 0.00045457 0.98299 1043 52 0.95 "Derivatives" "VaRDerivatives99" 0.99 reject 26.809 2.2457e-07 1043 31 0.95

参考文献

巴塞尔银行监管委员会,将“回溯测试”与市场风险资本要求的内部模型方法结合使用的监管框架。1996年1月,https://www.bis.org/publ/bcbs22.htm

[2] Christoffersen, P。“评估区间预测。”国际经济评论。卷。39,1998,第841-862页。

[3] Cogneau, Ph值。“风险价值回溯测试:模型有多好?”智能风险,普利亚,2015年7月。

[4] Haas,M。“回溯中的新方法。”金融工程,凯撒研究中心,波恩,2001。

[5]诗歌,pH。财务风险经理手册。第六版。威利金融,2011。

[6] Kupiec,P。“用于验证风险管理模型准确性的技术。”杂志的衍生品。1995年第3卷,73-84页。

McNeil, A., Frey, R., Embrechts, P.。定量风险管理。普林斯顿大学出版社,2005。

[8] Nieppola, O.“风险价值模型的回溯测试”。硕士论文,赫尔辛基经济学院,2009。

介绍了R2016b