在選擇Backtrader 之前對量化平臺有一點接觸爆存,但是了解的也不是很深入,但有以下幾點體會:
容易獲得的量化平臺不靈活。市面上的網頁版或者終端版的回測平臺普遍存在不靈活的缺點鸟悴,對于一個有志于從事量化研究的愛好者來說這個是難以接受的,我們需要量化回測工具能更好的輔助我們的研究奖年,而不能成為我們進行代碼拓展细诸、策略研究、結果展示的阻礙拾并。
部分第三方回測平臺存在策略被盜風險揍堰。 這個有見到不少網友說過這個問題,除非你降第三方的回測系統(tǒng)部署在自己的服務器上嗅义,不然確實不能避免策略代碼及數(shù)據(jù)暴露在第三方面前的風險。
公司內部系統(tǒng)開發(fā)的回測系統(tǒng)往往沒有詳細的說明隐砸,同時存在靈活性的問題之碗。像我們公司是有自己開發(fā)的回測平臺,使用感受就是:沒有很詳細的說明文檔季希,上手存在一定的難度褪那,同時為了維護這部分功能的穩(wěn)定性幽纷,不可能將底層代碼暴露給單一用戶,雖然可以通過提交開發(fā)需求的方式滿足個性化開發(fā)的需要博敬,但靈活性也不是特別好友浸。
基于以上幾點,作為一個量化研究的愛好者偏窝,同時自認為具有較好的學習能力的我收恢,開始考慮尋求開源的第三方回測框架的支持,曾經也看到過有大神自己寫過祭往,也想著自己能動手寫一個伦意,但想到畢竟自己沒有那么強的代碼能力,也沒那么多時間硼补,同時開源的框架也能很好的解決上面提出的現(xiàn)有回測框架的缺陷驮肉,所以開始選擇第三方的回測框架作為初步搭建回測系統(tǒng)的工具。
至于選擇哪一個開源框架已骇,通過查閱相關資料离钝,了解到目前大家使用的比較多的國外的框架主要有:zipline/backtrader/pyalgotrade等, 國內使用最多的框架為vnpy/jqdatasdk褪储。具體這些框架的比較知乎上已經有很多分析的比較清楚地了卵渴,對于我個人而言,更傾向于選擇一個國外相對成熟的乱豆、github上星標數(shù)多的奖恰,那么就是zipline和backtrader, 在這兩個之間我糾結了很久,最后看到有網友說backtrader的可拓展性更好宛裕,抱著試一試的態(tài)度瑟啃,先學起來。至此把backtrader 官網的documents 粗略的過了一遍揩尸,發(fā)現(xiàn)其功能不僅滿足我的需求蛹屿,有些功能甚至是超出我的預期,所以開始詳細學習里面的內容岩榆,遂做筆記错负,以記錄學習過程中的要點。