参考沪深300股指期权的合约表,写一个工具函数:
使用方法
def get_format_option_gap(value: float, deviation: int = 0): # 根据中证1000指数获取点位
"""
根据标准的行权价,生成不同档位的期权列表,适合中金所
:param value: 当前行权价
:param deviation: 相较于行权价向哪个方向偏移, >0表示较行权价向上调整, <=表示较行权价向下调整
:return:
"""
def _gap_value(_mark_value):
if _mark_value < 2500:
return 25
elif _mark_value < 5000:
return 50
elif _mark_value < 10000:
return 100
elif _mark_value >= 10000:
return 200
for _i in range(abs(deviation)):
_gap = _gap_value(value)
# option_a_ex_price = int(value / _gap) * _gap # 买入看跌期权
if deviation >= 0:
value += _gap
elif deviation < 0:
value -= _gap
return value
get_format_option_gap(4950, 3)
比如get_format_option_gap(4950, 3)
就是在4950的行权价的基础上,获取向上3个行权价档位的期权,对应的行权价
这样就符合实际的情况了: