取得漂移
在上一個練習中,你已經模擬了遵循隨機漫步的股價。這次你會在兩個面向上加以延伸。
- 你將觀察帶有漂移(drift)的隨機漫步。許多時間序列(例如股價)是隨機漫步,但長期往往會向上漂移。
- 在上一個練習中,隨機漫步中的雜訊是加法性的:會把隨機、常態分佈的價格變動加到前一次價格上。然而,加法雜訊在理論上可能得到負價格。現在你會把雜訊改為乘法性的:先把隨機、常態分佈的變動加上一得到總報酬,然後用它去乘以前一次的價格。
本練習屬於課程
Python 中的時間序列分析
練習說明
- 使用
np.random.normal()產生 500 個平均為 0.1%、標準差為 1% 的常態隨機「乘法步伐」,這些即為報酬,並加上一得到總報酬。 - 模擬股價
P:- 使用 numpy 的
.cumprod()方法對步伐做連乘累積。 - 將總報酬的連乘累積乘以 100,讓起始值為 100。
- 使用 numpy 的
- 繪製帶有漂移的隨機漫步模擬結果。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Generate 500 random steps
steps = np.random.normal(loc=___, scale=___, size=___) + ___
# Set first element to 1
steps[0]=1
# Simulate the stock price, P, by taking the cumulative product
P = ___ * np.cumprod(___)
# Plot the simulated stock prices
plt.plot(___)
plt.title("Simulated Random Walk with Drift")
plt.show()