數(shù)據(jù)準(zhǔn)備TuShare是一個(gè)免費(fèi)、開源的python財(cái)經(jīng)數(shù)據(jù)接口包。主要實(shí)現(xiàn)對(duì)股票等金融數(shù)據(jù)從數(shù)據(jù)采集、清洗加工 到 數(shù)據(jù)存儲(chǔ)的過程,能夠?yàn)榻鹑诜治鋈藛T提供快速、整潔、和多樣的便于分析的數(shù)據(jù),為他們?cè)跀?shù)據(jù)來源方面極大地減輕工作量,使他們更加專注于策略和模型的研究與實(shí)現(xiàn)上。考慮到Python pandas包在金融量化分析中體現(xiàn)出的優(yōu)勢,TuShare返回的絕大部分的數(shù)據(jù)格式都是pandas DataFrame類型,非常便于用pandas/NumPy/Matplotlib進(jìn)行數(shù)據(jù)分析和可視化。 股市數(shù)據(jù)的獲取這里用到的tushare的get_hist_data函數(shù)來獲取個(gè)股歷史交易數(shù)據(jù)(包括均線數(shù)據(jù)),可以通過參數(shù)設(shè)置獲取日k線、周k線、月k線,以及5分鐘、15分鐘、30分鐘和60分鐘k線數(shù)據(jù),主要用法如下: ts.get_hist_data('300032') #一次性獲取全部日k線數(shù)據(jù)ts.get_hist_data('300032',start='2019-01-01',end='2019-06-18') #指定時(shí)間區(qū)間ts.get_hist_data('300032',ktype='W') #獲取周k線數(shù)據(jù)ts.get_hist_data('300032',ktype='M') #獲取月k線數(shù)據(jù)ts.get_hist_data('300032',ktype='5') #獲取5分鐘k線數(shù)據(jù)ts.get_hist_data('300032',ktype='15') #獲取15分鐘k線數(shù)據(jù)ts.get_hist_data('300032',ktype='30') #獲取30分鐘k線數(shù)據(jù)ts.get_hist_data('300032',ktype='60') #獲取60分鐘k線數(shù)據(jù)ts.get_hist_data('sh')#獲取上證指數(shù)k線數(shù)據(jù),其它參數(shù)與個(gè)股一致,下同ts.get_hist_data('sz')#獲取深圳成指k線數(shù)據(jù)ts.get_hist_data('hs300')#獲取滬深300指數(shù)k線數(shù)據(jù)ts.get_hist_data('sz50')#獲取上證50指數(shù)k線數(shù)據(jù)ts.get_hist_data('zxb')#獲取中小板指數(shù)k線數(shù)據(jù)ts.get_hist_data('cyb')#獲取創(chuàng)業(yè)板指數(shù)k線數(shù)據(jù) 數(shù)據(jù)的顯示
股市數(shù)據(jù)處理及可視化1. 添加所需的函數(shù)庫 import matplotlib.pyplot as pltimport datetimeimport mpl_finance as mpfimport pandas as pd%matplotlib inline%pylab inline 2. 收盤價(jià)的走勢圖
3. 最高價(jià)和最低價(jià)的走勢圖fig = plt.gcf()with pd.plotting.plot_params.use('x_compat',True): data.high.plot(color='r',figsize=(10,4),grid='on') data.low.plot(color='b',figsize=(10,4),grid='on') 4. K線圖繪制 每一天的數(shù)據(jù)至少有四個(gè)變量(開盤價(jià),最高價(jià),最低價(jià),收盤價(jià)),通過畫四條不同的線來描述這四個(gè)變量的可視化方法就是我們常說的K線圖。本文利用mpl_finance中的candlestick_ohlc函數(shù)進(jìn)行繪制。
|
|