⑴ 用SAS处理事件研究过程中的程序出错,麻烦精通SAS软件的人帮忙解答
第一步:加入市场组合数据
Proc sort data=m3;
By date;
Proc sort data=et.index;
By date;
RUN;
Data returns;
Merge m3(in=a) et.index(in=b);
By date;
If a=1 and b=1;
Run;
这个地方,你在排完序之后要写上 run;你不写的话 只是读入缓存 没有执行,后面在merge的时候就会出现问题,所以 你在sort之后补上run,完成排序,再merge就不会出现"BY variables are not properly sorted on data set ET.INDEX."的问题。
⑵ 应用sas如何计算股票移动平均线
data a ;
set resdat.idx000001;
keep date clpr;
run;
data ab;
set a;
sum+clpr;
sumlag=lag20(sum);
sma=sum-sumlag;
t20=sma/20;
lag1=lag(clpr);
lag2=lag2(clpr);
run;
data abc;
set ab;
where year(date)=2005;
run;
title "20日均线";
proc gplot data=abc;
plot t20*date clpr*date/overlay;
symbol1 c=red i=join;
symbol2 c=blue i=join;
run;
quit ;
⑶ 如何用sas的循环语句算收益率
用SAS算股票的收益率,可以使用公式:r=(Pt-Pt-1)/Pt-1
不需要使用循环,可以在数据里再生成一行,对每一行使用上面的公式进行计算填充即可。