為投行的交易員寫程序,大概需要哪方面的技術?
面臨什麼樣的問題?哪個領域的?多長時間能入門?有沒有相關書籍或資料推薦?受這個問題討論的啟發 http://www.zhihu.com/question/20191033?nr=1thread_id=1_256575 @歐陽曉: 「金融IT待遇最好的可能要算專門為交易員寫程序的了吧,特別是投行部門。因為技術要求較高,而且是高創收部門。」
做front office tech,做前端交易程序,要求程序員有系統架構意識,金融交易知識和基本定價演算法,資料庫設計到維護,前中後台多面手。
首先得快: 懂得快,寫得快,任何一個商業點子要上馬,技術實現部門幾乎總是最後知會具體需要做什麼的。
然後是不出錯,別指望QA,何況緊湊型團隊根本沒有QA預算給請,自己程序不出錯,還要考慮各種可能性保著用你功能的用戶不容易用錯,行業慣例: 出了事都是IT造成的損失。
然後是要懂最終產品,尤其是越偏門越邊緣的地方,就要比trader還要懂。比如做FX,要比用你軟體的FX trader還要懂外匯交易錯雜的細節,才能做出適應專業人士使用的工具,才能保駕專業人士使用你的工具不出錯,最終目的讓專業人士比他的競爭對手更加高效。
然後是別選陣營,java, C++, SQL, Excel VBA, C#, .Net, python, 要專精起碼兩個,Messaging bus, TibcoRV, TibcoEMS, MSMQ, WCF, ActiveMQ, RabbitMQ, 起碼要會兩個,其他的拿起來,都能做功能。因為任何一個投行或者比較大的基金公司,都已經建立了一個相當複雜的技術生態環境,很多都是趕著deadline由前面的人完成的,沒時間從技術層面做任何抱怨,老闆只知道做不出來有的是人能做。
然後是系統架構,金融類前端系統,dealine緊迫,但是不能將就,該取巧的地方能省就省,該重寫的地方絕對不能湊合,眼光要看到現在做的對業務將來會有什麼影響。
Sell side trader, 給他們做algo得會數學,設計演算法,做模型,做back testing,你可以慢慢變成一個quant。
給Buy side trader做,你得快,比他懂操作細節,比PM懂交易流程,你慢慢可以變成trader甚至PM
在國內券商工作,工作就是架構量化交易平台和策略開發,發表下自己的拙見:
國內券商的量化平台受制於券商基礎架構於開發商系統,很難把速度提升到一個極點。再加上光大事件,風控變嚴,速度更是很難提升。我建議入門還是首先多研究業務,先從業務的角度解決速度問題,並且先把計算機相關基礎打好。
如果是量化研究平台,PYTHON,R,MATLAB是必須的,資料庫相關知識也必須掌握,你的職責是配合研究員實現其策略思想,回溯,調試參數,得出策略的可行性。
如果是量化交易平台,語言來說C++,JAVA是必須的,數據結構這些基礎知識更不談了,如果複雜的還需要多線程編程等等,因為你必須將策略實現出來,運行在生產環境,根據行情信號來出發交易。
補充下:還有個重要的就是界面的開發,不管是C#還是VC還是QT還是J2SE,只要交易員覺得方便,你就需要給他開發出最適合交易員的界面。
天下武功,無堅不破,唯快不破。
在做量化平台與交易的過程中,深刻的發現,速度真是一切的源泉,速度就是金錢,尤其在高頻交易上,你提升的一點點速度都會給你帶來累計的實實在在的金錢。
因此,我從個人的角度,覺得下面也是值得研究的(從底層到上層):
1.FGPA 這個我只能說出這個名詞,畢竟國外高頻從業人員在炒作這個。
2.TCP/IP協議的研究與網路編程 畢竟如果是大投行或者大券商不可能只給你一台機器,從容災與架構上都不接受,一年多前準備架構這個平台的時候看了很多相關書籍,啟發最大的是@陳碩 的linux多線程服務端編程,畢竟作者是從金融IT出生,相關內容還是值得推薦的。
3.內存資料庫方面研究。
一個字:快。
題主是想進入這行?
去開個期貨戶,下載CTP,自己把前端界面到後端處理都折騰一遍,寫個自己的交易系統出來,能學會很多東西。
給別人做交易系統,等你進去了看需求再學也不晚,自己把上面的玩深入點來得更實在。
除了掌握他們的業務邏輯,大概需要一些,如何保證系統運行和數據存儲高度可靠性和可用性的知識,防欺騙、防篡改、防否認、安全審計等等。
技術上的話,估計會是UNIX、Oracle、Java這些傳統企業平台。這是我想到的。
生活的壓力
生活的光鮮。
我就是交易員,具體是什麼我突然忘了。晚點回公司看看再回復。
主要看是什麼樣的交易員。如果是演算法交易系統的話,要求可靠性和性能,C+linux是必要的;如果是做長線的交易者的話,估計EXCEL用的是最多的;對於衍生產品交易員,那麼衍生產品的知識更加重要。領域很多,最好的入門還是那些計算機編程基礎知識加上行業知識吧。你的問題範圍比較廣,我上面說的是幾乎完全不同的方向,所以不太好推薦具體的書等。
為交易員寫程序? 不懂, 你是不是指量化?還是指開發一個交易平台?
推薦閱讀: