核心用法
mx-stocks-screener 是一款面向全球金融市场的自然语言选股工具,由东方财富(East Money)官方提供数据服务。用户无需掌握复杂的数据库查询语法,仅通过中文或英文自然语言描述即可筛选多类资产:
- 覆盖资产类型:A股、港股、美股、基金、ETF、可转债、行业板块
- 筛选维度:股价/市值/市盈率等财务指标、技术信号(均线突破、连续涨跌)、主营业务/产品、行业概念、市场情绪、龙虎榜数据等
- 复合逻辑:支持且、或、非、排序等条件组合
使用方式灵活,既可直接命令行调用 get_data.py 脚本,也可在 Python 代码中异步调用 query_mx_stocks_screener() 函数。结果以 UTF-8 编码的 CSV 文件及数据说明文本形式本地输出,兼容 Excel 与 pandas 分析。
显著优点
1. 自然语言交互门槛极低:将专业金融数据查询简化为"股价大于500元且主力流入"这类口语化表达,大幅降低量化分析入门门槛。
2. 跨市场统一接口:单一工具覆盖中港美三大市场及基金、债券品类,适合构建全球化投资组合与跨市场监控体系。
3. 数据权威性高:直接对接东方财富数据库,数据源经过金融持牌机构审核,财务数据、行情数据实时性强。
4. 输出格式友好:CSV 列名采用中文映射,自带数据说明文档,便于快速开展二次分析与策略回测。
5. 安全设计规范:API 密钥强制环境变量配置(EM_API_KEY),禁止硬编码;HTTPS 全链路加密;代码结构清晰含完整错误处理。
潜在缺点与局限性
1. 服务依赖性强:必须联网访问东方财富官方 API(ai-saas.eastmoney.com),离线环境无法使用,且受服务可用性制约。
2. 需前置注册与密钥配置:用户需主动注册妙想账号、申请 API Key 并配置环境变量,对非技术背景用户存在操作门槛。
3. 输出目录管理责任在用户:默认使用相对路径,若未通过 MX_STOCKS_SCREENER_OUTPUT_DIR 显式指定,可能导致数据文件位置不确定。
4. 功能边界为只读查询:目前仅支持数据筛选与导出,不支持直接交易执行或实时组合再平衡。
5. A股进阶功能覆盖有限:高管信息、并购事件等查询虽支持,但实际可用字段需以接口返回为准,复杂投研场景可能需补充其他数据源。
适合人群
- 个人投资者:希望快速筛选符合特定策略的股票、基金,构建自定义股票池
- 量化研究入门者:需要用真实数据验证策略想法,但不想先学习 SQL 或专业终端操作
- 跨市场资产配置者:同时关注 A 股、港股、美股及 ETF,需要统一监控工具
- 金融分析师:快速导出结构化数据进行深度建模或报告撰写
常规风险
- API 密钥泄露风险:若用户误将
EM_API_KEY写入代码或日志,可能导致密钥被盗用。务必遵循环境变量配置规范。 - 数据时效性风险:行情类数据虽实时,但财务数据可能存在披露延迟,重大决策建议交叉验证。
- 网络传输中间人攻击:虽采用 HTTPS 加密,但在不可信网络环境下仍需警惕 DNS 劫持,建议高安全环境配置域名白名单。
- 本地文件权限风险:CSV 输出可能含持仓或关注列表等敏感信息,建议为输出目录设置
chmod 700限制访问。