核心用法
FinClaw 采用模块化Python脚本架构,通过{baseDir}/venv/bin/python3调用各功能模块。核心流程包括:首次运行setup.py创建虚拟环境与本地数据库,随后在openclaw.json中配置可选API密钥(FINNHUB_API_KEY、FRED_API_KEY等)以解锁高级功能。
市场数据层:quote.py自动识别资产类型(.IS后缀→BIST、BTC/ETH→加密货币、USD/TRY格式→外汇,其余默认识别为美股),支持60秒缓存机制与JSON输出;chart.py生成PNG可视化图表,可选蜡烛图/线图类型,叠加SMA/EMA等技术指标;technical.py集成RSI、MACD、布林带等经典技术分析工具,输出买卖信号。
组合管理与预警:portfolio.py完整支持增删改查持仓记录,自动计算成本基础;alerts.py提供多条件价格预警(高于/低于/百分比变化/成交量阈值),配合check_alerts.py可实现cron定时监控;pnl.py实时统计已实现与未实现损益。
情报分析层:briefing.py生成开盘/收盘/周末三类市场简报;macro.py对接FRED数据库获取美联储利率等宏观指标;sentiment.py利用Alpha Vantage进行新闻情绪分析;research.py输出个股深度研究报告。
显著优点
1. 零门槛核心功能:实时报价、图表绘制、技术分析、投资组合管理等高频需求无需任何API密钥,降低使用门槛
2. 多市场覆盖:同时支持美股、土耳其BIST本土市场、加密货币(Binance)及外汇四大资产类别
3. 本地化计算:技术分析与图表生成基于matplotlib/mplfinance本地运算,无网络延迟,数据隐私可控
4. 模块化设计:15+独立脚本可按需调用,支持JSON输出便于与其他工具链集成
5. 开源生态:依赖yfinance、pandas等成熟开源库,透明度与可审计性强
潜在缺点与局限性
1. 数据源层级差异:免费层级依赖yfinance(非官方API,存在速率限制与稳定性风险),Finnhub/Binance等官方渠道需密钥解锁更稳定服务
2. BIST数据局限:土耳其市场通过yfinance获取,本地上市公司覆盖度与实时性逊于专业终端
3. 无实时流数据:采用拉取模式(polling),非WebSocket实时推送,高频交易场景不适用
4. 情绪分析语言限制:Alpha Vantage新闻源以英语为主,对非英语市场(如BIST)情绪覆盖不足
5. 自建维护成本:Python虚拟环境、本地数据库及cron配置需要一定技术背景,非纯SaaS体验
适合人群
- 个人投资者:需要跨市场监控持仓、设置价格预警的散户用户
- 技术型交易者:偏好本地化技术分析、希望自定义工作流的中高级用户
- 土耳其市场参与者:BIST投资者获得本土化数据支持(yfinance .IS后缀识别)
- 加密货币持有者:需同时追踪传统资产与加密资产的多类资产配置者
- 财务分析师:需要快速生成宏观简报、 earnings日历的研究人员
常规风险
| 风险类别 | 具体说明 |
|---------|---------|
| **数据延迟风险** | yfinance等免费源可能存在15-20分钟延迟,不适用于日内高频决策 |
| **API密钥管理** | 用户自行保管多平台密钥,存在泄露或配置错误导致功能失效风险 |
| **本地环境依赖** | Python版本冲突、虚拟环境损坏可能导致技能完全不可用 |
| **投资决策风险** | 技术分析信号仅供参考,不构成投资建议;自动化预警可能产生误报 |
| **第三方服务变更** | Finnhub/FRED/Alpha Vantage等可能调整免费层级政策或API接口 |