Quant們在工作中對比如像Quantlib這樣的開源輪子使用的多嗎?

想知道開源包使用的多不多,都在什麼場合下用。聽說很多銀行有自己的語言,那是不是意味著開源包比較難以使用?


想知道開源包使用的多不多

現在工作需要,在python原型階段大量依賴sklearn。如果算上numpy這種事實性標準庫,基本上大概依賴幾十個常用的開源包,包括一些可視化的東西,比如bokeh和seaborn。

在c++生產階段,eigen、boost基本上依賴程度甚至高於很多STL,還有大量的壓縮、通訊,等等開源包。

這麼講,很多開源庫實在是寫的太好了,以至於我前東家贊助了很多開發者。

都在什麼場合下用

在原型階段大量依賴,我從來不用R,但是我朋友有在貝萊德的,他們組全用R。你要是用R的話,沒開源庫活不下去。python其實還好,numpy scipy pandas sklearn基本上夠用一陣。

生產階段。一般來講,只用「久經考驗」的開源庫,比如eigen boost這種,屬於被用了幾十年,基本上沒毛病的。

聽說很多銀行有自己的語言

有個朋友很多年前在某「擁有自己語言」的銀行實習,講真,這樣的銀行沒破產,大概全靠高質量員工容忍度比較高。「擁有自己語言」的銀行,多數也是在生產階段使用自己的語言,在research和原型階段,仍然用R和python,甚至excel(比如citi)。

那是不是意味著開源包比較難以使用

在賣方,是的,這也導致賣方生產效率普遍低下,不排除個別組老闆眼界高。很多時候,賣方不讓用開源庫主要是風控和監管問題。相比而言,買方,hedge fund和prop shop,基本上沒有任何限制,隨便用,只要你懂這個庫是怎麼回事,無害就行,效率第一。


這個應該不用浪費時間了


想知道開源包使用的多不多

生產環境下的天天跑的庫基本都是內部開發的。非生產環境下有時候會用到quantlib這樣的開源輪子。比如想自己想快速測試一下一個數算出來對不對,拿Quantlib-python當個計算器用就很好用。

都在什麼場合下用

Quantlib適合沒有自己完整的一套基礎庫的組拿來當基礎設施。比如模型檢驗組每天都要檢查其他人算的數對不對,但本身沒有再開發一套基礎庫的必要,這時候quantlib就可以派上用場。

我接觸過一個很牛的中台模型檢驗組quant,工作中要負責一個quantlib裡面覆蓋得不是很充分的產品線,然後他就以quantlib為底層,開發了涉及自己業務這部分的功能。我覺得這屬於一個Quantlib很典型的應用場景。

聽說很多銀行有自己的語言,那是不是意味著開源包比較難以使用?

不能說開源包難以使用,更多是因為開源包不一定能直接滿足內部的種種需求,比如和特定的內部系統對接。另外一個原因來自於路徑依賴,現在進行的開發多半是在已有庫的基礎之上進行的開發。而開源庫並不能直接和另一個庫的底層對接,所以開源庫在生產線上是無法直接使用的。

所有放到生產線上的輪子,都要經過寫文檔,自己測試,UAT,提交模型檢驗部門批准,打包,投入到生產線上,用戶簽收,投入使用後回測等一系列流程。即使是可以直接用的開源輪子,也得走完這個流程來確保它可以匹配現在路上跑的這台車。

像quantlib這樣的開源庫很有價值的地方在於它展示了一個庫的底層是如何實現的。而自己可以完整地實現一個庫的底層是一個很有價值的技能。


銀行似乎只能做參考,而不能用這些開源庫吧,一是出了錯的話,沒法追究責任。二是就算使用開源的庫,裡面那些模型什麼的也得通過模型驗證批准,一來一回起碼半年時間~~


個人經驗是,由於缺乏文檔、功能不夠完整不能作為一個獨立軟體來使用等原因,開源包一般具有一定的使用門檻。有能力使用開源包的人,技術水平應該都不止於僅僅使用開源包。開源的包很少能直接滿足這些人的深度定製化需求,所以我認為是拿來學習參考,或者作為組件自己進行進一步開發的居多。


身邊只見過用來做期權產品定價模型設計的,現貨交易報價的沒用到。


推薦閱讀:

「興登堡凶兆」是什麼指標?
結構設計(土木工程)專業想要轉行到經濟、金融類,有哪些可能?
為什麼像「2008年的明尼阿波利斯小麥減產」這類普通人根本不會關心的事情,對於金融行業的人卻具有特別重要的意義?
你相信民間股神的存在嗎?
家裡現金髮霉是怎樣的感受?

TAG:統計 | 金融 | 量化交易 |