期权定价、计算Greeks、绘制盈亏图及行权分析,用于期权定价、希腊值计算和盈亏曲线可视化。
选择计算器是一项面向实际任务的技能,主要用于一个黑朔尔选项定价工具箱,它完全运行在终端;它是一个现货价格、打击、波动和到期时间——它返回理论价格。
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
一款完全在终端中运行的 Black-Scholes 期权定价工具包。只需输入标的现价(spot price)、行权价(strike)、波动率(volatility)和到期天数(time to expiration),即可返回理论价格、希腊值(Greeks)、隐含波动率(implied volatility)、盈亏表(payoff tables)等结果。
所有数学计算均通过 Python 3 内联完成,采用 Abramowitz & Stegun 对标准正态累积分布函数(CDF)的近似公式(无需依赖 scipy)。
priceoption-calculator price
计算欧式认购(call)或认沽(put)期权的 Black-Scholes 理论价格。
| 参数 | 说明 |
|---|---|
type |
call 或 put |
spot |
当前标的资产价格 |
strike |
行权价 |
rate |
无风险利率(年化,例如 0.05) |
vol |
隐含波动率(年化,例如 0.20) |
days |
距到期日剩余天数 |
greeksoption-calculator greeks
计算五个标准希腊值:Delta、Gamma、Theta(按日)、Vega(每 1% 波动率变动)、Rho(每 1% 利率变动)。参数与 price 命令一致。
ivoption-calculator iv
使用牛顿-拉夫逊(Newton-Raphson)迭代法,从已知市场报价反推隐含波动率。默认在 200 次迭代内收敛至精度 1e-8。
| 参数 | 说明 |
|---|---|
market_price |
观测到的期权权利金(premium) |
payoffoption-calculator payoff[range]
打印一张表格,展示在不同标的资产价格下、到期时的内在价值(intrinsic value)与净盈亏(net P/L)。默认价格范围为行权价上下各浮动 20 点。
compareoption-calculator compare
并排对比两个行权价对应的认购价格、认沽价格、Delta 和 Gamma。无风险利率固定为 5%。
chainoption-calculator chain
生成完整期权链(option chain),覆盖约标的现价 80% 至 120% 区间内的多个行权价,包含认购价、认沽价、认购 Delta、认沽 Delta 及 Gamma。每行标注该行权价相对于认购期权的实值(ITM)、平值(ATM)或虚值(OTM)状态。
pnloption-calculator pnl
计算已有头寸的盈亏(profit or loss)。默认每张合约对应 100 股标的资产;空头头寸请使用负的 qty 值。
breakevenoption-calculator breakeven
计算到期时买方盈亏平衡点(breakeven underlying price),并显示买方最大亏损额。
helpoption-calculator help
打印内置使用指南。
versionoption-calculator version
打印当前版本号。
# 计算一份 30 天期认购期权价格:现价=100,行权价=105,利率=5%,波动率=20%
$ option-calculator price call 100 105 0.05 0.20 30
Black-Scholes Price (call):
0.7677
# 计算一份 60 天期认沽期权的希腊值:现价=50,行权价=48,利率=3%,波动率=35%
$ option-calculator greeks put 50 48 0.03 0.35 60
Greeks (put) S=50 K=48 r=0.03 σ=0.35 T=60d
──────────────────────────────────
Delta: -0.312245
Gamma: 0.052040
Theta: -0.020369 (per day)
Vega: 0.074853 (per 1% vol)
Rho: -0.029259 (per 1% rate)
# 根据市场报价 3.50 反推隐含波动率
$ option-calculator iv call 100 105 0.05 30 3.50
Implied Volatility Solver (call) S=100 K=105 r=0.05 T=30d Market=3.50
──────────────────────────────────
Implied Volatility: 0.416566 (41.66%)
# 行权价=100、权利金=5.50 的认购期权盈亏表
$ option-calculator payoff call 100 5.50
Payoff Table (call) K=100 Premium=5.50
──────────────────────────────────
Underlying Intrinsic Net P/L
------------------------------------
80.00 0.00 -5.50
85.00 0.00 -5.50
...
100.00 0.00 -5.50 <-- strike
105.00 5.00 -0.50
106.00 6.00 +0.50
110.00 10.00 +4.50
120.00 20.00 +14.50
# 对比两个行权价
$ option-calculator compare 100 95 110 0.25 45
Strike Comparison S=100 K1=95 vs K2=110 σ=0.25 T=45d
──────────────────────────────────
Strike 95.0 Strike 110.0
------------------------------------------------
Call Price 7.0150 0.7353
Put Price 1.4312 10.0593
Call Delta +0.793714 +0.135799
Put Delta -0.206286 -0.864201
Gamma 0.035611 0.028346
Spot: 100.0 | Rate: 0.05 | Vol: 0.25 | Days: 45.0
# 生成期权链
$ option-calculator chain 100 0.25 45
Option Chain | Spot: 100.0 | Vol: 25% | Days: 45 | Rate: 0.05
Strike Call C.Delta Put P.Delta Gamma IV flag
--------------------------------------------------------------
90.00 10.7823 +0.9268 0.2279 -0.0732 0.012463 ITM
93.00 8.1952 +0.8639 0.6229 -0.1361 0.019087 ITM
100.00 3.6738 +0.5580 3.0651 -0.4420 0.032208 ATM
...
110.00 0.8916 +0.1623 10.2497 -0.8377 0.019938 OTM
...
110.00 0.8916 +0.1623 10.2497 -0.8377 0.019938 OTM
# 多头头寸盈亏:以 3.20 买入 5 张认购合约,当前市价为 4.80
$ option-calculator pnl call 3.20 4.80 5
Position P/L
──────────────────────────────────
Position: Long 5x call
Entry: 3.2000
Current: 4.8000
P/L per contract: +1.6000
Total P/L: +800.00 (+50.00%)
# 认沽期权盈亏平衡分析
$ option-calculator breakeven put 100 4.50
Breakeven Analysis
──────────────────────────────────
Put Breakeven: 95.5000
Strike (100.00) - Premium (4.5000)
Underlying must fall below 95.5000 to profit at expiration.
Max loss (buyer): 4.5000 per share
数据目录默认为 $HOME/.option-calculator/。其中保存一个 history.log 文件,用于记录每次执行的 price 命令及其结果,便于后续查阅。
可通过在调用本工具前设置环境变量 OPTION_CALCULATOR_DIR 来覆盖默认路径:
export OPTION_CALCULATOR_DIR="/tmp/my-options"
| 文件 | 用途 |
|---|---|
$HOME/.option-calculator/history.log |
仅追加模式(append-only)的日志文件,记录每次定价命令及结果 |
该目录将在首次运行时自动创建。
math 模块)Powered by BytesAgain | bytesagain.com | hello@bytesagain.com
相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 133.9万人学习
共49课时 | 82.5万人学习