已经调用了6个子函数,谁能帮忙看看还有哪些错误,谢谢各位了
%Main program
function model()
load CKLS.txt
X=CKLS;
dt=1/242;
% option settings for optimization algorithm
opts=optimset( 'Display', 'notify', ...
'MaxIter', 1000, ...
'MaxFunEvals', 10000, ...
'LargeScale', 'off', ...
'HessUpdate', 'bfgs', ...
'TolX', 1e-8, ...
'TolFun', 1e-11 ...
);
ini_P=rand(4,1);%initial parameters [alpha,beta,sigma,gamma] as a vector.
low_P=-100*ones(4,1);%lower bounds of parameters
up_P=100*ones(4,1);%upper bounds of parameters
low_P2=[-400;0;-400;0]; % parameter restriction for Merton
up_P2=[400;0;400;0];
low_P3=[-400;-400;-400;0]; %parameter restriction for Vasicek
up_P3=[400;400;400;0];
low_P4=[-400;-400;-400;0.5];%parameter restriction for CIR
up_P4=[400;400;400;0.5];
low_P5=[0;-400;0;1]; %parameter restriction for Dothan
up_P5=[0;400;400;1];
low_P6=[-400;-400;-400;1]; %parameter restriction for Brennan and Schwartz
up_P6=[400;400;400;1];
% P is parameters estimation
% lnL is minus maximized likelihood value
[P1,lnL1]=fmincon(CKLS_Calibration(P,X,dt),ini_P,[],[],[],[],low_P,up_P,opts);
[P2,lnL2]=fmincon(Merton_Calibration(P,X,dt),ini_P,[],[],[],[],low_P,up_P,[],opts);
[P3,lnL3]=fmincon(Vasicek_Calibration(P,X,dt),ini_P,[],[],[],[],low_P,up_P,[],opts);
[P4,lnL4]=fmincon(CIR_Calibration(P,X,dt),ini_P,[],[],[],[],low_P,up_P,[],opts);
[P5,lnL5]=fmincon(Dothan_Calibration(P,X,dt),ini_P,[],[],[],[],low_P5,up_P5,[],opts)
[P6,lnL6]=fmincon(Brennan_Schwartz_Calibration(P,X,dt),ini_P,[],[],[],[],low_P,up_P,[],opts);
end
% end main program