接受管理员的建议,附上我的matlab程序:
r=data196307199312(:,1:25); % 25-size value weighted returns
T=size(r,1); %366个月
N=size(r,2); % 25
rmrf=data196307199312(:,26); % rm-rf
rf=data196307199312(:,29); % rf
means=reshape(mean(r),5,5); % mean of returns
means',
stds=reshape(std(r),5,5); % standard deviation of returns
stds',
% calculate S,B,H,L,smb,hml
S=zeros(T,1);
B=zeros(T,1);
H=zeros(T,1);
L=zeros(T,1);
for i=1:5;
S=S+r(:,i);
B=B+r(:,N-i+1);
H=H+r(:,5*i);
L=L+r(:,5*i-4);
end;
S=S/5;
H=H/5;
L=L/5;
B=B/5;
smb=S-B;
hml=H-L;
y=r-rf*ones(1,size(r,2));
x=[ones(T,1) rmrf smb hml];
% regress: r-rf=a+b*rmrf+s*smb+h*hml+e
for i=1:N;
results=ols(y(:,i),x);
results.beta;
a(i)=results.beta(1);
b(i)=results.beta(2);
s(i)=results.beta(3);
h(i)=results.beta(4);
a,
b,
s,
h,
数据是从french教授的主页上下载的。
r:25_Portfolios_5x5 文件中的 value weighted returns
rf与rmrf: F-F_Research_Data_Factors文件中的 rf 与mkt-rf