estimateAssetMoments
估计资产的回报数据的均值和协方差
使用一个弗林特
对象的AssetReturns
的观点estimateAssetMoments
不推荐。使用时间表
而不是金融时间序列。有关更多信息,请参见把金融时间序列对象弗林特时间表。
描述
例子
估计均值和协方差投资组合的资产回报数据对象
为了说明使用estimateAssetMoments
函数,生成随机抽样120观察资产回报四资产从资产回报率的均值和协方差的变量米
和C
与portsim
函数。默认的行为portsim
创建模拟数据与估计均值和协方差相同时刻的输入米
和C
。除了返回创建的系列portsim
函数的变量X
变量,创建一个系列的价格Y
:
m = (0.05;0.1;0.12;0.18);C = (0.0064 0.00408 0.00192 0;0.00408 0.0289 0.0204 0.0119;0.00192 0.0204 0.0576 0.0336;0 0.0119 0.0336 0.1225);m = m / 12;C = C / 12; X = portsim(m', C, 120); Y = ret2tick(X);
鉴于资产回报和价格变量X
和Y
从上面,下面的例子证明等效方法来估计资产组合对象的时刻。创建一个组合对象p
直接与资产回报的时刻投资组合
创建对象和一个第二组合对象问
获取资产回报率的均值和协方差资产返回数据X
使用estimateAssetMoments
函数。
m = (0.05;0.1;0.12;0.18);C = (0.0064 0.00408 0.00192 0;0.00408 0.0289 0.0204 0.0119;0.00192 0.0204 0.0576 0.0336;0 0.0119 0.0336 0.1225);m = m / 12;C = C / 12; X = portsim(m', C, 120); p = Portfolio(“的意思是”米,“柯伐合金”C);q =投资组合;q = estimateAssetMoments (q, X);[passetmean, passetcovar] = getAssetMoments (p)
passetmean =4×10.0042 0.0083 0.0100 0.0150
passetcovar =4×40.0005 0.0003 0.0002 0.0003 0.0024 0.0017 0.0010 0.0002 0.0017 0.0048 0.0028 0 0.0010 0.0028 0.0102
[qassetmean, qassetcovar] = getAssetMoments (q)
qassetmean =4×10.0042 0.0083 0.0100 0.0150
qassetcovar =4×40.0005 0.0003 0.0002 -0.0000 0.0003 0.0024 0.0017 0.0010 0.0002 0.0017 0.0048 0.0028 -0.0000 0.0010 0.0028 0.0102
注意方法收益率相同的时刻。的默认行为estimateAssetMoments
功能是使用资产的回报。相反,如果你有资产价格,如变量Y
,estimateAssetMoments
函数接受一个参数名称“DataFormat”
与一个相应的值设置为“价格”
表明的输入方法是资产价格的形式,而不是返回(默认参数值“DataFormat”
是“返回”
)。下面的例子比较组合对象直接赋值的时刻p
从资产价格数据与估计的时刻Y
在投资对象问
:
m = (0.05;0.1;0.12;0.18);C = (0.0064 0.00408 0.00192 0;0.00408 0.0289 0.0204 0.0119;0.00192 0.0204 0.0576 0.0336;0 0.0119 0.0336 0.1225);m = m / 12;C = C / 12; X = portsim(m', C, 120); Y = ret2tick(X); p = Portfolio(“的意思是”米,“柯伐合金”C);q =投资组合;q = estimateAssetMoments (q, Y,“dataformat”,“价格”);[passetmean, passetcovar] = getAssetMoments (p)
passetmean =4×10.0042 0.0083 0.0100 0.0150
passetcovar =4×40.0005 0.0003 0.0002 0.0003 0.0024 0.0017 0.0010 0.0002 0.0017 0.0048 0.0028 0 0.0010 0.0028 0.0102
[qassetmean, qassetcovar] = getAssetMoments (q)
qassetmean =4×10.0042 0.0083 0.0100 0.0150
qassetcovar =4×40.0005 0.0003 0.0002 -0.0000 0.0003 0.0024 0.0017 0.0010 0.0002 0.0017 0.0048 0.0028 -0.0000 0.0010 0.0028 0.0102
估计均值和协方差投资组合的资产回报的时间表数据对象
为了说明使用estimateAssetMoments
函数与AssetReturns
数据仍在继续时间表
对象,使用CAPMuniverse.mat
它包含一个时间表
对象(AssetTimeTable
返回数据)。
负载CAPMuniverseAssetsTimeTable.Properties;头(AssetsTimeTable, 5)
ans =5×14时间表时间apple amazon cisco戴尔EBAY google hp IBM intel microsoft ORCL yahoo市场现金⒈替替替替替_____ _____ _____ __________ 03 - 1月- 2000年南0.03244 0.075368 0.05698 0.088805 0.1742 0.008775 -0.002353 0.12829 -0.001627 0.054078 0.097784 -0.012143 0.00020522 04 -简- 2000南-0.075613 -0.033966 -0.046667 -0.084331 -0.08324 -0.05608 -0.08353 -0.093805 -0.033802 -0.0883 -0.067368 -0.03166 0.00020339 05 - 1月- 2000年南-0.006356 0.03516 0.008199 0.014634 -0.14877 -0.003039 0.070984 0.066875 0.010567 -0.052837 -0.073363 0.011443 0.00020376 06 - 1月- 2000年南-0.063688 -0.017241 -0.05824 -0.086538 -0.060072 -0.016619 -0.038847 -0.012302 -0.033477 -0.058824 -0.10307 0.011743 0.00020266 07 - 1月- 2000年南0.028416 -0.004386 0.04127 0.047368 0.061013 0.0587 -0.037708 -0.000964 0.013091 0.076771 0.10609 0.02393 0.00020157
请注意,google
缺失的数据(南
),因为它是2004年8月前未列出。的estimateAssetMoments
函数有一个名称-值对的论点“MissingData”
与一个布尔值表示是否使用金融工具箱™的缺失数据功能的软件。的默认值“MissingData”
是假删除所有样品南
值。然而,如果“MissingData”
被设置为true,estimateAssetMoments
使用ECM算法来估计资产的时刻。
r =投资组合;(r, r = estimateAssetMoments AssetsTimeTable,“dataformat”,“返回”,“missingdata”,真正的);
此外,estimateAssetMoments
功能也从一个时间表对象提取资产名称或标识符名称参数“GetAssetList”
设置为真正的
(它的默认值假
)。如果“GetAssetList”
值是真正的
,时间表列标识符用于设置AssetList
房地产投资组合的对象。显示这个,组合对象的形成r
是重复的“GetAssetList”
标志设置为真正的
。
(r, r = estimateAssetMoments AssetsTimeTable,“GetAssetList”,真正的);disp (r.AssetList”)
{“apple”} {amazon的}{cisco的}{“戴尔”}{“易趣”}{“google”} {“hp”} {“IBM”} {intel的}{“微软”}{‘ORCL} {“yahoo”}{‘市场’}{“现金”}
估计均值和协方差数据的资产回报投资组合
对象的完整性约束
创建一个投资组合
对象为三种资产。
AssetMean = (0.0101110;0.0043532;0.0137058);AssetCovar = [0.00324625 0.00022983 0.00420395;0.00022983 0.00049937 0.00019247;0.00420395 0.00019247 0.00764097);AssetMean = AssetMean / 12
AssetMean =3×10.0008 0.0004 0.0011
AssetCovar = AssetCovar / 12
AssetCovar =3×3103×0.2705 0.0192 0.3503 0.0192 0.0416 0.0160 0.3503 0.0160 0.6367
X = portsim (AssetMean AssetCovar 120);p =组合(“AssetMean”AssetMean,“AssetCovar”,AssetCovar);p = setDefaultConstraints (p);
使用setBounds
与半连续约束集习=0
或0.02
< =习
< =0.5
对所有我=1
,……NumAssets。
p = setBounds (p, 0.02, 0.5,“BoundType”,“条件”,“NumAssets”3);
当处理一个投资组合
对象,setMinMaxNumAssets
功能使您能够设置基数约束的多头组合。这集的基数约束投资组合
对象,分配资产总数满足之间的非零半连续约束MinNumAssets
和MaxNumAssets
。通过设置MinNumAssets
=MaxNumAssets
= 2,只有两三个资产投资组合。
p = setMinMaxNumAssets (p, 2 2);
使用estimateAssetMoments
估计均值和协方差数据的资产回报投资组合
对象。
p = estimateAssetMoments (p (X);[passetmean, passetcovar] = getAssetMoments (p)
passetmean =3×10.0008 0.0004 0.0011
passetcovar =3×3103×0.2705 0.0192 0.3503 0.0192 0.0416 0.0160 0.3503 0.0160 0.6367
的estimateAssetMoments
函数使用的适应解决来解决这个问题。使用setSolverMINLP
功能配置SolverType
和选项。
p.solverOptionsMINLP
ans =结构体字段:MaxIterations: 1000 AbsoluteGapTolerance: 1.0000 e-07 RelativeGapTolerance: 1.0000 e-05 NonlinearScalingFactor: 1000 ObjectiveScalingFactor: 1000显示:“关闭”CutGeneration:“基本”MaxIterationsInactiveCut: 30 ActiveCutTolerance: 1.0000 e-07 IntMasterSolverOptions: [1 x1 optim.options。Intlinprog] NumIterationsEarlyIntegerConvergence: 30
输入参数
obj
- - - - - -对象组合
对象
AssetReturns
- - - - - -矩阵、表或时间表包含资产价格数据,可以转化为资产的回报
矩阵|表|表
矩阵,表
,或时间表
包含资产价格数据,可以转化为资产回报,被指定NumSamples
——- - - - - -NumAssets
矩阵。
AssetReturns
数据可以是:
NumSamples
——- - - - - -NumAssets
矩阵。表
NumSamples
价格或返回的集合在一个给定的周期性NumAssets
资产时间表对象
NumSamples
观察和NumAssets
时间序列
使用可选的DataFormat
参数转换AssetReturns
输入数据,资产价格到资产的回报。使用的资产价格数据的时候要小心,因为投资组合优化通常需要总回报率而不是简单的价格回报。
数据类型:双
|表
|时间表
名称-值参数
指定可选的双参数作为Name1 = Value1,…,以=家
,在那里的名字
参数名称和吗价值
相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。
R2021a之前,用逗号来分隔每一个名称和值,并附上的名字
在报价。
例子:p = estimateAssetMoments (p Y“dataformat”、“价格”)
DataFormat
- - - - - -国旗将输入数据价格转化为回报
“返回”
(默认)|特征向量和价值观“返回”
或“价格”
国旗将输入数据价格转化为回报,指定为逗号分隔组成的“DataFormat”
和一个特征向量的值:
“返回”
——数据AssetReturns
包含资产总回报率。“价格”
——数据AssetReturns
包含资产总回报价格。
数据类型:字符
MissingData
- - - - - -标志指示是否使用ECM算法或排除样品南
值
假
(默认)|逻辑与价值真正的
或假
GetAssetList
- - - - - -标志指示的资产名称用于资产列表
假
(默认)|逻辑与价值真正的
或假
国旗表明资产名称用于资产列表,指定为逗号分隔组成的“GetAssetList”
和一个逻辑值真正的
或假
。可接受的值GetAssetList
是:
假
——不提取或创建资产名称。真正的
——从一个表中提取或创建资产名称或时间表对象。
如果一个表
或时间表
传递给这个函数使用吗AssetReturns
参数和GetAssetList
国旗是真正的
从表中,列名或时间表对象作为资产名称obj.AssetList
。
如果一个矩阵和传递GetAssetList
国旗是真正的
、默认资产名称的基础上创建的AbstractPortfolio
财产defaultforAssetList
,这是“资产”
。
如果GetAssetList
国旗是假
发生,没有行动,这是默认行为。
数据类型:逻辑
提示
您还可以使用点符号来估计资产回报率的均值和协方差的数据。
obj = obj.estimateAssetMoments (AssetReturns);
版本历史
MATLAB명령
다음MATLAB명령에해당하는링크를클릭했습니다。
명령을실행하려면MATLAB명령창에입력하십시오。웹브라우저는MATLAB명령을지원하지않습니다。
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。