接口使用与源码印证指南)
金融科技示例工程【免费下载链接】ai_quant_tradeStock AI Trader: 1-stop platform for learning, sim live trading. Covers: stock basics, strategies, LLMs, factor mining, ML/DL/RL, graph nets, HFT, C deploy JoinQuant code. 股票AI操盘手一站式学习、模拟、实盘平台。涵盖股票基础、策略、大模型、因子挖掘、机器学习/深度学习/强化学习、图网络、高频交易、C部署及聚宽代码。项目地址https://gitcode.com/gh_mirrors/ai/ai_quant_trade点击查看免费下载导读本文围绕 ai_quant_trade 仓库中 Tushare Skill 包内的《外汇日线行情》参考文档系统讲解 Tusharefx_daily接口的调用方式、入参/出参规范、积分权限限制与 GMT 时区陷阱并结合仓库内的fx_obasic基础信息文档与示例脚本给出可落地的 Python 调用方案。读完本文你将能独立完成外汇货币对如 USDCNH.FXCM日线数据的批量拉取、Bid/Ask 双侧报价字段的解析以及将外汇行情接入自身量化研究流程的完整实践。一、接口概览fx_daily 是什么fx_daily是 Tushare 提供的外汇日线行情数据接口核心特征如下项目说明接口名fx_daily数据内容外汇货币对每日行情含买入价与卖出价双侧报价数据来源交易商 FXCM当前唯一支持的交易商单次限量最多 1000 行记录可多次提取总量不限积分门槛至少 2000 积分方可调取5000 积分以上频次相对更高积分越多权限越大时区说明交易日期为格林尼治时间GMT比北京时间晚一天该文档位于仓库a_全网优秀资源/10_大模型/07_skill包/vibe_trading_skills/tushare/references/外汇数据/外汇日线行情.md是 Tushare Skill 包「外汇数据」分类下的核心行情接口与之配套的还有外汇基础信息海外.md)接口fx_obasic用于获取可交易品种的 TS 代码清单。二、使用前置安装与 Token 初始化在调用fx_daily之前需要先完成 Tushare 依赖安装与 Token 配置。Skill 包总览文档 SKILL.md 给出了标准流程# 安装 tushare推荐 Python 3.7建议使用清华镜像加速 pip install tushare -i https://pypi.tuna.tsinghua.edu.cn/simple在 Tushare 官网注册并获取 token 后通过环境变量注入也可用ts.get_token()读取本地记录export TUSHARE_TOKENyour_token随后初始化 pro 接口import os import tushare as ts # 读取环境变量中的 token或读取本地记录的 token token os.getenv(TUSHARE_TOKEN) or ts.get_token() pro ts.pro_api(token)这一初始化方式与仓库示例脚本完全一致可参考 scripts/stock_data_example.py 中的token os.getenv(TUSHARE_TOKEN) or ts.get_token()与pro ts.pro_api(token)写法——所有 pro 系列接口都通过该实例调用。三、输入参数详解fx_daily的全部输入参数均为可选必选列均为 N参数定义如下名称类型必选描述ts_codestrNTS 代码外汇代码如USDCNH.FXCMtrade_datestrN交易日期GMT日期为格林尼治时间比北京时间晚一天start_datestrN开始日期GMTend_datestrN结束日期GMTexchangestrN交易商目前只有FXCM日期格式统一为YYYYMMDD如20190101与 SKILL.md 中「参数格式说明」一节约定一致。需要特别强调的是trade_date/start_date/end_date均以 GMT 为基准例如北京时间 2019 年 5 月 25 日对应的行情日期应为 2019 年 5 月 24 日——在按「当日最新行情」做增量拉取时若直接用北京时间当天日期可能取不到当天数据或取到的是次日数据这是使用本接口最容易踩的坑。关于ts_code的取值外汇代码以货币对.FXCM形式命名如美元人民币离岸交易对USDCNH.FXCM。若不确定可用哪些代码可先调用fx_obasic获取全量品种清单见下文第六节。四、输出参数详解fx_daily返回的字段以 DataFrame 形式给出买入价bid与卖出价ask分别提供开高低收四价共 11 个字段名称类型默认显示描述ts_codestrY外汇代码trade_datestrY交易日期bid_openfloatY买入开盘价bid_closefloatY买入收盘价bid_highfloatY买入最高价bid_lowfloatY买入最低价ask_openfloatY卖出开盘价ask_closefloatY卖出收盘价ask_highfloatY卖出最高价ask_lowfloatY卖出最低价tick_qtyintY报价笔数exchangestrN交易商默认不显示要点说明Bid/Ask 双侧结构外汇做市商报价天然分买入价与卖出价两者之差即点差。研究时既可以使用bid_close作为基准价格序列也可以构造(bid ask) / 2的中价mid price来消除点差影响或直接利用ask - bid观察当日点差水平。tick_qty 的用途该字段为当日报价笔数可在一定程度上反映该货币对的流动性活跃度适合作为行情质量过滤或交易活跃度因子。字段精简调用时可通过fields参数只取所需字段减少返回数据量例如fieldsts_code,trade_date,bid_close,ask_close。五、接口调用示例与返回数据解读文档给出的标准调用示例获取美元人民币交易对的日线行情pro ts.pro_api() # 获取美元人民币交易对的日线行情 df pro.fx_daily(ts_codeUSDCNH.FXCM, start_date20190101, end_date20190524)实际返回数据节选字段顺序与上文输出参数表一致ts_code trade_date bid_open bid_close bid_high bid_low ask_open \ 0 USDCNH.FXCM 20190524 6.9261 6.9326 6.9342 6.9248 6.9277 1 USDCNH.FXCM 20190523 6.9309 6.9261 6.9431 6.9253 6.9376 2 USDCNH.FXCM 20190522 6.9334 6.9309 6.9409 6.9236 6.9348 ... ask_close ask_high ask_low tick_qty 0 6.9330 6.9347 6.9252 18080 1 6.9277 6.9436 6.9261 105229 2 6.9376 6.9414 6.9242 111350从数据示例可以观察到几个实用细节日期按交易日倒序返回最新日期在 DataFrame 首行与 A 股daily接口的返回习惯一致直接df.head()即可查看最近行情。同一交易日的 bid 与 ask 价格并不同如 20190524 当日bid_close6.9326、ask_close6.9330两者之差约 4 个 pip即为该时点的买卖点差。tick_qty 波动显著从 1.8 万到 30 万笔不等可作流动性参考。结合上文输入参数还可以进行更精细的查询例如按单日提取全市场行情、按交易日遍历补全历史# 提取指定交易日的全部外汇行情 df pro.fx_daily(trade_date20190524, exchangeFXCM) # 按日期区间循环补全单次最多 1000 行可按年分段多次提取 for y in range(2015, 2021): df pro.fx_daily(ts_codeUSDCNH.FXCM, start_datef{y}0101, end_datef{y}1231) # 处理并入库 df ...由于单次调用最多返回 1000 行拉取多年历史时应以年或更短区间为步长多次请求这也是该接口「可多次提取、总量不限」限量规则下的标准用法。六、配套接口用 fx_obasic 获取品种清单fx_daily的ts_code参数取值依赖品种清单配套文档外汇基础信息海外.md)接口fx_obasic提供了全量可交易品种同样仅覆盖 FXCM 交易商单次可提取全部数据需至少 2000 积分。fx_obasic的classify参数定义了品种分类体系对理解fx_daily可查询的标的范围至关重要序号分类代码分类名称样例1FX外汇货币对USDCNH美元人民币对2INDEX指数US30美国道琼斯工业平均指数3COMMODITY大宗商品SOYF大豆4METAL金属XAUUSD黄金5BUND国库债券Bund长期欧元债券6CRYPTO加密数字货币BTCUSD比特币7FX_BASKET外汇篮子USDOLLAR美元指数其调用示例与输出字段ts_code、name、min_unit、max_unit、pip、pip_cost等合约规格信息如下pro ts.pro_api() # 获取差价合约(CFD)中指数类产品的基础信息 df pro.fx_obasic(exchangeFXCM, classifyINDEX, fieldsts_code,name,min_unit,max_unit,pip,pip_cost)返回数据示例节选ts_code name min_unit max_unit pip pip_cost 0 AUS200.FXCM 澳大利亚标准普尔200指数 1.0 2000.0 1.0 0.1 1 CHN50.FXCM 富时中国A50指数 1.0 100.0 1.0 0.1 ... 11 US30.FXCM 道琼斯工业平均指数 1.0 4000.0 1.0 0.1 12 US2000.FXCM 美国罗素2000指数 1.0 5000.0 0.1 0.1实际使用时可以先pro.fx_obasic(classifyFX)拉取全部外汇货币对代码再逐一代入fx_daily获取日线行情形成「先查品种、再拉行情」的标准流水线。七、实战要点与注意事项1. 权限与频控fx_daily与fx_obasic均要求至少 2000 积分5000 积分以上可获得更高的调用频次。积分不足时接口会返回权限错误需先按积分获取办法提升账户积分。单次最多 1000 行历史数据务必分段提取总量不限理论上可覆盖全部历史。2. 时区一致性所有日期参数均为GMT比北京时间晚一天。建议在工程中将日期参数统一以 GMT 计算或在本地封装一层「北京时间 → GMT 日期」的转换函数避免因时区错位导致数据缺失或重复。3. 数据口径数据源为 FXCM 交易商报价属于 CFD/差价合约口径的行情与银行间外汇市场官方中间价口径不同用于量化研究时应注明数据来源与口径。bid_*与ask_*为双侧报价构建价格序列时按需选择或合成中价。4. 字段选择通过fields参数精简输出例如只需研究价格走势时可取ts_code,trade_date,bid_close,ask_close减少网络传输与内存占用。5. 与仓库其他资料的配合本 Skill 包的外汇数据文档位于a_全网优秀资源/10_大模型/07_skill包/vibe_trading_skills/tushare/references/外汇数据/目录下除本文所述日线行情外还有基础信息文档可供联动Skill 包总览 SKILL.md 中的「参数格式说明」日期YYYYMMDD、ts_code格式、返回 pandas DataFrame是本接口所有参数约定的统一基准调用前建议通读。八、完整可运行示例综合以上内容给出一个可直接复制运行的外汇日线行情拉取脚本可参考仓库 scripts/stock_data_example.py 的 try/except 与主函数组织风格import os import tushare as ts token os.getenv(TUSHARE_TOKEN) or ts.get_token() pro ts.pro_api(token) def get_fx_daily(ts_codeUSDCNH.FXCM, start_date20190101, end_date20190524): 获取外汇日线行情 try: df pro.fx_daily(ts_codets_code, start_datestart_date, end_dateend_date) print(f{ts_code} 外汇日线行情获取成功共 {len(df)} 条记录) print(df.head()) # 构造中价序列示例 if bid_close in df.columns and ask_close in df.columns: df[mid_close] (df[bid_close] df[ask_close]) / 2 return df except Exception as e: print(f获取外汇日线行情失败{e}) return None def get_fx_basic(classifyFX): 获取外汇品种基础信息 try: df pro.fx_obasic(exchangeFXCM, classifyclassify, fieldsts_code,name,classify,exchange,pip) print(f{classify} 分类品种清单获取成功共 {len(df)} 条) print(df.head()) return df except Exception as e: print(f获取外汇基础信息失败{e}) return None if __name__ __main__: basic get_fx_basic(classifyFX) # 先取品种清单 daily get_fx_daily() # 再拉指定货币对日线该脚本完整覆盖了「Token 初始化 → 品种查询 → 日线拉取 → 中价合成」的典型链路运行前确保账户积分满足 2000 积分门槛且已配置TUSHARE_TOKEN环境变量。参考文档与源码索引本文核心文档外汇日线行情配套基础信息文档外汇基础信息海外.md)Skill 总览与参数约定SKILL.md调用风格参考脚本股票数据获取示例、基金数据获取示例赞分享金融科技示例工程【免费下载链接】ai_quant_tradeStock AI Trader: 1-stop platform for learning, sim live trading. Covers: stock basics, strategies, LLMs, factor mining, ML/DL/RL, graph nets, HFT, C deploy JoinQuant code. 股票AI操盘手一站式学习、模拟、实盘平台。涵盖股票基础、策略、大模型、因子挖掘、机器学习/深度学习/强化学习、图网络、高频交易、C部署及聚宽代码。项目地址https://gitcode.com/gh_mirrors/ai/ai_quant_trade点击查看免费下载相关推荐ai_quant_trade 量化数据接入OKX V5 批量行情接口/api/v5/market/tickers实战指南ai_quant_trade 量化数据接入OKX V5 批量行情接口/api/v5/market/tickers实战指南 导读 本文以 ai_quant_金融科技示例工程ai_quant_trade 加密货币数据源实战CCXT 统一交易所行情接口 Skill 使用指南ai_quant_trade 加密货币数据源实战CCXT 统一交易所行情接口 Skill 使用指南 导读 本文围绕 vibe_trading_skills/c金融科技示例工程Vibe-Trading 实战基于 Tushare sw_daily 接口获取申万行业指数日行情数据Vibe Trading 实战基于 Tushare sw_daily 接口获取申万行业指数日行情数据 本篇技术指南以 Vibe Trading 项目内置的 T人工智能AI Agent金融科技MCP 服务上一篇Firefox for iOS 日志体系现代化基于 SwiftyBeaver 的统一日志抽象层与 Sentry 面包屑方案ADR-0001下一篇5分钟终极指南跨平台划词翻译神器pot-desktop的完整使用教程创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考