小白量化學習(5)建立本地股票數據庫

小白量化學習(5)建立本地股票數據庫

爲了方便本地離線學習回測,可以在本地建立xbdata目錄,存放股票數據。

一、本地建立xbdata目錄
爲了方便本地離線學習回測,可以在本地建立xbdata目錄,存放股票數據。

例如: C:\xbdata。
不要把數據和程序放到一個目錄中,這樣無法及時備份自己的程序了。

二、可以在網盤中下載1991-2018年的股票數據

網盤下載鏈接如下:
https://pan.baidu.com/s/1jxSaB8JzOu6hNvFipqfGzQ

三、引入模塊HP_data
在HP_data模塊中,我們仿造了get_k_data()函數。
因此在程序中。

import HP_data  as ts

替換下面這句,就可以脫機學習了。

import tushare as ts

get_k_data()函數定義如下,ss是股票代碼。
def get_k_data(ss,ktype=‘D’,start=‘1991-01-01’,end=‘2018-10-15’,
index=False,autype=‘qfq’)

四、下載tushare股票數據
[data_ts_all2.py]下載全部指數數據。
[data_ts_all3.py]下載全部股票數據數據。
下載全部股票數據數據程序在小白量化羣(524949939)中下載。

五、使用前面KDJ指標的離線數據示例

# -*- coding: utf-8 -*-
# KDJ指標離線數據演示
import numpy as np
import pandas as pd
from HP_formula import *
#import tushare as ts
import HP_data  as ts

def KDJ(N=9, M1=3, M2=3):
    RSV = (CLOSE - LLV(LOW, N)) / (HHV(HIGH, N) - LLV(LOW, N)) * 100
    K = SMA(RSV,M1,1)
    D = SMA(K,M2,1)
    J = 3*K-2*D
    return K, D, J

#首先要對數據預處理
df = ts.get_k_data('600080',ktype='D')
mydf=df.copy()
CLOSE=mydf['close']
LOW=mydf['low']
HIGH=mydf['high']
OPEN=mydf['open']
VOL=mydf['volume']
C=mydf['close']
L=mydf['low']
H=mydf['high']
O=mydf['open']
V=mydf['volume']

k,d,j=KDJ()

mydf = mydf.join(pd.Series( k,name='K'))  
mydf = mydf.join(pd.Series( d,name='D'))  
mydf = mydf.join(pd.Series( j,name='J')) 
mydf['S80']=80  #增加上軌80軌跡線
mydf['X20']=20  #增加下軌20軌跡線

mydf=mydf.tail(100)  #顯示最後100條數據線 

#下面是繪線語句
mydf.S80.plot.line()
mydf.X20.plot.line()
mydf.K.plot.line(legend=True)
mydf.D.plot.line(legend=True)
mydf.J.plot.line(legend=True)

#--------------------------------
建議申請聚寬免費帳戶,可以獲取期貨數據.通過下面網址申請,免費數據量翻倍.申請網址如下:
https://www.joinquant.com/default/index/sdk?channelId=11ab957b5b19ebc3302ee864cee476b

獨狼荷蒲qq:2775205
小白量化羣:524949939
微信公衆號:獨狼股票分析

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章