期权专题1:普通期权定价

文章介绍了期权的四种基本交易策略:买入看涨、买入看跌、卖出看涨、卖出看跌,以及它们的行权价值表达式。通过Python函数,计算不同标的价格下期权的实际价值,并生成数据表。讨论了不同策略的盈亏平衡点和风险特征。
摘要由CSDN通过智能技术生成

1.理论部分

期权的四种基本交易:买入看涨,买入看跌,卖出看涨,卖出看跌。

假设行权价格为K,标的价格未S,那么四种期内行权价值的表达式如下:

买入看涨:max((S-K),0)

买入看跌:max((K-S),0)

卖出看涨:-max((S-K),0)

卖出看跌:-max((K-S),0)

在上述行权价值的基础上,加上对应的权利金(买入为支出,卖出为收入),即可得到对应期权的实际价值。

2.代码复现

以下是代码复现的全过程

通过传入参数不同,计算某一标的价格下期权对应的定价(默认权利金为50,执行价格为2000):

def option_price(type, dir, S, K = None, cost = None):
    '''
    获取期权的价值,权利金默认为50
    Parameters
    ----------
    type:期权类型,put表示看跌,call表示看涨,str格式
    dir:交易方向,buy表示买入, sell表示卖出,str格式
    S:标的价格,int格式
    K:执行价格,int格式,可不填,默认值为2000
    cost:权利金,int格式,可不填,默认值为50

    Returns
    -------
    单一价格S对应的期权价值
    '''
    if K == None:
        K = 2000
    if cost == None:
        cost = 50
    if type == 'call':
        if dir == 'buy':
            price = max((S-K),0) - cost
        elif dir == 'sell':
            price = cost - max((S-K),0)
    elif type == 'put':
        if dir == 'buy':
            price = max((K-S), 0) - cost
        elif dir == 'sell':
            price = cost - max((K-S), 0)
    return price

 假设标的价格的区间为[1990,2100],计算期权价格随标的价格的变动:

def get_option_price(type, dir):
    # 获取各类期权对应的时序价格
    s_list = [x for x in range(1900,2100)]
    price_list = []
    for s in s_list:
        price = option_price(type, dir,s)
        price_list.append(price)
    out_df = pd.DataFrame({'标的价格':s_list, dir + '_' + type :price_list})
    return out_df

遍历参数,得到对应结果,并保存到本地:

    type_list = ['put','call']
    dir_list = ['sell','buy']
    for type in type_list:
        for dir in dir_list:
            print(type, dir)
            df = get_option_price(type, dir)
            df.to_excel(dir + '_' + type + '_option.xlsx',index=False)

通过excel作图,我们可以得到四类期权对应的图像。(此处没有直接使用python的可视化,主要是对于作图的一些细节比较复杂,没有必要用代码来耗费更多时间)

买入看涨:盈亏平衡点=行权价+权利金。亏损有限(最大为权利金),盈利无限。

 买入看跌:盈亏平衡点=行权价-权利金。亏损有限(最大为权利金),盈利理论上有限。

  卖出看涨:盈亏平衡点=行权价+权利金。亏损无限,盈利有限(最大为权利金)。

 

   卖出看跌:盈亏平衡点=行权价-权利金。亏损理论上有限,盈利有限(最大为权利金)。

 本期分享到此结束,有疑问欢迎留言。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值