社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

别再纸上谈兵!3 个真实可跑的 Python 量化策略

数据科学实战 • 3 月前 • 141 次点击  


 

 用 Python 揭秘均值回归策略:你的收益从何而来?



 

 

 

 

 

 

 

 

2026年重磅升级已全面落地!欢迎加入专注财经数据与量化投研的【数据科学实战】知识星球!您将获取持续更新的《财经数据宝典》与《量化投研宝典》,双典协同提供系统化指引;星球内含 500 篇以上独有高质量文章,深度覆盖策略开发、因子分析、风险管理等核心领域,内容基本每日更新;同步推出的「量化因子专题教程」系列(含完整可运行代码与实战案例),系统详解因子构建、回测与优化全流程,并实现日更迭代。我们持续扩充独家内容资源,全方位赋能您的投研效率与专业成长。无论您是量化新手还是资深研究者,这里都是助您少走弯路、事半功倍的理想伙伴,携手共探数据驱动的投资未来!

引言

很多量化策略文章看起来很唬人:精美的收益曲线、挑选过的股票代码、看似完美的回测结果……但只要你真的把代码跑一遍,就会发现数据来源不清、时间点错乱、根本没法实盘。

这篇文章整理自 Quant Galore 的最新分享,带来 3 个真正可以跑起来的量化策略,全部使用 Python 实现,数据源自 Alphanume API。每个信号都是 point-in-time (时间点对齐)的,历史数据和实盘看到的完全一致,不存在未来函数。

对正在学 Python 的朋友来说,这是一份难得的实战素材:既能练习 API 调用和数据处理,又能接触真实的量化交易逻辑。


策略一:横截面动量策略(Quant Galore 动量指数)

动量因子是股票市场最古老的因子之一。很多新手把动量理解成「最近涨得多的股票」,但横截面动量(Cross-Sectional Momentum)其实是一个相对排名的概念。

你不关心一只股票的绝对涨幅,而是关心它在整个流动性股票池中的排名。

为什么有效?

资金流动具有黏性。上个月买入龙头股的基金,这个月大概率还在买;与热门主题(比如半导体、存储芯片)绑定的股票,会在主题持续期内被反复买入。

实操代码

import requests

# Alphanume 动量指数接口

url = "https://api.alphanume.com/v1/quant-galore-momentum-index"
params = {
    "api_key"
: "your_key_here"  # 替换为你的 API Key
}

r = requests.get(url, params=params)
data = r.json()["data"]

# 只取最近一次再平衡的数据

latest_date = max(row["date"] for row in data)
latest_basket = [row for row in data if row["date"] == latest_date]

# 按排名排序

latest_basket.sort(key=lambda x: x["rank"])

# 打印最新 10 只成分股

for
 row in latest_basket:
    print
(f"日期: {row['date']} | 排名 {row['rank']}:  {row['ticker']}")

案例效果

该策略每月初在首个交易日再平衡,精选 10 只股票等权买入。最近 12 个月的表现:

  • • 2026 年 4 月: +51%
  • • 2025 年 9 月: +34%
  • • 2025 年 5 月: +44%
  • • 也有回撤月份,比如 2025 年 11 月: -18%

数据最早可追溯到 2017 年,是一个典型的系统化策略,完全无主观判断。


策略二:SPX 0-DTE 隐含区间卖方策略

同日到期的 SPX (标普 500 指数)期权,是美国市场最大的散户波动率交易流。做市商不是猜指数会收在哪里,而是根据期权隐含分布反推出一个区间

核心思路

Alphanume 提供的 0-DTE Strike Band 数据集,每天给出 SPX 当天预期运行的上下轨。最常见的交易结构是铁鹰式价差(Iron Condor):

  1. 1. 在上轨之上卖出看涨价差
  2. 2. 在下轨之下卖出看跌价差
  3. 3. 收取权利金,期望指数在区间内收盘

历史胜率约 87.86% (521 胜 / 72 负,共 593 个交易日)。

加入风险过滤器

但卖方不能每天闭眼卖,必须避开大波动日。这时需要加上 Risk Regime (风险状态)过滤器:返回 1 表示风险关闭日,应该空仓观望;返回 0 则可以出手。

实操代码

import requests
from
 datetime import datetime

API_KEY = "your_key_here"
today = datetime.now().strftime("%Y-%m-%d")

# 获取今日 SPX 隐含区间

band = requests.get(
    "https://api.alphanume.com/v1/spx-0dte-strike-band"
,
    params={"api_key": API_KEY, "date": today}
).json()["data"]

# 获取今日风险状态分类

regime = requests.get(
    "https://api.alphanume.com/v1/sp500-risk-regime"
,
    params={"api_key": API_KEY, "date": today}
).json()["data"]

if
 not band or not regime:
    print
(f"请求日期: {today}")
    print
("当前日期暂无数据发布(免费层可能有延迟)")
else
:
    b = band[0]
    r = regime[0]

    print
(f"请求日期: {today}")
    print
(f"区间数据日期: {b['date']}")
    print
(f"风险状态日期: {r['date']}")
    print
()

    # 核心过滤逻辑:风险关闭日不交易

    if
 r["risk_regime"] == 1:
        print
(f"{r['date']} 为风险关闭日,今日不交易")
    else
:
        print
(f"卖出策略:下方卖出看跌 {b['lower_strike']},"
              f"上方卖出看涨  {b['upper_strike']}"
)

进阶玩法:做多波动率

如果你想反向操作,Alphanume 还提供 Next-Day Movers 接口,用于筛选次日预期大幅波动的个股,适合跨式、宽跨式等 Long Gamma 策略:

import requests
from
 datetime import datetime

API_KEY = "your_key_here"
today = datetime.now().strftime("%Y-%m-%d")

# 获取次日预期波动较大的股票列表

movers = requests.get(
    "https://api.alphanume.com/v1/next-day-movers"
,
    params={"api_key": API_KEY}
).json()["data"]

# 最新一条数据的 return 字段为 None(尚未结算)

candidates = [row for row in movers if row["return"] is None]

if
 not candidates:
    print
(f"请求日期: {today}")
    print
("暂无待结算标的(免费层可能有延迟)")
else
:
    print
(f"请求日期: {today}")
    print
(f"候选日期: {candidates[0]['date']}")
    print
()
    print
("次日预期波动较大的股票列表:")
    for
 row in candidates:
        print
(f"  {row['ticker']}")

这其实是一个迷你版的离散度交易(Dispersion Trade):指数卖区间,个股买波动。


策略三:S-1 增发稀释做空策略

美股小盘股提交 S-1 注册声明,意味着公司即将发行新股,这会稀释现有股东的权益。一旦老股东反应过来,就会抛售,股价承压。

为什么这个策略有效?

  • • 机构一般不碰市值低于 5000 万美元的股票(借券难、容量小)
  • • 散户普遍不盯 SEC 的文件流
  • • 当新闻传开时,股价已经跌完了

这是一个典型的基础设施红利型策略——不是信息不公开,而是处理它的工程成本让大多数人望而却步。

实操代码

import requests
from
 datetime import datetime

API_KEY = "your_key_here"
today = datetime.now().strftime("%Y-%m-%d")

# 获取今日的 S-1 增发申报数据

filings = requests.get(
    "https://api.alphanume.com/v1/dilution"
,
    params={"api_key": API_KEY, "date": today}
).json()["data"]

# 筛选符合条件的候选标的:

# 1. 确认为稀释性增发

# 2. 非股东转售

# 3. 市值小于 5000 万美元(稀释压力最大的区间)

candidates = [
    f  for f in filings
    if
 f["dilutive"] == 1
    and
 f["resale"] == 0
    and
 f["market_cap_at_filing"] is not None
    and
 f["market_cap_at_filing"] < 50_000_000
]

if
 not candidates:
    print
(f"请求日期: {today}")
    print
("今日无符合条件的申报(免费层可能有延迟)")
else
:
    print
(f"请求日期: {today}")
    print
(f"申报日期: {candidates[0]['date']}")
    print
()
    print
(f"{'代码':<8} {'稀释':<10} {'市值':>15}")
    for
 c in candidates:
        print
(f"{c['ticker']:<8} {c['dilutive']:<10} "
              f"${c['market_cap_at_filing']:>15,}"
)

案例效果

根据近期数据:

  • • ELOX (5 月 7 日标记):后续跌幅 -98.4%
  • • AKTX (5 月 8 日标记):后续跌幅 -47.8%
  • • BAFN (4 月 30 日标记):后续跌幅 -22.1%

交易逻辑很简单:标记当日收盘后建仓做空,T+1 开盘卖出,在设定的窗口内平仓即可。


总结

3 个策略,4 个 API 接口,没有一个需要预测模型

这正是本文最想传递的核心观点:

真正的 Alpha 来自数据和时间点,而不是预测能力。

  • • 横截面动量有效,是因为再平衡机械化执行
  • • 0-DTE 区间策略有效,是因为风险过滤器剔除了坏日子
  • • 增发做空有效,是因为 SEC 申报流是结构化信息,而大多数人不看

这些机会并非隐藏在暗处,只是运营上的不便利让大多数人懒得做。而这,恰恰就是 Edge 的所在。

对于学 Python 的朋友,建议你:

  1. 1. 从最简单的 requests 调用开始,动手敲一遍每个脚本
  2. 2. 把数据落地到本地(比如 SQLite 或 CSV),搭建自己的回测框架
  3. 3. 不要盲目相信任何策略,先用小仓位验证,再考虑加杠杆

记住:代码能跑起来,只是第 1 步;能稳定赚钱,才是真本事。


参考文章

加入专注于财经数据与量化投研的知识星球【数据科学实战】,获取本文完整研究解析、代码实现细节。

财经数据与量化投研知识社区

2026年全面升级已落地!【数据科学实战】知识星球核心权益如下:

  1. 1. 双典系统赋能:获赠《财经数据宝典》与《量化投研宝典》完整文档,凝练多年实战经验,构建系统化知识框架;
  2. 2. 量化因子日更教程(2026重磅新增):每日更新「量化因子专题教程」,配套完整可运行代码与实战案例,深度拆解因子构建、回测与优化全流程;
  3. 3. 量化文章专题教程库:500+篇星球独有高质量教程式文章,系统覆盖策略开发、因子研究、风险管理等核心领域,内容基本每日更新,并配套精选学习资料与实战参考;
  4. 4. 量化投研实战课程:赠送《AKQuant-入门及实战》《PyBroker-入门及实战》视频课程,手把手教学,快速掌握量化策略开发技能;
  5. 5. 财经数据支持:定期更新国内外财经数据,为策略研发提供精准、可靠的数据基础;
  6. 6. 顶尖学者与行业专家分享:年度邀请学术界博士与业界资深专家开展前沿论文精讲与实战案例分享,不少于4场,直击研究前沿与产业实践;
    专家直连答疑:与核心开发者及领域专家实时互动,高效解决投研实战难题;
  7. 7. 专业社群与专属福利:加入高质量交流社群,获取课程折扣及更多独家资源。

星球已沉淀丰富内容生态——涵盖量化文章专题教程库、因子日更系列、高频数据集、PyBroker实战课程、专家深度分享与实时答疑服务。无论您是初探量化的学习者,还是深耕领域的从业者,这里都是助您少走弯路、高效成长的理想平台。诚邀加入,共探数据驱动的投资未来!

 

好文推荐

1. 用 Python 打造股票预测系统:Transformer 模型教程(一)

2. 用 Python 打造股票预测系统:Transformer 模型教程(二)

3. 用 Python 打造股票预测系统:Transformer 模型教程(三)

4. 用 Python 打造股票预测系统:Transformer 模型教程(完结)

5. 揭秘隐马尔可夫模型:因子投资的制胜武器

6. YOLO 也能预测股市涨跌?计算机视觉在股票市场预测中的应用

7. 金融 AI 助手:FinGPT 让你轻松掌握市场分析

8. 量化交易秘籍:为什么专业交易员都在用对数收益率?

9. Python 量化投资利器:Ridge、Lasso 和 Elastic Net 回归详解

10. 掌握金融波动率模型:完整 Python 实现指南

好书推荐



Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/196540