程式

如何(有效地)計算一個完美的“水晶球”投資策略的最大可能回報?

  • September 22, 2021

我是投資界的新手,所以請原諒這個問題的笨拙措辭……對於我正在尋找的東西可能有一個更好的術語,或者這甚至是一個已知/經典的問題。如果是這樣,請指出我正確的方向;-)


動機

投資策略與“市場”進行比較,“市場”通常是給定範圍內某些/所有證券的加權指數。然而,當市場投資組合可以由投資者定義時,它的選擇就有些隨意了。當一個投資者將她的策略與市場投資組合A進行基準比較,而另一位投資者將其策略與市場投資組合B進行基準比較時,比較兩個投資者策略的 alpha / 表現可能會非常困難。

考慮到這個問題,我最終得出了以下想法:為什麼不將每種策略與假設的最佳回報進行比較那會帶來最大的回報嗎?

對於每組投資約束,(通常)只有一個這樣的最優策略,因此*“水晶球回報”*將是客觀比較投資策略的理想參考。

問題

為簡單起見,讓我們假設我們有一個由n股票組成的宇宙(具有日終價格),並且正在研究d交易日的投資時間框架。我們投資了預先確定的金額m(足以購買每隻股票至少一隻),f每筆交易都有少量但不可忽略的費用。我們可以每天更改一次投資組合(買入/賣出股票),但我們不必這樣做。所有回報都是複合的。 更新:為簡單起見(並且回報有限),不允許賣空。

我的問題是:

如何有效地計算導致最大可能回報的買/賣動作序列?

對我來說,這聞起來像動態程式,但是,也許我遺漏了一些東西。問題的表述似乎很普遍,我希望有一篇開創性的論文/解決方案可以指點我。

如果您提供解決方案,請嘗試說明其時間/空間複雜性。謝謝你。


*注意:*乍一看,費用似乎是一個必要的約束,因為沒有它們,最佳策略就是每天將所有資金轉移到增長最快的股票中。

對我來說,這也有點像動態程式。根據http://www.cs.rpi.edu/~magdon/courses/cf/notes/optimal.pdf和同一作者的其他來源實施動態程式解決方案後,我突然意識到動態程式可能不是真的是必要的。

最後,你想要的是把你所有的價值都投入到單一的資產中 $ a_t $ 誰的價格 $ r(a) $ 將在所有資產中的下一個時間步增長最多 $ A $ .

$$ a_t = \max_{x \in A}\Big(~\frac{r_{t+1}(x)}{r_t(x)}~\Big) $$

“投資路徑”(每個時間點的一系列目標資產) $ [~a_0, a_1, …, a_T ~] $ 上述貪心解決方案的結果與動態規劃方法生成的結果相同。事後看來,這也是有道理的,真的。

當您必須考慮費用時,事情會變得更加複雜,但不會太多。獲取目標資產 $ t + 1 $ 在考慮費用時,只需採取 $ max $ 像以前一樣,但乘以與您持有的資產不同的每項資產的增長率 $ t - 1 $ 和 $ 1. - fee $ . (在固定費用的情況下,您必須將該比率乘以您投資組合的目前價值,然後從中減去每 $ x \in A $ .)

$$ a_t = \max_{x \in A}\Big(~\frac{r_{t+1}(x)}{r_t(x)} * \big(1. ~\text{if}~ x == a_{t-1} ~\text{else}~ (1. - fee) \big) ~\Big) $$

如果您有最大交易次數等限制,動態程式在這裡仍然有價值。但是,如果您不這樣做,我真的不明白為什麼要打擾它。

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