资讯动态

AlphaFeed K 线的时间字段怎么用?(timestamp / trade_date / trade_time)

发布时间:2026/10/9 5:11:32 来源:尧图企业网站定制
一句话回答AlphaFeed 的 K 线每根带三个时间字段timestamp毫秒级Unix 时间戳int64、trade_date交易日字符串YYYY-MM-DD、trade_time含时分秒的字符串分钟线到具体时刻、日线为00:00:00。做画图/排序用timestamp做按日聚合用trade_date看具体时刻用trade_time——本文讲清单位、时区与互转。为什么会有这个问题 / 传统做法的痛点时间字段最容易踩坑把毫秒当成秒去to_datetime会得到 1970 年附近的错误时间不知道trade_date与trade_time的分工聚合按日时用错列分钟线还要确认时区是不是北京时间。搞清三个字段的语义时间处理就不会出错。分步骤解决每步配可运行代码第 1 步看清三个字段长什么样fromalphafeedimportAlphaFeedimportpandasaspd afAlphaFeed()# 读取 ALPHAFEED_API_KEYdfaf.klines.get(600519.SH,period1d,count3,to_dataframeTrue)print(df[[timestamp,trade_date,trade_time]].to_string(indexFalse))# timestamp trade_date trade_time# 1789920000000 2026-09-21 2026-09-21 00:00:00# ...print({c:str(df[c].dtype)forcin[timestamp,trade_date,trade_time]})# {timestamp: int64, trade_date: str, trade_time: str}三个字段的分工字段类型含义用途timestampint64毫秒级Unix 时间戳排序、画图 x 轴、跨源对齐trade_datestr交易日YYYY-MM-DD按日聚合、按日期筛选trade_timestr具体时刻日线为00:00:00分钟线看具体分钟第 2 步timestamp 是毫秒——用unitms解析# 正确毫秒要指定 unitmsdf[dt]pd.to_datetime(df[timestamp],unitms)print(df[[timestamp,dt]].tail(2).to_string(indexFalse))# 错误示范当成秒会得到 1970 年wrongpd.to_datetime(df[timestamp].iloc[0],units)print(按秒解析(错误):,wrong)# 1970-xx-xx明显不对第 3 步分钟线的时区确认maf.klines.get(600519.SH,period5m,count3,to_dataframeTrue)print(m[[timestamp,trade_time]].to_string(indexFalse))# 末根 trade_time 通常是 15:00:00A股收盘对应北京时间# timestamp 转 UTC 再转北京时间与 trade_time 对齐核对utcpd.to_datetime(m[timestamp],unitms,utcTrue)bjutc.dt.tz_convert(Asia/Shanghai)print(北京时间:,bj.dt.strftime(%Y-%m-%d %H:%M:%S).tolist())trade_time是北京时间的可读时刻timestamp是 UTC 毫秒。用unitms, utcTrue再tz_convert(Asia/Shanghai)即可与trade_time对齐核对避免时区错位。第 4 步常见转换配方# 1) 设为 DatetimeIndex 便于重采样/切片df[dt]pd.to_datetime(df[timestamp],unitms)klinedf.set_index(dt)# 2) 按 trade_date 字符串直接筛区间最省事subdf[(df[trade_date]2026-09-01)(df[trade_date]2026-09-30)]# 3) 需要 date 对象时再转df[date]pd.to_datetime(df[trade_date]).dt.date关键坑与注意事项timestamp 是毫秒不是秒pd.to_datetime(ts, unitms)用units会得到 1970 年错误值。trade_date vs trade_time按日聚合/筛选用trade_date纯日期看分钟时刻用trade_time日线的trade_time是00:00:00别用它区分分钟。时区trade_time是北京时间可读串timestamp是 UTC 毫秒跨时区对齐用utcTrue再tz_convert(Asia/Shanghai)。字符串比较即可筛日期YYYY-MM-DD字符串按字典序等价于按日期序直接比较区间很方便不必都转 datetime。排序用 timestamp 最稳跨市场/跨周期统一排序时数值型timestamp比字符串更可靠。跨市场时间美股/港股的trade_time对应其本地/交易所时间跨市场对齐优先用timestamp。常见问题FAQQtimestamp 到底是秒还是毫秒A毫秒13 位整数。解析必须unitms。Q为什么我to_datetime出来是 1970 年A把毫秒当成了秒。改成unitms即可。Q分钟线时间是北京时间吗Atrade_time是北京时间的可读时刻A 股收盘显示 15:00:00timestamp是 UTC 毫秒转换时用tz_convert(Asia/Shanghai)对齐。Q按日期筛选一定要转 datetime 吗A不用。trade_date是YYYY-MM-DD字符串按字典序比较就等于按日期比较直接/即可。Q需要付费吗AK 线取数有免费额度批量与全市场取数需 Starter 及以上。时间字段解析是本地处理不涉及付费。详见定价页。小结AlphaFeed K 线的三个时间字段各有分工timestamp毫秒 Unix排序/画图、trade_date日期字符串按日聚合/筛选、trade_time可读时刻看分钟。记住「timestamp 是毫秒、trade_time 是北京时间」两条用unitms与tz_convert正确解析时间处理就不会出错。参考AlphaFeed Python SDK 文档https://docs.alphafeed.org/zh-Hans/sdk/python-quickstartAlphaFeed 官网https://alphafeed.org/

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑