Monthly Archives: January 2017

美式期权baw定价的python实现

这一年多,写小程序的语言,逐步从matalb转到了python。实际上,我觉得MATLAB对于我来说,要友好很多,帮助文件论述清晰,还有详尽的示例,而且相关工具函数齐备,临时做些计算非常方便。不过,知乎上提及金融分析,基本上都是python了,而且社区论坛python也要活跃很多。虽然这些论坛主要是搞程序的在做,但对新进入的人来说,肯定优选python作为入门工具了。Matlab在金融工程里面的份额肯定要减少很多了。 # -*- coding: utf-8 -*- """ __author__ = 'laofish' __title__=pyderivatives_fun.py __mtime__ = 2017-01-07 """ import numpy as np import time import pandas as pd from optbkfun import * from scipy.stats import norm # from statsmodels import * import scipy.optimize … Continue reading

Posted in 学术研究 | Tagged | 3 Comments

美式认沽期权何时会被提前行权

很久不思考业务细节了,今天遇到一个问题,需要动脑子了。 我们知道美式认购期权不需要提前行权,原因有两个,一个是期权波动价值(由于价格波动获得利润的可能性),二是早晚行权支付的资金是一样的,那么晚点支付可以节省资金成本。如果你想了结头寸,你的选择应该是保留期权卖空股票,或者直接卖出期权而不是行权。实际上,上述也就是认购期权的时间价值,由于二者都是正的,因此美式认购期权时间价值永远大于零。 但是美式认沽期权就存在提前行权的必要了。不过在说美式期权之前,先要说欧式认沽期权。我们知道,欧式认沽期权有时候 theta 是正值,也就是说,它的时间价值为负。 但是需要注意的是,是深度实值认沽期权 theta 是正值,并不是实值 theta 是正值。 为什么会这样,这里同样有两点,其一是波动率,其二是资金成本,如果波动率消失了,那么现在拿到现金比将来拿到现金更好,这个是和 carry 有关,和前面认购期权相反。 波动率上,和认购期权不同的是,那么实际上因为股票价格不能为负,因此深度实值的认沽期权,波动上总是对我们不利的情况要远大于波动率对我们有利的情况,因此需要提前行权。 这还可以从 theta 的公式角度考虑, 其实也好理解,比如轻微实值的认沽期权,标的价格可能向下波动,也就是说内在价值可能增加,如果现在行权,那么你放弃了一部分波动的可能性,theta 的前半部分,就和这个波动的价值有关。 但是由于在股票价格下跌后,波动的不对称性,同样的波动,对内在价值的影响是不对称的。 再搞清上面的问题之后。美式认沽期权,若波动率溢价高于所损失的无风险利率,那么时间价值为正,反之为负。所以投资者可能会在波动率小到一定程度时,选择执行期权。 顺便提一句,什么时候提前行权带红利认购期权,只要红利超过剩余时间价值,就应该提前行权。

Posted in 学术研究 | Tagged , | Leave a comment