AlphaFeed Blog

如何用 Python 分析股票收益率分布?(偏度、峰度与"尖峰厚尾")

分析与指标 · 代码验证于 2026-09-17

如何用 Python 分析股票收益率分布?(偏度、峰度与”尖峰厚尾”)

一句话回答: 用 AlphaFeed 取复权日线、算日收益率,再用 pandas 的 mean/std/skew/kurtosis 几行就能刻画收益率分布——真实数据会告诉你:股票日收益并不服从正态分布,而是”尖峰厚尾”(峰度远大于 0、极端涨跌远比正态频繁),这对风险管理至关重要。

为什么会有这个问题 / 传统做法的痛点

很多风险模型(如用标准差算 VaR、用正态假设定价)默认收益率服从正态分布。但实际股票收益:

要验证这些,需要干净的前复权日线和正确的统计口径。AlphaFeed 提供复权日线,统计用 pandas 即可。

分步骤解决(每步配可运行代码)

第 1 步:取复权日线并算日收益率

from alphafeed import AlphaFeed

af = AlphaFeed(api_key="your-api-key")  # 或 export ALPHAFEED_API_KEY 后 AlphaFeed()

df = af.klines.get("600519.SH", period="1d", count=500,
                   adjust="forward", to_dataframe=True).sort_values("trade_date").reset_index(drop=True)
ret = df["close"].pct_change().dropna()      # 日简单收益率

第 2 步:计算分布特征

def return_distribution(ret):
    return {"n": int(ret.shape[0]),
            "mean_%": round(float(ret.mean()) * 100, 3),
            "std_%": round(float(ret.std()) * 100, 2),
            "skew": round(float(ret.skew()), 2),
            "kurt_excess": round(float(ret.kurtosis()), 2),  # pandas 为超额峰度(正态=0)
            "min_%": round(float(ret.min()) * 100, 2),
            "max_%": round(float(ret.max()) * 100, 2)}

print(return_distribution(ret))

分布特征含义:

指标含义正态基准
mean平均日收益—
std日收益标准差(波动率)—
skew(偏度)分布左右不对称程度0(对称)
kurt_excess(超额峰度)尖峰厚尾程度0(pandas 已减 3)
min/max极端单日涨跌—

第 3 步:多标的对比

for s in ["600519.SH", "000001.SZ"]:
    d = af.klines.get(s, period="1d", count=500, adjust="forward",
                      to_dataframe=True).sort_values("trade_date")
    print(s, return_distribution(d["close"].pct_change().dropna()))

实测(约 500 个交易日):

标的日均收益日波动偏度超额峰度单日最大跌/涨
贵州茅台 600519.SH0.004%1.56%1.528.78−7.42% / +9.29%
平安银行 000001.SZ0.051%1.26%−0.0710.03−9.32% / +6.92%

结论很清楚:两只票的超额峰度都远大于 0(8.78、10.03),说明明显尖峰厚尾——极端涨跌远比正态分布预测的频繁。用正态假设会严重低估尾部风险。

关键坑与注意事项

常见问题(FAQ)

Q:超额峰度大于 0 意味着什么? A:意味着分布比正态”更尖、尾更厚”——大部分日子波动很小,但极端大涨大跌的概率明显高于正态预测,即”厚尾”。

Q:偏度正负代表什么? A:偏度>0(右偏)表示大涨的极端值更突出,偏度<0(左偏)表示大跌更极端。本例茅台右偏、平安近似对称。

Q:怎么直观看分布? A:用直方图 + 正态曲线叠加(matplotlib 画 ret 的 hist,叠加同均值方差的正态密度),或用 QQ 图,能直观看到厚尾偏离。

Q:需要付费吗? A:单只标的 500 根日线在免费额度内即可试;多标的/长历史批量需 Starter 及以上,详见 AlphaFeed 定价页。

小结

分析收益率分布的核心结论是:股票收益不是正态分布,而是尖峰厚尾、常带偏度。这意味着基于正态的风险度量会低估极端风险。AlphaFeed 提供干净的前复权日线,让你几行算出均值/波动/偏度/峰度看清真相——记得确认峰度口径、注意极端值敏感,别再默认正态。

相关链接:


免责声明:本文仅为技术与数据接口使用示例,代码与策略仅供学习研究,不构成投资建议。市场有风险,历史数据不代表未来表现。