関数を解くために fsolve を使用しましたが、結果は次のように表示されます
最適化が終了しました: X の相対変化のノルムが max(options.TolX^2,eps) 未満であり、関数値の平方和が sqrt(options.TolFun) 未満です。
A = 0.3490
誰でもこれを解決する方法を知っていますか? ありがとう!
私のコードは以下の通りです
clear
M=10000;
x0=0.35;
Z=randn(M,1);
A=fsolve(@(x)function_1_5_3(x,Z),x0)
function f=function_1_5_3(x,Z)
r0=.02;%interest rate
sigma=.15;%vatality rate of risky asset
mu0=.06;%drift rate of risky asset
gamma=5;%risk aversion rate
M=10000;%number of trajectories
N=55;%time period
T=55;%total time period
R=40;%time of retirement
dt=T/N;%each time period
t=1:dt:T;
omega=x;
Rf=exp(r0);%riskless reture
mat=rand(M,N);
Rs=exp(mu0+sigma*Z);%risky market return
a=20*mat(:,N-2);
a_1=20*mat(:,N-1);
W=((a.*(Rf+omega*(Rs-Rf))-a_1).^(-gamma)).*(Rs-Rf);%regard as function 4
f=mean(W);