導航:首頁 > 編程語言 > 蒙特卡洛計算概率代碼python

蒙特卡洛計算概率代碼python

發布時間:2022-10-04 19:24:44

『壹』 蒙特卡洛預測MATLAB或者python或者C語言代碼怎麼寫

僅憑這點信息沒人能寫出來的。

『貳』 誰有最小二乘蒙特卡洛方法的美式期權定價python程序代碼

function [c,p]=ucoption(S,X,sigma,r,T,M) sig2=sigma^2; srT=sqrt(T); srTa=sigma*srT; c=0; p=0; for i=1:M ST=S*exp((r-0.5*sig2)*T+srTa*randn); c=c+max(ST-X,0); p=p+max(X-ST,0); end c=c/M; p=p/M; [Call,Put] = blsprice(S, X, r, T, ...

『叄』 蒙特卡洛方法

蒙特卡羅方法又稱統計模擬法、隨機抽樣技術,是一種隨機模擬方法,以概率和統計理論方法為基礎的一種計算方法,是使用隨機數(或更常見的偽隨機數)來解決很多計算問題的方法。

應用領域:

蒙特卡羅方法在金融工程學,宏觀經濟學,生物醫學,計算物理學(如粒子輸運計算、量子熱力學計算、空氣動力學計算、核工程)等領域應用廣泛。

『肆』 蒙特卡洛模擬法

蒙特卡洛模擬技術,是用隨機抽樣的方法抽取一組滿足輸入變數的概率分布特徵的數值,輸入這組變數計算項目評價指標,通過多次抽樣計算可獲得評價指標的概率分布及累計概率分布、期望值、方差、標准差,計算項目可行或不可行的概率,從而估計項目投資所承擔的風險。

蒙特卡洛模擬的步驟如下:

第一步,通過敏感性分析,確定風險變數。

第二步,構造風險變數的概率分布模型。

第三步,為各輸入風險變數抽取隨機數。

第四步,將抽得的隨機數轉化為各輸入變數的抽樣值。

第五步,將抽樣值組成一組項目評價基礎數據。

第六步,根據基礎數據計算出評價指標值。

第七步,整理模擬結果所得評價指標的期望值、方差、標准差和它的概率分布及累計概率,繪制累計概率圖,計算項目可行或不可行的概率。

蒙特卡洛模擬程序如圖7-26所示。

圖7-26 蒙特卡洛模擬程序圖

【實訓Ⅷ】某項目建設投資為1億元,流動資金1000 萬元,項目兩年建成,第三年投產,當年達產。不含增值稅年銷售收入為5000萬元,經營成本2000萬元,附加稅及營業外支出每年為50萬元,項目計算期12 a。項目要求達到的項目財務內部收益率為15%,求內部收益率低於15%的概率。

由於蒙特卡洛模擬的計算量非常大,必須藉助計算機來進行。本案例通過手工計算,模擬20次,主要是演示模擬過程。

(1)確定風險變數。通過敏感性分析,得知建設投資、產品銷售收入、經營成本為主要風險變數。流動資金需要量與經營成本線性相關,不作為獨立的輸入變數。

(2)構造概率分布模型。建設投資變化概率服從三角形分布,其悲觀值為1.3億元、最大可能值為1億元、樂觀值為9000萬元,如圖7-27所示。年銷售收入服從期望值為5000萬元、σ=300萬元的正態分布。年經營成本服從期望值為2000萬元、σ=100 萬元的正態分布。

圖7-27 投資三角形分布圖

建設投資變化的三角形分布的累計概率,見表7-16及圖7-27所示。

表7-16 投資額三角形分布累計概率表

(3)對投資、銷售收入、經營成本分別抽取隨機數,隨機數可以由計算機產生,或從隨機數表中任意確定起始數後,順序抽取。本例從隨機數表(表7-20)中抽取隨機數。假定模擬次數定為k=20,從隨機數表中任意從不同地方抽取三個20 個一組的隨機數,見表7-17。

表7-17 輸入變數隨機抽樣取值

(4)將抽得的隨機數轉化為各隨機變數的抽樣值。

這里以第1組模擬隨機變數產生做出說明。

1)服從三角形分布的隨機變數產生方法。

根據隨機數在累計概率表(表7-16)或累計概率圖(圖7-28)中查取。投資的第1個隨機數為48867萬元,查找累計概率0.48 867所對應的投資額,從表7-16中查得投資額在10300與10600之間,通過線性插值可得

第1個投資抽樣值=10300+300×(48867-39250)/(52000-39250)=10526萬元

2)服從正態分布的隨機變數產生方法。

從標准正態分布表(表7-21)中查找累計概率與隨機數相等的數值。例如銷售收入第1個隨機數06242,查標准正態分布表得銷售收入的隨機離差在-1.53與-1.54之間,經線性插值得-1.5348。

圖7-28 投資的累計概率分布圖

第1個銷售收入抽樣值=5000-1.5348×300≈4540萬元。

同樣,經營成本第一個隨機數66 903相應的隨機變數離差為0.4328,第一個經營成本的抽樣值=2000+100×0.4328=2043萬元。

3)服從離散型分布的隨機變數的抽樣方法。

本例中沒有離散型隨機變數。另舉例如下,據專家調查獲得的某種產品售價的概率分布見表7-18。

表7-18 某種產品售價的概率分布

根據上表繪制累計概率如圖7-29所示。

若抽取的隨機數為43252,從累計概率圖縱坐標上找到累計概率為0.43252,劃一水平線與累計概率折線相交的交點的橫坐標值125元,即是售價的抽樣值。

(5)投資、銷售收入、經營成本各20個抽樣值組成20組項目評價基礎數據。

(6)根據20組項目評價基礎數據,計算出20 個計算項目評價指標值,即項目財務內部收益率。

(7)模擬結果達到預定次數後,整理模擬結果按內部收益率從小到大排列並計算累計概率,見表7-19所示。

從累計概率表可知內部收益率低於15%的概率為15%,內部收益率高於15%的概率為85%。

圖7-29 售價累計概率曲線

表7-19 蒙特卡洛模擬法累積概率計算表

①每次模擬結果的概率=1/模擬次數。

『伍』 下面的問題用蒙特卡洛模擬如何實現啊,想了解個基本過程

蒙特卡洛的基本原理就是通過計算機的計算能力進行大量實驗。實驗樣本到達一定數量後,能得出接近結果的數值解。這個題目可以通過計算直接得出結果接近於正態分布,但可以用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列右拉即有更多結果。

『陸』 如何用python的蒙特卡洛模擬生成新的數據

生成1~10的隨機數1000個:
import random
fp = open("test", 'w');
for i in range(1, 1000):
a = random.randint(1,10)
fp.write(str(a)+"\n");
fp.close();

注意:寫入文件的不會在最後寫入,而是重新寫文件。

『柒』 你好😃😃 想問一下怎麼用Python編一個 同時投12個骰子 計算至少有兩次

importnumpyasnp
'''蒙特卡洛方法'''
epoch=10000#模擬10000次
count=0#計數
foriinrange(epoch):
dice_12=np.random.randint(6,size=12)+1#模擬每次投12個骰子
ifdice_12[dice_12==6].size>=2:count+=1
print('同時投12個骰子,至少兩個骰子六點的概率為{}'.format(count/epoch))


『捌』 蒙特卡洛演算法

蒙特·卡羅方法(Monte
Carlo
method),也稱統計模擬方法,是二十世紀四十年代中期由於科學技術的發展和電子計算機的發明,而被提出的一種以概率統計理論為指導的一類非常重要的數值計算方法。是指使用隨機數(或更常見的偽隨機數)來解決很多計算問題的方法。與它對應的是確定性演算法。蒙特·卡羅方法在金融工程學,宏觀經濟學,計算物理學(如粒子輸運計算、量子熱力學計算、空氣動力學計算)等領域應用廣泛。
分子模擬計算
使用蒙特·卡羅方法進行分子模擬計算是按照以下步驟進行的:1.
使用隨機數發生器產生一個隨機的分子構型。2.
對此分子構型的其中粒子坐標做無規則的改變,產生一個新的分子構型。3.
計算新的分子構型的能量。4.
比較新的分子構型於改變前的分子構型的能量變化,判斷是否接受該構型。若新的分子構型能量低於原分子構型的能量,則接受新的構型,使用這個構型重復再做下一次迭代。
若新的分子構型能量高於原分子構型的能量,則計算玻爾茲曼因子,並產生一個隨機數。若這個隨機數大於所計算出的玻爾茲曼因子,則放棄這個構型,重新計算。
若這個隨機數小於所計算出的玻爾茲曼因子,則接受這個構型,使用這個構型重復再做下一次迭代。5.
如此進行迭代計算,直至最後搜索出低於所給能量條件的分子構型結束。

『玖』 蒙特卡羅方法求概率和分位數

蒙特卡羅方法求概率和分位數技巧如下(以下是例子,同學們要學會舉一反三):

如:蒙特卡羅方法中根據 Nagel-Schreckenberg 模型,車輛的運動滿足以下規則。

1、當前速度是 v 。

2、如果前面沒車,它在下一秒的速度會提高到 v + 1 ,直到達到規定的最高限速。

3、如果前面有車,距離為d,且 d < v,那麼它在下一秒的速度會降低到 d – 1 。

4、此外,司機還會以概率 p 隨機減速, 將下一秒的速度降低到 v – 1 。在一條直線上,隨機產生100個點,代表道路上的100輛車,另取概率 p 為 0.3 。該模型會隨機產生交通擁堵(圖形上黑色聚集的部分)。這就證明了,單車道即使沒有任何原因,也會產生交通堵塞。

蒙特卡羅方法由來

蒙特卡羅方法是一種計算方法。原理是通過大量隨機樣本,去了解一個系統,進而得到所要計算的值。它非常強大和靈活,又相當簡單易懂,很容易實現。

對於許多問題來說,它往往是最簡單的計算方法,有時甚至是唯一可行的方法。它誕生於上個世紀40年代美國的」曼哈頓計劃」,名字來源於賭城蒙特卡羅,象徵概率。

『拾』 python蒙特卡洛計算圓周率耗時比較

1. 請指明python版本

2. 如果有錯,請貼出報錯信息
3. 如果不是程序異常,而是有邏輯錯誤,請說明你希望的邏輯和程序運行時實際的邏輯

閱讀全文

與蒙特卡洛計算概率代碼python相關的資料

熱點內容
如何進入正式服的伺服器 瀏覽:580
像野浪花一樣的電影有哪些 瀏覽:917
0855影視大全電視劇 瀏覽:54
f0fp5m9z7 瀏覽:793
8251單片機 瀏覽:880
java程序員學習python 瀏覽:525
喝奶水的電影 瀏覽:438
季璃惡夫記 瀏覽:146
那些辭職考公務員的程序員 瀏覽:664
安卓表格布局怎麼弄列 瀏覽:933
80年代香港殺手電筒影大全集 瀏覽:913
《熱情的鄰居》李彩 瀏覽:998
不收費的小電影在哪裡看 瀏覽:609
適合雙人看的愛情片5g視頻 瀏覽:586
安卓中控怎麼安裝應用 瀏覽:83
電影大全鬼片免費收看 瀏覽:148
kanxv5. com/6/ index.php/ 瀏覽:585
看外國電影的網站 瀏覽:19
染島貢演過的電影 瀏覽:80
經典系列動作電影 瀏覽:731