麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

Homework #2 for MAFS 5220

2019-11-14 10:22:29
字體:
來源:轉載
供稿:網友
"""@author: Stan Wangassignment 2 : binomial tree for American options;"""import networkx as nxfrom math import *# build the binomial tree. At each node, the value stands for stock PRice;def bgoptiongrid(s,T,r,sigma,n): # some useful parameters; deltaT = T/n u = exp(sigma * sqrt(deltaT)) d = 1.0/u a = exp(r*deltaT) p = (a-d)/(u-d) # G stands for the binomial tree; G = nx.Graph() G.add_node((0,0),value=s,time=0) for i in range(0,n+1): for j in range(0,i+1): if i<n: currentvalue = G.node[(i,j)]['value'] G.add_node((i+1,j),value = currentvalue*d, time = (i+1)*deltaT) G.add_node((i+1,j+1), value = currentvalue*u, time = (i+1)*deltaT) G.add_edge((i,j),(i+1,j),value = 1.0 - p) G.add_edge((i,j),(i+1,j+1), value = p) return Gclass SimpleCall: def __init__(self,strike,maturity): self.strike = strike self.maturity = maturity def payoff(self,price): return max(price - self.strike, 0)class SimplePut(SimpleCall): def payoff(self,price): return max(self.strike - price, 0)def SetEuropeanPayoff(G,n,derivative): for i in range(0,n+1): G.node[(n,i)]['option'] = derivative.payoff(G.node[(n,i)]['value'])def EuropeanBackwardInduction(G,n,discount): for i in range(n-1,-1,-1): for j in range(0,i+1): nextdown= G.node[(i+1,j)]['option'] nextup =G.node[(i+1,j+1)]['option'] nextdownprob = G[(i,j)][(i+1,j)]['value'] nextupprob = G[(i,j)][(i+1,j+1)]['value'] undis = nextup * nextupprob + nextdown * nextdownprob G.node[(i,j)]['option'] = discount * undis return G.node[(0,0)]['option']def AmericanBackwardInduction(G,n,discount): for i in range(n-1,-1,-1): for j in range(0,i+1): nextdown= G.node[(i+1,j)]['option'] nextup =G.node[(i+1,j+1)]['option'] nextdownprob = G[(i,j)][(i+1,j)]['value'] nextupprob = G[(i,j)][(i+1,j+1)]['value'] undis = nextup * nextupprob + nextdown * nextdownprob G.node[(i,j)]['option'] = max(discount * undis,derivative.payoff(G.node[(i,j)]['value'])) return G.node[(0,0)]['option']s = 100sigma = 0.1strike = 100T = 1r = 0.05n = 5stepdiscount = exp(-r * T/n)derivative = SimpleCall(strike,T)# derivative = SimplePut(strike,T)G = bgoptiongrid(s,T,r,sigma,n)SetEuropeanPayoff(G,n,derivative)price_euro = EuropeanBackwardInduction(G,n,stepdiscount)price_amer = AmericanBackwardInduction(G,n,stepdiscount)print (price_euro)print (price_amer)#Remark: for call options, the European type and the American type have the same price if the underlying asset does not pay enough dividends; but for the put value, the American type is more valueable than the European type.# another way to codedef binomialcall(s,x,T,r,sigma,n, e_a # 0 means European,1 means Ameican; ): deltaT = T/n u = exp(sigma * sqrt(deltaT)) d = 1.0/u a = exp(r*deltaT) p = (a-d)/(u-d) v = [[0 for j in range(i+1)] for i in range(n+1)] for j in range(0,n+1): v[n][j] = max(s * u **j * d ** (n-j) - x,0.0) for i in range(n-1,-1,-1): for j in range(0,i+1): v[i][j] = max(exp(- r * deltaT) * (p * v[i+1][j+1] + (1.0 - p) * v[i+1][j]), e_a*max(s*u**j*d**(i-j)-x,0.0)) return v[0][0]def binomialput(s,x,T,r,sigma,n, e_a # 0 means European,1 means Ameican; ): deltaT = T/n u = exp(sigma * sqrt(deltaT)) d = 1.0/u a = exp(r*deltaT) p = (a-d)/(u-d) v = [[0 for j in range(i+1)] for i in range(n+1)] for j in range(0,n+1): v[n][j] = max(x - s * u **j * d ** (n-j),0.0) for i in range(n-1,-1,-1): for j in range(0,i+1): v[i][j] = max(exp(- r * deltaT) * (p * v[i+1][j+1] + (1.0 - p) * v[i+1][j]), e_a*max(x - s*u**j*d**(i-j),0.0)) return v[0][0]e_a = 1print (binomialput(s,strike,T,r,sigma,n,e_a))print (binomialcall(s,strike,T,r,sigma,n,e_a))
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 麻豆91精品91久久久 | 激情小说激情图片激情电影 | 免费永久在线观看黄网 | 亚洲电影在线观看高清免费 | 成人午夜精品久久久久久久蜜臀 | 国内精品视频饥渴少妇在线播放 | 91美女视频在线 | 欧美激情精品久久久久久久久久 | 亚洲va久久久噜噜噜久久男同 | 深夜毛片免费看 | 国产毛片在线看 | 视频一区二区三区在线播放 | 国产日韩a | 黄色网络免费看 | 国产精品久久久久无码av | 免费观看高清视频网站 | 毛片大全 | 国产免费久久久久 | 国产亚洲综合一区二区 | 精品一区二区三区免费看 | 一区二区三区视频在线观看 | 九九热免费精品视频 | 欧美日韩在线播放 | 黑人操穴 | 日本在线不卡一区二区 | 亚洲第一页夜 | 蜜桃一本色道久久综合亚洲精品冫 | h视频在线播放 | 久久精品网站视频 | 久草在线观看资源 | 欧美亚洲国产成人 | 免费观看一级淫片 | 久草在线视频精品 | videos高潮| 精品国产91久久久久久浪潮蜜月 | 91成人午夜性a一级毛片 | 精品国产一区二区三区四区阿崩 | 国产乱淫a∨片免费观看 | 国产免费观看视频 | 爱爱视频天天干 | 中文字幕激情视频 |