整理 course 目录:原课程归入同名文件夹,新增学习资料/动手练习分类

This commit is contained in:
2026-09-28 11:52:44 +08:00
parent 5629d57ea7
commit cb211da473
51 changed files with 398 additions and 32 deletions
+26
View File
@@ -0,0 +1,26 @@
"""01 | pandas 热身:收益率、波动、净值曲线
目标:搞懂量化里最基础的三个东西——收益、风险、净值。
"""
import pandas as pd, numpy as np
import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt
from lib_quant import get_daily, add_returns, net_value, stats
df = get_daily("600519", "20200101", "20241231") # 贵州茅台
df = add_returns(df)
nv = net_value(df["ret"])
print("==", "600519 贵州茅台", "==")
print(df[["日期", "收盘", "ret"]].tail(3).to_string(index=False))
print("绩效:", stats(df["ret"]))
plt.figure(figsize=(9, 4))
plt.plot(df["日期"], nv)
plt.title("Net value (buy & hold)")
plt.xlabel("date"); plt.ylabel("nav")
plt.tight_layout(); plt.savefig("../data/01_net_value.png", dpi=110)
print("图已存 data/01_net_value.png")
# 思考题:
# 1) 为什么不看"价格涨了多少",而要看"收益率"和"净值"?
# 2) 日收益率为 0 的日子占多少?(df['ret'].eq(0).mean())