您的位置:首页 > 股票知识 > 如何选股 > 如何使用matlab计算最大值最小值_如何使用MATLAB计算最大挫跌和最长挫跌期

如何使用matlab计算最大值最小值_如何使用MATLAB计算最大挫跌和最长挫跌期

时间:2013-05-20   来源:如何选股   点击:

%接上文的例MATLAB代码

%累积收益率

cumret= cumprod(1+netRet)-l;plot(cumret);

[maxDrawdown maxDrawdownDuration]=…

calculateMaxDD(cumret);

[maxDrawdownmaxDrawdownDuration]=…

calculateMaxDD(cumret);

%最大挫跌,输出结果应该是0.1053

maxDrawdown

%最长挫跌期,输出结果应该为497

maxDrawdownDuration

注意,上述代码调用了子程序“calculateMaxDrawdown”,内容所示:

function [maxDDmaxDDD]=calculateMaxDD(cumret)

%[maxDD maxDDD]=calculateMaxDD(cumret)

%在累积收益率的基础上计算最大挫跌和最长挫跌期

%将高水位线初始化为0.

highwatermark=zeros( size(cumret));

%将挫跌初始化为0.

drawdown = zeros(size(cumret));

%将最长挫跌期初始化为0.

drawdownduration=zeros(size(cumret));

for t=2:length(cumret)

high watermark(t)=max(highwatermark(t-1),cumret(t));

%计算每日挫映(相对于高水位)

drawdown(t)=(1+highwatermark(t))/(1 +cumret(t))一1;

if(drawdown(t)==0)

drawdownduration(t)=0;

else

drawdownduration(t) =drawdownduration(t一1)+1;

end

end

maxDD=max(drawdown);%最大挫跌

maxDDD=max(drawdownduration);%最长挫跌期

这个程序文件可在epchan.com/book/calculateMaxDD.m下载。图

3-1中的这段累积收益率曲线显示了最大挫跌和最长挫跌期。

例3.4的最大挫跌和最长挫跌期

图3-1  例3.4的最大挫跌和最长挫跌期


推荐内容

推荐文章

栏目导航

友情链接

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

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