首页 股票期权二叉树定价 excel VBA程序

股票期权二叉树定价 excel VBA程序

举报
开通vip

股票期权二叉树定价 excel VBA程序股票期权二叉树定价 excel VBA程序 Sub 期权定价() Dim i As Long '将参数权入的的权权权相权的权量 s0 = Worksheets(1).Cells(1, 2)x = Worksheets(1).Cells(2, 2)r = Worksheets(1).Cells(3, 2)s = Worksheets(1).Cells(4, 2)t = Worksheets(1).Cells(5, 2)n = Worksheets(1).Cells(6, 2)'生成表格 Worksheets(1)....

股票期权二叉树定价 excel VBA程序
股票期权二叉树定价 excel VBA程序 Sub 期权定价() Dim i As Long '将参数权入的的权权权相权的权量 s0 = Worksheets(1).Cells(1, 2)x = Worksheets(1).Cells(2, 2)r = Worksheets(1).Cells(3, 2)s = Worksheets(1).Cells(4, 2)t = Worksheets(1).Cells(5, 2)n = Worksheets(1).Cells(6, 2)'生成 表格 关于规范使用各类表格的通知入职表格免费下载关于主播时间做一个表格详细英语字母大小写表格下载简历表格模板下载 Worksheets(1).Cells(1, 4) = "期数" Worksheets(1).Cells(2, 4) = "权权;年," Worksheets(1).Cells(3, 4) = "上行乘数" Worksheets(1).Cells(4, 4) = "下行乘数" Worksheets(1).Cells(5, 4) = "股票价格" Worksheets(1).Cells(n + 6, 4) = "权行价格" Worksheets(1).Cells(n + 7, 4) = "上行率概" Worksheets(1).Cells(n + 8, 4) = "下行率概" Worksheets(1).Cells(n + 9, 4) = "权入期权价格" '合相权权元格并 Set rr1 = Range("D5") For i = 1 To n Set rr1 = Union(Range("D" & (5 + i)), rr1) Next rr1.Select With Selection .HorizontalAlignment = xlGeneral .VerticalAlignment = xlBottom .WrapText = False .Orientation = 0 .AddIndent = False .IndentLevel = 0 .ShrinkToFit = False .ReadingOrder = xlContext .MergeCells = True End With '权置格式 居中 With Selection .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter .WrapText = False .Orientation = 0 .AddIndent = False .IndentLevel = 0 .ShrinkToFit = False .ReadingOrder = xlContext .MergeCells = True End With '合相权权元格并 Set rr2 = Range("D" & (n + 9))For i = 1 To n Set rr2 = Union(Range("D" & (n + 9 + i)), rr2) Next rr2.Select With Selection .HorizontalAlignment = xlGeneral .VerticalAlignment = xlBottom .WrapText = False .Orientation = 0 .AddIndent = False .IndentLevel = 0 .ShrinkToFit = False .ReadingOrder = xlContext .MergeCells = True End With '权置格式 居中 With Selection .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter .WrapText = False .Orientation = 0 .AddIndent = False .IndentLevel = 0 .ShrinkToFit = False .ReadingOrder = xlContext .MergeCells = True End With '权算表格相权容内 '期数 Worksheets(1).Cells(1, 5) = 0For i = 1 To n Worksheets(1).Cells(1, 5 + i) = iNext '权权;年, Worksheets(1).Cells(2, 5) = 0For i = 1 To n Worksheets(1).Cells(2, 5 + i) = t / (12 * n) * i Next '上行乘数 u = Exp(s * (t / (12 * n)) ^ 0.5)Worksheets(1).Cells(3, 5) = u '下行乘数 d = 1 / u Worksheets(1).Cells(4, 5) = d '股票价格 For i = 1 To n + 1 Worksheets(1).Cells(4 + i, 4 + i) = 50 * d ^ (i - 1) Next For i = 1 To n For j = i To n Worksheets(1).Cells(4 + i, 5 + j) = Worksheets(1).Cells(4 + i, 4 + j) * u Next Next '权行价格 Worksheets(1).Cells(n + 6, 5 + n) = x'上行率、下行率概概 p = ((r * t) / (12 * n) + 1 - d) / (u - d)Worksheets(1).Cells(n + 7, 5 + n) = pWorksheets(1).Cells(n + 8, 5 + n) = 1 - p'权入期权价格 '最后一期的期权价权 For i = 1 To n + 1 q = Worksheets(1).Cells(4 + i, 5 + n) - xIf q > 0 Then Worksheets(1).Cells(n + 8 + i, 5 + n) = qElse Worksheets(1).Cells(n + 8 + i, 5 + n) = 0End If Next '由后往前推各期的价权 For ii = n To 1 Step -1 '列 For jj = 1 To ii '行 If Worksheets(1).Cells(n + 8 + jj, 4 + ii + 1) > 0 Or Worksheets(1).Cells(n + 8 + jj + 1, 4 + ii + 1) > 0 Then Worksheets(1).Cells(n + 8 + jj, 4 + ii) = (p * Worksheets(1).Cells(n + 8 + jj, 4 + ii + 1) + (1 - p) * Worksheets(1).Cells(n + 8 + jj + 1, 4 + ii + 1)) / (1 + (r / 12) * (t / n)) Else Worksheets(1).Cells(n + 8 + jj, 4 + ii) = 0End If Next Next End Sub 效果如下,
本文档为【股票期权二叉树定价 excel VBA程序】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_083599
暂无简介~
格式:doc
大小:36KB
软件:Word
页数:6
分类:生活休闲
上传时间:2017-12-10
浏览量:60