投資組合優化

在實踐中如何優化目標回報?

  • October 11, 2021

假設我們有 $ A $ 一個 $ T \times N $ 資產範圍的每日收益矩陣 $ N $ 項目, $ b $ 一個 $ (T,) $ 目標資產的每日收益向量, $ x $ 一個 $ (N,) $ 權重向量。我們想要一個能夠複製每日收益的投資組合 $ b $ 盡可能接近,受投資組合權重的約束 $ x $ 總和為 1 和 $ x $ 是非負的(沒有短路)。人們可能會將其用於稅收損失收穫或對沖。

如果我們首先考慮無約束的情況:

$$ \min_x \sum_t^{T} (A \cdot x - b) $$

這只不過是最小二乘逼近/回歸,其目標可以重寫為:

$$ |Ax-b|^2 = (Ax-b)^T(Ax-b) = x^T{A^T}Ax - 2x^TA^Tb + b^2 $$

取導數 $ x $ 並設置為 0,

$$ 2A^TAx - 2A^Tb = 0 \ x = (A^TA)^{-1}A^Tb $$

處理等式約束,例如 $ x $ 總和為 1,不等式約束如 $ x $ 是非負的,可以建立一個受約束的最小二乘問題,求解 KKT 矩陣,並且仍然可以得出一個封閉形式的解,儘管由於矩陣求逆的必要性而具有三次復雜性。

然而,投資組合經理可能還有其他一些限制——也許他們更願意保留 $ x $ 相對稀疏,因此他們只能購買大約 3-4 種資產,而不是在數千種資產中分配一小部分。還有更複雜的技術,如嶺回歸、套索回歸等,但這些技術開始涉及逐步優化(例如座標下降)。

我的問題是關於投資組合優化行業如何在實踐中實際優化:它是否更類似於具有簡單不等式/等式約束的分析凸優化,並且可能是在最小二乘回歸之上的一些技巧(例如,四捨五入的小值 $ x $ ),還是更多的逐步優化是常態?給定一個足夠複雜的目標,切換到更黑盒的優化算法是否有意義,比如遺傳算法或某種隨機梯度下降優化器?

您在這裡的實際問題是堅持非負權重,總和為 1。沒有解決這個問題的封閉式方程。

但是,它可以通過迭代方法來完成。你用無界的 Ai 對每隻股票 i 加權,其投資組合權重 Wi 為 e(AI)/sum(e(Ai))。權重總和為 1,並且都是正數。

SumW = sum(e(Ai))

dWe/dAi = We x (1-We) / SumW

因此,dUtility/dAi 高於 x dUtility/dWi

可以梯度下降。

在現實中使用它,您可能會遇到數百個微小權重的“嶺 vs LASSO”問題。這些可以通過對使用任何重量的任何股票收取線性懲罰成本來排除。您的公用事業公司只需支付額外的 S xe(Ai) 費用,以支付投資該名稱的麻煩。否則,該過程不會改變,即使本質上是可悲的迭代。

希望這可以幫助。DEM

引用自:https://quant.stackexchange.com/questions/65399