(二十九)期货合约的定价

期货合约价格一般式

  F = Sert + 持有成本 - 持有收益。比如A和B签订了一份期货合约,A一年后要从B那里以某一期货价格买入一只老母鸡,现在的目的就是求出这个价格。从B的角度看,B买小母鸡花费20元,以及这一年内养鸡的成本20元,这肯定是要A出的,应该加上;这一年内母鸡下了10个蛋,B拿去卖了10元钱,这收益应该扣除,因此老母鸡的期货价格可以定为20+20-10=30元。也就是说标的资产在谁那,谁就要收成本付收益。如果考虑到B如果不签订此合约,那么B可以拿买小母鸡的20元钱做一年的无风险投资,年末得到20ert元,同理成本和收益也得考虑时间价值,最终得出精确的期货价格。
  金融资产的收益主要是红利率或红利现值,商品资产主要是+储存成本-租赁费-便利收益率。

商品期货定价

  商品期货的定价公式为F=(S+成本-收益)er*t,或者为费率的形式F=Se(r+成本-收益)*t
  例1:A metals trader is considering establishing a reverse cash and carry trade by shorting silver today and simultaneously buying silver 1-year future. The current spot price for silver is GBP 10.00 per troy ounce and the 1-year future price is GBP 10.25 per troy ounce. On a 1-year cash investment the trader can earn an interest rate of 4%. What is the implied market lease rate and which side will pay it?

S=10;F=10.25;r=0.04;t=1
from scipy import optimize
def g(lr):
    e=F-S*np.exp(r*t-lr*t)
    return e#返回等于0的式子
optimize.fsolve(g,0.1)
Out[1]: array([0.01530739])

  也就是说租赁率为1.5%,即GBP 0.15 per troy ounce,这个金属商买了期货因此是对手方付这个收益。
  例2:Three months ago a company entered in a one-year forward contract to buy 100 ounces of gold. At the time, the one-year forward price was USD 1,000 per ounce. The nine-month forward price of gold is now USD 1,050 per ounce. The continuously-compounded risk-free rate is 4% per year for all maturities and there are no storage costs. Solve the value of the contract.

#多头价值f=S-Ke^(-rt)
S0=1050*np.exp(-0.04*0.75)
f=100*(S0-1000*np.exp(-0.04*0.75))
f
Out[2]: 4852.227667742545

外汇期货定价

  假设S为以外汇计价的1单位外汇的即期价格,r是本国利率,rf是外国的无风险汇率,K为期货交割价格,考虑两个组合:①组合A包含一个价值为f的期货合约多头+数额为Ke-rt单位的现金;②组合B包含一笔金额为Se-rf*t的外汇。到期时A和B都得到一单位的外汇,因此任意时刻t他们的价值都相等,即f+Ke-rt=Se-rft,而期货价格F是使得f=0的K,代入得F=Se(r-rf)*t
  例3:有一外汇期货合约的标的资产价格是100,交割价为99,本国与外国的无风险利率分别是10%和0.2%,6个月到期,求该外汇合约的价值与价格:

import numpy as np
def whf(S,r,rf,t,K):
	return S*np.exp(-rf*t)-K*np.exp(-r*t)
def whF(S,r,rf,t):
	return S*np.exp(r*t-rf*t)
print('f=',whf(100,0.1,0.002,0.5,99),'F=',whF(100,0.1,0.002,0.5))

f= 5.728336957766814 F= 105.0220350740028

股指期货定价

  股票价格指数可以看成是支付已知红利率的证券,假设红利率q的支付是连续的,则股指期货价格为F=Se(r-q)*t,其python应用比较简单,敲公式即可。

利率(国债)期货定价

  考虑一个中长期国债期货,它的价格可以表示为F=(S-I)er*t,其中I为收益(利息)的现值。
  例4:有一长期国债期货,其标的资产价格为121.98元,每年末有2.5元的利息发放,无风险利率为10%,距离到期日为5年,求该期货的价格:

def i(c,r,t):
	return sum(c*np.exp(-r*t))
def Fbond(c,r,t,S):
	return (S-i(c,r,t))*np.exp(r*len(t))
c=2.5*np.ones(5)
t=np.array(range(1,6))
Fbond(c,0.1,t,121.98)
Out[3]: 185.69037764636892

  而短期国债期货在其期限内一般不支付利息,在到期日投资者收到债券的面值。若期货的到期期限是T年,作为标的资产的短期国债的面值为V且到期期限为T’,则T’-T=90天,也就是说短期利率期货的期限一般为90天。假设对应期限的无风险连续复利率为r和r’,这样短期国债面值V的现值是
在这里插入图片描述
  例5:假设140天期的年利率为8%,230天期的年利率为8.25%,求距到期日140天且面值为100元的短期国债期货的价格:

V=100;r2,t2,r1,t1=0.0825,230/365,0.08,140/365
fr=(r2*t2-r1*t1)/(t2-t1)
F=V*np.exp(fr*(t2-t1))
F
Out[4]: 102.15298635676271
发布了31 篇原创文章 · 获赞 2 · 访问量 1594

猜你喜欢

转载自blog.csdn.net/hzk427/article/details/104276978