核心用法
YFinance Skill 是一个基于 FastAPI 本地服务器的股票数据查询工具,通过调用 Yahoo Finance API 获取实时及历史市场数据。该技能专为印尼证券交易所 (IDX) 用户优化,可自动为无后缀的股票代码添加 .JK 后缀(如 BBCA → BBCA.JK)。
主要功能模块:
- 实时股价:获取当前价格、涨跌幅、日内高低、成交量、市值
- 历史数据:支持 1 分钟至月度级别的 OHLCV 数据,时间跨度从 1 天到 20 年
- 基本面分析:P/E 比率、P/B、EPS、ROE/ROA、负债权益比、自由现金流、Beta 系数
- 股息历史:完整分红记录查询
- 股票分割:历史拆股信息追踪
使用方式:本地启动 uvicorn 服务器(端口 8000),通过 HTTP GET 请求各端点,返回结构化 JSON 与格式化文本双格式。
---
显著优点
1. 印尼市场深度优化:自动识别 IDX 股票代码,内置主流股映射(BBCA、BBRI、TLKM、GOTO、ASII 等),大幅降低印尼用户操作门槛
2. 双格式输出:同时提供机器可读 JSON 与人工友好格式化文本,兼顾自动化处理与直接展示需求
3. 数据维度全面:覆盖价格、成交量、估值指标、盈利能力、财务健康度、股东回报等投资分析全链条
4. 灵活的时序查询:支持周期模式(1d/5d/1mo/.../max)与自定义日期范围双模式,满足技术分析与回测需求
5. 零成本数据源:基于 Yahoo Finance 免费 API,无需 API 密钥或订阅费用
---
潜在缺点与局限性
| 局限类别 | 具体说明 |
|---------|---------|
| **数据延迟** | Yahoo Finance 数据延迟约 15 分钟,非实时行情,高频交易场景不适用 |
| **依赖外部服务** | 数据质量与可用性完全依赖 Yahoo Finance,存在服务变更或限流风险 |
| **本地服务器依赖** | 必须手动启动并维护 uvicorn 进程,增加部署复杂度,无高可用保障 |
| **印尼市场覆盖偏差** | 虽对 IDX 优化,但 Yahoo Finance 对新兴市场数据完整度常逊于发达市场 |
| **无认证机制** | 本地服务端点无访问控制,多用户环境存在数据暴露风险 |
| **维护状态未知** | 代码仓库为个人项目模板 (`your-username`),长期维护与更新保障存疑 |
---
适合人群
- 印尼散户投资者:需要快速查询本土蓝筹股(BBCA、BBRI 等)价格与基本面的个人投资者
- 基本面分析用户:关注 P/E、ROE、股息 yield 等价值指标的中长期投资者
- 教育与研究用途:金融专业学生、教师进行市场数据分析与教学演示
- 轻量级量化爱好者:需要历史 OHLCV 数据进行简单回测或图表生成的开发者
不适合人群:专业机构投资者、需要毫秒级实时行情的日内交易员、依赖高可用 SLA 的生产系统。
---
常规风险
1. 投资决策风险:技能明确禁止编造价格,但用户需知悉 15 分钟延迟可能导致决策偏差,不应作为唯一交易依据
2. 服务中断风险:本地服务器可能因进程崩溃、端口冲突、依赖故障而离线,缺乏自动故障转移
3. 数据准确性风险:Yahoo Finance 历史数据偶有拆分/除权调整错误,关键分析建议交叉验证
4. 合规边界风险:若用于向第三方提供投资建议,需遵守印尼 OJK 金融监管要求,避免未经许可的投资咨询行为
5. 技术债务风险:基于个人模板仓库的技能,未来可能面临 Python/yfinance 库版本不兼容问题