第12章 量化策略是如何開發出來?(第1/2 頁)
在第十章中我們介紹了橋水基金的全天候策略。那麼小夥伴們就有疑問了:一個這樣的量化策略是如何做出來的了?難道是突然有了一個idea,設定A要幾份,b買幾份;然後就屁顛兒屁顛兒地跑去交易,等著日進斗金了嗎?
當然不可能是這樣,它需要經歷從概念構想、程式設計實現、歷史回測、策略最佳化,到模擬交易和最終的實盤投資多個環節的檢驗。
現在就由我為你揭開量化策略開發的神秘面紗,以一個通俗易懂的方式解讀這一旅程。
一、策略構思
策略構思是量化策略開發的源頭。
一切偉大的策略都始於一個閃光的思想。
無論你是透過閱讀金融界的大神們的分享、券商的量化研報,還是翻閱經典交易書籍找到靈感,一個完整的策略想法應包括交易標的、進出場點、倉位管理等關鍵組成部分。
對於初學者,怎樣的方法才是既簡單又有效的呢?
這裡有一個特別推薦的模型,那就是F-Score模型——一個非常適合新手且具有普遍適用性的基本面多因子選股方法。
當我們談到價值投資,格雷厄姆和巴菲特這樣的大師們經常會提到“以合理的價格買入優質的股票”。
但問題來了,“優質的股票”該如何界定呢?
這就是F-Score模型發揮作用的時候了。
簡而言之,F-Score透過9個基於財務報表資料的評分因子來衡量一家公司的基本面,這9個因子覆蓋了盈利能力、資產負債情況與現金流等多個方面。
總得分越高,表示該股票的質量越好,也就意味著它可能是一筆更值得投資的選擇。
此外你也可以根據自己學到或者觀察到有意義的指標加到裡面來。
二、程式設計實現
有了策略的靈魂——想法之後,便需要透過程式設計將其具象化。
在量化投資的世界裡,python和c++是最常用的程式語言。
python以其高效和易用性受到初學者的青睞,而c++則以其執行效率高在一些對速度要求極高的策略中得到應用。
當然,亦有量化平臺提供了便捷的環境,如聚寬、優礦等,讓策略編寫變得更為簡單。
這裡特別介紹不需要程式設計就能用的果仁網。
(不過他家VIp挺貴的,大家可以先免費註冊看一看)。
三、策略回測
程式設計完成後,接下來的關鍵步驟是回測。透過對歷史資料的測試,我們能大致判斷策略在過去的表現。
比如我在果仁網上輸入了一個指標“淨利潤大於1000萬”,回溯5年。
成績非常的差,年化收益-25.75%。
這也說明單一指標很難跑贏市場。
而對於專業人士,這一過程需要儘量避免“未來函式”等錯誤,以確保回測結果的有效性。
回測不僅僅是驗證策略歷史表現的工具,更是檢驗其穩健性的關鍵環節。
四、策略最佳化
面對可能不盡人意的回測結果,策略最佳化成為必要的步驟。
調整引數、最佳化邏輯、分析風險,所有這些都是為了讓策略更加契合市場的實際情況。
但需警惕,不可陷入過度擬合的泥潭中,喪失策略的泛化能力。
想象一下你在某個特定場景下穿著一件非常合身的衣服,這件衣服既舒適又完美地貼合你的身體,看起來很不錯。
現在,如果你去購買衣服時,每次都要求定製一件100%完全貼合你這一次身材形態的衣服,那就可能會出現問題了。
過度擬合就好比買衣服時的這種情況