營(yíng)銷策劃的流程南昌seo網(wǎng)站排名
- 如果您想了解更多信息,請(qǐng)查看第 2?部分和第?3 部分。
一、說明
????????這是第一篇文章,我將幫助您獲得如何使用這個(gè)新的強(qiáng)大工具來解決金融中的半分析問題并取代您的蒙特卡洛方法的直覺。
????????我們都知道并喜歡蒙特卡洛數(shù)字積分方法,但是如果我告訴你你可以用虛數(shù)和傅里葉級(jí)數(shù)來代替蒙特卡洛呢?
????????主要好處是速度,這在期權(quán)定價(jià)中非常重要。這非常重要,因?yàn)橛糜诙▋r(jià)股票期權(quán)的赫斯頓模型需要數(shù)字積分,蒙特卡羅大約需要 100 毫秒,傅里葉級(jí)數(shù)需要幾毫秒。
二、第 1 部分:但是什么是傅里葉級(jí)數(shù)?
????????對(duì)于任何函數(shù)?f 和區(qū)間 a,b,我們可以將?f(x)?近似為余弦和正弦的無限和,L =?b-a。
三、第 2 部分:將數(shù)學(xué)公式應(yīng)用于 Python
def get_fourier_approx(f, x:np.array, a:float, b:float, N:int):fa = lambda x, n : f(x) * cos((2*pi*n*x)/(b - a))fb = lambda x, n : f(x) * sin((2*pi*n*x)/(b - a))A0 = 1/(b - a) * quad(f, a, b, limit=200)[0]Cosine_Sine_Sum = np.zeros_like(x)for n in range(1, N+1):A = 2/(b - a) * quad(fa, a, b, args=(n), limit=200)[0]B = 2/(b - a) * quad(fb, a, b, args=(n), limit=200)[0]Cosine_Sine_Sum += A*cos((2*pi*n*x)/(b - a)) + B*sin((2*pi*n*x)/(b - a))fx = A0 + Cosine_Sine_Sumreturn fx
a = -6
b = 6
x = np.linspace(a, b, 1_000)
y = f(x)fig, (ax1, ax2) = plt.subplots(2, figsize=(20,12))
blue_shades = ['#0000FF', '#3399FF', '#66B2FF', '#99CCFF', '#CCE5FF']avg_residuals = []
Ns = [8, 16, 32, 64, 128]
for i, N in enumerate(Ns):fx = get_fourier_approx(f=f, x=x, a=a, b=b, N=N)ax1.plot(x,fx, blue_shades[i], label=f'N = {N}')ax2.plot(x,y-fx, blue_shades[i], label=f'N = {N}')avg_residuals.append(np.abs(y-fx).mean())ax1.set_title('Fourier Transform of f(x)')
ax1.plot(x,y,'tab:red', linestyle='--')
ax2.set_title('Residuals')
plt.tight_layout() ; ax1.legend();ax2.legend() ; plt.show()pd.Series(avg_residuals, index=Ns, name='Avg Residual')
3.1 方形功能:
來源:筆記本
N Avg. Residual
--------------------
8 1.311711
16 0.784683
32 0.440387
64 0.268449
128 0.154604
3.2 線路功能:
來源:筆記本
N Avg. Residual
--------------------
8 0.447389
16 0.264635
32 0.153540
64 0.088745
128 0.052147
3.3 正態(tài)分布
- 在 [0, 12] 中縮放 y,其中:
- 平均值 = 100- 標(biāo)準(zhǔn) = 0.1 *sqrt(5)*100- a = 100 -12 * 標(biāo)準(zhǔn)
- b = 100
+12 * 標(biāo)準(zhǔn)
來源:筆記本
N Avg. Residual
--------------------
8 1.092374e-01
16 8.326020e-05
32 6.878539e-14
64 5.721031e-14
128 5.170898e-14
3.3 議論
- 所有分布都按比例縮放,使 y 范圍從 [0,12] 開始,因此我們可以比較殘差的大小。
- 從繪圖和殘差可以看出,函數(shù)的曲線越大,傅里葉級(jí)數(shù)收斂到正確值的速度就越快。我們將此屬性用作正態(tài),并且對(duì)數(shù)正態(tài)不需要很多項(xiàng)來計(jì)算,在我們的近似中具有足夠的準(zhǔn)確性。
- 數(shù)據(jù)開頭和結(jié)尾的誤差明顯更高。因此,最好包含比預(yù)期使用的限制更高的限制。例如,當(dāng)您需要 ±4 時(shí)計(jì)算 ±3std。這使得深度價(jià)外期權(quán)更難計(jì)算。
四、第3部分??S(T)的對(duì)數(shù)正態(tài)分布
????????S_T遵循 Q 下的簡(jiǎn)單 GBM,我們可以使用以下等式推導(dǎo)出S_T的概率密度:
????????現(xiàn)在我們可以使用以下函數(shù)在 Python 中定義 f(S_T),并將下限定義為 ( 0, S_0*exp(r*T) + 12 * sigma*sqrt(T)*S_0 )
S0 = 100
r = 0.05
sigma = 0.1
T = 5.0Z = lambda St : np.where(St > 0, ((log(St/S0) - (r - .5*sigma)*T)/(sqrt(T)*sigma)), -np.inf)
f = lambda x : norm.pdf(Z(x))a = S0*exp(r*T) - 12 * sigma*sqrt(T)*S0
b = S0*exp(r*T) + 12 * sigma*sqrt(T)*S0
Source:?Notebook
N Avg. (scaled) Residual Avg. Residual Execution Time (sec)
----------------------------------------------------------------------------
8 0.176429 5.880975e-03 0.112720
16 0.004235 1.411566e-04 0.246473
32 0.000030 9.855127e-07 0.624209
64 0.000027 8.918504e-07 1.936948
128 0.000026 8.530034e-07 6.741019
4.1 言論:
- 我包括了縮放和非縮放殘差??s放殘差對(duì)應(yīng)于(不正確的)縮放概率,使得 max{y}=12,其中(正確的)非縮放,max{y}=0.4。這樣做是為了將對(duì)數(shù)正態(tài)分布的擬合與上面繪制的其他函數(shù)進(jìn)行比較。
- 我們可以推斷出,由于形狀不對(duì)稱,對(duì)數(shù)正態(tài)分布比正態(tài)分布更難擬合。
- 我們可以看到,在非縮放版本中有 64 項(xiàng),計(jì)算 P(S_T=x) 的預(yù)期誤差非常小,小于 0.0001%。
- 將分布集中在 T 處的期望值周圍非常重要,12stds 左右對(duì)稱。?我做了一個(gè)版本,其中a和b不對(duì)稱,殘差不均勻分布。直覺上,你會(huì)采取 a=0+,但它不會(huì)產(chǎn)生理想的結(jié)果。*S_T殘差是針對(duì) S_T>0 的值計(jì)算的,因?yàn)檫@是不可能的,我們不關(guān)心小于 0 的值。
a=1e-8 的S_T密度,在殘差處表現(xiàn)出不良性質(zhì)。來源:筆記本
4.2 限制 — 缺點(diǎn) — 改進(jìn):
- 將前面提到的任何函數(shù)近似為傅里葉級(jí)數(shù)并使用數(shù)值積分作為計(jì)算 An 和 Bn 的手段沒有任何好處。
- 分析計(jì)算 An 和 Bn 系數(shù)非常重要,因此唯一的數(shù)值部分是計(jì)算序列。
- 好處在別處。當(dāng)f(x)沒有顯式形式并且需要數(shù)值積分時(shí),我們可以用特征函數(shù)和傅里葉級(jí)數(shù)半解析地解決問題。
- 如果我們?cè)?Python 中使用 scipy.norm 為帶有標(biāo)準(zhǔn) BS 的選項(xiàng)定價(jià),大約需要 0.06 毫秒。
但是,如果我們解析求解積分 A0、An、Bn 并使用復(fù)數(shù)版本,我們會(huì)得到大約 0.6 毫秒,這是可比的。我們將在第 3 部分中在 Heston 模型中使用它,該模型是此類期權(quán)定價(jià)的行業(yè)標(biāo)準(zhǔn)。
下一篇:第 2 部分
媒介:鏈接
在下一篇文章中,我們將了解如何將這些知識(shí)與特征函數(shù)(虛數(shù)的使用)結(jié)合使用,以使用標(biāo)準(zhǔn)布萊克-斯科爾斯模型計(jì)算歐洲看漲期權(quán)的值。