今年新坑-金融量化分析

開始新的填坑計劃,這個flag不會倒!!!

一年Get一個新技能

2018年學習總結

2018年我在技術方面的目標,是學習python。投入了不少的精力,在web開發、爬蟲、數據分析、界面方面都有所涉及,最後也實現了用scrapy爬取數據,用flask做後臺,輸出了新聞app,web網站,小程序。

個人評價是70分,基本完成了學習目標,但是輸出成果品質不夠,總結的文章輸出不夠。本質上還是自己學的東西不夠深入,另一方面,由於偏重於學習知識,實踐意義偏弱,沒有獲得足夠的正反饋。

2019年學習目標

今年目標還是Python,只不過會選擇一個方向進行深入。

  • 做Web後臺。難度不高,門口低,可替代性強。不論php還是nodejs都容易做到同樣的事。
  • 做爬蟲。這個相對還是有競爭力的,只不過單純爬取到數據價值不大,還需要進行一系列的數據處理,才能拿來用。而現在有很多處理好的數據是可以用相對便宜的付費就拿來使用的。
  • 做應用。這個python就完全沒有競爭力了,python的ui比起其他語言就太渣了。
  • 數據分析。目前算是python發展最迅速的一個方向,與機器學習和大數據結合後,既有深度也有廣度,這是我選定的方向。

金融量化分析
數據分析的領域,細分下來也很多類別,在這裏我選擇了金融數據的量化分析。

  • 金融數據都是標準的時間序列數據,相對於其他的科學計算類型,入門會更容易一些。
  • 學習結果容易轉換成果,最直接的就是建立自己的量化交易系統。

上半年的學習過程

  • 1月份學習得到上聽《交易員思維》給了我交易的概念,不僅僅是我們天天聽到的投資。
  • 2月在閱讀《澄明之境》《海龜交易法則》之後,讓我有了交易系統的概念。
  • 3月閱讀邢不行的博客《量化小講堂》讓我開始接觸金融量化,寫了一些簡單的量化程序,構建自己的量化策略,在A股實盤測試後少量虧損,主要還是策略太簡單,沒有形成交易系統,實戰意義太低。
  • 4月知道了原來還有量化金融分析師這個角色,找到了相關資料,開始了系統的量化學習之路。大量回測後,得到一些有效組合,在B圈和A股開始了小規模的實盤操作,長期成果待驗證。初步的量化思維和策略也讓我避開A股四月份的大回撤。
  • 5月開始了果仁、優礦等量化平臺的學習和使用,主要是覺得自己寫框架太累。玩了幾個量化平臺後,發現靈活性不夠,最終還是以自己編寫的交易系統爲主,參考一下網上框架的一些架構方式。5月份A股沒交易信號,基本空倉。但是抓住了B圈的收益。
  • 6月份報名了9月底的量化金融分析師考試,開始了系統深入的學習。

上半年總結

  • 上半年通過大量閱讀和編寫代碼,經過大量回測,建立了兩套簡陋的交易系統,分別在A股和B圈的運行,短期效果還可以,長期效果待檢驗。
  • 雖然還存在很多明顯的缺陷,但是以我當前的知識儲備,已經不足以完善它了,需要進一步提升自己的能力。

下半年的目標

  • 通過9月份的量化金融分析師的考試,拿到證書。這個目標足夠明確,也沒有逃避的理由。
  • 把當前的交易系統打造得更加成熟,獲取到今年市場的利潤,這是一個有長期價值的事情。
  • 大量閱讀金融和投資方面的書籍,彌補自己在金融領域的知識缺陷,金融量化畢竟是一個綜合學科,並不只是寫代碼的事。爭取今年能由業餘選手進入專業領域,哪怕專業一段也算。

附錄:量化金融分析師考綱

一. 量化投資策略理論(20%)
(一)量化投資基礎
  1 掌握量化投資的概念;
  2 瞭解量化投資不同的編程語言和應用平臺;
  3 瞭解量化投資的一般決策流程;
  4 熟悉中國主要金融市場及交易產品交易種類及交易機制;
  5 掌握量化交易模型設計的基本框架。
 (二)量化交易策略理論基礎
  1 掌握多因子策略,瞭解國內外常用的因子類型,掌握因子在不同階段的研究方法;
  2 瞭解量化擇時的思想;
  3 瞭解無風險套利的思想;
  4 瞭解基本面量化交易策略思想;
  5 瞭解統計套利量化交易策略思想;
  6 瞭解衍生品套利量化交易策略思想;
  7 瞭解機器學習的基本概念、常見算法原理及其量化交易策略思想;
  8 掌握機器學習的常用算法原理,如邏輯迴歸、支持向量機、決策樹、KNN 等;
  9 瞭解機器學習算法的評價方法;
  10 瞭解輿情分析等其他量化交易策略思想;
  11 瞭解高頻交易策略的基本概念;
  12 掌握事件驅動量化交易策略思想;
  13 掌握技術指標類量化交易策略思想;
  14 掌握 K 線概念,掌握常用技術指標,包括均線、CCI 指標、KDJ 指標等;
  15 掌握常見的量化交易策略的評價方法。
 
 二. Python 語言的編程基礎(30%)
  (一)Python 核心語法基礎
  1 掌握數據的基本類型:整形、浮點型、字符串、布爾型的基本概念與運算,熟悉不同類型間的轉換方式;
  2 掌握核心數據結構:列表、字典、元組、集合的基本概念、運算、常用操作、常見方法;
  3 掌握 Python 常用基本語法,包括模塊的導入等;
  4 掌握 Python 運算符及其優先級;
  5 掌握基本控制結構:循環結構、分支結構的基本概念及使用方法;
  6 掌握函數定義、參數傳遞與函數調用的基本概念;掌握全局變量、局部變量和作用域的基本概念;
  7 熟悉異常處理的概念和基本方法;
  8 掌握 CSV、HDF5、SQL、Excel 等形式文件的調用和存儲。
  (二)Numpy 數據處理
  1 掌握 Numpy 模塊向量化操作原理;
  2 掌握 Numpy 模塊基本數據類型及其常見創建方式;
  3 掌握 Numpy 模塊基本數據類型的常見操作方式,包括切片、索引、修改、數據清晰、結構調整、拼接等;
  4 掌握 Numpy 模塊數據統計常用函數與方法;
  5 熟悉 Numpy 模塊邏輯運算操作相關的函數或方法。
  (三)Pandas 數據處理
  1 掌握 Pandas 模塊向量化操作原理;
  2 掌握 Pandas 模塊基本數據類型及其常見創建方式;
  3 掌握 Pandas 模塊的基礎操作,如:排序、切片、索引、填充、累計計算、合併、對齊、存儲等;
  4 掌握分組與聚合運算;
  5 熟悉多重索引與重構;
  6 掌握缺失值的處理;
  7 掌握 Pandas 模塊時間序列處理的操作;
  8 會應用 Pandas 模塊進行數據處理、數據清洗、數據合併等操作;
  9 會應用 Pandas 模塊數據處理進行實戰金融數據處理。
  (四)面向對象基礎
  1 掌握面向對象和麪向過程的區別;
  2 掌握類和實例的基本概念;
  3 掌握屬性和方法的基本概念;
  4 熟悉構成和繼承的基本概念;
  5 掌握面向對象編程的思想,具備運用面向對象的方法編寫量化交易策略的能力。
  (五)數據可視化
  1 掌握使用 Matplotlib 繪製直方圖、折線圖、散點圖;
  2 掌握 Pandas 模塊內置繪圖函數;
  3 掌握使用 Matplotlib 繪製淨值曲線、股價相關性散點圖等其他金融相關應用圖形;
  4 瞭解 Matplotlib 對數據做簡單的描述性統計方法;
  5 瞭解 Seaborn 等其他數據可視化第三方庫
  
 三. Python 量化交易策略實現與回測(40%)
  1 掌握金融數據的獲取方法,包括從互聯網調取靜態金融數據的常見方法和實時數據的獲取方法;
  2 掌握金融數據清洗方法;
  3 掌握均線交易系統;
  4 掌握基本技術指標的計算方法,包括調用函數進行數據處理或調用 Ta-lib 等庫等方法;
  5 掌握基於技術指標、指標系統的量化交易策略的編寫;
  6 熟悉產生交易信號的常見方法,掌握常見交易信號的計算;
  7 熟悉策略持倉信號的常見方法,掌握策略持倉信號的計算;
  8 熟悉股價收益率、策略累計收益、策略淨值曲線的計算方法;瞭解常見策略評估指標的計算方法;
  9 掌握策略編寫的核心思想和方法;
  10 掌握機器學習的各個算法的調用方法、使用原理,可以用來解決的實際問題;
  11 掌握會引起回測和實盤交易收益產生巨大區別的原因和注意點;
  12 熟悉策略的優化方法和優化思路,包括參數優化等;
  13 熟悉策略風險控制的常見方法。
  
 四. 量化實盤交易(10%)
  1 熟悉量化交易系統的一般框架設計思路;
  2 熟悉量化交易系統或平臺的數據調取;
  3 熟悉量化交易系統或平臺的合約調取方法;
  4 熟悉量化交易系統或平臺的程序化下單方法;
  5 熟悉交易的訂單類型和相關實現方法;
  6 瞭解實盤進行倉位控制的一般方法;
  7 瞭解量化交易系統或平臺實現程序化交易策略的一般方法

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