主要内容

esbacktestbysim

创建esbacktestbysim对象运行Acerbi和Szekely基于模拟的预期不足(ES)回测套件

描述

通用的工作流程是:

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

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

  3. 使用总结函数生成关于观测次数和故障次数的给定数据的摘要报告。

  4. 使用runtests函数一次运行所有测试。

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

    有关更多信息,请参见预期短缺回溯测试概述

创建

描述

例子

于本= esbacktestbysim (PortfolioDataVaRDataESDataDistributionName创建一个esbacktestbysim于本)对象,并模拟组合结果场景,以计算这些测试的临界值:

于本对象具有以下属性:

  • PortfolioData- - - - - -NumRows——- - - - - -1的副本的数字数组PortfolioData

  • VaRData- - - - - -NumRows——- - - - - -NumVaRs的副本的数字数组VaRData

  • ESData- - - - - -NumRows——- - - - - -NumVaRs的副本的数字数组ESData

  • 分布—包含模型信息的结构,包括模型分布名称和分布参数。例如,对于正态分布,分布有字段“名字”“的意思是”,“StandardDeviation”,其值设置为相应的输入。

  • PortfolioID-包含PortfolioID

  • VaRID- - - - - -1——- - - - - -NumVaRs字符串向量包含VaRIDS表示中相应的列VaRData

  • VaRLevel- - - - - -1——- - - - - -NumVaRs包含VaRLevelS表示中相应的列VaRData

请注意

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

  • 如果缺失值(年代)PortfolioDataVaRDataESData,或分布参数数据时,在应用测试之前将丢弃数据行。因此,对于缺失值数量不同的模型,报告的观测值数量也不同。报告的观察数等于原始行数减去缺失值数。要确定是否有被丢弃的行,请使用“失踪”列的总结报告。

例子

于本= esbacktestbysim (___名称,值属性使用前面语法中的名称-值对和任何参数。例如,于= esbacktestbysim (PortfolioData VaRData、ESData DistributionName,‘VaRID’,‘TotalVaR’,‘VaRLevel’,。).可以指定多个名称-值对。

输入参数

全部展开

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

请注意

PortfolioData数据的单位必须与VaRDataESData.中没有验证esbacktestbysim对象关于投资组合、VaR和ES数据的单位。PortfolioDataVaRData,ESData可以用收益或损益来表示。

数据类型:|表格|时间表

风险值(VaR)数据,指定为NumRows——- - - - - -NumVaRs数字数组,NumRows——- - - - - -NumVaRs表,或NumRows——- - - - - -NumVaRs带有数字列的时间表。的VaRData输入参数设置VaRData财产。

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

请注意

VaRData必须和PortfolioDataESData.中没有验证esbacktestbysim对象关于投资组合、VaR和ES数据的单位。VaRDataPortfolioData,ESData可以用收益或损益来表示。

数据类型:|表格|时间表

预期不足数据,指定为NumRows——- - - - - -NumVaRs积极的数字数组,NumRows——- - - - - -NumVaRs表,或NumRows——- - - - - -NumVaRs正数列包含ES数据的时间表。的ESData输入参数设置ESData财产。

请注意

ESData数据的单位必须与PortfolioDataVaRData.中没有验证esbacktestbysim对象关于投资组合、VaR和ES数据的单位。ESDataPortfolioData,VaRData可以用收益或损益来表示。

数据类型:|表格|时间表

发行版名称,指定为值为的字符串正常的t.的DistributionName输入参数设置“名字”场的分布财产。

数据类型:字符串

名称-值对的观点

指定可选的逗号分隔的对名称,值参数。的名字参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:于= esbacktestbysim (PortfolioData VaRData、ESData DistributionName,‘VaRID’,‘TotalVaR’,‘VaRLevel’,。)

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

如果PortfolioData是数字数组,默认值为PortfolioID“投资组合”.如果PortfolioData是一个表,PortfolioID默认情况下设置为表中相应的变量名。

数据类型:字符|字符串

VaR标识符VaRData列,指定为逗号分隔对,由“VaRID”字符向量、字符向量的单元数组、字符串或字符串数组。多个VaRIDS由a指定1——- - - - - -NumVaRs(或NumVaRs——- - - - - -1的单元格数组,或具有用户定义id的字符串数组VaRData列。一个单一的VaRID标识一个VaRData列和相应的ESData列。的VaRID名称-值对参数设置VaRID财产。

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

数据类型:字符|细胞|字符串

VaR置信水平,指定为标量,由逗号分隔的对组成“VaRLevel”和之间的数值01或者一个1——- - - - - -NumVaRs(或NumVaRs——- - - - - -1)数值数组,数组之间有一个数值01.的VaRLevel名称-值对参数设置VaRLevel财产。

数据类型:

正态分布的平均值,指定为逗号分隔对,由“的意思是”和一个数值或NumRows——- - - - - -1数字数组。的的意思是名称-值对参数设置“的意思是”场的分布财产。

请注意

你设置的意思是名称-值对参数仅当DistributionName输入参数指定为正常的

数据类型:

正态分布的标准偏差,指定为逗号分隔对,由“StandardDeviation”和一个正数值aNumRows——- - - - - -1数组中。的StandardDeviation名称-值对参数设置“StandardDeviation”场的分布财产。

请注意

你设置StandardDeviation名称-值对参数仅当DistributionName输入参数指定为正常的

数据类型:

自由度t分布,指定为逗号分隔的对,由“DegreesOfFreedom”和≥的整数值3..的DegreesOfFreedom名称-值对参数设置“DegreesOfFreedom”场的分布财产。

请注意

DegreesOfFreedom名称-值对参数仅在DistributionName输入参数指定为t.一个值为DegreesOfFreedom要求DistributionNamet

数据类型:

的位置参数t分布,指定为逗号分隔的对,由“位置”和一个数值或NumRows——- - - - - -1数组中。的位置名称-值对参数设置“位置”场的分布财产。

请注意

位置名称-值对参数仅在DistributionName输入参数指定为t

数据类型:

标度参数t分布,指定为逗号分隔的对,由“规模”和一个正数值aNumRows——- - - - - -1数组中。的规模名称-值对参数设置“规模”场的分布财产。

请注意

规模名称-值对参数仅在DistributionName输入参数指定为t

数据类型:

指示在创建esbacktestbysim对象,指定为逻辑标量,其中逗号分隔的对包括“模拟”值为真正的

数据类型:逻辑

属性

全部展开

用于ES回溯测试分析的投资组合数据,指定为NumRows——- - - - - -1包含投资组合数据副本的数字数组。

数据类型:

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

数据类型:

ES回溯测试分析的预期不足数据,指定为NumRows——- - - - - -NumVaRs的副本的数字数组ESData

数据类型:

作为结构指定的分布信息,包括分布名称和相关的分布参数。

对于一个正常的分布,分布结构域“名字”(设置为正常的),“的意思是”,“StandardDeviation”,其值设置为相应的输入。

对于一个t分布,分布结构域“名字”(设置为t),“DegreesOfFreedom”“位置”,“规模”,其值设置为相应的输入。

数据类型:结构体

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

数据类型:字符串

VaR标识符,指定为1——- - - - - -NumVaRs中对应列的VaR id字符串数组VaRData

数据类型:字符串

VaR水平,指定为1——- - - - - -NumVaRs数值数组之间的值01中对应列的VaR级别VaRData

数据类型:

esbacktestbysim财产 从命令行使用中设置或修改属性esbacktestbysim 使用点符号修改属性
PortfolioData 是的 没有
VaRData 是的 没有
ESData 是的 没有
分布 是的 没有
PortfolioID 是的 是的
VaRID 是的 是的
VaRLevel 是的 是的

对象的功能

总结 关于故障和严重程度的基本预期不足(ES)报告
runtests 为。运行所有预期的短缺向后测试(ES)esbacktestbysim对象
有条件的 Acerbi和Szekely的条件预期不足(ES)回溯测试
无条件的 Acerbi和Szekely的无条件预期短缺回溯测试
分位数 由Acerbi和Szekely进行的分位数预期缺口(ES)回测
minBiasRelative Acerbi-Szekely的ES backtest最小偏差相对测试
minBiasAbsolute Acerbi-Szekely期望缺口(ES) backtest的最小偏差绝对检验
模拟 模拟预期不足(ES)测试统计量

例子

全部折叠

esbacktestbysim采用投资组合结果数据、相应的风险值(VaR)数据、预期不足(ES)数据和分布信息,并返回一个esbacktestbysim对象。

创建一个esbacktestbysim对象,并显示分布财产。

负载ESBacktestBySimDatarng (“默认”);%的再现性于本= esbacktestbysim(回报,VaR,,“t”...“DegreesOfFreedom”10...“位置”亩,...“规模”σ,...“PortfolioID”“标普”...“VaRID”,[“t(10) 95%”“t(10) 97.5%”“t(10) 99%”],...“VaRLevel”VaRLevel)
ebt = esbacktestbysim with properties: PortfolioData: [1966x1 double] VaRData: [1966x3 double] ESData: [1966x3 double] Distribution: [1x1 struct] PortfolioID: "S&P" VaRID: ["t(10) 95%" "t(10) 97.5%" "t(10) 99%" VaRLevel: [0.9500 0.9750 0.9900]
本系统。分布
ans =结构体字段:名称:“t”自由度:10位置:0比例:[1966x1 double]

于本,esbacktestbysim对象,包含给定组合数据的副本(PortfolioData属性),给定的VaR数据(VaRData属性),给定的ES数据(ESData)属性,并给定分布信息。该对象还包含要测试的投资组合ID、VaR ID和VaR级别的所有组合(PortfolioIDVaRID,VaRLevel属性)。

使用。运行测试于本对象。

检测结果= runtests(本)
检测结果=3×8表无条件PortfolioID VaRID VaRLevel条件分位数MinBiasAbsolute MinBiasRelative  ___________ _____________ ________ ___________ _____________ ________ _______________ _______________ " 普尔”“t(10) 95%“0.95拒绝接受拒绝接受拒绝“标准普尔”“t(10) 97.5%“0.975拒绝拒绝拒绝拒绝拒绝“标普”“t(10) 99%“0.99拒绝拒绝拒绝拒绝

改变PortfolioID属性使用点符号。有关创建esbacktestbysim对象,看到esbacktestbysim

本系统。PortfolioID =“标准普尔,1996 - 2003”
ebt = esbacktestbysim with properties: PortfolioData: [1966x1 double] VaRData: [1966x3 double] ESData: [1966x3 double] Distribution: [1x1 struct] PortfolioID: "S&P, 1996-2003" VaRID: ["t(10) 95%" "t(10) 97.5%" "t(10) 99%" VaRLevel: [0.9500 0.9750 0.9900]

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

runtests(于)
ans =3×8表无条件PortfolioID VaRID VaRLevel条件分位数MinBiasAbsolute MinBiasRelative  ________________ _____________ ________ ___________ _____________ ________ _______________ _______________ " 标准普尔,1996 - 2003”“t(10) 95%“0.95拒绝接受拒绝接受拒绝”标准普尔,1996 - 2003”“t(10) 97.5%“0.975拒绝拒绝拒绝拒绝拒绝”标普、1996-2003" "t(10) 99%" 0.99拒绝拒绝拒绝拒绝拒绝

参考文献

[1] Acerbi, C.和B. Szekely。val预期缺口。摩根士丹利资本国际公司。2014年12月。

[2]巴塞尔银行监管委员会。市场风险的最低资本要求。2016年1月(https://www.bis.org/bcbs/publ/d352.pdf).

介绍了R2017b