04db423416
- 70 skills with code and documentation - Add .gitignore (ignore __pycache__, output/, temp/, venv/) - Clean up test intermediates and caches
233 lines
7.1 KiB
Markdown
233 lines
7.1 KiB
Markdown
# 多源股票数据查询技能 (Multi-Source Stock Data Query)
|
||
|
||
## 技能概述
|
||
|
||
这是一个专业的股票数据查询技能,通过**至少3个独立数据源的交叉验证**来确保股票价格、成交量等关键信息的准确性。
|
||
|
||
## 核心特性
|
||
|
||
### 1. 多源数据集成
|
||
- **Yahoo Finance** - 全球市场覆盖
|
||
- **Google Finance** - 实时数据和历史数据
|
||
- **东方财富** - A股/H股专业数据
|
||
- **雪球** - 中文市场深度数据
|
||
- **交易所官方** - 最权威的实时数据
|
||
|
||
### 2. 交叉验证机制
|
||
- **价格一致性检查**:多个数据源价格差异不超过3%
|
||
- **时间戳验证**:确保数据来自同一交易时段
|
||
- **异常值过滤**:自动识别和排除明显错误数据
|
||
- **置信度评分**:基于数据源一致性和可靠性给出置信度
|
||
|
||
### 3. 完整数据要素
|
||
- **基础价格**:当前价、开盘价、最高价、最低价、收盘价
|
||
- **交易量**:成交量、成交额、换手率
|
||
- **市值信息**:总市值、流通市值、市盈率、市净率
|
||
- **技术指标**:52周高低点、涨跌幅、均线数据
|
||
- **基本面**:每股收益、股息率、财务比率
|
||
|
||
### 4. 智能错误处理
|
||
- **数据源失效检测**:自动切换备用数据源
|
||
- **网络异常重试**:智能重试机制避免临时故障
|
||
- **用户透明报告**:明确告知数据来源和置信度
|
||
- **安全回退**:无法获取准确数据时明确告知而非猜测
|
||
|
||
## 技术架构
|
||
|
||
```
|
||
StockDataQuery
|
||
├── DataSourceManager (数据源管理)
|
||
│ ├── YahooFinanceAPI
|
||
│ ├── GoogleFinanceAPI
|
||
│ ├── EastMoneyAPI
|
||
│ ├── XueqiuAPI
|
||
│ └── ExchangeOfficialAPI
|
||
├── DataValidator (数据验证器)
|
||
│ ├── PriceConsistencyChecker
|
||
│ ├── TimestampValidator
|
||
│ ├── OutlierDetector
|
||
│ └── ConfidenceScorer
|
||
├── DataAggregator (数据聚合器)
|
||
│ ├── WeightedAverageCalculator
|
||
│ ├── ConsensusFinder
|
||
│ └── FinalResultBuilder
|
||
└── ErrorHandler (错误处理器)
|
||
├── FallbackMechanism
|
||
├── UserNotification
|
||
└── LoggingSystem
|
||
```
|
||
|
||
## 使用规范
|
||
|
||
### 必须遵守的原则
|
||
1. **绝不单源依赖**:至少使用2个数据源,理想情况3个以上
|
||
2. **置信度门槛**:置信度低于80%的数据必须标记为不可靠
|
||
3. **透明度要求**:必须报告所有使用的数据源和验证结果
|
||
4. **安全第一**:宁可返回"数据不可用",也不返回可能错误的数据
|
||
|
||
### 查询流程
|
||
1. **输入标准化**:统一股票代码格式(00700.HK, 600519.SH等)
|
||
2. **并行查询**:同时向多个数据源发起请求
|
||
3. **数据验证**:检查一致性、时间戳、异常值
|
||
4. **结果聚合**:计算加权平均或寻找共识
|
||
5. **置信度评估**:基于验证结果给出置信度评分
|
||
6. **输出结果**:包含完整数据和元信息
|
||
|
||
## 数据源详细规格
|
||
|
||
### Yahoo Finance
|
||
- **覆盖范围**:全球主要市场
|
||
- **更新频率**:实时(延迟15分钟)
|
||
- **数据完整性**:★★★★☆
|
||
- **可靠性**:★★★★★
|
||
|
||
### Google Finance
|
||
- **覆盖范围**:全球主要市场
|
||
- **更新频率**:实时(延迟10-15分钟)
|
||
- **数据完整性**:★★★★☆
|
||
- **可靠性**:★★★★☆
|
||
|
||
### 东方财富
|
||
- **覆盖范围**:A股、港股、基金
|
||
- **更新频率**:实时(延迟5分钟)
|
||
- **数据完整性**:★★★★★(中文市场)
|
||
- **可靠性**:★★★★★(中文市场)
|
||
|
||
### 雪球
|
||
- **覆盖范围**:A股、港股、美股中概股
|
||
- **更新频率**:实时(延迟5-10分钟)
|
||
- **数据完整性**:★★★★☆
|
||
- **可靠性**:★★★★☆
|
||
|
||
### 交易所官方
|
||
- **覆盖范围**:各自交易所上市股票
|
||
- **更新频率**:实时(无延迟)
|
||
- **数据完整性**:★★★★★
|
||
- **可靠性**:★★★★★
|
||
|
||
## 质量保证标准
|
||
|
||
### 数据准确性验证
|
||
- **价格验证**:多个源价格差异 ≤ 3%
|
||
- **成交量验证**:多个源成交量差异 ≤ 10%
|
||
- **时间戳验证**:所有数据来自同一交易日
|
||
- **异常检测**:自动识别明显偏离正常范围的数据
|
||
|
||
### 性能标准
|
||
- **响应时间**:≤ 5秒(正常网络条件)
|
||
- **成功率**:≥ 95%(正常市场交易时间)
|
||
- **并发能力**:支持批量查询(最多50只股票)
|
||
|
||
### 错误处理标准
|
||
- **网络错误**:自动重试3次,间隔1秒
|
||
- **数据源错误**:自动切换到备用数据源
|
||
- **验证失败**:返回错误码和详细原因
|
||
- **完全失败**:明确告知"无法获取可靠数据"
|
||
|
||
## 集成接口
|
||
|
||
### Python API
|
||
```python
|
||
from stock_data_query import MultiSourceStockQuery
|
||
|
||
# 单只股票查询
|
||
query = MultiSourceStockQuery()
|
||
result = query.get_stock_data("00700.HK")
|
||
|
||
# 批量查询
|
||
codes = ["00700.HK", "09868.HK", "001309.SZ"]
|
||
results = query.get_batch_stock_data(codes)
|
||
|
||
# 获取详细验证报告
|
||
detailed_result = query.get_stock_data("00700.HK", include_validation=True)
|
||
```
|
||
|
||
### 命令行接口
|
||
```bash
|
||
# 单只股票
|
||
python stock_data_query.py --code 00700.HK
|
||
|
||
# 批量查询
|
||
python stock_data_query.py --codes 00700.HK,09868.HK,001309.SZ
|
||
|
||
# 详细模式
|
||
python stock_data_query.py --code 00700.HK --detailed
|
||
```
|
||
|
||
## 输出格式规范
|
||
|
||
### 基础输出
|
||
```json
|
||
{
|
||
"code": "00700.HK",
|
||
"name": "腾讯控股",
|
||
"price": 552.00,
|
||
"currency": "HKD",
|
||
"volume": 47623340,
|
||
"market_cap": 4980000000000,
|
||
"pe_ratio": 21.92,
|
||
"timestamp": "2026-03-11T16:08:13+08:00",
|
||
"confidence_score": 95,
|
||
"data_sources": ["yahoo_finance", "eastmoney", "xueqiu"],
|
||
"validation_status": "passed"
|
||
}
|
||
```
|
||
|
||
### 详细验证输出
|
||
```json
|
||
{
|
||
"basic_data": {...},
|
||
"validation_details": {
|
||
"price_consistency": {
|
||
"yahoo": 552.00,
|
||
"eastmoney": 551.80,
|
||
"xueqiu": 552.20,
|
||
"consistency_score": 98
|
||
},
|
||
"timestamp_consistency": {
|
||
"all_same_day": true,
|
||
"max_time_diff_minutes": 2
|
||
},
|
||
"outlier_detection": {
|
||
"outliers_found": false,
|
||
"threshold_used": "3_std_deviation"
|
||
}
|
||
}
|
||
}
|
||
```
|
||
|
||
## 触发条件和使用场景
|
||
|
||
### 自动触发场景
|
||
- 用户询问股票价格、分析、建议
|
||
- 需要进行投资组合分析
|
||
- 自选股或持仓股票查询
|
||
- 市场行情分析需求
|
||
|
||
### 手动调用场景
|
||
- 需要验证特定股票数据
|
||
- 批量获取多只股票数据
|
||
- 进行历史数据对比分析
|
||
|
||
## 维护和监控
|
||
|
||
### 日常维护
|
||
- **数据源健康检查**:每日自动测试各数据源可用性
|
||
- **性能监控**:记录响应时间和成功率
|
||
- **错误日志**:详细记录所有查询失败情况
|
||
- **用户反馈**:根据用户指出的错误快速修正
|
||
|
||
### 版本更新
|
||
- **新数据源添加**:根据需求扩展支持更多市场
|
||
- **算法优化**:持续改进验证和聚合算法
|
||
- **性能提升**:优化查询效率和并发处理能力
|
||
|
||
## 与其他技能的协同
|
||
|
||
此技能作为基础数据服务,应被以下技能调用:
|
||
- `stock-analysis`:股票分析技能
|
||
- `portfolio-management`:投资组合管理技能
|
||
- `trading-strategy`:交易策略技能
|
||
- `market-monitoring`:市场监控技能
|
||
|
||
**执行原则**:任何涉及股票数据的操作都必须首先调用此技能获取准确数据。 |