Python 期权计算器项目教程
1. 项目的目录结构及介绍
python-option-calculator/
├── .gitignore
├── LICENSE
├── README.md
├── bsm.py
├── example_greeks.py
├── example_plot.py
├── plot.py
├── pricing.py
└── searching.py
- .gitignore: Git 忽略文件配置。
- LICENSE: 项目许可证文件。
- README.md: 项目说明文档。
- bsm.py: 实现 Black-Scholes 模型的核心文件。
- example_greeks.py: 计算期权的希腊字母(Delta, Theta, Vega, Gamma)的示例文件。
- example_plot.py: 使用 Matplotlib 可视化期权头寸的示例文件。
- plot.py: 绘图功能文件。
- pricing.py: 期权定价功能文件。
- searching.py: 搜索功能文件。
2. 项目的启动文件介绍
项目的启动文件是 example_greeks.py
和 example_plot.py
。
- example_greeks.py: 该文件用于计算期权的希腊字母(Delta, Theta, Vega, Gamma)。你可以通过运行该文件来获取期权的希腊字母值。
# example_greeks.py 示例代码
from bsm import BlackScholesModel
# 初始化 Black-Scholes 模型
bsm = BlackScholesModel(s0=100, k=120, t=45, sigma=0.01, r=0.05, dv=0)
# 计算希腊字母
delta = bsm.delta()
theta = bsm.theta()
vega = bsm.vega()
gamma = bsm.gamma()
print(f"Delta: {delta}")
print(f"Theta: {theta}")
print(f"Vega: {vega}")
print(f"Gamma: {gamma}")
- example_plot.py: 该文件用于可视化期权头寸。你可以通过运行该文件来生成期权头寸的图表。
# example_plot.py 示例代码
import matplotlib.pyplot as plt
from bsm import BlackScholesModel
# 初始化 Black-Scholes 模型
bsm = BlackScholesModel(s0=100, k=120, t=45, sigma=0.01, r=0.05, dv=0)
# 生成图表
prices = bsm.price_range(min_price=80, max_price=120, step=1)
plt.plot(prices)
plt.xlabel("Stock Price")
plt.ylabel("Option Price")
plt.title("Option Price vs. Stock Price")
plt.show()
3. 项目的配置文件介绍
项目中没有明确的配置文件,所有的参数设置都在代码中直接进行。例如,在 example_greeks.py
和 example_plot.py
中,你可以看到如何设置期权的参数(如股票价格 s0
、行权价 k
、到期时间 t
、波动率 sigma
、无风险利率 r
和股息率 dv
)。
# 示例参数设置
bsm = BlackScholesModel(s0=100, k=120, t=45, sigma=0.01, r=0.05, dv=0)
这些参数可以根据你的具体需求进行调整。