您的位置:首页 > 新闻 > 行业 > 如何构造哈夫曼树|如何构造协整度高(均值回归)的股票配对

如何构造哈夫曼树|如何构造协整度高(均值回归)的股票配对

时间:2013-06-13   来源:行业   点击:

正文说过,如果做多一个证券的同时以正确的比例做空另一个同行业证券,组合(或“差价”)有时是一个平稳序列。平稳的时间序列是均值回归策略的绝佳候选。本例将教你如何从1免费下载MATLAB工具包来检脸两个价格序列是否协整,以及如何找到最优的对冲比率(即第二个证券份数与第一个证券份数的比例)。

如何构造协整度高(均值回归)的股票配对

协整检验的主要方法是ADF检验,对应的函数名为cadf。对这一方法的详细描迷也可在上面说的网站上找到。

下面的程序同样可以从epchan.com/book/example7_2.m下载:

%清除空间已有变量

clear;

%读入“GLD. xls”到MATLAB.

[num.txt]=xlsread("GLD");

%第一列(从第二行开始)是交易日,格式为mm/dd/yyyy

tdayl=txt (2:end, 1);

%将时间格式转化为yyyymmdd

tdayl=…

datestr(datenu m (tdayl,"mm/dd/yyyy"),"yyyymmdd");

%将数据字符串转化为单元型变量,再转化为数值型变量

tdayl=str2double(cellstr(tdayl));

%最后一列是调整后的收盘价

adjclsl=num(:,end);

%读入”GDX.xls”到MATLAB.

[num2,txt2]=xlsread("GDX");

%第一列(从第二行开始)是交易日,格式为mm/dd/yyyy

tday2=txt2 (2:end,1);

%将时间格式转化为yyyymmdd

tday2=…

datestr (datenu m (tday2,"mm/dd/yyyy"),"yyyymmdd");

%将数据字符串转化为单元型变量,再转化为数值型变量

tday2=str2double (cellstr (tday2));

adjcls2=num2(:,end);

%找出GLD或GDX有数据的所有交易日

tday=union (tdayl,tday2);

[foo idx idxl]=intersect (tday, tdayl),

%将两个价格序列放到一起

adjcls=NaN(length Way),2);

adjcls (idx, 1)=adjclsl (idxl);

[foo idx idx2]=intersect (tday. tday2);

adjcls (idx. 2) =adjcls2 (idx2);

%有数据缺失的交易日

baddata=find (any(一 isfinite (adjcls),2));

tday (baddata)=[];

adjels (baddata,:)二[];

vnames=strvcat ("GLD","GDX");

%用ADF检脸执行协整检验

res=cadf (adjcls(:.1).adjcls(:,2).0.1);

prt (res, vnames);

%cadf函数的输出结果:

%两个变量的ADF检验:

%GLD,GDX

%CADF t-statistic   #of lags AR (1)   estimate

%一3.35698533            1     -0.060892

%

%   1%Crit Value        5%Crit Value    10% Crit Value

%       -3.819               -3.343       -3.042

%t-统计蚤为-3.36,在1%临界值-3.819和5%临界值-3.343之间%意味着有两个时间序列是协整的概率超过95%

results=ols (adjcls(:,1),adjcls(:,2));

hedgeRatio=results.beta

z=results.resid;

%对冲比率为1.6766

%即GLD=1.6766,GDX+z,

%其中z是截距项,作为差价GLD-1.67GG * GDX,应该是平稳的

%画出的图同图7-4类似

plot (z);


推荐内容

推荐文章

栏目导航

友情链接

网站首页
早报
原创
名家
新闻
学堂
期货
理财
外汇
炒股软件
股票知识
K线图
平均线
分时图
短线炒股
MACD
涨停板
强势股
热门资讯

copyright 2016-2018 股民股票网保留所有权 京ICP备16025527号 免责声明:网站部分内容转载至网络,如有侵权请告知删除