Quant通常需要什么樣的教育背景和知識結構?
最近很多知友私信我問這一類問題,我每次都回答得非常Qualitative,陳列各種條件,討論各種可能,非常不系統,作為一個Quantitative人士,我實在羞愧。因此這里我決定給出一套完整的Quant模式的答案。
這里我出20道初級和中級水平的題目,四大類:數學、金融、統計、計算機。如果你對自己誠實,請在不借助任何外力的情況下完成。后面我會提供詳細的診斷。
數學:
1、是一Brownian motion,給出在k>=2時的Closed Form Formula。
2、有一個信用卡卡號(一個整數),A要發送給B,發送過程中有很高的概率被竊聽者C截獲信息,請提出一個算法來加密,使得解密復雜度為NP級。A和B之間可以發送信息任意次。
3、提出至少三種Monte Carlo Simulation的Variance Reduction方法,并簡單描述如何實現。
4、給出任一Levy Process的停時概率密度(Probability Density)。可以自己建立相應假設。
5、給出ODE 的通解。
金融:
1、給出Black-Scholes公式的假定(Assumptions),并從Black-Scholes PDE或條件期望的角度推導Black-Scholes公式。
2、什么是Implied Volatility Smile/Skew,為什么會有這樣的現象。
3、說出任一Interest Rate Curve Model (BDT, HJM, Hull-White等等)并簡單描述其特點。
4、討論Risk Parity和傳統Portfolio Construction方法的差異。
5、討論GARCH Model的用處和擬合(Fitting)方法。
統計:
1、產生N個服從[0,1] uniform distribution的隨機變量,并累加使其和大于一。求N的期望值。
2、有一個獎品,三個人,和一枚公平的硬幣。現在要通過投硬幣來決定把獎品給誰。請問如何投硬幣(可以無限次)使得這個分配是公平的。
5、什么是Colinearity,說出至少兩種Colinearity的解決方法。
計算機:
1、討論一種可以并行化(Parallelism)的排序算法,如何實現?
2、討論虛函數在C++中的意義
3、一個長度為N的數組里面有N個范圍是1到N的整數(可以重復出現),請分別給出N^2, NlogN, N的復雜度的算法來找出重復項
4、給出一種計算二分圖(Bipartite)極大匹配(Maximal Matching)的多項式復雜度級別的算法
5、語言題(根據你熟悉的語言任做一個):
Python:一句話(一行語句)給出計算Fibonacci第N項數值的函數定義(不能使用Closed Form公式)
Java: 多線程計算Fibonacci第N項數值如何具體實現
Matlab: 用什么Package、如何來計算Disciplined Convex Programming
C++:如何在C++中實現Singleton設計模式
題目部分結束。首先說明:知乎牛人眾多,我相信每個領域都有人可以視某一類題目如兒戲,所以大神勿噴,我只是提供一個簡單的診斷給相關知友。
其次,這些題目全部是我根據經驗臨時想出來的,有任何錯誤歡迎指出。同時,一般面試還會考到各種Brain Teaser,我覺得意義不大,所以這里一道都沒有。純考察知識。
假設你對于這20題中N道題目feel comfortable并且有信心自己的答案是對的:
N>=16:找一個Entry Level的Quant對于你來說問題不大了,如果你缺少相關學歷(MFE或PhD),那就去讀個書把!如果你都有了,那么你就多投簡歷多申請把。Market短暫不好但終歸你可以找到Quant的工作。
15>=N>=8:如果你有嚴重的偏科,即某類題很強但某類基本不會,那么加強知識體系后問題也不大。如果你很平均,那說明還需要學得更加深入一點。
7>=N:如果你能解決的題目少于等于7,說明你沒有一個方向精通或知識領域太狹窄,這說明你起碼需要在一個或多個方面花費大量的精力。如果是PhD我強烈建議自學相關內容,如果本科剛畢業我強烈建議再去修一個學位。
希望這個答案讓大家不再迷茫。