FIML-金融智能元层
具有智能提供商编排和多语言合规性的AI原生金融数据MCP服务器
           
 
📋 项目状态: ✅ 第一阶段完成 | 更新日志) 当前状态:第一阶段完成✅ | 第二阶段积极发展🚧 | 版本: 0.4.1 | 代码库:32000+个位置| 测试: 🎉 已收集1403个 (核心套件通过率100%)| 🌍 v0.4.1中的新功能:FIML移动应用程序(Expo)、使用分析和配额管理、多语言合规护栏 ✅ 生产就绪:零CodeQL安全警报,全面的测试覆盖率,CI/CD验证 🔧 CI/CD:基于组件的测试工作流程,可实现更快的反馈(CI工作流结构)
📊 快速链接: - 🎉 v0.4.1发行说明 -移动应用程序、使用分析和合规护栏层 - 📘 技术和战略评估 - 📚 全部文件
______________________________________________________________________
🎯 定位
“FIML是人工智能原生金融的智能数据路由器。我们以2%的成本为ChatGPT和Claude提供与彭博社相同的数据质量,且无需任何集成工作。我们的仲裁引擎会自动为每个查询选择最佳数据源,在提供商失败时无缝回退。对于开发人员来说,我们是金融数据的AWS——抽象掉复杂性,只为你使用的东西付费。”
标语: *“彭博资讯的智慧,API的简洁,AI品牌的设计。每月15美元。”*
______________________________________________________________________
FIML是一个MCP(模型上下文协议)服务器,通过统一的接口提供智能金融数据访问。它实现了一个数据仲裁层,该层根据可用性、新鲜度和可靠性自动选择最佳数据提供者。该项目包括一个全面的合规护栏系统,支持9种语言,以实现全球监管合规。
该系统的设计具有10年的可扩展性路线图(见 蓝色印花.md 对于完整的愿景),并已通过v0.4.1的移动和分析功能达到生产就绪状态。
🌟 实际工作原理(第1阶段完成+v0.4.1增强)
✅ 核心基础设施(100%)
- 🔀 数据仲裁引擎:多提供商评分(5个因素)、自动回退、冲突解决
- 🏗️ 提供商系统:17家股票、加密货币、外汇等领域的工作提供商
- 免费/基本级别:雅虎财经、CoinGecko、模拟提供商 - 高级供应商 (需要API密钥): - 股票和股票:阿尔法Vantage、FMP、Polygon.io、Finnhub、Twelvedata、Tiingo、Intrinio、Marketstack、Quandl - 经济与宏观:FRED(美联储经济数据),Quantl - 加密货币:CCXT(多交易所)、CoinGecko、CoinMarketCap、DeLiLama - 新闻:NewsAPI、Alpha Vantage、Finnhub、Tiingo - 多资产:Polygon.io、Finnhub、Twelvedata(股票、外汇、加密货币、ETF)
- ⚡ 高速缓存体系结构:L1(Redis 10-100ms)和L2(PostgreSQL 300-700ms)具有智能优化
- 缓存热门符号的预热 - 智能驱逐政策(LRU/LFU) - 延迟跟踪和命中率优化 - 1000+并发请求支持
- 📊 FK-DSL解析器:完整的基于Lark的语法和执行框架
- 🔧 MCP服务器:基于FastAPI的服务器,配备9个完全可操作的MCP工具
- 🌐 WebSocket流媒体:实时价格和OHLCV数据流(650行)
- 📦 Docker部署:配置了12个服务的完整docker-compose.yml
- 🧪 测试套件: 🎉 收集了1403个测试(核心套件通过率100%),全面覆盖
- 💰 实时数据:来自多家提供商的真实股价(AAPL、TSLA、MSFT)
- ₿ 加密货币支持:通过CCXT多交易所集成BTC、ETH
- 🛡️ 合规框架:区域检查(8个区域)、免责声明、投资建议检测
- 📈 监控挂钩:Prometheus指标端点、健康检查
🎉 v0.4.1移动和分析(新增!)
- 📱 FIML移动应用程序(博览会):
- 交叉平台的:通过Expo/React Native提供iOS、Android和Web支持 - 聊天界面:交互式人工智能财务助理(Maya、Theo、Zara) - 密钥管理:设备上安全的API密钥存储和管理 - 市场仪表板:实时价格跟踪(即将推出) - 学习中心:互动教育内容(即将推出)
- 📊 使用分析和配额:
- 提供商跟踪:每个提供程序的实时API使用情况跟踪 - 配额管理:自动执行免费/高级级别限制 - Redis持久性:具有每日/每月汇总功能的耐用使用计数器 - 智能警报:接近极限的警告阈值(80%)
🌍 v0.3.0合规护栏层
- 🌍 多语言支持:9种语言(EN、ES、FR、DE、IT、PT、JA、ZH、FA)
- 基于脚本识别的语言自动检测(CJK,阿拉伯语) - 针对合规违规的特定语言模式匹配 - 多语言免责声明生成
- 🛡️ 高级合规执法:
- 规定性动词检测和阻止 - 建议使用上下文感知替换删除语言 - 意见作为事实模式检测 - 确定性语言节制 - 自动插入免责声明(适用于地区和资产类别)
- ⚙️ 可配置处理:
- 严格模式(阻止严重违规与修改) - 可配置的违规阈值 - 语言检测灵敏度调整
- ✅ 生产就绪:163多项合规测试通过,零安全警报
- 🔗 集成:Bot过滤器、叙述生成和API输出
🚧 第2阶段功能(主动开发-完成60%)
- 🤖 代理工作流: ✅ 已发货 -具有LLM叙事的深度股权分析和加密货币情绪工作流程
- 📝 叙事生成: ✅ 已发货 -Azure OpenAI与合规护栏集成(500多条线)
- 👁️ 看门狗系统: ✅ 已发货 -用于实时市场监控的事件流编排
- 💾 会话管理: ✅ 已发货 -Redis+PostgreSQL的多查询上下文跟踪
- 🤖 高级多代理编排: ✅ 框架完成 -基于射线的系统,配备8名专业代理
- ⚡ 性能优化: ✅ 已发货 -缓存预热、智能驱逐、负载测试套件
- 🌍 多语言合规: ✅ 已发货 -9种语言,具有自动检测功能(v0.3.0)
- 📱 移动应用程序: ✅ 已发货 -带有聊天和密钥管理的Expo/React Native应用程序(v0.4.1)
- 📊 使用情况分析: ✅ 已发货 -提供商使用跟踪和配额(v0.4.1)
- \[x\] 教育机器人:✅ 贝塔 -Telegram与课程系统集成(MVP已实现)
- 🔌 平台集成: 🔜 计划的 -ChatGPT MCP插件,Claude集成
- 🔐 安全强化: 🔜 计划的 -渗透测试、速率限制增强
📱 客户端应用程序
- 电报机器人:提供互动课程、测验和市场数据查询的教育机器人。
- 移动应用程序(Expo):React Native应用程序具有以下特点:
- 聊天界面:直接访问FIML的AI代理。 - 密钥管理:安全地管理您的提供商API密钥。 - 入职流程:介绍FIML的核心价值主张。 - 市场仪表板:实时价格跟踪和图表。 - 学习中心:获取教育内容和测验。 - 交叉平台的:可在iOS、Android和Web上运行。
🏗️ 建筑
┌─────────────────────────────────────────────────────────┐
│ CLIENT LAYER │
│ ChatGPT | Claude Desktop | Custom Apps | Telegram │
└─────────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────┐
│ UNIFIED MCP API GATEWAY │
│ Request Router | Auth | Rate Limiter | Compliance │
└─────────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────┐
│ DATA ARBITRATION ENGINE │
│ Provider Scoring | Auto-Fallback | Conflict Resolution │
└─────────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────┐
│ MULTI-AGENT ORCHESTRATION (Ray) │
│ Fundamentals | Technical | Macro | Sentiment | News │
└─────────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────┐
│ DATA PROVIDER ABSTRACTION │
│ Alpha Vantage | FMP | CCXT | Yahoo Finance | Custom │
└─────────────────────────────────────────────────────────┘📋 理解FIML的结构
FIML区分了两种类型的能力:
| 类型 | 描述 | 示例 |
|---|---|---|
| 外部MCP工具 | 人工智能客户端(ChatGPT,Claude)可通过MCP协议调用API端点 | search-by-symbol, execute-fk-dsl, create-analysis-session |
| 内部组件 | 幕后为MCP工具提供动力的架构层 | 仲裁引擎、缓存管理器、提供程序注册表、光线代理 |
9 MCP工具 (API外表面):
- 核心数据工具:
search-by-symbol,search-by-coin,get-task-status,execute-fk-dsl - 会话管理:
create-analysis-session,get-session-info,list-sessions,extend-session,get-session-analytics
内部组件 (不可直接调用,为工具供电):
- 数据仲裁引擎(5因素提供商评分)
- L1/L2缓存架构(Redis+PostgreSQL)
- 17家数据提供商(雅虎财经、阿尔法Vantage、CCXT等)
- 基于射线的多代理编排(8个专用代理)
- FK-DSL解析器和执行框架
- 合规护栏系统(9种语言)
- WebSocket流媒体基础架构
🚀 快速开始
先决条件
- Docker&Docker编写
- Python 3.11+
- 数据提供商的API密钥(AlphaVantage、FMP等)
一个命令安装
./quickstart.sh此交互式脚本将:
- 检查先决条件
- 设置环境变量
- 构建Docker镜像
- 启动所有服务
- 初始化数据库
- 验证健康状况
手动安装
- 克隆仓库
git clone https://github.com/kiarashplusplus/FIML.git
cd FIML- 配置环境
cp .env.example .env
# Edit .env with your API keys and configuration- 使用Docker Compose启动服务
make build
make up- 验证安装
curl http://localhost:8000/health开发设置
# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
make dev
# Install pre-push hook (recommended)
./scripts/install-hooks.sh
# Run tests
make test
# Format code
make format📖 用法
实时WebSocket流媒体
FIML使用与REST API相同的仲裁引擎和提供程序堆栈,为实时金融数据流提供WebSocket端点。
快速入门-简单的价格流
import asyncio
import websockets
import json
async def stream_prices():
uri = "ws://localhost:8000/ws/prices/AAPL,GOOGL,MSFT"
async with websockets.connect(uri) as websocket:
# Auto-subscribed to price updates
print("Connected and streaming...")
while True:
message = await websocket.recv()
data = json.loads(message)
if data["type"] == "data":
for update in data["data"]:
print(f"{update['symbol']}: ${update['price']:.2f} "
f"({update['change_percent']:+.2f}%)")
asyncio.run(stream_prices())高级-完全控制WebSocket
async def advanced_streaming():
uri = "ws://localhost:8000/ws/stream"
async with websockets.connect(uri) as websocket:
# Subscribe to price stream
subscription = {
"type": "subscribe",
"stream_type": "price",
"symbols": ["AAPL", "TSLA"],
"asset_type": "equity",
"market": "US",
"interval_ms": 1000, # Update every second
"data_type": "price"
}
await websocket.send(json.dumps(subscription))
# Receive subscription acknowledgment
ack = await websocket.recv()
print(f"Subscribed: {ack}")
# Stream data
while True:
message = await websocket.recv()
data = json.loads(message)
if data["type"] == "data":
# Process real-time updates
for update in data["data"]:
print(f"Price update: {update}")WebSocket功能
- 实时价格更新:以可配置的间隔(100ms-60s)流式传输实时价格
- OHLCV烛台:用于技术分析的实时烛台数据
- 多资产支持:同时订阅多达50个符号
- 自动重新连接:内置心跳和连接管理
- 提供商集成:使用仲裁引擎获取最佳数据源
- 错误处理:优雅的错误报告和恢复
看 examples/websocket_streaming.py 完整示例包括:
- 简单的价格流
- 多流订阅(价格+OHLCV)
- 投资组合监控
- 自动重新连接处理
MCP工具
备注MCP(模型上下文协议)是用于AI模型到工具通信的标准化协议。MCP工具是AI客户端(ChatGPT、Claude等)可以通过此协议调用的可调用端点。这些与FIML的内部架构组件(仲裁引擎、缓存管理器、提供者注册表、Ray代理等)不同,后者在幕后为这些工具提供动力。
FIML暴露 9个MCP工具 分为两类:
核心数据工具(4个工具)
1.按符号搜索
使用即时缓存数据和异步深度分析按符号搜索股票。
{
"name": "search-by-symbol",
"arguments": {
"symbol": "TSLA",
"market": "US",
"depth": "standard",
"language": "en"
}
}2.硬币搜索
使用即时缓存数据和异步深度分析搜索加密货币。
{
"name": "search-by-coin",
"arguments": {
"symbol": "BTC",
"exchange": "binance",
"pair": "USDT",
"depth": "deep",
"language": "en"
}
}3.获取任务状态
轮询或流式传输异步分析任务的更新。
{
"name": "get-task-status",
"arguments": {
"taskId": "task-uuid-from-search",
"stream": false
}
}4.执行fk-dsl
执行金融知识DSL查询以进行复杂的多步骤分析。
{
"name": "execute-fk-dsl",
"arguments": {
"query": "EVALUATE TSLA: PRICE, VOLATILITY(30d), CORRELATE(BTC, SPY), TECHNICAL(RSI, MACD)",
"async": true
}
}会话管理工具(5个工具)
5.创建分析会话
创建新的分析会话以跟踪多查询工作流。
{
"name": "create-analysis-session",
"arguments": {
"assets": ["AAPL", "MSFT", "GOOGL"],
"sessionType": "portfolio",
"userId": "user-123",
"ttlHours": 24,
"tags": ["tech-stocks", "q4-analysis"]
}
}6.获取会话信息
获取有关现有会话的信息。
{
"name": "get-session-info",
"arguments": {
"sessionId": "session-uuid"
}
}7.列出会议
列出用户的会话。
{
"name": "list-sessions",
"arguments": {
"userId": "user-123",
"includeArchived": false,
"limit": 50
}
}8.延长会议时间
延长会话过期时间。
{
"name": "extend-session",
"arguments": {
"sessionId": "session-uuid",
"hours": 24
}
}9.获取会话分析
获取会话分析和统计数据。
{
"name": "get-session-analytics",
"arguments": {
"userId": "user-123",
"sessionType": "portfolio",
"days": 30
}
}金融知识DSL示例
# Comprehensive equity analysis
EVALUATE TSLA: PRICE, VOLATILITY(30d), CORRELATE(BTC, SPY), TECHNICAL(RSI, MACD)
# Compare cryptocurrencies
COMPARE BTC vs ETH vs SOL ON: VOLUME(7d), LIQUIDITY, MOMENTUM(14d), NETWORK_HEALTH
# Macro analysis
MACRO: US10Y, CPI, VIX, DXY → REGRESSION ON SPY
# Market scan
SCAN NASDAQ WHERE VOLUME > AVG_VOLUME(30d) * 2 AND PRICE_CHANGE(1d) > 5%代理工作流(新-第2阶段)
FIML提供生产就绪的代理工作流,该工作流协调多个专用代理、数据提供者和LLM功能,以进行全面的财务分析。
深度股权分析
结合基本面、技术、情感和人工智能叙事的多维分析:
from fiml.agents import deep_equity_analysis
from fiml.core.models import Market
# Comprehensive equity analysis
result = await deep_equity_analysis(
symbol="AAPL",
market=Market.US,
include_narrative=True,
include_recommendation=True
)
# Access results
print(f"Price: ${result.snapshot['price']:.2f}")
print(f"P/E Ratio: {result.fundamentals['metrics']['pe_ratio']}")
print(f"Technical Signal: {result.technicals['trend']['direction']}")
print(f"Recommendation: {result.recommendation['action']}")
print(f"\nAI Narrative:\n{result.narrative}")特性:
- ✅ 来自多个提供商的快速价格快照
- ✅ 基本面分析(市盈率、每股收益、净资产收益率、估值)
- ✅ 技术分析(RSI、MACD、趋势、支撑/阻力)
- ✅ 情绪分析(新闻、社交媒体)
- ✅ 风险评估(波动性、贝塔系数、相关性)
- ✅ LLM生成的叙事合成(Azure OpenAI)
- ✅ 可操作的买入/持有/卖出建议
- ✅ 数据质量和置信度评分
加密货币情绪分析
针对交易信号的专业加密货币分析:
from fiml.agents import crypto_sentiment_analysis
# Crypto sentiment and market analysis
result = await crypto_sentiment_analysis(
symbol="ETH",
exchange="binance",
pair="USDT",
include_narrative=True
)
# Access results
print(f"Price: ${result.price_data['price']:,.2f}")
print(f"Trading Signal: {result.signals['signal']}")
print(f"Sentiment Score: {result.sentiment['sentiment']['score']}")
print(f"BTC Correlation: {result.correlations['btc_correlation']:.2f}")
print(f"\nMarket Narrative:\n{result.narrative}")特性:
- ✅ 来自加密货币交易所的实时价格数据
- ✅ 技术指标(RSI、MACD、成交量分析)
- ✅ 来自新闻和社交媒体的情绪
- ✅ 与主要加密货币(BTC、ETH)的相关性
- ✅ LLM驱动的市场叙事
- ✅ 交易信号生成(买入/卖出/中性)
- ✅ 信心评分
批处理
并行分析多个资产:
import asyncio
symbols = ["AAPL", "MSFT", "GOOGL", "AMZN", "TSLA"]
# Run analyses concurrently
results = await asyncio.gather(
*[deep_equity_analysis(symbol) for symbol in symbols]
)
# Process results
for symbol, result in zip(symbols, results):
rec = result.recommendation
print(f"{symbol}: {rec['action']} (Score: {rec['overall_score']:.1f})")文档:
运行演示:
python examples/agent_workflows_demo.py📊 代码度量和质量
实施统计 (2025年11月23日):
- Python文件总数:43多个实施文件
- 代码行:8000多行生产代码
- 测试文件:19多个综合测试套件
- 测试覆盖率:439次通过测试(100%通过率),25次跳过,总共464次测试
- 代码质量:A级(干净、类型安全、结构良好)
- 依赖项:全部稳定,无关键漏洞
- 代码检查:100%通过(ruff)
- 最新动态:会话管理、监视系统、叙事生成
建筑质量:
- ✅ 清晰地分离关注点
- ✅ 始终异步/等待
- ✅ Pydantic v2的类型安全
- ✅ 全面的错误处理
- ✅ 使用structlog进行结构化日志记录
- ✅ 可扩展的提供商系统
技术债:
- ✅ ~~238个弃用警告~~ 固定的 -datetime.utcnow已正确迁移
- ✅ ~~缓存优化~~ 已实施 -缓存预热、智能驱逐、分析
- ✅ ~~性能测试~~ 完成 -基准测试、负载测试、回归检测套件
- ✅ ~~代理系统~~ 已发货 -7名具有生产工作流程的专业代理商
- ⚠️ 其他提供商集成待定(Polygon.io、IEX Cloud)
- ⚠️ 平台集成(ChatGPT GPT、Claude Desktop)未启动
有关完整分析,请参阅 技术_技术_评估.md -对代码库进行全面的21KB技术和战略审查。
🛠️ 技术栈
核心(生产就绪)
- Python 3.12 始终使用async/await
- FastAPI 0.109+ 用于MCP协议和REST API
- Pydantic v2 用于类型安全数据验证
- 结构日志 用于结构化、上下文相关的日志记录
- HTTPX+aiohttp 用于异步HTTP客户端操作
数据层(操作)
- Redis 7 -延迟10-100ms的L1缓存(生产)
- PostgreSQL 16+时标数据库 -具有300-700ms延迟的L2缓存
- SQLAlchemy 2.0 -异步ORM用于数据库操作
- 缓存分析 -实时命中率、延迟跟踪、升温策略
编排(制作)
- 射线2.52 -具有7个专用代理的多代理框架
- Celery 5.3 -后台作业的任务队列
- Apache Kafka+Zookeeper -看门狗系统的事件流
- Azure OpenAI -LLM整合叙事生成
数据提供商(17个活跃提供商)
免费层:
- 雅虎财经 ✅ 股票、ETF、指数
- CoinGecko ✅ 加密货币市场数据
- DefiLlama ✅ DeFi协议分析
高级供应商 (需要API密钥):
- 股票:阿尔法Vantage✅, FMP✅, Polygon.io✅, Finnhub✅, 十二岁✅, 提戈✅
- 加密:CCXT✅ (6个交易所:Kraken、KuCoin、OKX、Bybit、Gate.io、Bitget)
- 新闻:新闻API✅, 阿尔法Vantage✅, Finnhub✅
- 多资产:十二个数据✅, Polygon.io✅
基础设施(Docker Compose)
- 码头工人 -带健康检查的多阶段构建
- 17服务:API服务器,Ray集群(3个节点),Celery工人(2个),Redis,PostgreSQL,Kafka,Prometheus,Grafana,出口商
- GitHub操作 -基于组件的CI/CD,具有9个专门的工作流程
- 普罗米修斯+格拉法纳 -完整的可观察性堆栈
- MkDocs -自动部署的文档站点
📊 数据提供程序
活跃供应商(共17家)
股权与股票 (8家供应商):
- 雅虎财经 ✅ 免费-实时报价、历史数据、基本面
- 阿尔法Vantage ✅ 高级-全面的基本面、日内数据
- FMP ✅ 溢价-财务报表、估值指标
- Polygon.io ✅ Premium-实时市场数据、汇总
- Finnhub ✅ 溢价-股票数据、新闻、收益
- 十二岁 ✅ 溢价-多资产(股票、外汇、加密货币)
- 廷戈 ✅ 高级-爆炸物处理数据、新闻、基本面
- 因特里尼奥 ✅ 高级-机构级财务数据
- 市场堆栈 ✅ 溢价-历史和日内股票数据
- 市场堆栈 ✅ 溢价-历史和日内股票数据
- Quandl ✅ 溢价-替代数据、经济(增加了宏观支持)
经济与宏观 (2家供应商):
- 弗雷德 ✅ 免费(必填)-美国官方经济数据(GDP、CPI、失业率)
- Quandl ✅ 高级-访问FRED和其他经济数据集
加密货币 (4家供应商):
- 仓储管理系统 ✅ 多交易所-6个交易所(Kraken、KuCoin、OKX、Bybit、Gate.io、Bitget)
- CoinGecko ✅ 免费-市值、交易量、价格数据
- CoinMarketCap ✅ 高级-全面的加密货币指标
- DefiLlama ✅ 免费-DeFi协议TVL,卷
新闻与情绪 (3家供应商):
- 新闻API ✅ 高级-财经新闻聚合
- 阿尔法Vantage新闻 ✅ 溢价-市场新闻和情绪
- Finnhub新闻 ✅ Premium-实时新闻推送
测试:
- 模拟提供者 ✅ 确定性测试数据
提供商功能
- ✅ 自动回退:如果主提供者失败,仲裁引擎将选择下一个最佳提供者
- ✅ 健康监测:实时供应商健康检查和指标
- ✅ 地理阻塞检测:自动处理区域限制
- ✅ 速率限制:每个提供商内置的速率限制管理
- ✅ 可扩展:通过实施添加新的提供者
BaseProvider接口
供应商仲裁
FIML的仲裁引擎根据5个因素对供应商进行评分:
- 新鲜度 (30%)-数据新旧阈值
- 延迟 (25%)-用户区域的P95响应时间
- 运行时间 (20%)-提供者的健康状况和可用性
- 完整性 (15%)-必填字段
- 可靠性 (10%)-历史错误率
看 提供商注册表 了解实施细节。
🔐 安全与合规
合规框架(654行)
- ✅ 区域合规性:支持8个地区(美国、欧盟、英国、日本、中国、澳大利亚、新加坡、加利福尼亚)
- ✅ 自动免责声明:上下文感知免责声明生成
- ✅ 投资建议检测:基于LLM的检测,准确率超过95%
- ✅ 审计日志:通过Sentry集成进行全面的请求/响应记录
- ✅ 数据沿袭:跟踪数据来源以提高透明度
- ✅ 92%的测试覆盖率:生产就绪合规模块
安全功能
- ✅ 速率限制:每个用户和每个提供商的费率限制
- ✅ API密钥管理:环境变量中的安全凭据存储
- ✅ 错误清理:错误消息中没有敏感数据
- ✅ 健康检查:服务可用性监控
- 🚧 认证:计划进行生产部署
- 🚧 加密:用于生产环境的TLS/SSL
法律声明:FIML提供的财务数据仅供参考。这不是财务建议。
📈 监测和可观察性
访问监控仪表板(需要 make up 启动Docker服务):
核心API端点
- API文档: http://localhost:8000/docs(Swagger用户界面)
- ReDoc: http://localhost:8000/redoc(API替代文件)
- 主要健康检查: http://localhost:8000/health
- 数据库运行状况: http://localhost:8000/health/db
- 缓存运行状况: http://localhost:8000/health/cache
- 供应商健康: http://localhost:8000/health/providers
- MCP工具: http://localhost:8000/mcp/tools
度量与分析
- 普罗米修斯指标: http://localhost:8000/metrics(原始指标)
- 缓存指标: http://localhost:8000/api/metrics/cache
- 看门狗指标: http://localhost:8000/api/metrics/watchdog
- 性能指标: http://localhost:8000/api/metrics/performance
- 任务指标: http://localhost:8000/api/metrics/tasks
基础设施仪表板
- 格拉法纳: http://localhost:3000(admin/admin)-预配置的仪表板
- 普罗米修斯用户界面: http://localhost:9091-度量浏览器
- Ray仪表板: http://localhost:8265-代理编排监控
WebSocket端点
- 简单价格流:ws://localhost:8000/ws/prices/{符号}
- 高级流:ws://localhost:8000/ws/stream
看 examples/websocket_streaming.py 关于WebSocket的使用示例。
🧪 测试
📊 当前状态: 🎉 1279次传球,14次跳投 (100%通过率!)\ ✅ 所有模块通过:核心、提供商、仲裁、MCP、代理、Bot、基础设施\ 📈 覆盖:总体68%|核心组件97%以上
快速测试状态检查
# Run quick test status check
./check_test_status.sh
# Or manually run tests
pytest tests/ -v -m "not live"快速测试命令
# Run all unit tests (exclude live tests)
pytest tests/ -v -m "not live"
# Run only core tests (100% passing)
pytest tests/ -v -m "not live" --ignore=tests/bot/
# Run bot tests (to see failures)
pytest tests/bot/ -v
# Run E2E API tests
pytest tests/test_e2e_api.py -v
# Run live system tests (requires Docker services)
pytest tests/test_live_system.py -v -m live
# Run with coverage report
pytest tests/ --cov=fiml --cov-report=html
# Run specific test file
pytest tests/test_arbitration.py -v实时系统演示
# Run comprehensive live demo
bash live_demo.sh这将测试:
- 系统健康检查
- MCP工具发现
- 实时股票数据(AAPL、TSLA)
- 加密货币查询(BTC)
- 服务状态
按模块划分的测试覆盖率
总体统计:
- 总测试:已收集1293个
- ✅ 经过1279次测试(98.9%)
- ⏭️ 跳过:14次测试(1.1%)
- 覆盖:总体68%
- 测试执行时间:全套房约7分钟
模块级覆盖率:
- ✅ 核心组件 (97%以上的覆盖率)-模型、异常、配置、日志记录
- ✅ 缓存系统 (89%的覆盖率)-L1/L2缓存、分析、预热
- ✅ 数据提供程序 (平均73%)-17名医疗服务提供者接受了健康检查
- ✅ 仲裁引擎 (85%的覆盖率)-提供商评分、回退、合并
- ✅ MCP协议 (66%的覆盖率)-REST API、工具、架构验证
- ✅ 代理工作流 (92%的覆盖率)-多代理编排、叙事
- ✅ 合规框架 (覆盖率92%)-区域检查、免责声明
- ✅ WebSocket流媒体 (86%的覆盖率)-实时价格/OHLCV流
- ✅ 机器人平台 (100%通过测试)-Telegram机器人、游戏化、人工智能导师
- ✅ 基础设施 (100%测试通过)-部署、监控、健康检查
测试文档
全面的测试资源:
看 技术_技术_评估.md 进行全面的技术分析。
📝 API文档
运行后,访问交互式API文档:
- Swagger用户界面: http://localhost:8000/docs
- ReDoc: http://localhost:8000/redoc
🗺️ 路线图
✅ 第一阶段(2025年11月)-基金会 完成 ✅
- \[x\] 核心MCP服务器实施(450条生产线,生产就绪)
- \[x\] 具有评分和回退功能的数据仲裁引擎(350行)
- \[x\] 提供者抽象层(5个提供者共1900行)
- \[x\] 提供商集成:雅虎财经✅, 阿尔法Vantage✅, FMP✅, 仓储管理系统✅, 模拟✅
- \[x\] L1/L2缓存架构实现(530行)
- \[x\] FK-DSL解析器和执行框架(550行)
- \[x\] 多代理编排结构(700行框架)
- \[x\] Docker和Kubernetes部署配置
- \[x\] 带有GitHub操作的CI/CD管道
- \[x\] 全面的测试框架(439项测试通过,100%成功)
- \[x\] 合规框架(654条线,支持8个地区)
- \[x\] 错误处理和重试逻辑贯穿始终
- \[x\] 实时WebSocket流媒体(650行,生产就绪)
- \[x\] 全面实施:8000多行生产代码
第一阶段状态:100%完成-所有核心功能均已运行和测试
🚧 第二阶段(2025年11月-2026年第一季度)-增强和扩展 进行中 (完成75%)
✅ 已完成的功能:
- \[x\] 多代理编排✅ (7个专业代理:基本面、技术、宏观、情绪、新闻、风险、投资组合)
- \[x\] 叙事生成引擎✅ (Azure OpenAI集成,500多条生产线,生产就绪)
- \[x\] 缓存优化✅ (变暖、智能驱逐、分析仪表板)
- \[x\] 会话管理✅ (Redis+PostgreSQL的多查询上下文)
- \[x\] 监视系统✅ (使用Kafka进行实时事件流编排)
- \[x\] 性能测试✅ (基准、负载测试、回归检测、分析)
- \[x\] 其他供应商✅ (共17个:添加了Polygon.io、NewsAPI、Finnhub、Twelvedata、Tiingo等)
- \[x\] 电报机器人✅ (带AI导师的教育机器人、游戏化、FK-DSL集成)
- \[x\] Docker优化✅ (修复了Ray共享内存分配、健康检查)
🚧 进行中:
- \[\]ChatGPT GPT集成(正在等待GPT操作API访问)
- \[\]克劳德桌面MCP集成(测试协议兼容性)
- \[\]多语言支持(5种以上语言:en、es、fr、de、zh)
- \[\]安全强化(渗透测试、身份验证层)
第2阶段状态:75%完成-所有核心功能已发货,平台集成正在进行中
📋 第三阶段(2026年第二季度至第三季度)-规模和生态系统
- \[ \] 高级分析:用于价格预测、异常检测的ML模型
- \[ \] 反向测试发动机:使用历史数据进行战略验证
- \[ \] 移动应用:iOS和Android原生应用程序
- \[ \] 企业功能:SSO、RBAC、审计日志、SLA保证
- \[ \] 增加保险范围:期权、期货、商品、债券
- \[ \] API市场:允许第三方提供商集成
- \[ \] 白标解决方案:可嵌入的财务数据小部件
🔮 第4+阶段(2026+)-生态系统
看 蓝色印花.md 完整的十年愿景包括:
- 插件生态系统和金融操作系统
- 去中心化数据验证
- 具有回溯测试引擎的高级量化策略
- 全球市场扩张
- AI原生投资组合优化
🤝 贡献
我们欢迎捐款!请看 贡献.md 作为指导方针。
📄 许可证
Apache 2.0许可证-请参阅 许可证 详情
🙏 致谢
内置于♥ 面向人工智能和金融界
📞 支持
- 文档:
- 问题:
- Discord 的中文翻译是“不和谐”或“纷争”。: 加入我们的社区
______________________________________________________________________
⚠️ 免责声明:FIML提供的财务数据和分析仅供参考。这不是财务建议。在做出投资决策之前,一定要做自己的研究,并咨询合格的财务顾问。
