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

推荐订阅源

罗磊的独立博客
The GitHub Blog
The GitHub Blog
Hugging Face - Blog
Hugging Face - Blog
博客园 - 聂微东
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
IT之家
IT之家
小众软件
小众软件
博客园_首页
G
Google Developers Blog
Apple Machine Learning Research
Apple Machine Learning Research
MyScale Blog
MyScale Blog
Engineering at Meta
Engineering at Meta
Jina AI
Jina AI
酷 壳 – CoolShell
酷 壳 – CoolShell
人人都是产品经理
人人都是产品经理
B
Blog RSS Feed
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
D
Docker
B
Blog
雷峰网
雷峰网
WordPress大学
WordPress大学
Stack Overflow Blog
Stack Overflow Blog
宝玉的分享
宝玉的分享

V2EX - 技术

Local-first 软件收录站 从 X 上搬运来的白嫖 GPT Plus 教程 阿里云百炼 Coding Plan Pro 套餐 新增当日 token 限制 大家的 Claude 弹了 kyc 嘛 现在 Google 的 Gemini 和 AI 模式降智的厉害啊 用的 TAG 家的 T, ip 跳变是否影响使用 claude 同一 apple 账户能给不同 claude 账号充值么 做了个 Go 的 MCP Server 框架,一行代码把 Gin API 接入 AI 请教各位,想回归技术,如何系统学习 Agent? OpenAI GPT-IMAGE-2 提示词合集 你是说, claude opus4.6 写代码的能力不如 gpt5.4? 关于智谱 Max 套餐要不要升级续费呢? App → CLI → App ? Github 账号被 404 了,现在没法恢复,求各位大佬指点 cursor 的次数套餐以后应该都用不了新模型了 openrouter 使用国外模型 买了咸鱼低价 Gemini pro,账号差点被盗。突然发现国内诈骗成本为零 Gemini 手机版客户端登陆总是在此国家/地区无法使用 gemini 感觉 gpt 这些低价渠道要爆了 claude code 和 codex 在 vibe coding 还有质的区别吗? 阿里 Coding Plan 一天三变, Lite 版本到期不能续费了 RAG 难以让人满意啊 2026 年了,这个世界还存在互联网精神🥹 两个账号阵亡,尼区 Claude Pro 订阅 分享下最近低价 GPT Codex 的来源(源头) OpenAI 发布 Codex 重大更新:支持自动操作电脑与长期任务自动化 使用 claude 从 0 开始开发一个校友会系统可行吗 同一个 appleid 可以给不同 chatGPT 账号订阅 plus 吗? 自动驾驶项目开发建议 终于, 降智几天之后, opus4.7 出来了
记录从交易所爬取技术指标的过程
particlec · 2026-05-24 · via V2EX - 技术

最近在优化一个量化策略,需要用到交易所图表里的一些指标,比如 smc

1 、官方 api

一开始我想得很简单:我联系了该交易所的工作人员询问技术指标的 api 。

他说交易指标是没有单独 api 的,建议我拉取 k 线自己计算

2 、自己算

于是我打算自己算,于是找到了 py 相关的库 smartmoneyconcepts ,但是我发现自己拉取 k 线算的和交易所有很大的出入,完全不一样,根本用不了啊

2 、网站爬

于是我决定还是从交易所网页上爬取

我发现点击交易指标时候,是没有新的接口调用的,说明是前端渲染的

实际就是 前端渲染的 canvas ,那就有很有可能获取到 js

最终发现了 F12 → Sources → Page ,通过 search 搜索到了对应算法 78686-fa6ec3f3500b6300.js ,通过 gpt 把这个 6000 多行的算法转化成了 py ,以为这样就结束了,但是最坑的来了!

3 、坑

一样的算法但是计算指标算出来就是不一样!

算出结果还是和交易所的不吻合,然后我打印发现交易所给的公开 k 线 api 和网页上实时的 api 相同时间数据不一样(有比如)!!!

如果你用交易所公开的 api 永远算不出相同的指标!

下面是细节,相同的时间戳 k 线值不一样~!

公开 K 线接口返回的是: Open: 0.5316 High: 0.5354 Low : 0.5251 Close: 0.5274

但网页图表接口返回的是:

Open: 0.5311 High: 0.5349 Low : 0.5263 Close: 0.5316

然后我把公开接口换成了内部接口,我改成模拟网页请求,requests.Session(),这样算法一样,数据一样总一样了吧

但问题还没完全结束。

因为 SMC 这种指标不是只看最后几根 K 线,它还会记住前面的结构。 比如前面哪里形成了高点、低点,哪里有 OB ,哪些 OB 已经失效,当前 K 线有没有临时结构。这些都是隐藏的规则

所以我又发现一个细节:网页如果只加载 limit=1000 根 K 线,那 Python 也要按 1000 根去算。 如果我自己多拉 60 天、90 天,历史起点不一样,后面的结构也会跟网页不一样。

后面又对齐了几个小隐藏的规则,比如:

  1. 网页用 limit=1000 ,Python 也用 1000 根
  2. OB 的 ATR 处理要和网页一致
  3. BOS / CHoCH 在网页上显示的是一条结构线,不是单根 K 线

最后基本对齐了:

K 线对齐 Order Block 对齐 BOS / CHoCH 基本对齐

也就是说,最后 Python 算出来的 SMC ,已经和交易所图上的 SMC 完全一致了。哇!

这次最大的收获是:

以后这个交易所网页上的基本所有的技术指标,就算官方不给 API ,也可以用类似方法,还原出来。