set t3;
by stkcd;
retain Mretwd_sum 0;
last60=lag60(Mretwd);
if count gt 60 then Mretwd_sum=sum(Mretwd_sum,Mretwd,-last60);
else Mretwd_sum=sum(Mretwd_sum,Mretwd);
if count ge 60 then mov_aver=Mretwd_sum/60;
else mov_aver=.;
run;
这是写的算Moving Average程序,可是老师要用宏来写。。
t3如下: 是每个股票10年(120个月)的收益率 count是10年的月数<=120,num是所有观测数93341