惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Vercel News
Vercel News
博客园 - 司徒正美
D
DataBreaches.Net
J
Java Code Geeks
月光博客
月光博客
MyScale Blog
MyScale Blog
博客园 - Franky
Jina AI
Jina AI
量子位
博客园 - 聂微东
博客园 - 叶小钗
M
MIT News - Artificial intelligence
N
Netflix TechBlog - Medium
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
S
SegmentFault 最新的问题
宝玉的分享
宝玉的分享
T
Tailwind CSS Blog
博客园 - 【当耐特】
Blog — PlanetScale
Blog — PlanetScale
I
InfoQ
小众软件
小众软件
B
Blog RSS Feed
Hugging Face - Blog
Hugging Face - Blog
博客园_首页

分享发现

快连停止了中国大陆地区的业务运营 推荐 2 个好玩的在线游戏站 Claude code 的 Designs 和 Routines 居然是独立额度,我的 Claude Pro 订阅又升值了 偶然看到一篇文章《文化已死:当绝大多数人听的音乐,读的书都来自 10 年前》,给大家推荐一下,非常值得一看 66 个入狱教程 国家超算互联网平台提供 Coding Plan(20 元/100 元两档) supergeo.info 送兑换码 V2EX › 登录 古风提示词 Bright Data 代理和 Browser API 90 天 6 折,优惠码 BESTPROXY60 飞机上 Starlink 测速 zig 写的 100kb 的 wasm 可以 http 读写任意 git 仓库 GPT Image 2 韩文 prompt 实测:不是“能看懂”,而是“能还原” 网页端 GPT-5.5 Thinking 体感好快啊,这速度第一反应还以为是降智到 4o-mini 了 新开中转站,有 GPT 包月可以薅,分享给有缘人 google 搜索的 AI 模式(自动右侧弹出)是个谜啊? 小红书下场做 app 工厂 做了一个 GEO 工具平台,想听听大家对 AI 搜索优化的看法 XChat 正式上架 App Store 了 大 F 彻底沦为历史了,公司宣布停业。 记一次 QQ 被盗事件记录 codex 5.5 强的离谱 用 Claude 做了视频“关于 ping0.cc 静默上传用户真实 IP” AI 辅助英语学习,无推广,讨论一下 gpt5.5 写完界面,还会进行截图查看效果 DeepSeek4 的数据没清理好啊,估计有得折腾 做了一个自动识别云朵的网站 claude 太抠门了 继上次讨论自媒体问题后,我决定下架流量最大的视频 DeepSeek V4 上线了!之前难产真是适配昇腾?
用回测筛选因子的一点经验分享
matters · 2026-04-16 · via 分享发现

我在做量化交易,也自己做因子回测,前前后后试过不少因子,真正能长期用的,其实不多。刚入门的时候很简单:

  • 看别人说动量有效 → 做动量

  • 看研报说低波动好 → 加低波动

结果就是:

回测看着还行,一实盘就不稳定。

后来才明白,因子不是“看起来对”,而是“数据上成立”。

我现在的做法:

流程一直没变:

  1. 拉数据

  2. 算因子

  3. 分组

  4. 看未来收益

  5. 算 IC

方法很朴素,甚至有点老,但一直够用。

数据

import requests

import pandas as pd

def get\_kline(symbol):

    url = "https://api.alltick.co/v1/market/kline"

    params = {

        "symbol": symbol,

        "interval": "1d",

        "apikey": "your\_api\_key"

    }

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

    return pd.DataFrame(data)

最简单的因子:动量

def momentum(df, n=20):

    df\["ret"\] = df\["close"\].pct\_change(n)

    return df

这个东西现在看挺基础的,但不影响用。

回测:分组 + IC

def backtest(df):

    df = df.dropna()

    df\["rank"\] = pd.qcut(df\["ret"\], 5, labels=False)

    return df.groupby("rank")\["close"\].pct\_change().shift(-1).mean()

def ic(df):

    df\["fut"\] = df\["close"\].pct\_change().shift(-1)

    return df\["ret"\].corr(df\["fut"\])

重点就两个:

  • 高分组是不是更赚钱

  • IC 是否稳定

一些坑~~~

1. 未来函数:这个很致命,看起来没问题,其实已经作弊了。

2. 过拟合:调参数调到“完美”,换一段时间直接失效。

3. 因子失效:长期是可能有效的,但短期完全不一定。我也经历过刚上线就连续回撤的阶段。如果你正好在因子失效期开始用,很容易直接放弃。