|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
求教大神:. _+ J3 x6 T% G3 J. E4 q
function f=nsllh(x)
! a" i" x8 Q( R. zclose=xlsread('HW_3_Part2Data','#3','D3 1257');
3 j: R: G6 I) E4 M# c; lnvix=xlsread('HW_3_Part2Data','#3','H4:H1257');
! w) J" l# x8 ^: Ealpha=zeros(1,1);beta=zeros(1,1);theta=zeros(1,1);gamma=zeros(1,1);
- k0 @# U' s, g: L) G8 |x=[alpha,beta,theta,gamma];# f" E6 z6 G: E9 u5 U
r=zeros(1254,1);# r( l0 t1 ~/ s& e
for i=1:12540 s6 G4 g2 P* Y
r(i+1,1)=log(close(i+1,1)/close(i,1));: n/ C# i4 t2 B* d
end) D" Q1 z: M& t" W- d+ q" n' d
sigma=var(r);
' P' u% J7 s' Y' {$ E2 m# A" iomega=sigma*(1-alpha*(1+theta^2)-beta);9 A) Y% I& O6 n$ I' I% e) r1 U
npsigma=ones(1254,1);
) I8 s, s' ~# A ^npsigma(1,1)=sigma;
, i) [" h$ z0 z! X8 Q0 Wfor i=1:1253
- N z* Q9 d( A# p# Knpsigma(i+1,1)=omega+alpha*(r(i,1)-theta*npsigma(i,1)^0.5)^2+beta*npsigma(i,1)+gamma*nvix(i,1)^2/252;
8 ]$ E2 t' @6 \/ Y9 jend* ?4 } ?7 S. U2 M7 e2 X* b
alpha=x(1);beta=x(2);theta=x(3);gamma=x(4);& E% H- ~/ Q4 `0 r6 J. S- u; _$ Z
for i=1:1254
; j6 q! m! [; g2 d! x) v Y3 Bnllh(i,1)=0.5*log(2*3.1415926)+0.5*log(npsigma(i,1))+0.5*(r(i,1)^2/npsigma(i,1));
/ r# Z5 g# ~% Q) E! w* c6 fend. T( o+ y( m ^ j' D' c
f=sum(nllh);
3 E3 z+ a4 O+ F/ J3 B8 ]3 t: C& x3 f' S3 x
另外nonlcon的code是:
% ~9 F2 `1 b9 B3 I4 Ufunction [c,ceq]=mycon(x)
, e W. G0 u1 ^) kalpha=zeros(1,1);beta=zeros(1,1);theta=zeros(1,1);
) Y3 n0 B. R; X) ax=[alpha,beta,theta];
/ [ ~* V2 z5 B. Yc=alpha*(1+theta^2)+beta-1;
& e" C4 t9 ?8 \: g6 j% Zceq=[];$ J2 K! E2 C5 v# U/ X5 q
) v) H0 q" g4 Y; T& K$ e
run出来显示:
' K" C, v) }5 Y) h" J' Ux0=[0.04;0.5;2;0.07];
# P3 y1 x6 j8 \' R; [- H& x' aOptimization terminated: first-order optimality measure less' s# u% x# B5 Y( z: m
than options.TolFun and maximum constraint violation is less- }4 i8 [' Q0 Q" Y
than options.TolCon.
3 C- e4 x! M4 @8 x O! ~) e4 g/ PNo active inequalities.
: E2 p9 x0 w" q" m: E5 ]0 B3 h" k5 m, b5 e7 s# Q; {/ N2 S( O: s
x =( N8 i9 e1 N; r: I% e4 ]
& g( I+ E8 Q/ m
0.0400- |& m. e( S3 m/ i: l( i
0.5000
, q- a0 J/ N4 f7 R' y 2.0000+ U& }0 U4 K2 q) u
0.0700- U1 b% ] Z" R+ |# V& g
/ i. G$ n% r/ s
% ~% q, V* S1 {# B/ `3 c7 ]; _
fval =3 P; z' [% f. s
- C) H0 w7 O' _0 r# V# B-3.6963e+003
f/ L& ~* r, R8 S
' u8 |7 R. y$ Q4 p4 h. i3 c& K+ Y& v( F' g
exitflag =
; {! _8 |& m' C/ ^% i, Z' x/ j7 w
7 s" L. Y) k' o }) ~5 {- O7 @ 1
4 u: |. b" |" P0 V Q+ \
$ c( f& O5 ^/ `7 q+ Q3 K3 C3 `
h. `* O. W1 `# v, k$ A8 V* l0 R0 P4 eoutput =9 j2 V4 Y1 Z' z1 B. A
9 g0 t" f6 b4 ]
iterations: 1
Q5 T) k' k |- C* O funcCount: 10
, C" i8 O0 [5 N" c M. Q9 L7 w* L0 E stepsize: 1' s6 l. E4 y$ `& u m1 M S
algorithm: 'medium-scale: SQP, Quasi-Newton, line-search'& N$ j5 b8 ^& m) K
firstorderopt: 0
" V3 ?" m8 P* [" D cgiterations: []
% @8 r0 z7 ~; l message: [1x144 char]. Q5 m* m H% o
: D0 ]1 }6 J1 x p& }
* S. [. s: ^! j* ]3 Clamda =; p H% v0 X; W9 E3 q4 B& T. C! @
* ^2 y H. x2 q$ {% l, m7 e* t1 K lower: [4x1 double]
7 |* K' Z# @, i" r+ m$ h5 a* R upper: [4x1 double]
7 F2 O3 i( l% y& g$ Q$ U8 s# B: @! c eqlin: [1x0 double] y) d; n: Y4 n0 p/ w
eqnonlin: [1x0 double]8 j3 ~5 X' \& X6 W U& I8 a
ineqlin: [1x0 double]! x1 ~) @5 W0 k" t" p" |
ineqnonlin: 08 J, }) B0 H/ f! a5 E5 b
5 }0 {+ o- K( @2 {6 F$ O
为什么会这样呢?fval已经改变了但是x不会变?而且iteration只有1+ J# w# d- S2 K
( w" F" U- {* [0 J4 F" u; Z; K
|
|