小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

搭建自己的回測系統(tǒng)(九)數(shù)據(jù)可視化進階

 powerbaby 2016-04-11

在上一講的基礎(chǔ)上,我們會對金融數(shù)據(jù)可視化做更進一步的探索。


subplot2grid設(shè)置子圖網(wǎng)絡(luò)


上一講中提到了通過add_subplot來增加子圖,這種方法可以設(shè)置子圖網(wǎng)格和子圖在網(wǎng)格中的所在位置。在本講中,我們會介紹一種更加靈活地設(shè)置網(wǎng)格的方法——subplot2grid,該方法可以設(shè)置各子圖所占的行列數(shù),其基本用法為:

subplot2grid(shape, loc, rowspan, colspan, **kwargs)

其中:shape是網(wǎng)格形狀,loc是子圖所在位置,rowspan是子圖所占行數(shù),colspan是子圖所占列數(shù)


candlestick_ohlc方法繪制K線圖


K線圖(蠟燭圖)是金融市場中常見的圖形,在matplotlib中可以通過candlestick_ohlc方法繪制,其基本參數(shù)和用法是:

candlestick_ohlc(ax, quotes, width=0.2, colorup='k', colordown='r', alpha=1.0)

其中:參數(shù)ax為坐標(biāo)軸,width為bar的寬度,colorup是上漲時顯示的顏色,colordown是下跌時顯示的顏色。


quotes為包含時間(time)、開盤價(open)、最高價(high)、最低價(low)、收盤價(close)的序列,candlestick_ohlc方法只會讀取序列的前5個,因此可以傳入任意長度的序列。另外需要注意的是time必須是浮點類型,一般需要用matplotliab中的date2num方法進行格式轉(zhuǎn)換。


帶成成交量的K線圖繪制


運用上面的知識,我們可以開始K線圖的設(shè)置了。整個圖形分成兩個子圖,上面的子圖是K線,而下面的子圖是成交量柱狀圖。采用subplot2grid設(shè)置兩個子圖的位置:


ax1 = plt.subplot2grid((4,4),(0,0),rowspan=3,colspan=4)

ax2 = plt.subplot2grid((4,4),(3,0),rowspan=1,colspan=4)


以上表示K線圖占據(jù)上面3*4的網(wǎng)格,成交柱狀圖占下面1*4的網(wǎng)格。


采用candlestick_ohlc和bar方法分別進行畫圖,根據(jù)上一講的內(nèi)容對圖形的坐標(biāo)軸進行設(shè)置,在此不再重述。在畫完圖后,我們還需要對圖的樣式進行調(diào)整:


plt.setp(ax1.get_xticklabels(),visible = False)

plt.setp(ax1.yaxis.get_ticklabels()[0], visible = False)

plt.subplots_adjust(bottom=0.20, top=0.90, hspace=0)


上面的代碼中,第一行是隱藏K線圖x軸的標(biāo)簽,第二行是隱藏K線圖y軸的第一個標(biāo)簽(該標(biāo)簽會與下面的子圖有重合),第三行是調(diào)整圖形的邊距并且使得兩個子圖之間無空隙。


完成上述操作后,就可以得到最終的圖形了。


后續(xù)的工作

為了讓K線圖與股票軟件中所看的一樣,還需要其他許多額外的工作:

  • 在K線圖上面加上5日、10日等不同周期的均線;

  • 柱狀圖會根據(jù)K線圖的漲跌設(shè)置紅色和綠色

  • 剔除非交易日,使圖形連續(xù)


以上這些可以作為本講的練習(xí),大家可以自己動手嘗試一下。本次講解涉及的完整代碼如下。




    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多