python的GARCH(1,1)过程

mac2024-05-31  30

at = [0] y_value = [] rt = 0 fi0 = 0 fi1 = 0 xita1 = 0 AT = 0 alpha0 = 0.3 alpha1 = 0.5 sigama = [0] SIGAMA = 0 beta1 = 0.2 #alpha1+beta1<1 #generate shock序列 for i in range(500): SIGAMA = math.sqrt(alpha0 + alpha1*pow(at[i],2) + beta1*pow(sigama[i],2)) sigama.append(SIGAMA) AT = SIGAMA*np.random.normal(0,1) if i < 20: print(SIGAMA, AT) at.append(AT) print(at[0:20]) for j in range(1,501): rt = fi0+ fi1*rt-xita1*at[j-1]+at[j] y_value.append(rt) plt.plot(y_value) plt.grid() plt.show()

第一次写**_**

最新回复(0)