全部
文章&策略
学习干货
问答
官方
用户头像晟者为王2014
2023-04-12 发布
研究了两年,终于研究出来一个无敌策略,不惧牛熊,各种行情都是稳定盈利!! 有感兴趣的朋友欢迎留言,短周期策略。持仓数量十只
浏览22835
评论459
收藏115
用户头像Jacktick
2026-10-07 发布
明天开盘。10月8日,A股恢复交易。你手里的A股仓位,价格停在9月30日;但如果你同时持有港股、美股、QDII,这7天它们一直在动——港股10月2日就开盘了,美股全程正常交易。 这篇文章要说的不是“A股休市了”。有仓位的人都知道A股休市。它要说的是:同一段时间里,你的三个市场仓位在动,你的信息却只跟得上一个。 核心概念是信息时态差——港股和美股的信息是连续的,每天有K线;A股的信息是断片的,9月30日之后,下一个价格要等到10月8日。这个差异决定了:8号开盘,你的第一单判断,是建立在10天连续观察上,还是一句“港股假期跌了”的摘要上。 全文分五部分,最后落到一段可直接运行的Python代码、一份上线前检查清单,四个FAQ。 一、信息时态差:三个市场不在同一个信息状态里 本章核心:同一段时间,港股和美股的信息是连续的,A股的信息是断片的。 先看这10天里三个市场的实际状态: 日期 A股 港股(HSI) 美股(SPX) 9/30 收3842.195 正常交易 正常交易 10/1 休市 休市 SPX 7666.45 10/2 休市 23972.29 SPX 7722.72 10/3-10/4 休市 周末 周末 10/5 休市 24040.34 SPX 7773.95 10/6-10/7 休市 交易日 交易日 10/8 恢复交易 正常交易 正常交易 这张表的正确读法是:A股的空白格,不是市场的空白格。 我实测时的边界:截至10月6日调用,港股日线可见10月2日和10月5日两根,美股日线可见10月1日、2日、5日三根。10月6日和7日的数据要等当天收盘后产生。 为什么会有这个差异? 休市是交易所的安排。港股和美股在这10天里正常交易,因为它们的交易日历和A股不同。港股10月1日休市,10月2日就恢复了;美股全程正常交易。 这个差异对你意味着什么? 你看到的是结果,不是过程。 10月2日港股开盘,恒生指数当天开24099.73,收23972.29,盘中最低下探23865.33。持有港股仓位的人看到了它从开盘到收盘的完整演化;只有A股账户的人,8号开盘看到的是“港股假期跌了”这个结论——他不知道开盘怎么开的,盘中跌到哪里,收盘前有没有回拉。 过程信息决定判断深度。同样面对“港股跌了”这个结果,看到过程的人可以判断:这是开盘一次性释放,还是全天持续走弱?情绪冲击和逻辑变化,是两种完全不同的应对。 一句话:休市的是A股,不是市场。你的信息断没断,取决于你有没有接入其他市场的连续数据。 二、港股先行:唯一连续交易的中国资产相关市场 本章核心:港股不预测A股,但它是这10天里全球资金对中国资产态度变化的唯一连续切片。 恒生指数10月2日:开24099.73,最高24099.73,最低23865.33,收23972.29,成交量7,238,334,024。 个股层面,腾讯控股10月2日:开422,最高425,最低419.8,收421.2,成交量19,108,045。 这里有一个常见误区。 700.HK当天开收盘只差0.8港元,约-0.19%。单看这一只股票,不能证明“港股重挫”。要谈市场级别,得用指数数据,不能用个股样本。我在整理素材时看到过用个股涨跌幅来证明“港股重挫”的说法,这会被懂行的人一眼看穿。 为什么港股是“先行参照”? 港股不预测A股。但它在这10天里是唯一连续交易的中国资产相关市场。全球资金对中国资产的态度变化,在港股上每天都有价格反应。A股投资者8号开盘前,港股已经运行了多个交易日,给出了一个连续切片。 这个切片的价值在哪? 不在于“港股跌了所以A股会跌”——那是预测。它的价值在于:你可以观察全球资金在假期期间对中国资产的态度是怎么变化的,而不是等到8号开盘才知道。 南向资金通道在假期暂停,港股缺少内资承接,外围利空的冲击会被放大。这个背景信息,在A股开盘前就是可观察的。 对读者意味着什么? 如果你持有港股仓位,这10天你不是“没有信息”,你是“没有去看”。港股的开盘、盘中、收盘,每一天都在给你信号——只是这些信号不在你的A股行情软件里。 三、政策信号:假期发出,但你没有价格来给它定价 本章核心:政策可以谈方向,但“有信号”和“被定价”是两件事。假期里只有“信号”,没有“定价”。 假期前后释放的政策信号,以下只写有官方来源的: 10月1日,财政部部长蓝佛安在《求是》发表《精准有效实施更加积极的财政政策》,提出加快支出进度、用好超长期特别国债和地方政府专项债等资金。 9月30日,央行发布《中国人民银行调整完善若干货币政策工具》公告。 9月28日,央行2026年第三季度货币政策委员会例会提出保持适度宽松的货币政策。 这里有一个关键区别。 这些信号有一个共同点:它们在假期前后发出,但A股没有价格来给它们定价。8号开盘,市场才第一次有机会对这些信号做出反应。 什么是“定价”? 定价不是“看到消息”,是“用真金白银交易出一个价格”。真正的定价需要交易,交易需要连续市场。假期里只有“信号”,没有“定价”。你看到的“政策利好”分析,是别人的解读,不是市场的定价结果。 这个区别对你意味着什么? 如果你在8号开盘前就依据“政策信号”做了判断,你的判断建立在解读上,不是定价上。8号开盘后,市场会给出它自己的定价——这个定价可能和解读一致,也可能不一致。 一句话:政策信号可以谈方向,但不能拿它当结论。真正的结论,要等市场开盘后自己给出。 四、未来60天:几件大事在排队,关键是“用什么跟踪它们” 本章核心:知道有这些事,只是入场;知道用什么去跟踪它们,才是决策起点。 时间 事件 状态 10月27-28日 美联储FOMC会议 市场对加息路径有分歧 10月(待公布) 二十届五中全会 据研报称10月召开,具体日期待官方公布 11月17-18日 APEC工商领导人峰会(深圳) 已确认 11月18-19日 APEC领导人非正式会议(深圳) 已确认 四季度 Q3经济数据、政治局会议 待观察 美联储这条,据华泰证券及相关媒体转述,华泰认为美联储难以在10月连续加息,基准情形下12月可能再次加息。这是机构观点,不是事实判断。FOMC的会议日期是官方日历确认的,但会上做什么决定,没有人能提前知道。 五中全会这条,我查到的信息只到“据研报称10月需重点跟踪”,具体召开时间和议题待官方公布。 APEC两条是确认的。影响是中长期和结构性的,不是8号开盘的直接变量。 这张表的意义在哪? 不在于“知道有这些事”,在于你知道这些事之后,用什么去跟踪它们。新闻会告诉你“美联储开了会”,行情会告诉你“美债收益率在会议前后怎么走”。前者是结果,后者是过程。 为什么跟踪方式比事件本身更重要? 同一个事件,不同的跟踪方式,得到的判断深度不同。你看到“美联储开会”的时候,行情已经走完了一轮。你看到“美债收益率在会议前一周开始上行”的时候,你在过程中。 对读者意味着什么? 未来60天,你不缺新闻。你缺的是“用什么数据去跟踪这些新闻”。这张表给你的不是信息,是一个跟踪框架。 五、三市场行情跟踪:检查时间戳,而不是只看价格 本章核心:休市期间接口可能继续返回最近快照,所以要检查行情时间,而不能只看有没有价格。 10月6日下午,我调用行情接口查了两只A股标的。600519.SH和000001.SZ都返回了价格——但timestamp都停留在9月30日15:30。 600519.SH的last_price是1258.62,timestamp是2026-09-30 15:30:28。000001.SZ的last_price是11.57,timestamp是2026-09-30 15:30:00.001。 价格有值,行情时间却是6天前的。 这不是接口故障,这是休市期间数据的真实状态。你的A股数据在休市期间不是“没有”,是“停在了9月30日”。 如果你只看价格,你会以为这是当前价格。如果你检查timestamp,你才知道这是6天前的快照。很多数据误用,就是从“只看价格不看时间”开始的。 同一次调用(10月6日14:23 CST),三个市场的timestamp状态完全不同:600519.SH滞后约6天,700.HK几乎是实时的,AAPL.US滞后约1天(美股处于盘前)。跨市场比较时,如果不检查timestamp,你会把三个不同时态的数据当成同一个截面的数据来用。 三市场ticker共有13个核心字段:symbol、name、type、last_price、open、prev_close、volume_24h、quote_volume_24h、high_24h、low_24h、price_change_24h、price_change_percent_24h、timestamp。但A股多category字段,美股多pre_market_quote、post_market_quote、overnight_quote,港股本次只有公共字段。一套解析骨架,不等于一份完全相同的数据结构。 可带走的Python代码 以下代码骨架用来验证一个问题:你拿到的价格,是当前的,还是过期的? import time import requests from datetime import datetime API_KEY = "YOUR_API_KEY" BASE_URL = "https://api.tickdb.ai/v1" def check_freshness(symbols, market_type="stock"): """检查多个标的价格的时间戳新鲜度。 注意:字段路径以实际返回为准,此处只展示核心逻辑。 """ resp = requests.get( f"{BASE_URL}/market/ticker", params={"symbols": ",".join(symbols), "type": market_type}, headers={"X-API-Key": API_KEY}, timeout=10, ) payload = resp.json() items = payload.get("data") or payload.get("results") or [] now_ms = int(time.time() * 1000) print(f"{'symbol':12s} {'last_price':>12s} {'timestamp':>20s} {'滞后':>10s}") print("-" * 62) for item in items: ts = item.get("timestamp") if ts is None: print(f"{item.get('symbol',''):12s} timestamp missing") continue lag_seconds = (now_ms - ts) / 1000 ts_str = datetime.fromtimestamp(ts / 1000).strftime("%Y-%m-%d %H:%M:%S") print(f"{item['symbol']:12s} {item['last_price']:>12} {ts_str:>20s} {lag_seconds/3600:>8.1f}h") if __name__ == "__main__": check_freshness(["600519.SH", "700.HK", "AAPL.US"]) 核心不是“看有没有价格”,而是“看价格的时间戳距现在多久”。 上线前检查清单 标的目录:三个市场的symbol命名规则是否统一? 字段骨架:核心字段名是否一致?市场特有字段是否单独处理? 时间戳单位:是秒还是毫秒?是UTC还是交易所本地时间? 休市状态:休市期间返回的价格,timestamp是否停留在上一交易日? WebSocket错误码:订阅失败时,能否识别5003、2008、4005? 分市场订阅:合并订阅失败时,能否拆分诊断? 关于工具本身 上面这些验证,我用TickDB跑了一遍。实测结果:港股全量订阅成功,首批收到500条ticker数据;美股全量本次返回5003,表示该市场全量订阅暂不可用,生产代码应分市场订阅。三市场ticker核心字段共用一套解析骨架,但市场特有字段要条件处理。 TickDB为开发者和AI应用提供统一的全球行情数据接口,让团队通过一套接入获取多市场实时与历史数据。 结尾 后天开盘,问题不是涨还是跌,是你的判断建立在几天的信息上。 不用写代码,先做一件事:打开你的行情软件,看看它在A股休市期间给你返回的A股价格,timestamp是哪一天的。如果不是10月8日,你节后第一单的信息起点,就是9月30日。 参考素材 美联储FOMC会议日历(美联储官网) APEC 2026深圳峰会公告(新华社) TickDB实测报告(run_id: holiday-market-20261006-r1) 央行2026年第三季度货币政策委员会例会公告(中国人民银行) 财政部部长蓝佛安《精准有效实施更加积极的财政政策》(《求是》) 华泰证券10月宏观事件相关研报 FAQ Q1:A股休市期间,港股和美股的数据怎么看? 港股和美股在A股休市期间正常交易,日线、分时、ticker数据都可以通过行情接口正常获取。关键是:这些数据和时间戳要一起看。不要只看价格,要看价格是什么时候的。 Q2:跨市场监控最容易踩的坑是什么? 三个市场的时间戳格式可能不同:单位是秒还是毫秒,是UTC还是交易所本地时间,需要分别确认。字段名也可能有差异:A股多category,美股多pre_market_quote、post_market_quote、overnight_quote。一套解析骨架不等于一份完全相同的数据结构,市场特有字段要条件处理。 Q3:WebSocket订阅失败常见错误码有哪些? 5003表示市场全量订阅暂不可用,处置方式是分市场订阅;2008表示未协商permessage-deflate,处置方式是在握手时请求压缩;4005表示Key无该频道权限,需要检查套餐权限;1008表示密钥过期,需要重新获取Key后重连。 Q4:TickDB是什么? TickDB为开发者和AI应用提供统一的全球行情数据接口,覆盖A股、港股、美股、外汇、贵金属、指数、中国期货等市场。接入方式包括REST API(按需快照)、WebSocket(持续订阅)、MCP/Skill/CLI(为AI工具和Agent工作流提供结构化数据)。
浏览18
评论0
收藏0

精华 长期有效,公开征集意见反馈。

用户头像量化官方小助理
2023-03-09 发布
请大家不要客气,任何意见建议可以在这里评论提出。 被采纳后我们将奖励1G研究环境内存 3个月。
浏览26095
评论188
收藏8
用户头像sh_*056uc6
2026-01-28 发布
做超短或者量化交易,对股票接口的稳定性和实时性要求很高,之前做量化交易,一直苦于股票数据接口不稳定,获取股票数据的实时性也不够,导致自动化交易失败,错过了很多宝贵的机会。 整理了常用到的十个股票实时行情接口,包括实时K线数据,分钟级别的K线以及日线,分笔数据、资金流数据等,都非常实用。 1、实时K线数据 获取沪深A股和ETF实时K线数据。目前支持沪深京A股和ETF基金,对应请求参数synbol为stock、etf; 目前K线级别支持5分钟、15分钟、30分钟、60分钟、日线、周线、月线、年线,对应的请求参数period分别为5m、15m、30m、1h、1d、1w、1mon、1y;除权方式有不复权、前复权、后复权,对应的参数cq分别为1、2、3;包年版支持all参数获取盘后全市场数据,仅限近一周内的日线数据。 数据更新:实时数据交易时间段实时更新,历史数据收盘后3:30更新,all参数历史数据盘后6:00更新。 示例请求: http://api.fxyz.site/wolf/time/kline?symbol=stock&code=000001&period=1d&cq=1&startDate=2026-01-19&endDate=2050-01-01&token= 2、资金流数据 获取沪深A股资金流向数据。资金流数据区分主买、主卖、特大单、大单、中单、小单等。 数据更新:历史数据盘后6:00更新 示例请求: http://api.fxyz.site/wolf/money?code=000001&tradeDate=2026-01-19&token= 3、实时指标数据 获取沪深A股实时行情数据。目前支持沪深京A股和ETF基金,对应请求参数synbol为stock、etf。提供涨速、涨跌幅、换手率、振幅、量比、内盘、外盘、ROE等行情指标数据,适用于投资研究、量化交易。包年版支持all参数获取盘中全市场实时数据。 数据更新:实时数据交易时间段每1分钟更新。 示例请求: http://**api.fxyz.site/wolf/time?**symbol=stock&code=000001&token= 4、涨跌停板 获取盘中涨停板实时数据。 数据更新:实时数据交易时间段每1分钟更新,历史数据收盘后3:30更新。 示例请求: http://**api.fxyz.site/wolf/zt?**tradeDate=2026-01-19&token= 5、日线快照 获取沪深A股和ETF实时日线行情数据。目前支持沪深京A股和ETF基金,对应请求参数synbol为stock、etf。包年版支持all参数获取盘中全市场实时数据。 数据更新:实时数据交易时间段实时更新。 示例请求: http://api.fxyz.site/wolf/time/day?symbol=stock&code=000001&token= 6、买卖五档 获取沪深A股和ETF买卖五档实时行情数据。目前支持沪深京A股和ETF基金,对应请求参数synbol为stock、etf。 数据更新:实时数据交易时间段实时更新 示例请求: http://api.fxyz.site/wolf/time/five?symbol=stock&code=000001&token= 7、逐笔交易 获取沪深A股逐笔交易数据。 数据更新:历史数据盘后6:00更新 示例请求: http://**api.fxyz.site/wolf/deal?**code=000001&tradeDate=2026-01-19&token= 8、分价数据 获取沪深A股分价数据。 数据更新:历史数据盘后6:00更新 示例请求: http://api.fxyz.site/wolf/price?code=000001&tradeDate=2026-01-19&token= 9、股票列表 获取股票的代码列表。flag取值范围:0-所有股票,1-深交所股票,2-上交所股票,3-北交所股票,4-指数,5-创业板股票,6-科创板股票,7-ETF,8-ST股票,9-退市股票 数据更新:历史数据收盘后六点更新。 示例请求: http://**api.fxyz.site/wolf/list?**flag=0&token= 10、炸板 获取盘中炸板实时数据。 数据更新:实时数据交易时间段每1分钟更新,历史数据收盘后3:30更新。 示例请求: http://api.fxyz.site/wolf/zb?tradeDate=2026-01-19&token= 参考文档:http://www.fxyz.site/#api-docs
浏览4747
评论10
收藏3
用户头像sh_*056uc6
2026-10-05 发布
量化策略最怕两件事:数据慢半拍,字段还对不上。AI 能快速写出因子和策略,却不能替你修复错误的时间戳、缺失的成交量和不一致的复权口径。数据源的稳定性与准确性,决定了回测收益能不能在实盘重现。 这篇文章把 FXYZ(官网展示名称为“黑狼数据”)的接口按交易研究流程重新整理,重点看实时行情、K 线、盘口、竞价、资金流和涨跌停数据怎么配合使用。 按当前在线文档,FXYZ 共列出 17 个接口,覆盖基础数据、涨跌停数据和实时行情数据三大目录。 量化数据源,真正要看什么 维度 量化场景里的问题 选型时要核对 时效 信号触发时,价格是不是已经过期 更新频率、交易时段、时间戳精度 准确 成交量、价格、涨跌幅能否和基准行情对齐 单位、字段定义、异常值处理 完整 只有收盘价,无法解释盘中成交和盘口变化 行情、K 线、五档、逐笔、资金流是否齐全 可复现 回测和实盘使用了不同口径 复权参数、交易日、历史修订规则 AI 负责放大研究速度,行情数据负责决定策略能不能落地。 FXYZ 数据源一张图看懂 FXYZ 文档给出的 API 基础地址是 http://api.fxyz.site,接口文档见 http://www.fxyz.site/doc。所有请求都需要带 token 参数,具体权限和套餐以服务方开通结果为准。 FXYZ 覆盖哪些股票数据 数据层 代表接口 适合做什么 文档标注的更新节奏 基础数据 /wolf/list、/wolf/sector、/wolf/financemetric 股票池、板块成分、财务因子 收盘后 18:00 或 22:00 更新,财务指标以文档为准 实时行情 /wolf/time、/wolf/time/day 实时价格、成交量、估值和涨跌幅 交易时段约每 1 分钟;部分接口支持all 全市场参数 K 线与历史 /wolf/time/kline、/wolf/deal、/wolf/price 多周期回测、逐笔成交、分价统计 K 线盘中秒级;逐笔与分价盘后更新 盘口与竞价 /wolf/time/five、/wolf/time/bid 买卖盘、开盘竞价、微观结构因子 文档标注盘中毫秒级更新 情绪与事件 /wolf/zt、/wolf/dt、/wolf/zb、/wolf/qs、/wolf/cx 涨跌停、炸板、强势股、次新股 交易时段约每 1 分钟,历史数据收盘后更新 资金与复权 /wolf/money、/wolf/fq 主力分单、复权变更、事件校准 历史数据盘后更新 更新频率是文档说明,不等同于策略的成交保证。接入前要用自己的网络、账户权限和交易时段做一次实测。 实时行情接口:把价格和因子放在一起 /wolf/time 返回的字段比较适合做盘中选股和因子计算,常用字段包括: 字段 含义 常见用途 zxj 最新价 计算收益、突破和止损 zdf、zde 涨跌幅、涨跌额 动量、强弱和风控 cjl、cje 成交量、成交额 流动性过滤、量价因子 hsl、lb 换手率、量比 活跃度与异动筛选 zsz、ltsz 总市值、流通市值 市值分组、容量约束 roe、jtsyl、ttmsyl ROE、静态市盈率、TTM 市盈率 基本面与估值组合 单票策略可以传入 code。具备相应权限时,再按文档使用 all 做全市场拉取,避免一开始就把请求量打满。 K 线、五档和竞价:盘中策略的三类输入 接口 核心参数 能拿到什么 /wolf/time/kline symbol、code、period、cq、日期区间 1 分钟到年线的 OHLCV,支持不复权、前复权、后复权 /wolf/time/five symbol、code 买一到买五、卖一到卖五的价格和数量 /wolf/time/bid code 竞价价、竞价量、未匹配量、未匹配金额和买卖方向 做盘口策略时,建议把行情时间统一到同一时区,再用 (code, timestamp) 去重。五档快照和逐笔成交不要直接混成一张表,否则会把不同时间粒度的信号误当成同一时刻。 逐笔、分价和资金流:解释信号为什么出现 /wolf/deal 提供成交价、成交量、成交额和主动买卖方向,可用于拆解冲击成本与成交结构。/wolf/money 进一步区分主买、主卖以及特大单、大单、中单、小单的金额和数量。 这类数据很适合做“信号解释层”:模型触发买入后,可以检查成交是否由大单推动,或用主动性买卖判断信号是否正在衰减。接口文档显示这些历史数据在盘后更新,不能把它们当作盘中实时流。 涨跌停数据:A 股情绪因子的现成入口 接口 数据重点 可构建的因子 /wolf/zt 首次封板、最后封板、封板资金、连板数 封板强度、连板梯队 /wolf/dt 连续跌停、封单资金、开板次数 极端风险、流动性压力 /wolf/zb 炸板次数、首次封板、振幅 炸板率、封板稳定度 /wolf/qs 入选理由、是否新高、量比 强势延续、突破过滤 /wolf/cx 上市日期、开板日期、是否新高 次新股生命周期 涨跌停接口的字段已经包含不少交易员常用指标,适合做情绪温度计,也适合给 AI 模型提供事件标签。 FXYZ API 的最小接入方式 接口采用 URL 参数传递 token。下面示例只读取单只股票,Token 放在环境变量里,避免写进代码仓库。 import os import requests BASE_URL = "http://api.fxyz.site" TOKEN = os.environ["FXYZ_TOKEN"] def get_realtime_quote(code: str) -> dict: params = { "symbol": "stock", "code": code, "token": TOKEN, } response = requests.get( f"{BASE_URL}/wolf/time", params=params, timeout=10, ) response.raise_for_status() payload = response.json() if isinstance(payload, dict): if payload.get("code") != 200: raise RuntimeError(payload.get("message", "FXYZ 请求失败")) rows = payload.get("data") or [] else: rows = payload if not isinstance(rows, list) or not rows: raise ValueError("接口没有返回有效行情") row = rows[0] return { "code": row.get("code"), "price": row.get("zxj"), "change_pct": row.get("zdf"), "volume": row.get("cjl"), "turnover": row.get("hsl"), "timestamp": row.get("tradeDate"), } print(get_realtime_quote("000001")) K 线接口的参数可以这样组织: params = { "symbol": "stock", "code": "000001", "period": "1d", "cq": 1, # 1 不复权,2 前复权,3 后复权 "startDate": "YYYY-MM-DD", "endDate": "YYYY-MM-DD", "token": TOKEN, } rows = requests.get( f"{BASE_URL}/wolf/time/kline", params=params, timeout=10, ).json() 接入后,数据管线要这样做 原始层:按接口、请求时间和响应体落盘,保留原始 JSON,方便追溯。 标准层:统一代码格式、时区、价格单位和成交量单位,保留字段字典。 校验层:检查重复时间戳、空数组、价格越界、成交量倒退和交易日错位。 特征层:再计算收益率、盘口不平衡、量价指标和情绪因子。 服务层:给回测和实盘使用同一套字段,配上重试、限流、断点续拉和监控。 先把数据管线做成可追溯的,再让 AI 去优化策略,效率会更高。 一份实盘前的核对清单 检查项 需要确认 时间戳 是否统一到交易所时间,盘前、午间和盘后如何标记 复权口径 回测使用的cq 是否与信号和收益计算一致 字段单位 成交量是手还是股,金额是元还是万元 数据缺口 空数组、停牌、涨跌停和网络超时如何区分 更新频率 文档频率与实测频率是否一致,是否存在延迟尖峰 权限与限流 单票、全市场、all 参数和调用次数是否在套餐范围 安全 文档示例使用 HTTP,生产环境要向服务方确认 HTTPS、Token 保护和白名单方案 /wolf/price 的字段说明在文档中与竞价字段较接近,接入时建议用样本响应核对语义,再写入统一字段字典。 FXYZ 适合怎样的量化项目 项目阶段 推荐组合 股票池构建 /wolf/list + /wolf/sector + /wolf/financemetric 盘中选股 /wolf/time + /wolf/time/kline 开盘竞价 /wolf/time/bid + /wolf/time/five 微观结构 /wolf/time/five + /wolf/deal 情绪策略 /wolf/zt + /wolf/dt + /wolf/zb + /wolf/qs 盘后归因 /wolf/money + /wolf/fq + K 线历史 FXYZ 的价值在于接口覆盖面比较完整:一个数据源就能把股票池、实时行情、盘口、事件和盘后研究串起来。真正决定策略质量的,仍然是字段核验、时间对齐、权限边界和异常监控。 结语 AI 让量化研究从“写代码”进入“快速试错”,可靠的数据源让试错结果能够被复现。把行情接入、字段字典和质量监控先搭好,模型复杂度才有意义。 Github开源项目:https://github.com/fxyzsite/FxyzSkill
浏览90
评论0
收藏0
用户头像Jacktick
2026-10-03 发布
同一根K线,不同数据源可能给出不同结果。 你选的不是数据源,是翻译方式。 一个让我亏过钱的问题。 回测里某个信号持续有效,实盘对不上。差异不大但一直在。排查了三周,策略逻辑、滑点、手续费、执行延迟全查过。 最后发现问题出在K线时间标签的约定上——数据源把分钟标签落在“结束”,而团队的策略逻辑假设标签是“开始”。这个处理,数据商的文档里没有写,采购合同里也没有约定。 问题不在策略,在团队从没验证过数据源对市场做过的那些处理。 这篇文章要回答三个问题: 行情数据源的“翻译方式”到底有哪些差异? 这些差异怎么影响你的回测和实盘? 你怎么验证自己的数据源用的是什么翻译方式? 这篇文章写给三类人: 读者类型 你的核心任务 这篇文章帮你解决什么 量化投资者 跑全市场选股、做因子、做回测 为什么回测和实盘对不上,怎么排查数据层的定义问题 行情应用开发者 做看盘、做数据产品、做交易系统 怎么判断数据源的“全量”是否真的全,怎么验证 数据选型决策者 为团队选数据源 不同数据源的“翻译方式”差在哪,怎么对比 核心命题:你选的不是数据源,是翻译方式 从市场发生一笔成交,到你的屏幕出现一个数字,中间至少经过六次翻译。 市场事实 ──→ 时间戳 ──→ 分桶 ──→ 聚合 ──→ 复权 ──→ 截取 ──→ 修订 ──→ 你的屏幕 │ │ │ │ │ │ │ │ 第一次翻译 第二次翻译 第三次翻译 第四次翻译 第五次翻译 第六次翻译 │ │ │ │ │ │ │ │ 谁的秒? 从哪秒起? 纳入哪些? 谁算的? 给几档? 变过吗? 次序 翻译环节 核心问题 可能存在的做法差异 第一次 时间戳 这一秒,是谁的秒? 起点/终点/接收时间 第二次 分桶 这一分钟,从哪一秒开始算? 左闭右开/左开右闭 第三次 聚合 这一根K线,纳入了哪些成交? trade condition过滤标准 第四次 复权 这个历史价格,是谁算的? 前复权/后复权/除数驱动 第五次 截取 这个盘口,给了几档? MBO/MBP/快照/增量 第六次 修订 这个历史数据,变过吗? 修订窗口/是否可追溯 这六次翻译加在一起,就是你和市场之间的全部距离。 关键认知:不同数据源对这六次翻译的做法可能不同。你选数据源,不是选“谁的数据好”,是选“谁的翻译方式适合你的使用场景”。而这些翻译方式,大多数没有被写进文档,没有被写进合同。 第一次翻译:这一秒,是谁的秒? 这次翻译是什么 一条行情数据的时间戳,可能是六种时间之一。 事件时间 ──→ 源端时间 ──→ 发布时间 ──→ 服务端时间 ──→ 接收时间 ──→ 存储时间 │ │ │ │ │ │ 市场真实发生 交易所打戳 数据源发出 数据商处理 你的系统收到 写入数据库 时间标签约定的差异 不同交易所和数据商的规格各异,使用前应核对时标定义。 Alpaca的官方文档说得很清楚:分钟K线在整分钟后发出,包含前一分钟的交易;迟到成交存在时,会在半分钟后发 updatedBars,示例中原K线的 t=16:49:00。这支持“起始标签”和“约30秒后的有条件更新”,但官方文档没有承诺“1秒计算、30秒必然重算”。 关于其他平台的时间标签,我看到过一些技术社区的讨论: 平台 技术社区讨论中的说法 来源 Alpaca 起始标签、整分钟后发出、迟到成交半分钟后发 updatedBars Alpaca官方文档(2026-10-03查阅) 米筐 社区讨论中提到结束标记 技术社区 vnpy 社区讨论中提到起始时间标记 技术社区 文华财经 社区讨论中提到时间段开始点 技术社区 金字塔 社区讨论中提到时间段结束点 技术社区 注意:上表中除Alpaca外的平台约定,来源是技术社区的第三方描述,我没有逐一实测或获取官方文档确认。采购或对接时,请以官方文档和实际样本验证为准。 你应该重点关注的 价值类型 内容 投资价值 时间标签错误导致信号在错误时间点触发。高频策略里,一分钟的差距足以让整个信号失效 场景价值 跨数据源对账时,两个数据源的时间标签约定不同,回测里信号在10:00触发,实盘监控里同一信号在09:59触发 风险价值 2010年5月6日美股闪崩后,监管机构事后重建市场时,发现数据碎片化和时间戳不一致导致难以拼凑完整图景。SEC在2016年CAT计划文件中称,当日重建仅含估计90%的交易与订单活动 收束:时间标签不是技术细节,是分析的基础假设。你不知道数据源怎么打标签,你的回测就是在别人的假设上跑。 第二次翻译:这一分钟,从哪一秒开始算? 这次翻译是什么 即使两家数据商都用“起始标签”,分桶规则也可能不同。 左闭右开: [9:30:00, 9:31:00) → 包含9:30:00,不包含9:31:00 左开右闭: (9:30:00, 9:31:00] → 不包含9:30:00,包含9:31:00 一次样本观测:A股K线的时间标签 A股取贵州茅台(600519.SH)2026年9月30日14:10–14:50(北京时间)。窗口内有763条逐笔记录,原始数量字段合计7,149。 在这组样本下,把K线时间直接当分钟起点,40个窗口均未对上;把它解释为分钟结束标签后,40个窗口成交量全部对齐。 这是一次数据实验的结果,不是供应商的接口约定文档。时间标签约定属于接口层的行为,样本对齐是验证起点,不能替代供应商的官方接口文档确认。 不同的标的、不同的交易日、不同的数据源,结论可能不同。建议在你自己的数据源上跑一遍相同的验证。 你应该重点关注的 价值类型 内容 投资价值 分桶规则不同,即使原始逐笔数据完全一样,聚合出来的K线也可能不同 场景价值 把A平台的数据导入B平台的框架,可能出现一根K线的偏移。你以为在比较两个数据源的质量,实际上在比较两套分桶规则 风险价值 跨数据源对账时,40个窗口全部对不上,排查三周才发现是标签约定问题 收束:分桶规则是数据商替你做的选择,不是市场的自然属性。 第三次翻译:这一根K线,纳入了哪些成交? 这次翻译是什么 不是所有成交都进入K线。 原始逐笔成交 ──→ trade condition过滤 ──→ 分桶 ──→ 应用sum/min/max ──→ K线 │ ├── 过滤"typical" trades → Close price ├── 过滤大部分trades → Volume └── 其他过滤标准 → Open/High/Low 聚合规则的差异 数据源 聚合规则 来源 Alpaca 三步骤:按执行时间分桶 → 按trade condition过滤 → 应用sum/min/max 官方文档 Alpaca引用标准 CTS Specification p.64、UTP Specification p.43 官方文档 其他数据商 未公开聚合方法论 公开资料未找到 实测案例:港股取腾讯控股(700.HK)2026年10月2日15:00–15:05(香港时间)。最近逐笔样本覆盖了窗口前后,窗口内共221条记录,数量合计201,700;五个已结束分钟的数量合计分别与对应1分钟K线成交量相同,5个窗口全部对齐。 美股取苹果(AAPL.US)2026年10月1日15:30–15:45(纽约夏令时,UTC−4)。这段常规交易时段有15根历史1分钟K线和3根5分钟K线。按每五分钟聚合,3组开高低收及成交量全部相同,重复请求这段1分钟K线也得到相同结果。 但要注意:当前最近逐笔查询返回的是夜盘记录,没有取得该常规时段的历史逐笔,因此美股这里验证的是K线聚合一致性,逐笔完整性仍待验证。 另一个需要留意的点:在固定时窗查询中,AAPL.US 日线的 volume 含小数、quote_volume="0";但同日 limit=100 查询返回的是整数成交量和非零成交额,部分 OHLC 精度也不同。这是两条查询路径之间的数据差异,尚不能认定哪一个是准确口径。正文数值和计算示例暂勿混用两条路径。 你应该重点关注的 价值类型 内容 投资价值 你看到的成交量,是数据商过滤后的结果,不是市场的全部成交 场景价值 用成交量做资金流分析,如果数据商过滤标准不同,你的分析结果可能完全不同 风险价值 同一根K线的收盘价和成交量可能不同,但你在比较两个数据源时,以为在比较“市场” 收束:K线不是逐笔的简单聚合,是数据商按自己的标准筛选后的结果。 第四次翻译:这个历史价格,是谁算的? 这次翻译是什么 复权不是市场的事实,是数据商的计算。 交易所发布除权参考价 ──→ 数据商回溯计算 ──→ 前复权/后复权价格 │ │ │ ┌─────┴─────┐ │ │ │ │ 前复权 后复权 │ (以现价为基准) (以上市首日为基准) │ │ │ │ 历史价格变动 历史价格钉死 │ (未来函数) (推荐回测) 复权处理方式的差异 市场/数据源 复权处理方式 来源 A股交易所 发布“除权参考价”(除权日当天的基准价);前复权和后复权是数据服务商基于参考价回溯或推演计算的结果 上交所数据文件接口规格、深交所权益分派公告 NASDAQ Nasdaq Last Sale(NLS)数据馈送中有 Adjusted Closing Price 消息 Nasdaq Last Sale 规格 Refinitiv 指数层面采用除数驱动法,在除息日次日调整指数除数 LSEG Refinitiv指数方法论 关键认知:不是所有交易所都不提供调整后价格。同一个词“复权”,在两个市场的处理路径可能完全不同。 说明:关于“所有复权序列都由数据商计算”,目前找到的是上交所和深交所对除权参考价的官方说明,后半句是根据数据产品流程的推断,不是交易所原话。 这跟你有什么关系 价值类型 内容 投资价值 前复权在日频回测中是一个未来函数。你今天用前复权价格回测,明天某只股票除权了,历史价格变了,你昨天的回测结果就不可复现了 场景价值 做跨市场对比时,A股的前复权是数据商算的,NASDAQ的Adjusted Closing Price是NLS数据馈送里的消息 风险价值 公司行为处理顺序不同(先分红后拆股 vs 先拆股后分红)会产生不同因子。你从不同数据商买的“复权后价格”,本质上可能是不同的东西 收束:复权不是一个“有没有做对”的问题,是“看你的使用场景”。信号生成用不复权或后复权,收益计算用后复权,展示给用户看用前复权。三者混用,就是未来函数。 第五次翻译:这个盘口,给了几档? 这次翻译是什么 “有盘口”这三个字,可以指十几种不同的东西。 盘口规格的差异 市场 盘口规格 关键差异 上交所 Level 2 十档、逐笔成交、首档前50笔订单委托量 产品页未见完整逐笔委托流承诺 深交所 Level 2 五档扩十档、逐笔委托与逐笔成交、最佳价位前50个分档明细 有逐笔委托 HKEX BMP 以 HKEX BMP 许可指引为准 延时数据至少15分钟,具体混合条件需查许可正文 NASDAQ OUCH(下单/自身订单回报)与ITCH(订单簿市场数据) 订单输入和市场数据分离 LSE GTP 支持MBO(Market by Order)和MBP(Market by Price)两种模式 MBO逐笔订单 vs MBP价格档 期货市场 快照,250ms或500ms推送 大部分交易所250ms或500ms 说明:上交所的“首档前50笔订单委托量”来自上证所信息网络官方产品页,该页没有承诺完整逐笔委托流,但不能简单写“无委托数据”。深交所的逐笔委托与逐笔成交来自深圳证券信息有限公司增强行情说明。 你应该重点关注的 价值类型 内容 投资价值 Level 1快照掩盖两次更新间的快速变化;增量更新若存在节流或丢包可能遗漏关键变动 场景价值 你的产品给用户展示“实时盘口”,用户看到的是HKEX的BMP数据,但BMP的延时条件需按许可指引确认。用户以为他在看实时数据,实际上可能在看延时数据 风险价值 用延时盘口估算实盘滑点,等于在错误的流动性假设下建立仓位管理规则。这不是技术问题,是产品合规问题 收束:采购时写“支持盘口”而不写规格,等于什么都没说。 第六次翻译:这个历史数据,变过吗? 这次翻译是什么 历史数据不是不变的。 历史数据修订 ──→ 修订窗口 ──→ 是否可追溯 ──→ 重复查询是否一致 │ │ │ │ │ 1秒/30秒/更长 有版本记录? 两次查询diff? │ │ │ │ └── 不能复现的数据,在争议时无法自证 修订机制的差异 数据源/监管 修订机制 来源 Alpaca 整分钟后发出,迟到成交存在时半分钟后发 updatedBars Alpaca官方文档 MiFID II 对算法交易监测系统有要求 ESMA市场结构问答 中国证监会 核心机构和经营机构的重要信息系统,业务日志保存5年以上,系统日志6个月以上 2023年《证券期货业网络和信息安全管理办法》第十八条 其他数据商 未公开修订机制 公开资料未找到 说明:关于 MiFID II,ESMA 市场结构问答中对 Article 13(1) 的描述是算法交易监测系统;本轮未证实其为“回放要求”。文章中不再精确引“RTS 6 第13条要求回放”。 实测样本:同一 AAPL.US 1m 历史窗口连续两次返回的 data 完全相同,共 11 根。这说明本次重复调用一致,但不能推出历史数据永不修订。 另一个需要留意的点:逐笔 ID 跨查询稳定性需要单独确认。limit=10 与 limit=30 的相同 ID 分别对应不同的价格和方向。同 ID 不代表同笔交易,不能直接作跨查询去重键。 你应该重点关注的 价值类型 内容 投资价值 没有可靠事件标识,重连后重复计数,资金流被高估 场景价值 你昨天跑的回测,今天用同样的参数跑,可能得不到同样的结果——不是你的代码变了,是数据源修订了历史数据 风险价值 不能复现的数据,在争议时无法自证 收束:可复现性不是技术洁癖,是监管已经在做的事。 六次翻译加在一起,就是你和市场的距离 这六次翻译加在一起,就是你手里那张行情数据。你从来没问过数据商这六次翻译是怎么做的,但你的团队每天都在用翻译的结果做决策。 这不是说数据商做错了。是说,同一份市场,可以有不同的翻译方式,而你没有确认过你用的是哪一种。 采购/验收行情数据源时,我会先问这六个问题 验收维度 写进合同的问题 对应第几次翻译 不确认的后果 时间标签 分钟K线的时间标签是起点还是终点?分桶规则是左闭右开还是左开右闭? 第一次、第二次 跨源对账出偏差,排查三周才发现 聚合规则 K线纳入哪些trade condition?成交量是否过滤? 第三次 资金流分析结果与数据商过滤标准绑定 复权处理 复权是你们算的还是交易所提供的?复权因子公式是什么? 第四次 跨市场对比失效,前复权产生未来函数 盘口规格 “支持盘口”具体指几档?快照还是增量?更新频率多少?有没有延时? 第五次 产品展示延时数据,用户以为是实时 事件标识 逐笔成交有没有唯一标识?跨查询是否稳定?重连后如何去重? 第六次 重连后重复计数,资金流被高估 历史修订 历史数据会不会修订?修订后能否追溯?重复查询结果是否一致? 第六次 回测不可复现,争议时无法自证 这张表的读法是:每一行都是一个采购合同里应该写清楚的条款。不是“数据质量好不好”这种模糊表述,是“时间标签是起点还是终点”这种可以写进合同、可以验收的具体条件。 每个需求留六项:业务用途、样本区间、判定方法、通过条件、未通过时的处理、证据文件。验收样本至少覆盖正常交易、开收盘、无成交或停牌、断线重连与历史翻页。 这些验收维度不是我个人发明的。MiFID II、CFTC、中国证监会的要求说明,数据可复现性和唯一标识是行业已经在做的事。 这些验收维度,我在试接时用TickDB跑了一遍。 一段可运行的验证代码 上面六次翻译的差异,你可以用下面这段代码验证你的数据源。这段代码用 TickDB 的接口跑了一遍,你也可以直接复制运行。 import requests API_KEY = "your_api_key" BASE_URL = "https://api.tickdb.ai/v1" headers = {"X-API-Key": API_KEY} # 验证时间标签 resp = requests.get( f"{BASE_URL}/market/kline", params={ "symbol": "AAPL.US", "type": "stock", "interval": "1m", "limit": 1, "start_time": 1790883000000, "end_time": 1790883060000, }, headers=headers ) kline = resp.json()["data"]["klines"][0] print(f"K线时间标签: {kline['time']}") print(f"请求窗口: 1790883000000 - 1790883060000") if kline['time'] == 1790883000000: print("标签落在: 起点") elif kline['time'] == 1790883060000: print("标签落在: 终点") else: print("标签落在: 其他位置") # 验证复权因子 resp = requests.get( f"{BASE_URL}/market/kline/ex-factors", params={"symbol": "600519.SH", "type": "stock"}, headers=headers ) factors = resp.json()["data"]["data"]["600519.SH"] print(f"\n复权因子条数: {len(factors)}") print(f"首条因子: {factors[0]}") # 验证历史可复现 params = { "symbol": "AAPL.US", "type": "stock", "interval": "1m", "limit": 15, "start_time": 1790883000000, "end_time": 1790883899999, } resp1 = requests.get(f"{BASE_URL}/market/kline", params=params, headers=headers) resp2 = requests.get(f"{BASE_URL}/market/kline", params=params, headers=headers) print(f"\n两次查询结果一致: {resp1.json() == resp2.json()}") 说明:TickDB 的 REST 接口是按需快照,不是实时流;如果你需要逐 tick 的实时更新,应该改用 WebSocket 订阅。bid_price、ask_price、spread 这些字段来自 depth 接口,不在 ticker 接口里。 TickDB 是什么,在数据源选型中有什么优势 上面这些验证,我用 TickDB 的接口跑了一遍。 TickDB 为开发者和 AI 应用提供统一的全球行情数据接口,让团队通过一套接入获取多市场实时与历史数据,更快构建行情、分析和监控产品。 在数据源选型这个场景中,TickDB 有三个可验证的优势: 优势 具体表现 多市场统一 一套 API 覆盖 A股/港股/美股/期货/外汇,标的目录可查询、可分类 字段结构确定 停牌、集合竞价等边界状态有明确字段行为,不是“看起来有数据” 复权逻辑透明 复权因子有独立接口,公式可验证,不依赖数据源黑箱 如果你用的是支持 MCP 的工具(比如 Cursor、Claude Code),也可以直接让 Agent 调用 TickDB 的行情工具: # 在支持 MCP 的 AI 工具中,配置 TickDB 的 MCP 服务后 # 可以直接用自然语言调用行情工具,例如: # "帮我拉取 AAPL.US 最近 15 根 1 分钟 K 线" # Agent 会调用 get_kline 工具,返回带时间戳、OHLCV 的结构化数据 # "查一下 700.HK 当前的盘口深度" # Agent 会调用 get_order_book 工具,返回买卖档位 # "600519.SH 最近 5 个交易日的资金流向" # Agent 会调用 get_capital_flow 工具,返回资金流数据 MCP 工具的价值在于:让模型先拿到带标的、字段和时间的事实,再进行分析——而不是让模型用训练数据里的历史价格回答“现在多少钱”。 数据源翻译约定确认表 把这张表填完,你对数据源的理解就到位了。 翻译层 要确认什么 供应商回答 是否写进合同 时间戳 标签是起点还是终点 分桶 左闭右开还是左开右闭 聚合 哪些 trade condition 纳入 复权 复权因子公式 盘口 几档、快照/增量 修订 修订窗口、是否可追溯 常见问题(FAQ) Q1:行情数据源怎么选? A:核心是确认六次翻译的约定:时间戳、分桶、聚合、复权、盘口、修订。这六个不确认,你在跨源对账、跨市场对比、产品展示时都可能出问题。 Q2:K线时间标签是起点还是终点? A:Alpaca 官方文档说它用起始标签、整分钟后发出、迟到成交半分钟后发 updatedBars。其他平台有社区讨论提到不同做法,但未经官方文档确认。不同交易所和数据商规格各异,采购时要明确约定,并用实际样本验证。 Q3:行情数据需要复权吗? A:取决于使用场景。前复权适合展示,后复权适合回测,但不同数据商的复权算法可能不同。A股的复权是数据商基于交易所除权参考价计算的,NASDAQ 的 Adjusted Closing Price 是 NLS 数据馈送里的消息。 Q4:“支持盘口”是什么意思? A:可以指十几种不同的东西。要问清:几档?快照还是增量?更新频率?有没有延时?MBO 还是 MBP? Q5:行情数据的历史数据会不会变? A:Alpaca 的 K 线在整分钟后发出,迟到成交存在时半分钟后发 updatedBars。其他数据商的修订机制可能不同。要确认修订后是否可追溯。 Q6:行情数据源的采购合同该写什么? A:至少写清:时间标签语义、分桶规则、聚合过滤标准、复权口径、盘口规格、事件标识机制、历史修订策略、数据保留期限。 结尾 你的数据源,敢不敢让你问一句“这个数字是怎么变成现在这样的”? 不用写代码。先做一件最小的事:在采购合同或产品文档里,加一条“数据源翻译约定确认”。确认三件事——时间标签怎么打、复权谁算的、历史数据会不会变。 我现在会把“连通成功”当成试接的开始。能否说明每段数据如何识别、如何对账,出了差异怎样复现,才是报价源进入下一阶段的验收答案。 参考文献 Alpaca. Real-time Stock Pricing Data. 访问日期:2026-10-03. Nasdaq Trader. Nasdaq Last Sale Specification 3.0. 访问日期:2026-10-03. 上海证券交易所. 市场数据文件接口规格. 访问日期:2026-10-03. 深圳证券交易所. 权益分派公告例. 访问日期:2026-10-03. 上证所信息网络有限公司. Level-2 行情产品页. 访问日期:2026-10-03. 深圳证券信息有限公司. 增强行情说明. 访问日期:2026-10-03. HKEX. Basic Market Prices (BMP) Service Guiding Notes. 访问日期:2026-10-03. Nasdaq Trader. OUCH 产品页及 TotalView-ITCH 5.0 规格. 访问日期:2026-10-03. SEC. CAT Plan Filing (34-77724). 访问日期:2026-10-03. CFTC. Parts 43/45 Technical Specification. 访问日期:2026-10-03. ESMA. Market Structures Q&A. 访问日期:2026-10-03. 中国司法部. 《证券期货业网络和信息安全管理办法》. 访问日期:2026-10-03. LSEG. Refinitiv Global Equity Indices Methodology. 访问日期:2026-10-03. TickDB. REST API 官方文档及实测数据. 访问日期:2026-10-03.
浏览79
评论0
收藏0

哎,迫于压力,分享给大伙吧。一招制敌内含策略代码

用户头像晟者为王2014
2023-04-19 发布
江湖上可能要有关于我得传说了。
浏览39963
评论75
收藏189
策略回测收益图
用户头像湖南老LEE
2026-09-21 发布
浏览136
评论1
收藏0
用户头像Leon0818
2026-09-24 发布
交易频率设置分钟的策略,如果指定在下午较晚时的处置操作,均无法被有效执行。 我的一个策略设置为14:45做买入操作,之前运行正常,大约10-15天前开始,再没有过一笔买入交易。 我在handle_bar里加上日志打印,每分钟一次,发现在下午不到2点,就不再执行handle_bar了,最后一条的模拟盘时间是13:49,真实时间是16:08。 以下为原始日志内容: 2026-09-24 09:12:17 - [ 2026-09-24 09:00:00 ] - INFO600522.SH: [32.66, 34.49, 34.56, 32.66, 265520892.0] | [33.9, 34.53, 35.19, 36.39, 35.98, 36.95, 36.88, 35.78] 2026-09-24 09:12:17 - [ 2026-09-24 09:00:00 ] - INFO000657.SZ: [60.58, 62.23, 63.56, 60.57, 98747776.0] | [62.04, 60.9, 61.76, 60.49, 60.26, 59.16] 2026-09-24 09:12:09 - [ 2026-09-24 09:00:00 ] - INFOupdate new_data_str:{} 2026-09-24 09:12:09 - [ 2026-09-24 09:00:00 ] - INFOhold_stocks: [] 2026-09-23 16:08:47 - [ 2026-09-23 13:49:00 ] - INFOhandle_bar 2026-09-23 16:06:30 - [ 2026-09-23 13:48:00 ] - INFOhandle_bar 2026-09-23 16:02:34 - [ 2026-09-23 13:47:00 ] - INFOhandle_bar 2026-09-23 16:00:10 - [ 2026-09-23 13:46:00 ] - INFOhandle_bar 2026-09-23 15:57:30 - [ 2026-09-23 13:45:00 ] - INFOhandle_bar 2026-09-23 15:54:50 - [ 2026-09-23 13:44:00 ] - INFOhandle_bar 2026-09-23 15:52:17 - [ 2026-09-23 13:43:00 ] - INFOhandle_bar 2026-09-23 15:49:30 - [ 2026-09-23 13:42:00 ] - INFOhandle_bar
浏览180
评论5
收藏0