相关日志
-
-
分享
γ跃迁概率模型
-
accumulation 2015-5-5 13:06
-
1.电磁辐射与原子核多极辐射的类比; 2.γ跃迁与核能级的关系:角动量、宇称; 3.电多极辐射与磁多极辐射; 4.γ跃迁概率的单质子模型; 5.跃迁概率数量级的比较; 6.γ跃迁选择定则; 7.γ跃迁选择定则的应用;
-
个人分类: 原子核物理|0 个评论
-
-
分享
金融计量学—GARCH模型
-
accumulation 2015-5-3 14:23
-
'/Homework II (4) workfile hw2_3 u 1 501 series u=0 series h=0.5 series x=0 series v1=nrnd series v2=nrnd smpl 2 501 series x=0.5*x(-1)+v1 for !i=2 to 251 h(!i)=0.5+0.2*u(!i-1)^2+0.65*h(!i-1) u(!i)=@sqrt(h(!i))*v2(!i) next for !i=252 to 501 h(!i)=0.8+0.2*u(!i-1)^2+0.65*h(!i-1) u(!i)=@sqrt(h(!i))*v2(!i) next series y=1+0.8*x+u arch y c x
-
个人分类: 金融工程|0 个评论
-
-
分享
金融计量学—GARCH模型
-
accumulation 2015-5-3 14:16
-
'/Homework II (3) workfile hw2_3 u 1 251 series u=0 series h=0.5 series x=0 vector(50) yfup=0 vector(50) yfdown=0 scalar count=0 series v1=nrnd series v2=nrnd smpl 2 251 series x=0.5*x(-1)+v1 for !i=2 to 251 h(!i)=0.5+0.2*u(!i-1)^2+0.65*h(!i-1) u(!i)=@sqrt(h(!i))*v2(!i) next series y=1+0.8*x+u smpl 2 201 equation eq1.ls y c x for !j=0 to 49 smpl 202+!j 202+!j eq1.forecast yftemp uftemp yfup(!j+1)=yftemp(202+!j)+2*uftemp(202+!j) yfdown(!j+1)=yftemp(202+!j)-2*uftemp(202+!j) count=count+(y(!j+202)yfdown(!j+1))*(y(!j+202)yfup(!j+1)) next
-
个人分类: 金融工程|0 个评论
-
-
分享
金融计量学—ARMA(1,1)模型与AR(2)模型的比较
-
accumulation 2015-5-3 14:11
-
'/Homework II (d) workfile hw2_2 u 1 502 scalar countaic=0 scalar countbic=0 vector(100) msev1=0 vector(100) msev2=0 for !i=1 to 100 series varepsilon=nrnd series x=0 smpl 2 502 series x=0.8*x(-1)+0.1*varepsilon(-1)+varepsilon smpl 2 501 equation eq1.ls x ar(1) ma(1) equation eq2.ls x ar(1) ar(2) smpl 502 502 eq1.forecast xf1 eq2.forecast xf2 smpl @all scalar aic1=eq1.@aic scalar bic1=eq1.@sc scalar aic2=eq2.@aic scalar bic2=eq2.@sc msev1(!i)=(xf1(502)-x(502))^2 msev2(!i)=(xf2(502)-x(502))^2 countaic=countaic+(aic1aic2) countbic=countbic+(bic1bic2) next scalar mse1=@mean(msev1 ) scalar mse2=@mean(msev2 )
-
个人分类: 金融工程|0 个评论
-
-
分享
金融计量学—ARMA(1,1)模型与AR(2)模型的比较
-
accumulation 2015-5-3 14:08
-
'/ Homework II (2) (a) (b) workfile hw2_2 u 1 502 series varepsilon=nrnd series x=0 smpl 2 502 series x=0.8*x(-1)+0.1*varepsilon(-1)+varepsilon '/(a) smpl 2 501 equation eq1.ls x ar(1) ma(1) equation eq2.ls x ar(1) ar(2) smpl 502 502 eq1.forecast xf1 eq2.forecast xf2 smpl @all '/(b) scalar aic1=eq1.@aic scalar bic1=eq1.@sc scalar aic2=eq2.@aic scalar bic2=eq2.@sc scalar mse1=(xf1(502)-x(502))^2 scalar mse2=(xf2(502)-x(502))^2
-
个人分类: 金融工程|0 个评论
-
-
分享
用DSGE模型模拟低碳消费补偿政策的优化路径
-
cuifengbao 2015-5-2 20:19
-
由于低碳消费及生产方面的数据获得性太差,太难做参数校准和估计
-
28 次阅读|0 个评论
-
-
分享
Monte Carlo Simulation——期权定价模型
-
accumulation 2015-5-1 16:12
-
#include math.h #include vector #include iostream #include stdlib.h #include time.h using namespace std; double N(const double x) //标准正态分布的累积分布函数 { if (x6.0) { return 1.0; }; //当x大于6时,认为N(x)近似等于1 if (x-6.0) { return 0.0; }; //当x小于-6时,认为N(x)近似等于0 double b1=0.31938153; double b2=-0.356563782; double b3=1.781477937; double b4=-1.821255989; double b5=1.330274429; double p=0.2316419; double c2=0.3989423; double a=fabs(x); double t=1.0/(1.0+a*p); double b=c2*exp((-x)*(x/2.0)); double n=((((b5*t+b4)*t+b3)*t+b2)*t+b1)*t; n=1.0-b*n; //累积分布函数的近似公式 if (x0.0) n=1.0-n; //N(x)=1-N(-x) return n; } double option_price_call_BS(const double S, const double X, const double r, const double sigma, const double time) //BSM期权定价公式定价欧式看涨期权 { double time_sqrt=sqrt(time); double d1=(log(S/X)+r*time)/(sigma*time_sqrt)+0.5*sigma*time_sqrt; double d2=d1-(sigma*time_sqrt); double c=S*N(d1)-X*exp(-r*time)*N(d2); return c; } double option_price_put_BS(const double S, const double X, const double r, const double sigma, const double time) //BSM期权定价公式定价欧式看跌期权 { double time_sqrt=sqrt(time); double d1=(log(S/X)+r*time)/(sigma*time_sqrt)+0.5*sigma*time_sqrt; double d2=d1-(sigma*time_sqrt); double p=X*exp(-r*time)*N(-d2)-S*N(-d1); return p; } double sampleNormal() //生成期望值为0,方差为1的白噪声 { double u=((double) rand()/(RAND_MAX))*2-1; double v=((double) rand()/(RAND_MAX))*2-1; double r=u*u+v*v; if (r==0 || r1) return sampleNormal(); double c=sqrt(-2*log(r)/r); return u*c; } double simulate_random_variable(const double S, const double r, const double sigma, const double time) //计算下一时刻标的资产的价格 { double R=(r-0.5*pow(sigma,2))*time; double SD=sigma*sqrt(time); return S*exp(R+SD*sampleNormal()); //根据股票价格的对数正态分布特性进行计算 } double max(double a,double b) //计算二者最大值的函数 { if (ab) return a; else return b; } void option_price_european_simulated(const double S, const double X, const double r, const double sigma, const double time, const int no_sims, double call_option, double put_option) //欧式看涨期权与欧式看跌期权的蒙特卡洛模拟定价 { double R=(r-0.5*pow(sigma,2))*time; double SD=sigma*sqrt(time); double sum_payoffs1=0.0; double sum_payoffs2=0.0; for(int n=1; n=no_sims; n++) //no_sims为模拟次数 { double S_T=S*exp(R+SD*sampleNormal()); //根据股票价格的对数正态分布特性计算T期股票价格 sum_payoffs1+=max(0.0,S_T-X); //看涨期权的边界条件 sum_payoffs2+=max(X-S_T,0.0); //看跌期权的边界条件 } call_option=exp(-r*time)*(sum_payoffs1/double(no_sims)); //根据期望值并贴现求现值得到看涨期权价格 put_option=exp(-r*time)*(sum_payoffs2/double(no_sims)); //根据期望值并贴现求现值得到看跌期权价格 } int main() { cout"N(1.96)="N(1.96)endl; //计算标准正态分布的累积分布函数 double S=50; //现期股票价格为S=50 double X=50; //执行价格为X=50 double r=0.1; //无风险利率为r=0.1 double sigma=0.4; //年化波动率为40% double time=0.4167; //时间为0.4167年 cout"EUROPEAN CALL: "option_price_call_BS(S,X,r,sigma,time)endl; //BSM期权定价公式计算看涨期权的价格 cout"EUROPEAN PUT: "option_price_put_BS(S,X,r,sigma,time)endl; //BSM期权定价公式计算看跌期权的价格 cout"Next price: "simulate_random_variable(S,r,sigma,time)endl; //计算时刻time时的股票价格 int no_sims=5000000; //模拟次数 double call_option; double put_option; option_price_european_simulated(S,X,r,sigma,time,no_sims,call_option,put_option); cout"Monte Carlo Call: "call_optionendl; //蒙特卡洛方法计算的欧式看涨期权价格 cout"Monte Carlo Put: "put_optionendl; //蒙特卡洛方法计算的欧式看跌期权价格 system("pause"); }
-
个人分类: 金融工程|0 个评论
-
-
分享
金融预测模型评价的几个指标
-
accumulation 2015-5-1 12:42
-
在一篇文献上看到关于模型预测结果的评价方面有五个指标:Sharpe ratio、 hit rate、 realized potential、 profit loss curve 和 annuliazed return of investment 请问关于这几个指标(主要是后面三个)的定义还有计算方法、计算公式是什么啊? sharpe ratio 1990年度诺贝尔经济学奖得主威廉-夏普(William Sharpe)以投资学最重要的理论基础CAPM(Capital Asset Pricing Model,资本资产定价模式)为出发,发展出名闻遐迩的夏普比率(Sharpe Ratio),用以衡量金融资产的绩效表现。威廉-夏普理论的核心思想是:理性的投资者将选择并持有有效的投资组合,即那些在给定的风险水平下使期望回报最大化的投资组合,或那些在给定期望回报率的水平上使风险最小化的投资组合。解释起来非常简单,他认为投资者在建立有风险的投资组合时,至少应该要求投资回报达到无风险投资的回报,或者更多。 夏普比率计算公式:= /σp 其中E(Rp):投资组合预期报酬率 Rf:无风险利率 σp:投资组合的标准差
-
个人分类: 金融工程|0 个评论
-
-
分享
蒙特卡洛模拟—期权定价模型
-
accumulation 2015-4-30 23:51
-
#include math.h #include vector #include iostream #include stdlib.h #include time.h using namespace std; double sampleNormal() { double u=((double) rand()/(RAND_MAX))*2-1; double v=((double) rand()/(RAND_MAX))*2-1; double r=u*u+v*v; if (r==0 || r1) return sampleNormal(); double c=sqrt(-2*log(r)/r); return u*c; } double simulate_random_variable(const double S, const double r, const double sigma, const double time) { double R=(r-0.5*pow(sigma,2))*time; double SD=sigma*sqrt(time); return S*exp(R+SD*sampleNormal()); } double max(double a,double b) { if (ab) return a; else return b; } void option_price_european_simulated(const double S, const double X, const double r, const double sigma, const double time, const int no_sims, double call_option, double put_option) { double R=(r-0.5*pow(sigma,2))*time; double SD=sigma*sqrt(time); double sum_payoffs1=0.0; double sum_payoffs2=0.0; for(int n=1; n=no_sims; n++) { double S_T=S*exp(R+SD*sampleNormal()); sum_payoffs1+=max(0.0,S_T-X); sum_payoffs2+=max(X-S_T,0.0); } call_option=exp(-r*time)*(sum_payoffs1/double(no_sims)); put_option=exp(-r*time)*(sum_payoffs2/double(no_sims)); } int main() { double seed=(double)time(NULL); double S=50; double X=50; double r=0.1; double sigma=0.4; double time=0.4167; cout"Next price: "simulate_random_variable(S,r,sigma,time)endl; int no_sims=5000000; double call_option; double put_option; option_price_european_simulated(S,X,r,sigma,time,no_sims,call_option,put_option); cout"Monte Carlo Call: "call_optionendl; cout"Monte Carlo Put: "put_optionendl; system("pause"); }
-
个人分类: 金融工程|0 个评论
-
-
分享
BSM期权定价模型—内含差分法
-
accumulation 2015-4-30 13:31
-
#include “newlib.h” double option_price_call_european_finite_diff_implicit(const double S, const double X, const double r, const double sigma, const double time, const int no_S_steps, const int no_t_steps) { double sigma_sqr=sigma*sigma; int M; if((no_S_steps % 2)==1) { M=no_S_steps+1; } else { M=no_S_steps; } double delta_S=2.0*S/M; vectordouble S_values(M+1,0.0); for (int m=0; m=M; m++) { S_values =m*delta_S; } int N=no_t_steps; double delta_t=time/N; BandMatrix A(M+1,1,1); A=0.0; A.element(0,0)=1.0; for (int j=1; jM; ++j) { A.element(j,j-1)=0.5*j*delta_t*(r-sigma_sqr*j); A.element(j,j)=1.0+delta_t*(r+sigma_sqr*j*j); A.element(j,j+1)=0.5*j*delta_t*(-r-sigma_sqr*j); } A.element(M,M)=1.0; ColumnVector B(M+1); for (m=0; m=M; ++m) { B.element(m)=max(0.0,S_values -X); } ColumnVector F=A.i()*B; for (int t=N-1; t0; --t) { B=F; F=A.i()*B; } return F.element(M/2); } double option_price_put_european_finite_diff_implicit(const double S, const double X, const double r, const double sigma, const double time, const int no_S_steps, const int no_t_steps) { double sigma_sqr=sigma*sigma; int M; if((no_S_steps % 2)==1) { M=no_S_steps+1; } else { M=no_S_steps; } double delta_S=2.0*S/M; vectordouble S_values(M+1,0.0); for (int m=0; m=M; m++) { S_values =m*delta_S; } int N=no_t_steps; double delta_t=time/N; BandMatrix A(M+1,1,1); A=0.0; A.element(0,0)=1.0; for (int j=1; jM; ++j) { A.element(j,j-1)=0.5*j*delta_t*(r-sigma_sqr*j); A.element(j,j)=1.0+delta_t*(r+sigma_sqr*j*j); A.element(j,j+1)=0.5*j*delta_t*(-r-sigma_sqr*j); } A.element(M,M)=1.0; ColumnVector B(M+1); for (int n=0; n=M; ++n) { B.element(n)=max(0.0,X-S_values ); } ColumnVector F=A.i()*B; for (int t=N-1; t0; --t) { B=F; F=A.i()*B; } return F.element(M/2); }
-
个人分类: 金融工程|0 个评论
-
-
分享
BSM期权定价模型—外推差分法
-
accumulation 2015-4-30 12:55
-
double option_price_call_european_finite_diff_explicit(const double S, const double X, const double r, const double sigma, const double time, const int no_S_steps, const int no_t_steps) { double sigma_sqr=sigma*sigma; unsigned int M; if ((no_S_steps % 2)==1) { M=no_S_steps+1; } else { M=no_S_steps; }; double delta_S=2.0*S/M; vectordouble S_values(M+1); for (unsigned m=0; m=M; m++) { S_values =m*delta_S; }; int N=no_t_steps; double delta_t=time/N; vectordouble a(M); vectordouble b(M); vectordouble c(M); double r1=1.0/(1.0+r*delta_t); double r2=delta_t/(1.0+r*delta_t); for (unsigned int j=1; jM; j++) { a =r2*0.5*j*(-r+sigma_sqr*j); b =r1*(1.0-sigma_sqr*j*j*delta_t); c =r2*0.5*j*(r+sigma_sqr*j); } vectordouble f_next(M+1); for (unsigned int n=0; n=M; ++n) { f_next =max(0.0, S_values -X); } vectordouble f(M+1); for (int t=N-1; t=0; --t) { f =0; for (unsigned m=1; mM; ++m) { f =a *f_next +b *f_next +c *f_next ; } f =0; for (unsigned n=0; n=M; ++n) { f_next =f ; }; } return f ; } double option_price_put_european_finite_diff_explicit(const double S, const double X, const double r, const double sigma, const double time, const int no_S_steps, const int no_t_steps) { double sigma_sqr=sigma*sigma; unsigned int M; if ((no_S_steps % 2)==1) { M=no_S_steps+1; } else { M=no_S_steps; }; double delta_S=2.0*S/M; vectordouble S_values(M+1); for (unsigned m=0; m=M; m++) { S_values =m*delta_S; }; int N=no_t_steps; double delta_t=time/N; vectordouble a(M); vectordouble b(M); vectordouble c(M); double r1=1.0/(1.0+r*delta_t); double r2=delta_t/(1.0+r*delta_t); for (unsigned int j=1; jM; j++) { a =r2*0.5*j*(-r+sigma_sqr*j); b =r1*(1.0-sigma_sqr*j*j*delta_t); c =r2*0.5*j*(r+sigma_sqr*j); } vectordouble f_next(M+1); for (unsigned int n=0; n=M; ++n) { f_next =max(0.0, X-S_values ); } vectordouble f(M+1); for (int t=N-1; t=0; --t) { f =X; for (unsigned m=1; mM; ++m) { f =a *f_next +b *f_next +c *f_next ; } f =0; for (unsigned n=0; n=M; ++n) { f_next =f ; }; } return f ; } double option_price_call_American_finite_diff_explicit(const double S, const double X, const double r, const double sigma, const double time, const int no_S_steps, const int no_t_steps) { double sigma_sqr=sigma*sigma; int M=no_S_steps; if ((no_S_steps % 2)==1) { M=no_S_steps+1; } else { M=no_S_steps; }; double delta_S=2.0*S/M; vectordouble S_values(M+1,0.0); for (int m=0; m=M; m++) { S_values =m*delta_S; }; int N=no_t_steps; double delta_t=time/N; vectordouble a(M,0.0); vectordouble b(M,0.0); vectordouble c(M,0.0); double r1=1.0/(1.0+r*delta_t); double r2=delta_t/(1.0+r*delta_t); for (unsigned int j=1; jM; j++) { a =r2*0.5*j*(-r+sigma_sqr*j); b =r1*(1.0-sigma_sqr*j*j*delta_t); c =r2*0.5*j*(r+sigma_sqr*j); } vectordouble f_next(M+1,0.0); for (int n=0; n=M; ++n) { f_next =max(0.0, S_values -X); } vectordouble f(M+1,0.0); for (int t=N-1; t=0; --t) { f =0; for (int m=1; mM; ++m) { f =a *f_next +b *f_next +c *f_next ; f =max(f ,S_values -X); } f =S_values -X; for (unsigned n=0; n=M; ++n) { f_next =f ; }; } double C2=f ; return C2; } double option_price_put_American_finite_diff_explicit(const double S, const double X, const double r, const double sigma, const double time, const int no_S_steps, const int no_t_steps) { double sigma_sqr=sigma*sigma; int M; if ((no_S_steps % 2)==1) { M=no_S_steps+1; } else { M=no_S_steps; }; double delta_S=2.0*S/M; vectordouble S_values(M+1); for (int m=0; m=M; m++) { S_values =m*delta_S; }; int N=no_t_steps; double delta_t=time/N; vectordouble a(M); vectordouble b(M); vectordouble c(M); double r1=1.0/(1.0+r*delta_t); double r2=delta_t/(1.0+r*delta_t); for (int j=1; jM; j++) { a =r2*0.5*j*(-r+sigma_sqr*j); b =r1*(1.0-sigma_sqr*j*j*delta_t); c =r2*0.5*j*(r+sigma_sqr*j); } vectordouble f_next(M+1); for (int n=0; n=M; ++n) { f_next =max(0.0, X-S_values ); } vectordouble f(M+1); for (int t=N-1; t=0; --t) { f =X; for (int m=1; mM; ++m) { f =a *f_next +b *f_next +c *f_next ; f =max(f ,X-S_values ); } f =0; for (int k=0; k=M; ++k) { f_next =f ; }; } return f ; } 外推差分法:只能用于 double S=50; double X=50; double r=0.1; double sigma=0.4; double time=0.4167; int no_S_steps=20; int no_t_steps=11;
-
个人分类: 金融工程|0 个评论
-
-
分享
有限差分法求解BSM期权定价模型
-
accumulation 2015-4-30 12:42
-
基本思想:先将衍生证券所满足的偏微分方程转化为一系列近似的差分方程,再用迭代法求解这些差分方程,最后得出衍生证券的价格; 对BSM偏微分方程,把从0时刻到期权的执行日T分成N个等间隔的时间段,每段步长t=T/N,因此总共有N+1个时点; 假设Smax为股票价格所能达到的最大值,定义价格步长为s=Smax/M,其中M为给定的价格步数,这样就有M+1个股票价格点;价格点与时间点构成了一个(M+1)*(N+1)坐标点的方格,图中的任意点(i,j)对应的时间为it,jS; 用fij表示点(i,j)的期权价格,这样,就可以用离散算子逼近偏微分方程中的各项,从而把上述偏微分方程转化为离散方程;离散方程分为内含有限差分法与外推有限差分法。
-
个人分类: 金融工程|0 个评论
-
-
分享
供求模型中的工具变量
-
accumulation 2015-4-29 16:54
-
工具变量的使用要满足四个条件: 1、与所替代的解释变量高度相关 2、与随机误差项不相关 3、与其他解释变量不相关 4、同一个模型中使用的多个工具变量彼此不相关。 再来看你的问题,解决价格与需求、供给之间的内生性问题,分析收入、预期、技术变动、替代物等量是否可以作为工具变量: 收入与供给需求相关——人力市场上尤其如此;预期涉及价格与供给;技术变动影响供给和价格、替代物影响供给与价格。其实你这个问题提得最有内生性——我们都应该意识到,价格是由供给需求共同决定的,怎么可能不存在相关性?没有人会直接用三个变量一起作为解释变量吧?
-
个人分类: 计量经济学|0 个评论
-
-
分享
GARCH模型参考文献
-
accumulation 2015-4-26 20:57
-
1.Modeling and Forecasting Realized Volatility 2.A General Multivariate Threshold GARCH Model with Dynamic Conditional Correlations 3.On ARCH Models: Properties, Estimation and Testing 4.Generalized Autoregressive Conditional Heteroskedasticity 5.Modeling the Coherence in Short-run Nominal Exchange Rates: A Multivariate Generalized ARCH Model 6.ARCH Models 7.A Capital Asset Pricing Model with Time-varying Covariances 8.No News is Good News: An Asymmetric Model of Changing Volatility in Stock Returns 9.A Long Memory Property of Stock Market Returns and A New Model 10.Modeling Volatility Persistence of Speculative Returns: A New Approach
-
个人分类: 金融工程|0 个评论
-
-
分享
金融计量学—GARCH模型的估计
-
accumulation 2015-4-26 15:21
-
分段估计的结果比模型误设时的估计结果要好得多。 因此,可以得到以下结论: A. 在存在参数变化的情况下,采用标准 GARCH 模型去估计将会因为模型误设 而得到错误的参数估计值; B .对于模型中参数发生转变的情况,应当采取利用虚拟变量设置一个门限, 用以区分正的和负的冲击对条件波动性的影响,即采用 TGARCH 模型; C .在金融市场中,一种金融资产的收益率的波动性,经常会显著地受到负的未预知到的收益的影响,当出现没有预期到的损失或者出现利空消息时,收益率时间序列变量的波动性会明显增大;
-
个人分类: 金融工程|0 个评论
-
-
分享
金融计量学—模型的比较
-
accumulation 2015-4-26 15:19
-
(1) 两个模型的比较: AIC 越小的模型相对越好,因此, ARMA(1,1) 模型在 AIC 准则上优于 AR(2) ; BIC 越小的模型相对越好,因此, ARMA(1 , 1) 模型在 BIC 准则上优于 AR ( 2 ); MSE 越小的模型相对越好,因此, ARMA ( 1,1 )模型在 MSE 上优于 AR ( 2 ); (2) 循环( 1 )( 3 )过程 100 次,比较 AIC 与 BIC ; workfile u 500 vector(100) count for !i=1 to 100 // 循环回归 100 次 smpl @all series u=@nrnd // 产生白噪音 u series x=1 // 对 x 设置初值 smpl 2 500 genr x=0.8*x(-1)+0.1*u(-1)+u // 生成 ARMA ( 1,1 )时间序列 series ar1=x(-1) series ar2=x(-2) series ma1=u(-1) equation eq1.ls x c ar1 ma1 // 用 ARMA ( 1,1 )拟合 equation eq2.ls x c ar1 ar2 // 用 AR(2) 拟合 count(!i)=(eq1.@aic eq2.@aic) // 如果 ARMA ( 1,1 )模型的 AIC 小于 AR ( 2 )模型的 AIC ,则取值为 1 next 结果 : ARMA ( 1,1 ) 模型的 AIC 小于 AR ( 2 ) 的 AIC 次数为 64 次 , 即 ARMA ( 1,1 ) 模型在 100 次中有 64 次优于 AR ( 2 ) 模型 ; 如果将 AIC 准则改为 BIC 准则 , 则 count(!i)=(eq1.@sc eq2.@sc) ,结果为: ARMA ( 1,1 )模型的 BIC 小于 AR ( 2 )的 BIC 次数为 65 次,即 ARMA ( 1,1 ) 模型在 100 次中有 65 次优于 AR ( 2 ) 模型 ; 如果要求 ARMA ( 1,1 )模型的 AIC 、 BIC 准则均优于 AR ( 2 )模型,则需要满足 count(!i)=(eq1.@aic eq2.@aic and eq1.@sc eq2.@sc) , ARMA ( 1,1 )模型的 AIC 与 BIC 同时小于 AR ( 2 )的 AIC 与 BIC 的次数为 60 次,即 ARMA ( 1,1 ) 模型在 100 次中有 60 次优于 AR ( 2 ) 模型 ; 总体上看, ARMA ( 1,1 )模型的拟合效果比 AR ( 2 )模型好;
-
个人分类: 金融工程|0 个评论
-
-
分享
金融时间序列分析
-
accumulation 2015-4-26 13:03
-
简评:第一章简明扼要的阐述和概括金融时间序列的概念与特点。 第二章线性模型讲的很全面,例子也很实际,常用和基本的概念几乎都涵盖了。细读这一章,时间序列分析完全可以人门。 第三章波动率模型中ARCH和GARCH讲得比较深入,其余的内容只是完全介绍性的,深入不足。波动率作为时间序列分析中最重要的研究对象之一,完全可以专门出一本书论述,一章难以概括全面。 第四章非线性模型,这一章可以不细读,文中提到的诸多模型(其实还可以更多)开阔眼界用非常合适。 第五章高频,这一章并不满意,从内容和引用文献上看,只是有些不够“时尚”,特别是缺乏限价指令簿分析、实现波动率等比较“时尚”的内容。另外,没有高频时间序列分析和实际交易相联系的部分,大失所望。 第六章连续模型中期权的部分实际上是多余的,重点应该放在SDE的参数估计和模拟上,这一章最失望。 第七章风险分析,将经典的VaR和GARCH时间序列模型结合在一起讲,不落俗套耳目一新,遗憾的是缺少CVaR等内容。极值理论的部分介绍得很全面。 第八章多元模型在同类教科书中不多见,权当开眼界,深入研究的话研读专著才行。 第九章因子分析,常见的因子分析,“静态分析”为主,“动态分析”不多见。 第十章多元波动率,罗列了一些多元模型,但是给人感觉不清不楚。 第十一章状态空间模型,状态空间模型很强大,曾经读过一篇博士论文,在状态空间理论下阐述多元markov转换时间序列模型,巧妙的回避了复杂的MLE,提出了简洁的EM算法估计参数,非常赞。有机会的话把算法写成R-package。状态空间的理论部分显得多余。 第十二章MCMC在同类教科书中也是少见的,基本概念讲得挺清楚,例子也很实际。 总结一下:基础理论尽量做到了面面俱到,全书最出彩的地方在例子,作者举例不仅是为了展示和验证理论,更正可贵的是展现出“调模型”的研究过程,给人一种带着读者做研究的感觉。
-
个人分类: 金融工程|0 个评论
-
-
分享
CAPM模型
-
accumulation 2015-4-26 12:32
-
求问为什么CAPM模型中的资本市场线、证券市场线是用收益率与标准差的回归得到的一条直线,而不是用收益率与方差回归而得到一条直线?能否用市场数据根据计量经济学中的RESET检验法确定一下用方差、标准差与收益率作回归哪个拟合得更好?求指教! 标准差和方差的主要区别是方差的单位是平方,标准差则是单位一。这样,收益率与标准差的回归得到的一条直线,而收益率与方差回归得到的就会是一条抛物线,不方便研究。
-
个人分类: 金融学|0 个评论
-
-
分享
金融计量学—GARCH模型
-
accumulation 2015-4-25 14:23
-
1.微观金融数据的波动性特征—波动性聚集现象; 2.波动性聚集现象—股票收益率的分布出现尖峰、厚尾的现象; 3.有效市场假说—正态分布; 4.条件异方差模型—描述波动性聚集现象; 5.金融时间序列—高频数据的特征; 6.ARCH模型:残差项自身在各期没有明显的相关性,但是残差平方项呈现出较强的自相关性,即ACF呈缓慢衰减趋势; 7.ARCH模型的性质、ARCH模型的检验结果; 8.GARCH(1,1)模型的基本定义与估计结果; 9.GARCH模型与波动率预测; 10.GARCH模型的扩展模型;
-
个人分类: 金融工程|0 个评论
-
-
分享
金融计量学—ARMA模型
-
accumulation 2015-4-25 13:54
-
1.移动平均过程—MA(1); 2.MA(1)过程的均值、方差、自协方差; 3.MA(1)过程的自相关函数; 4.MA(1)过程的可逆性—与AR过程的联系; 5.MA(2)过程的定义、性质、均值、自协方差、自相关函数; 6.MA(q)过程的可逆条件与逆特征方程; 7.ARMA(p,q)过程的基本定义; 8.ARMA(p,q)过程的平稳性与可逆性; 9.ARMA(p,q)过程的均值、方差与自协方差; 10.ARMA过程的自相关函数; ARMA模型的实证分析及应用:滞后期设定(AIC与BIC(SIC))、回归分析;
-
个人分类: 金融工程|0 个评论
GMT+8, 2026-2-13 05:07