1. 程式人生 > >【量化小講堂- Python、pandas技巧系列】如何快速上手使用Python進行金融數據分析

【量化小講堂- Python、pandas技巧系列】如何快速上手使用Python進行金融數據分析

exc 規律 專業 了解 全能 快速 想法 pac 之前

如何快速上手使用Python進行金融數據分析


引言:

本系列帖子“量化小講堂”,通過實際案例教初學者使用python、pandas進行金融數據處理,希望能對家有幫助。


讀文章】:《10年400倍策略分享-附視頻逐行講解代碼》


【所有系列文章匯總】:http://bbs.pinggu.org/thread-3950124-1-1.html



第一步:好奇心

不要為了學習而去學習一門編程語言,或者任何工具。一定要心裏首先有一個問題,抱著解決問題的心態,去了解並學習這個工具是如何解決問題的。驅動你去學習量化投資的,應該是你的好奇心。你認為你有一個炒股獨家的竅門,你認為你發現了某個規律,你非常好奇的想用歷史數據去驗證你的想法。


比如我在大二的時候接觸量化投資,就是因為我的好奇心。當時我看到一些入門的技術分析書上推薦KDJ這個技術指標,說KDJ低位金叉之後股票會漲,是個很好的買入信號,並且書上會配一些圖,證明這個指標的有效性。我當時就很好奇,書上說的是不是真的?這幾個配圖是刻意挑選的還是有代表性的?是不是可以寫個程序找出歷史上所有的kdj金叉,看看之後漲的概率有多大?


這就是引領我入門的最初的好奇心。當時我不會編程,一開始用excel來試著驗證,發現KDJ從大概率上來講是不行的。好奇心繼續升級:我調整一下KDJ默認的參數,效果會不會好一點?再配合一下其他的指標,效果會不會好一點?再加上點財務數據,效果會不會好一點......


慢慢的想測試的想法越來越多,excel漸漸的不夠用,開始學習編程。我學習編程的目的性很強,就是解決我眼前的問題。對於解決我問題沒有幫助的,我就先不學。一開始用的是SAS,自己找書看,論壇上發帖子問。後來覺得SAS太重,不靈活,慢慢的遷移到Python。


我是金融專業的,但是學校並不教量化投資,一切都是自己學。可想而知,若沒有好奇心一直引導我去探索,這麽長的一段時間我怎麽可能堅持下來呢?


第二步:為什麽Python

我推薦剛入門的量化投資研究者使用Python。主要理由如下:


1. 適用性

Python配合各類第三方的package(例如下面要降到的pandas),是非常適合用來處理金融數據的


2. 簡單

相比於c,c#等語言,Python容易太多了。讓你可以更快,更方便的對自己的想法進行測試。life is short, use Python。


3. 全能

Matlab是另外一個金融分析領域的統治級語言,以上講的兩點適用性、簡單性matlab都是具備的,在業界的使用範圍應該是比Python要高的。

而Python相比於matlab的一大優勢,那就是全能。matlab基本只能用於金融數據分析。但是Python除了擁有不亞於matlab的矩陣計算、科學計算能力之外,其他幾乎任何事情都可以做。比如數據的清理、整理,比如從網頁上抓取數據,比如進行文本信息的挖掘,比如做一個網站......現在學習一門語言,將來在任何地方都能用到。


第三步:如何入門Python

如果你有其他語言的編寫經驗(比如上過一個學期的編程課),有一定的編程基礎。以下三步可以讓你入門Python:


1. 隨便找一本Pyhton入門書。這些教程網上有很多很多,論壇裏面也有很多,隨便搜索一下就是。我稍微整理了下,放在附件中,回復可見。


2. 挑一本Python入門書,不要花超過半天的時間,快速翻閱這本書。這個步驟不求記住什麽東西,只要大概的知道這本書講了什麽,什麽知識在這本書的哪一章寫了就行,以便將來查閱。


3. 結合自己的好奇心,給自己尋找一個問題,簡單的復雜的都可以,找一點數據(地址),直接開始實戰。遇到問題,第一步是去翻書,第二步是去google(別去百度),第三步是論壇發帖求助。若你沒有什麽思路或者問題,可以加群438143420,我可以給你提供思路。


如果你沒有任何編程的基礎,那麽想要入門Python,也是以上三個步驟。但是第2步,就不是僅僅花半天的時間瀏覽書了,而是要細細的看書。對著書上的例子,實際的操作下,大概花一個星期的時間的業余時間也就夠了吧。


第四步:如何入門pandas

使用Python做金融數據分析,一定要用pandas。pandas是Python的一個第三方庫,簡直是金融數據分析的神器,第一次遇到它的時候讓我淚流滿面。了解pandas最好的途徑就是他的官方文檔:http://pandas.pydata.org/pandas-docs/stable/10min.html,當然也可以看我之前寫的系列文章。



之後會講的內容:

【量化小講堂 - python & pandas技巧系列】如何根據逐筆數據計算資金流入流出數據

【量化小講堂 - python & pandas技巧系列】如何測試海龜交易法則

【量化小講堂 - python & pandas技巧系列】詳細介紹復權價格如何計算



對文章內容有疑問、需要Python入門相關書籍的可以私信我或者留言,覺得文章內容有幫助的話,不要忘了點贊哦!




【量化小講堂- Python、pandas技巧系列】如何快速上手使用Python進行金融數據分析