本系列帖子“量化小講堂”,通過實(shí)際案例教初學(xué)者使用python、pandas進(jìn)行金融數(shù)據(jù)處理,希望能對大家有幫助。
【必讀文章】:《10年400倍策略分享-附視頻逐行講解代碼》
【所有系列文章匯總】:http://xalimeijing.com/thread-3950124-1-1.html
【python量化課程】想要快速、系統(tǒng)的學(xué)習(xí)量化知識,可以參與我與論壇合作開設(shè)的課程:《python量化投資入門》,我會親自授課,隨問隨答。參與課程還可以免費(fèi)加入我的小密圈,我每天會在圈中分享量化的所見所思,圈子介紹點(diǎn)擊此處。
微信:xbx_laoshi,量化交流Q群(快滿):438143420,有問題歡迎交流。
文中用到的A股數(shù)據(jù)可在www.yucezhe.com下載,這里可以下載到所有股票、從上市日起的交易數(shù)據(jù)、財務(wù)數(shù)據(jù)、分鐘數(shù)據(jù)、分筆數(shù)據(jù)、逐筆數(shù)據(jù)等。
【量化小講堂- Python、pandas技巧系列】歷史數(shù)據(jù)告訴你:KDJ指標(biāo)選股有效嗎?
KDJ指標(biāo)是最常用的技術(shù)指標(biāo)之一,它的作用是判斷股票未來短期的走勢。很多書店里賣的炒股類書籍都會推薦這個指標(biāo),并認(rèn)為KDJ指標(biāo)低位金叉是一個非常好的買點(diǎn),還會給出幾個很漂亮的K線圖形來印證他們的觀點(diǎn)。少數(shù)的幾個例子不能讓人信服,KDJ指標(biāo)低位金叉選股效果到底好不好,一定要用大樣本說話。
本篇文章將找出歷史上所有股票的全部低位金叉情況,并且統(tǒng)計這些股票在金叉之后若干個交易日內(nèi)的漲幅,看是否有顯著的正收益。通過這個案例將著重向大家介紹pandas的如下功能:
- 使用pandas導(dǎo)入股票數(shù)據(jù)
- 如何計算KDJ指標(biāo)
- 如何計算KDJ指標(biāo)金叉
- shift()函數(shù)的用法
- append()函數(shù)的用法
下面開始正文:
(【python量化課程】想要快速、系統(tǒng)的學(xué)習(xí)量化知識,可以參與我與論壇合作開設(shè)的課程:《python量化投資入門》,我會親自授課,隨問隨答。參與課程還可以免費(fèi)加入我的小密圈,我每天會在圈中分享量化的所見所思,圈子介紹點(diǎn)擊此處。)
需要找出歷史上所有股票的全部低位金叉情況,那么首先必須要有股票的歷史日線交易數(shù)據(jù),從這個網(wǎng)站可以下載到所有股票的歷史日線數(shù)據(jù),可以作為我們計算的原始數(shù)據(jù)。數(shù)據(jù)下載下來是下圖這個樣子:
每個股票一個csv文件
每一行是每一天的數(shù)據(jù)
這個日線數(shù)據(jù)有以下的字段:
【code】 股票的代碼,上證股票以sh開頭,深證股票以sz開頭
【date】 交易日期
【open】 開盤價
【high】 最高價
【low】 最低價
【close】 收盤價
【change】 漲跌幅,復(fù)權(quán)之后的真實(shí)漲跌幅,保證準(zhǔn)確
【volume】 成交量
【money】 成交額
【traded_market_value】 流通市值
【market_value】 總市值
【turnover】 換手率,成交量/流通股本
【adjust_price】 后復(fù)權(quán)價,復(fù)權(quán)開始時間為股票上市日,精確到小數(shù)點(diǎn)后10位
【report_type】 最近一期財務(wù)報告的類型,3-31對應(yīng)一季報,6-30對應(yīng)半年報,9-30對應(yīng)三季報,12-31對應(yīng)年報
【report_date】 最近一期財務(wù)報告實(shí)際發(fā)布的日期
【PE_TTM】 最近12個月市盈率,股價 / 最近12個月歸屬母公司的每股收益TTM
【PS_TTM】 最近12個月市銷率, 股價 / 最近12個月每股營業(yè)收入
【PC_TTM】 最近12個月市現(xiàn)率, 股價 / 最近12個月每股經(jīng)營現(xiàn)金流
【PB】 市凈率,股價 / 最近期財報每股凈資產(chǎn)
有了原始數(shù)據(jù)之后就是代碼,下面是代碼的截圖,里面有詳細(xì)的注釋,有問題可以留言,附件中是程序的源碼,回復(fù)即可下載。
把數(shù)據(jù)下載下來,直接運(yùn)行代碼,就可以看到輸出的結(jié)果了。這里就不貼出KDJ選股具體的效果了,這樣大家可能更有動力鉆研下程序吧~
反正總體選股效果不大好,在總過出現(xiàn)的51萬次KDJ金叉狀況下,接下來股票會上漲的概率是50%左右。
思考題:
本程序其實(shí)是挑出了所有KDJ金叉的股票,并不是低位KDJ金叉。有人認(rèn)為低位KDJ金叉效果更好,例如D值小于20時的金叉。在現(xiàn)有程序上進(jìn)行小小的改動就可以挑選出低位KDJ金叉的股票,大家感興趣可以看看選股效果怎么樣,說實(shí)話具體怎么樣我也沒有試過。
之后會講的內(nèi)容:
現(xiàn)在想到的之后幾期會講的內(nèi)容:
【量化小講堂 - python & pandas技巧系列】使用python計算MACD指標(biāo)
【量化小講堂 - 投資策略系列】KDJ、MACD指標(biāo)雙金叉選股效果
【量化小講堂 - python & pandas技巧系列】如何處理逐筆數(shù)據(jù)
關(guān)于《量化小講堂》之后想看的內(nèi)容,或者相關(guān)問題,可以加我微信xbx_laoshi、Q群(快滿):438143420溝通。
附件中是Python程序文件,免費(fèi),回復(fù)可見,覺得文章內(nèi)容有幫助的話,頂貼是最好的鼓勵!