程式
簡單的 Blockbootstrap 而不是 CircularBlockBootstrap
我目前正在嘗試在 Python 中阻止引導我的股票回報數據。我這樣做是為了生成合成數據。我遇到了 CircularBlockBootstrap,但在這裡的一些討論中發現不建議將其用於此類數據。現在我試圖在 Python 中找到一個簡單的 BlockBootstrap 庫,不幸的是我找不到任何這樣的庫。目前這是我的程式碼:
def WBB(s, blocksize, N_paths): simulated_returns = [] bs = CircularBlockBootstrap(blocksize,s) for i, data in enumerate(bs.bootstrap(N_paths)): tmp = data[0][0].reset_index(drop=True) simulated_returns.append(tmp) simulations = pd.concat(simulated_returns, axis=1, ignore_index=True) return simulations
有人可以向我解釋如何將目前的 CircularBlockBootstrap 更改為簡單的 BlockBootstrap 嗎?
該
arch
軟體包具有時間序列引導方法:中的arch包
Python
實現了Politis 和 Romano (1994)的固定(塊)引導程序(其中包括,請參閱此連結),保持引導程序重新採樣固定並避免破壞數據中的依賴結構。這種方法通常在引導時間序列數據時使用。在這個例子中,作者描述瞭如何使用平穩引導方法來建構夏普比率的信賴區間。此外,他說明瞭如何為引導程序找到最佳塊長度,這在Politis & White (2004)中也有理論上的描述。
這種引導方法應該可以解決您的問題。我希望這有幫助。