# TDX API配置快速指南 ## 问题说明 如果您看到以下警告: ``` WARNING:low_price_bull_service:TDX数据源未配置,无法获取股票数据 ``` 说明系统无法连接到TDX API服务,需要进行配置。 ## 解决方案 ### 步骤1:配置TDX API地址 在 `.env` 文件中添加以下配置: ```bash # TDX数据源API配置 TDX_BASE_URL=http://127.0.0.1:5000 ``` ### 步骤2:确保TDX API服务已启动 TDX API服务需要单独启动,请检查: 1. **检查服务是否运行** ```bash # 在浏览器中访问 http://127.0.0.1:5000/api/health # 或使用curl命令 curl http://127.0.0.1:5000/api/health ``` 2. **如果服务未启动** - 请启动您的TDX API服务 - 默认端口:5000 - 如使用其他端口,请修改.env中的URL ### 步骤3:测试配置 运行测试脚本验证配置: ```bash python test_tdx_api.py ``` **期望输出**: ``` ============================================================ TDX API配置测试 ============================================================ 1. TDX API地址: http://127.0.0.1:5000 2. 测试健康检查接口... ✅ 健康检查成功 响应: OK 3. 测试K线数据接口... 测试股票: 000001 ✅ K线数据获取成功 数据条数: 250 最新K线数据: - 日期: 2024-12-12 - 开盘: 10.50 - 收盘: 10.60 - 最高: 10.80 - 最低: 10.30 - 成交量: 1000000 ✅ 数据量充足,可以计算MA20(需要至少20条) 4. 测试均线计算... ✅ 均线计算成功 - 收盘价: 10.60 - MA5: 10.55 - MA20: 10.45 - 趋势: 🟢 MA5 > MA20 (多头) ============================================================ ✅ 所有测试通过!TDX API配置正常 ============================================================ ``` ## TDX API接口说明 ### 核心接口 | 接口 | 说明 | 示例 | |------|------|------| | /api/health | 健康检查 | - | | /api/kline | K线数据 | ?code=000001&type=day | | /api/quote | 五档行情 | ?code=000001 | | /api/stock-info | 综合信息 | ?code=000001 | ### K线数据接口详情 **URL**: `/api/kline` **参数**: - `code`: 股票代码(必填) - 支持格式: - 纯数字:`000001`、`600000` - 市场前缀:`SZ000001`、`SH600000` - 示例:000001(平安银行) - 示例:600000(浦发银行) - `type`: K线类型(必填) - `day`: 日K线 - `week`: 周K线 - `month`: 月K线 **代码格式说明**: - 系统会自动处理不同格式的股票代码 - 如果使用`SZ`/`SH`前缀失败,会自动重试纯数字代码 - 支持带后缀的代码(如`002259.SZ`),系统会自动去除后缀 **返回格式**: ```json [ { "date": "2024-12-12", "open": 10.50, "high": 10.80, "low": 10.30, "close": 10.60, "volume": 1000000 }, ... ] ``` **使用示例**: ```bash # 获取平安银行日K线 curl "http://127.0.0.1:5000/api/kline?code=000001&type=day" ``` ## 常见问题 ### Q1: 连接失败,显示连接超时? **原因**: - TDX API服务未启动 - 防火墙阻止了连接 - 端口被占用 **解决方案**: 1. 检查TDX API服务是否启动 2. 检查端口5000是否被占用 3. 尝试使用其他端口并修改.env配置 ### Q2: 健康检查失败,HTTP 404? **原因**: - TDX API服务版本不支持`/api/health`接口 - URL配置错误 **解决方案**: 1. 尝试访问其他接口,如`/api/kline` 2. 检查.env中的TDX_BASE_URL是否正确 3. 确认服务地址和端口 ### Q3: K线数据获取失败? **原因**: - 股票代码不存在 - 接口参数错误 - 数据源未就绪 **解决方案**: 1. 使用已知存在的股票代码测试(如000001) 2. 检查参数格式是否正确 3. 查看TDX API服务日志 ### Q4: 数据量不足,无法计算MA20? **原因**: - TDX API返回的K线数据少于20条 - 新上市股票数据不足 **解决方案**: 1. 这是正常情况,系统会自动跳过 2. 等待股票积累更多交易日数据 3. 监控服务会在下次扫描时重试 ### Q5: 如何使用远程TDX API服务? 如果TDX API服务部署在其他服务器上: ```bash # .env配置 TDX_BASE_URL=http://192.168.1.100:5000 # 或使用域名 TDX_BASE_URL=http://tdx-api.example.com:5000 ``` ### Q6: 如何修改扫描间隔? 在.env文件中修改: ```bash # 扫描间隔(秒) LOW_PRICE_BULL_SCAN_INTERVAL=60 # 默认60秒,可改为30-300秒 ``` 或在监控面板的"⚙️ 监控配置"中动态修改。 ## 配置检查清单 - [ ] ✅ .env文件中已配置TDX_BASE_URL - [ ] ✅ TDX API服务已启动 - [ ] ✅ 可以访问http://127.0.0.1:5000/api/health - [ ] ✅ 运行test_tdx_api.py测试通过 - [ ] ✅ 在监控面板启动监控服务 - [ ] ✅ 配置了Webhook通知(可选) ## 下一步 配置完成后: 1. 进入"低价擒牛"选股板块 2. 执行选股,查看结果 3. 点击"➕ 加入策略监控" 4. 进入"📊 策略监控"面板 5. 点击"▶️ 启动监控服务" 6. 监控服务将每60秒扫描一次 ## 需要帮助? 如果仍然遇到问题,请: 1. 查看控制台错误日志 2. 运行`python test_tdx_api.py`获取详细错误信息 3. 检查TDX API服务日志 4. 确认网络连接正常 --- **文档版本**: v1.0 **更新日期**: 2024-12-12