Vincent
2022-02-06 13:27老師,想問(wèn)下蒙特卡洛里面這個(gè)圖里面代碼的含義,可視化這塊沒(méi)教,麻煩解釋下這幾行內(nèi)容。另外,請(qǐng)告知我下這些策略pdf的密碼,我這邊打不開(kāi),謝謝!
所屬:AQF > AAQF 視頻位置 相關(guān)試題
來(lái)源: 視頻位置 相關(guān)試題
1個(gè)回答
高志萍助教
2022-02-06 14:32
該回答已被題主采納
同學(xué)你好,
fig=plt.figure(figsize=(9,9)):是設(shè)定圖片的大小是9英寸??9英寸
ax=fig.add_subplot(111):表示在設(shè)定一個(gè)圖片,這里因?yàn)槭侵灰粋€(gè)圖就夠了,所以是111
如果要生成2個(gè)圖
第一個(gè)圖就是ax_1=fig.add_subplot(211)或者ax_1=fig.add_subplot(121)
第二個(gè)圖就是ax_2=fig.add_subplot(212)或者ax_1=fig.add_subplot(122)
如果要在第一個(gè)圖里話,就用ax_1.plot(),第二個(gè)圖就是ax_2.plot()
lines=[]: 建立一個(gè)空列表,之后循環(huán)的時(shí)候可以往空列表里放入每次的模擬數(shù)據(jù)(這里沒(méi)有用到,刪掉這個(gè)也不影響)
下面是循環(huán)畫(huà)圖:
len(curves)是模擬的總次數(shù),這里是300次
那idx就是0到300,(0開(kāi)始,299結(jié)束,一共300個(gè)標(biāo)簽)
curves本身是個(gè)列表
curves[idx],表示第幾個(gè)標(biāo)簽對(duì)應(yīng)的數(shù)列,也就是列表切片
因?yàn)橐淮文M是101個(gè)數(shù)的數(shù)列
idx第一次循環(huán),那idx取0,curves[0] 就是第一次模擬產(chǎn)生的101個(gè)數(shù)字,
retLine這里就是開(kāi)始畫(huà)線了
ax.plt是在第一個(gè)子圖(這里只有一個(gè)子圖)里畫(huà)
line,就是被畫(huà)的東西,也就是每次的模擬
color='cornflowerblue'表示線的顏色是淺藍(lán)色
alpha=0.8,表示透明度,值越小越透明
linewidth=0.6,表示線寬
這樣循環(huán)300次,就畫(huà)出圖
然后是對(duì)圖的一些調(diào)整
plt.xlabel('stock_price',fontsize='large'):設(shè)定x軸的標(biāo)簽是stock_price,字體大小是大
plt.ylabel('steps',fontsize='large'):設(shè)定y軸的標(biāo)簽是steps,字體大小是大
(這里是有點(diǎn)問(wèn)題的,應(yīng)該y軸表示價(jià)格,x軸表示步長(zhǎng),x和y的標(biāo)簽應(yīng)該換一下的)
plt.title('Monte Carlo Simulation',fontsize='large'):設(shè)定表格的名字是蒙特卡羅模擬,字體是大
plt.show()的作用是將內(nèi)存中已經(jīng)繪制好的圖片一次性繪制在對(duì)應(yīng)的坐標(biāo)系統(tǒng)中。
-
追答
同學(xué)你好,
密碼是:aqf20170801 -
追問(wèn)
老師,我理解為curve本身是一個(gè)列表,它里面每一個(gè)元素也是個(gè)列表(包含101個(gè)價(jià)格),對(duì)吧?還有retLine是自己設(shè)的(有沒(méi)有逗號(hào)都無(wú)所謂)。另外,這種圖有沒(méi)有其他簡(jiǎn)便的方法,可以不設(shè)定子圖嗎?求解答,謝謝!
-
追答
同學(xué)你好,
是你的,curve就是一個(gè)大列表
retline沒(méi)有逗號(hào)也可以的,
不設(shè)子圖的方法:
plt.figure(figsize=(9,9))
for idx in range(len(curves)):
line=curves[idx]
retLine=plt.plot(line,color='cornflowerblue',alpha=0.8,linewidth=0.6)
plt.xlabel('stock_price',fontsize='large')
plt.ylabel('steps',fontsize='large')
plt.title('Monte Carlo Simulation',fontsize='large')
plt.show() -
追答
請(qǐng)看圖:
