|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
求教大神:
1 ~! b! ^9 ?' E# a& I2 @ |( |function f=nsllh(x); k$ T( u; t! q% V" [' C/ t* t
close=xlsread('HW_3_Part2Data','#3','D3 1257');% B. T. A6 N& n& t0 O! e4 l
nvix=xlsread('HW_3_Part2Data','#3','H4:H1257');& z' s; N' V, j. [2 o# h
alpha=zeros(1,1);beta=zeros(1,1);theta=zeros(1,1);gamma=zeros(1,1);; _, M4 Y8 w& Q9 S/ J, c
x=[alpha,beta,theta,gamma];) o* T% c7 f w3 r& n1 a* _& R
r=zeros(1254,1);4 a& e1 t; @+ ?& F7 L
for i=1:12546 K, Y/ _. @# ^
r(i+1,1)=log(close(i+1,1)/close(i,1));
6 R8 l2 z/ ~3 W0 R3 q/ fend
; t5 I$ e, L/ f& e, Isigma=var(r);
' M( k1 A$ _" J: gomega=sigma*(1-alpha*(1+theta^2)-beta);# f. P" \5 D4 I) [; x
npsigma=ones(1254,1);! k6 ^' h9 L! J# J( }
npsigma(1,1)=sigma;
% K* _( r! ?' xfor i=1:1253$ Y1 r; Q+ |$ a" l. \& G% m
npsigma(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;
$ q/ P* v/ f; G) Z2 Eend- O5 F! i) q* _2 F T
alpha=x(1);beta=x(2);theta=x(3);gamma=x(4);& A& w1 z, H( }$ u' g: e
for i=1:1254
$ ]. \6 P: H7 }* R# C4 nnllh(i,1)=0.5*log(2*3.1415926)+0.5*log(npsigma(i,1))+0.5*(r(i,1)^2/npsigma(i,1));
+ x4 ^2 Z' _. }, eend
" t4 P7 l& E1 X F) [0 F' o$ vf=sum(nllh);
8 ~+ f- a% q6 t# y9 \: H8 W9 {, G
另外nonlcon的code是:4 r! |5 }0 n6 b2 W8 r
function [c,ceq]=mycon(x)
7 ~& S1 {! e8 x" e+ S1 i4 qalpha=zeros(1,1);beta=zeros(1,1);theta=zeros(1,1);
1 v6 g( F2 J. Lx=[alpha,beta,theta];
& U$ `6 \+ ]' nc=alpha*(1+theta^2)+beta-1;
' T2 A& `: P8 a2 \0 \ceq=[];
7 G/ j1 ]; v. f1 v/ z5 E3 d2 ?( s9 _9 ^% \7 n6 v* X! @! }% ~
run出来显示:
4 ~% x5 ?# ^/ O+ Z, L4 Vx0=[0.04;0.5;2;0.07];( q3 k* O; _6 B2 @
Optimization terminated: first-order optimality measure less: o" I, i$ J$ H2 G* E/ i5 T" [. s1 u' X
than options.TolFun and maximum constraint violation is less
! O. Y& H0 P/ E) h& N# @than options.TolCon.7 h+ `3 T; u9 q8 d
No active inequalities.2 W; w5 R6 Y4 l2 v1 X/ _
) ]7 k3 m$ c G) o1 o
x =
" |/ ?8 X! l& e, p4 L% e' {* B. I$ }& y
0.0400
2 o8 X6 ^% S$ ~1 t" w2 P2 J( V 0.5000
+ k8 \8 J% B. k6 }% P; e# q4 n7 P( _ 2.0000* T- l& R& w: _* \2 m
0.0700
) c3 c _) C% o) @4 E x' K7 X4 G8 |
7 w+ W4 V! ]) q9 t/ h; Kfval =. B( d" u& k) [4 H9 ~
4 a& V4 C) o) K
-3.6963e+003
5 g0 `+ S0 ` k1 H5 M. I
: D; T! x+ Z6 `8 k* P5 K& Y9 N7 N/ F
exitflag =* z: j9 r8 o& v+ n- f. ?* _ x6 L4 ~
, O3 _) C0 q; [
1
q" q% Q. ]% t6 X5 W# T# ^# i& v: h: ~( ?
: C7 ^" A1 o# ?% N+ t8 B4 _# houtput =8 Z' f1 @2 }8 v9 V( k
' d8 ?; P" N! T1 B \! L iterations: 1
9 I% X, j- m4 }5 @( W' h2 L6 q funcCount: 10
( C7 Q# r7 B3 Z/ g# t% D( H' x7 g stepsize: 1
; P9 W9 t$ g$ A2 e3 h algorithm: 'medium-scale: SQP, Quasi-Newton, line-search'
" k' E4 ^: G/ ] firstorderopt: 0' w4 Z: A" `' b. X
cgiterations: []" t: A# m$ @' o# D' B" m# Y
message: [1x144 char]
: I9 n" J" `' }5 g7 n! l" V3 c: b# o6 q+ ]# n2 P
" w, ?% B; [) M: ^+ P, ]: c4 G
lamda =, o$ v$ `4 o# X8 o9 P% v
0 k3 Y5 i6 o0 y7 A$ I/ } lower: [4x1 double]7 p7 l2 o& O; ^; [& o* |! l
upper: [4x1 double]3 O/ ~! r# C! G& l9 D/ @, \, x
eqlin: [1x0 double]
/ t/ S, p+ Y, C9 _/ U; p m eqnonlin: [1x0 double]
; H. i/ g+ A; g! J ineqlin: [1x0 double]' U' I' \/ _0 r& H ], l
ineqnonlin: 03 e. a( P' i. o1 H
* m7 \: L5 t% S4 H5 V1 r5 O
为什么会这样呢?fval已经改变了但是x不会变?而且iteration只有1
5 p5 Y( c* k5 m. C/ ?7 |3 s E. y3 L; O9 t& G
|
|