全部版块 我的主页
论坛 金融投资论坛 六区 金融学(理论版) 金融工程(数量金融)与金融衍生品
2833 19
2012-06-10
有一类基于股票的障碍期权,其标的股价在30天内累计有不少于20天低于障碍值就会被敲出(即期权生效)。     
为了找出这一期权被敲出的时刻,我的基本算法是:
(1)先模拟出m条不同的股价路径,各路径均有n期,时间步长δT为一天
(2)针对每一条路径,标记出该路径上所有股价St<障碍K的时刻t*
(3)找出各路径上t*~t*+29这段时间内的t*数目>or=20,筛选出所有所有被敲出的路径l(l<m)条
(4)逐个记录各敲出路径上最早满足该条件的时刻t**,于是得到l个期权敲出时刻t**     
     这个算法有不少问题,首要的是运行起来效率和速率都极低。可能是因为在上面第三步中过多重复。我的一个朋友建议我采用扫描程序,我在网上淘了半天找到了一个zigzag(matlab环境),但似乎又不合适。   
     请大牛们看还可不可以稍加改善。谢谢!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2012-6-10 09:59:44
为什么是t*~t*+19?难道这三十天是以向下突破障碍开始计算的吗?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-6-10 10:11:35
我觉得是不是可以在模拟路径的时候,同时记录低于障碍K的起点和次数。
然后接下来有两种思路:
(1)最后比较满足计数条件的一系列起点
(2)或者,记录第一条满足计数条件的路径的起点t*,之后出现起点早于t*的路径才需要计数,如果该路径满足计数条件,则更新t*。  最后t*则为所求。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-6-10 14:36:31
leihengzhishang 发表于 2012-6-10 09:59
为什么是t*~t*+19?难道这三十天是以向下突破障碍开始计算的吗?
当然是,这样不就可以保证考察期为30天内嘛
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-6-10 14:43:50
leihengzhishang 发表于 2012-6-10 10:11
我觉得是不是可以在模拟路径的时候,同时记录低于障碍K的起点和次数。
然后接下来有两种思路:
(1)最后 ...
看到兄台的留言,我才发现自己的表达有误,只好修改了原来的说法。我本意所得到的t**是每一条敲出路径上最小的t**,并不涉及不同路径上的t*之间的比较。具体还请见现在帖中内容。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-6-10 18:43:22
下面是我的算法:
1)先模拟出m条不同的股价路径,各路径均有n期,时间步长δT为一天;
2)针对每一条路径,该路径上所有股价St<障碍K的时刻t*对应标记值1,该路径上所有股价St>障碍K的时刻t*对应标记值0;
3)每一条路径对应一条由01组成的向量A,将此向量转化为“累计”形式B,也就是B(i)=A(1)+...+A(i);
4)该路径可以行权等价于存在t使B(t+29)-B(t)>=20;

一些个人看法:
时间步长δT为一天,也许会降低计算结果的精确性,建议将路径的总步数定为期权持续天数的整数倍,也就是将一天分解为若干时间段。2)、3)、4)步可以对应的做修改,只标记一天中的某个价格(一般是最后一个,close price)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群