量化交易策略

自舉夏普比率

  • October 9, 2017

此處提出了與此類似的問題:

我如何使用引導程序測試策略的夏普比率的重要性

我已經引導了原始時間序列(使用塊引導),現在已經計算了這些引導序列的夏普比率,給了我對夏普比率的引導估計。

100 個夏普比率中只有一個小於零,所以我可以說夏普比率是 99% 的機率為正嗎?

還有關於使用多少個 booststrap 重採樣的經驗法則嗎?100夠嗎?

還是我錯過了什麼?

巴茲

Bootstrap 是一種非常有趣的方法來獲得任何估計器的變異數。這意味著您可以依靠它來獲得夏普比率 (SR) 的變異數,但您嘗試做的是從它的分佈中推斷出一些東西(為正的機率)。

從方法論的角度來看,如果您以“標準”方式提升您的 SR (即隨機化您的基礎數據樣本),您將創建沒有意義的虛擬數據樣本:將昨天的 SR 與 2 年的 SR 混合在一起意味著什麼之前沒有考慮到中間的那些?您嘗試引導時間序列,它要微妙得多,已經設置了一些技術來做到這一點。或多或少,你必須對它們應用一個滑動核心(當然你可以做更微妙的事情來獲得你自舉統計的最佳統計屬性),即保持因果關係

關於引導程序某些方面的論文Lectures提供了最需要的細節。

此外,一個細節:如果您專注於夏普比率的統計數據,則無需處理夏普比率本身,您的分子符號就足夠了。

這是一個有趣而微妙的問題。你正在測試一種交易策略,對吧?據推測,它需要一些時間序列屬性。如果你做一個獨立的引導程序,你會搞砸這些。

同時,獨立有利於觀察某些方面(例如,動量策略在多個層面上的偏度)。除此之外,您可能需要考慮塊引導程序或其他依賴引導程序。

最簡單形式的 CBB(循環塊引導程序)

  • 獲取數據,排成一圈(以避免端點問題),以及
  • 對於您的塊大小 N,您在原始數據集中選擇隨機起點(在一個圓圈上)
  • 用接下來的 N 個數據點填充 bootstrap,直到 bootstrap 樣本與原始樣本大小相同。

然後執行您的策略併計算夏普比率。由此,您可以得到夏普比率的分佈

挑戰在於選擇正確的塊大小。通常,這是參考原始時間序列的自相關函式來完成的。

關於夏普比率的非自舉統計,Andy Lo 有一篇名為The Statistics of Sharpe Ratios的論文,值得一看。對於 IID,它們是 t 分佈。對於非獨立同分佈,需要一個 HAC 變異數估計器。

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