Ⅰ 用Python中的蒙特卡洛模擬兩支股票組成的投資組合的價格趨勢分析
蒙特卡洛模擬是一種模擬把真實系統中的概率過程用計算機程序來模擬的方法。對於投資組合的價格趨勢分析,可以使用Python中的蒙特卡洛模擬。首先,回顧投資組合的價格趨勢。投資組合中的股票價格的趨勢是受多種因素影響的,可分為經濟、政治和技術因素,其中經濟因素最重要。因此,蒙特卡洛模擬可以模擬這些因素對投資組合價格趨勢的影響,並通過計算機繪制投資組合價格趨勢的曲線。
Python中的蒙特卡洛模擬首先需要計算投資組合中各股票價格的每一期的收益率,其次,計算出投資組合的收益率;隨後,計算預測投資組合的期權價格,並將所有的期權價格疊加起來,從而繪制投資組合的價格曲線。最後,在投資組合的價格曲線的基礎上,可以分析投資組合在不同時期的價格走勢,並進行投資組合結構的調整,從而獲得最優投資組合。
Ⅱ 怎麼用 Excel 做蒙特卡洛模擬
Excel 做蒙特卡洛模擬的具體操作步驟如下:
1、打開Excel表格,填寫三個活動時間估算的樂觀值,最可能值和悲觀值。
Ⅲ 什麼是蒙特卡洛模擬( Monte Carlo simulation)
我們一直面對著不確定,不明確和變異。甚至我們無法獲得信息,我們不能准確的預測未來。蒙特卡洛模擬( Monte Carlo simulation)讓您看到了您決策的所有可能的輸出,並評估風險,允許在不確定的情況下制定更好的決策。蒙特卡洛模擬( Monte Carlo simulation)是一種計算機數學技術,允許人們在定量分析和決策制定過程中量化風險。這項技術被專家們用於各種不同的領域,比如財經,項目管理,能源,生產,工程,研究和開發,保險,石油&天然氣,物流和環境。蒙特卡洛模擬( Monte Carlo simulation)提供給了決策制定者大范圍的可能輸出和任意行動選擇將會發生的概率。它顯示了極端的可能性-最的輸出,最保守的輸出-以及對於中間路線決策的最可能的結果。這項技術首先被從事原子彈工作的科學家使用;它被命名為蒙特卡洛,摩納哥有名的娛樂旅遊勝地。它是在二戰的時候被傳入的,蒙特卡洛模擬( Monte Carlo simulation)現在已經被用於建模各種物理和概念系統。蒙特卡洛模擬( Monte Carlo simulation)是如何工作的蒙特卡洛模擬( Monte Carlo simulation)通過構建可能結果的模型-通過替換任意存在固有不確定性的因子的一定范圍的值(概率分布)-來執行風險分析。它一次又一次的計算結果,每次使用一個從概率分布獲得的不同隨機數集。根據不確定數和為他們制定的范圍,蒙特卡洛模擬( Monte Carlo simulation)能夠在它完成計算前調用成千上萬次的重復計算。蒙特卡洛模擬( Monte Carlo simulation)產生可能結果輸出值的分布。通過使用概率分布,變數能夠擁有不同結果發生的不同概率。概率分布是一種用來描述風險分析的變數中的不確定性的更加可行的方法。常用的概率分布包括:正態分布(Normal)-或"鍾型曲線".用戶簡單的定義均值或期望值和標准差來描述關於均值的變異。在中部靠近均值的值是最有可能發生的值。它是對稱的,可以用來描述多種自然現象,比如人的身高。可以通過正態分布描述的變數示例包括通貨膨脹率和能源價格。對數正態分布(Lognormal)-值是正偏的,不像正態分布那樣是對稱的。它被用來代表不會小於零但可能有無限大正值的結果。可以通過對數正態分布描述的變數示例包括房地產價值,股票價格和石油儲量。均勻分布(Uniform)-所有的值發生的機會相等,用戶只需制定最小和最大值。可以通過均勻分布描述的變數示例包括一個新產品的製造費用或未來銷售收入。三角分布(Triangular)-用戶指定最小,最可能和最大值。在最可能附近的值最可能發生。可以通過三角分布描述的變數示例包括每時間單位內的過去銷售歷史和庫存水平。PERT分布-用戶指定最小,最可能和最大值,類似三角分布。在最可能附近的值最可能發生。然而在最可能和極值之間的值比三角分布更有可能發生;那就是說,the extremes are not as emphasized. 可以通過三角分布描述的變數示例包括在項目管理模型中的一項任務的持續時間。離散分布(Discrete)-用戶指定最可能發生的值和每個值的可能性。比如關於訴訟結果的示例,20%的機會陪審團判決無罪,30%的機會陪審團判決有罪,40%的機會審批有效,10%的機會審批無效。在蒙特卡洛模擬( Monte Carlo simulation)過程中,值被從輸入概率分布中隨機抽取。每個樣本集被稱為一次迭代,從樣本獲得的結果被記錄。蒙特卡洛模擬( Monte Carlo simulation)執行這樣的操作成百上千次,可能結果形成一個概率分布。用這種方法,蒙特卡洛模擬( Monte Carlo simulation)生成了一個更加全面關於將會發生的結果的視圖。它不僅僅告訴什麼結果會發生,而且還有結果發生的可能性。蒙特卡洛模擬( Monte Carlo simulation)提供了許多超越確定性或"單點估計"分析的優勢:概率結果,結果不僅顯示會發生什麼,而且還有每個結果發生的可能性圖形化報告,因為蒙特卡洛模擬( Monte Carlo simulation)生成的數據,它很容易創建不同結果和他們發生機會的圖形。這對於和其他投資者溝通結果是很重要的。敏感性分析,如果只有很少的一些案例,確定性分許就很難發現哪個變數對結果影響最大。在蒙特卡洛模擬( Monte Carlo simulation)中,很容易發現哪個輸入對底線結果有最大的影響。情境分析,在確定性模型中,對於為不同輸入值的不同組合建模來真實的查看不同情境的效果是很困難的。使用蒙特卡洛模擬( Monte Carlo simulation),分析員能夠正確的查看當確定的輸出發生時某個輸入對應的值。這對於進一步的分析來說是無價的。相關性輸入,在蒙特卡洛模擬( Monte Carlo simulation)中,可能要建模輸入變數之間的相關關系。它對於准確的描繪在某些因子增長時,其它的因子是如何增長或下降的情況時是重要的。
Ⅳ 什麼是蒙特卡洛模擬( Monte Carlo simulation)
蒙特卡洛模擬又稱為隨機抽樣或統計試驗方法,屬於計算數學的一個分支,它是在上世紀四十年代中期為了適應當時原子能事業的發展而發展起來的。傳統的經驗方法由於不能逼近真實的物理過程,很難得到滿意的結果,而蒙特卡羅方法由於能夠真實地模擬實際物理過程,故解決問題與實際非常符合,可以得到很圓滿的結果。
蒙特卡洛隨機模擬法的原理是當問題或對象本身具有概率特徵時,可以用計算機模擬的方法產生抽樣結果,根據抽樣計算統計量或者參數的值;隨著模擬次數的增多,可以通過對各次統計量或參數的估計值求平均的方法得到穩定結論。
蒙特卡洛隨機模擬法 - 實施步驟抽樣計算統計量或者參數的值;隨著模擬次數的增多,可以通過對各次統計量或參數的估計值求平均的方法得到穩定結論。
(4)蒙特卡洛模擬股票價格擴展閱讀
基本原理思想
當所要求解的問題是某種事件出現的概率,或者是某個隨機變數的期望值時,它們可以通過某種「試驗」的方法,得到這種事件出現的頻率,或者這個隨機變數的平均值,並用它們作為問題的解。這就是蒙特卡羅方法的基本思想。
蒙特卡羅方法通過抓住事物運動的幾何數量和幾何特徵,利用數學方法來加以模擬,即進行一種數字模擬實驗。它是以一個概率模型為基礎,按照這個模型所描繪的過程,通過模擬實驗的結果,作為問題的近似解。可以把蒙特卡羅解題歸結為三個主要步驟:構造或描述概率過程;實現從已知概率分布抽樣;建立各種估計量。
Ⅳ 為什麼美式期權不能直接用蒙特卡洛模擬
以執行價 K=98 的美式看跌期權為例,蒙特卡洛模擬的結果是一條確定的價格路徑,比如下面這樣:
T | t=0 | t=1 | t=2 | t=3
路徑1 | 100 | 97 | 103 | 105
如果你對照著這條路徑,就應該在t=1時行權。但這樣就相當於,你在t=1時,就已經知道未來的價格走勢了。
這種預知未來,在現實中是不被允許的。你可以回歸數據,得到映射關系(或者說 規律),但不可以翻劇本、直接用未來的結果。所以考慮引入最小二乘蒙特卡洛模擬,E(Y|X)=g(X),其中Y是繼續持有、不提前行權、所帶來的未來收益貼現值(即內在價值),而X是標的物在t時刻的價格。
作為加深理解,你考慮下歐式期權,由於不依賴路徑,不會提前行權,只關注到期日 T 這一個時間點上的標的物價格,所以可以直接用蒙特卡洛模擬。
Ⅵ 下面的問題用蒙特卡洛模擬如何實現啊,想了解個基本過程
蒙特卡洛的基本原理就是通過計算機的計算能力進行大量實驗。實驗樣本到達一定數量後,能得出接近結果的數值解。這個題目可以通過計算直接得出結果接近於正態分布,但可以用excel簡單的說明下蒙特卡洛方法。
用excel的步驟基本如下:
1、第一列拉出各周期編號1至1000。(假設都是從第一行開始)
2、第二列作為隨機種子,B1輸入=rand()
3、第三列為根據既定價格及概率p值(回答里寫的p值,但輸入時應該是具體數值)判斷購買與否,C1輸入=if(B1<p,1,0)
4、第四列、五列展示周期開始、結束時剩餘貨物,即D1為50,E1輸入=max(D1-C1,0),而後D2輸入=E1,E2輸入=max(D1-C1,0)。
5、每一列對應下拉(四、五列從第二行開始下拉)。
按這個步驟的話,就得出一個既定價格下,剩餘產品數量隨時間變化的表。
至於最後的利潤也是可以根據這個算的。
不過以上的過程是基於對每個周期買的概率進行1000次蒙特卡洛模擬。
如果模擬的是這1000次周期的結果,那就直接用一列到位,對多列的結果進行統計。
第1列仍然編號,第2列直接整合上述234步,表示該周期初始貨物存貨,第1行50,第二行B2輸入=IF(RAND()<p,MAX(B1-1,0),B1),這里用的p仍然是數值的表示,比如說概率是0.7,實際應該輸入=IF(RAND()<0.7,MAX(B1-1,0),B1)
下拉,出現到1000步的初始貨物存貨,根據要求實際上是1000步後的結果,可以拉到1001行。這就用單列表示了整個貨物變化過程,如果想要更多1000步的不同結果,把整個b列右拉即有更多結果。