IEXInsider - 基于AI的IEX市场数据分析
版本: 2.0.0(重构架构) 状态: ✅ 准备就绪,可投入生产 构建: ✅ 0 条警告,0 个错误
______________________________________________________________________
什么是IEXInsider?
IEXInsider 是一个 完全符合MCP标准的AI助手 用于分析印度能源交易所(IEX)的市场数据。它提供了一个统一的MCP服务器,能够与Claude、GPT及其他AI代理进行集成。
主要特点
- 🤖 表示机器人或机器人相关的概念。 AI代理集成 - 通过MCP协议与Claude、GPT、自定义LLM(大型语言模型)协同工作
- 📊(表格) 289,214条市场记录 - 2023年1月至2025年9月
- 💬 自然语言查询 - 用简单的英语提问
- 🔍(放大镜图标,通常表示搜索或查看细节) 高级过滤 - 价格区间、时间块、市场类型
- 📈 表示“上扬趋势”或“上升趋势”。 统计分析 - 平均值、最大值、最小值、标准差
- 🎨(涂鸦/绘画) 汽车可视化 - 图表、图形、热力图
- ⚡(闪电符号,常用于表示快速、能量或电) 异步/并发 - 为多用户优化
- 🎤(麦克风,表示唱歌或演讲) 语音输入 - 语音转文字支持
______________________________________________________________________
快速入门
1. 启动应用程序
选项A:双击批处理文件
cd C:\POCs\IEXInsider\Release
START_IEXInsider.bat选项B:命令行
cd C:\POCs\IEXInsider\IEXInsiderMCP
dotnet run选项C:Visual Studio
- 打开
IEXInsiderMCP.sln - 新闻界(或 压力) F5
2. 访问应用程序
- 网页界面: http://localhost:5000 翻译为中文是:“本地主机的5000端口”。不过,通常我们不会直接这样翻译URL,而是根据上下文理解其为“访问本地运行的某个服务或应用,该服务或应用监听在5000端口上”。在实际应用中,我们可能会说“打开本地5000端口访问”或“访问本地主机上的5000端口服务”
- API文档: http://localhost:5000/swagger 翻译成中文是:“本地主机:5000 端口的 Swagger 页面”。不过,通常我们不会直接翻译网址,而是说明其用途或访问方式,比如:“访问本地运行的 Swagger API 文档界面,地址为 http://localhost:5000/swagger”
- MCP 终点: http://localhost:5000/api/iex/jsonrpc 翻译为中文是:“本地主机上的5000端口,访问iex API的JSON-RPC接口”
3. 尝试一个查询
网页界面:
- “给我看看2024年的DAM价格”
- “实时市场(RTM)的高峰价格是多少?”
- “比较所有市场的平均价格”
API调用:
curl -X POST http://localhost:5000/api/iex/query \
-H "Content-Type: application/json" \
-d '{"query": "Show me DAM prices for 2024", "limit": 10}'______________________________________________________________________
AI代理集成
AI代理可以使用IEXInsider吗?
是的! IEXInsider完全符合MCP(可能指某种市场参与者合规计划或标准)要求,并且能够与以下系统集成:
✅ 翻译成中文是:✓(对号) Claude Desktop(中文可译为“Claude桌面版”) (人智学) ✅ OpenAI GPT(注:OpenAI GPT通常指的是由OpenAI开发的一系列基于Transformer架构的预训练语言模型,这里的“GPT”代表“Generative Pre-trained Transformer”,即“生成式预训练变换器”) (自定义操作) ✅ 定制化AI代理 (语言链,自动GPT) ✅ 任何符合MCP标准的客户端
它是如何工作的
┌─────────────┐
│ AI Agent │ "What were peak electricity prices in 2024?"
│ (Claude/GPT)│
└──────┬──────┘
│ JSON-RPC 2.0 (MCP Protocol)
▼
┌──────────────────────────┐
│ POST /api/iex/jsonrpc │
│ Method: tools/call │
│ Tool: query_iex_data │
└──────┬───────────────────┘
│
▼
┌──────────────────────────┐
│ MCPServer │
│ • Advanced filtering │
│ • Statistical analysis │
│ • 289K records │
└──────┬───────────────────┘
│
▼
Response with peak prices, analysis, and insights集成示例:Claude 桌面版
配置文件: claude_desktop_config.json
{
"mcpServers": {
"iex-insider": {
"url": "http://localhost:5000/api/iex/jsonrpc",
"description": "Indian Energy Exchange market data analysis"
}
}
}用法:
User: "What was the average electricity price in DAM market
during evening peak hours (5pm-9pm) in 2024?"
Claude: [Uses IEXInsider MCP tool]
Analyzing evening peak hours (17:00-21:00) for DAM market in 2024...
Results:
- Average MCP: ₹6.42/kWh
- Peak: ₹12.50/kWh (at 18:30-18:45)
- Lowest: ₹4.15/kWh (at 20:45-21:00)
- Standard Deviation: ±1.85______________________________________________________________________
建筑学
新统一架构(v2.0)
┌──────────────────────┐
│ Web Interface │
└──────────┬───────────┘
│
▼
┌──────────────────────┐
│ IEXController │ ← Single Unified Controller
│ /api/iex/* │
└──────────┬───────────┘
│
▼
┌──────────────────────┐
│ MCPServer │ ← NEW! Proper MCP Server
│ • Tool execution │
│ • Advanced queries │
│ • Statistics │
└──────────┬───────────┘
│
┌─────┴─────┐
▼ ▼
┌─────────┐ ┌─────────┐
│ NLP │ │ Data │
│ Service │ │ Service │
└─────────┘ └─────────┘- ✅ 1个统一控制器
- ✅ 正确的MCPServer类
- ✅ 高级筛选(价格范围,时间段)
- ✅ 带标准差的统计分析
- ✅ 完全支持异步/await
- ✅ 终点事件减少62.5%
______________________________________________________________________
API 参考文档
REST 端点
| 终点 | 方法 | 目的 |
|---|---|---|
/api/iex/query | POST | 通用查询(自然语言+过滤器) |
/api/iex/statistics | GET | 市场统计 |
/api/iex/suggestions | GET | 查询建议 |
MCP JSON-RPC 端点
| 终点 | 用途 |
|---|---|
/api/iex/jsonrpc | MCP协议(人工智能代理) |
方法:
tools/list- 列出可用工具tools/call- 执行工具
工具:
query_iex_data- 带高级过滤功能的通用查询get_statistics- 带有标准差的全面统计
______________________________________________________________________
高级查询示例
价格范围筛选器
POST /api/iex/query
{
"query": "Time blocks within 9-10 Rs",
"filters": {
"year": 2023,
"mcp_min": 9,
"mcp_max": 10
}
}时间区块分析
POST /api/iex/query
{
"query": "Evening peak hours",
"filters": {
"year": 2025,
"time_blocks": ["17:00-17:15", "17:15-17:30", ..., "20:45-21:00"]
},
"aggregation": "average"
}按月比较
POST /api/iex/query
{
"query": "Highest MCV month",
"filters": {
"year": 2025
},
"group_by": "month",
"aggregation": "max"
}______________________________________________________________________
数据覆盖范围
| 指标 | 值 |
|---|---|
| 总记录数 289,214 | |
| 日期范围 | 2023年1月 - 2025年9月 |
| 市场 | 3(直接访问模型,广义直接访问模型,实时模型) |
| 每日时间段/块 | 96(每15分钟一个间隔) |
| 关键指标 | MCP(市场均衡价格)、MCV(市场均衡量)、需求、供给 |
______________________________________________________________________
技术栈
| 组件 | 技术 |
|---|---|
| 后端 | .NET 9, ASP.NET Core, C# 12 |
| 前端 | HTML5, CSS3, ES6+, Chart.js |
| 协议 | JSON-RPC 2.0(MCP) |
| 数据 | CSV(内存中,289K条记录) |
| AI 集成 | MCP 服务器,异步/等待(async/await) |
______________________________________________________________________
文档
📖(表示书本的符号,无具体文字含义,可理解为“书”或“书籍”) 完整文档: 看 DOCUMENTATION.md 翻译为中文是:“DOCUMENTATION(文档).md”(注:这里的“md”通常表示Markdown文件格式,但在中文语境下,我们通常直接保留“md”以指明文件类型,因此翻译时未做改动)。不过,为了更自然地表达,也可以理解为“文档说明文件(DOCUMENTATION).md”
包括:
- 完整的API参考
- MCP集成指南(Claude、GPT、自定义代理)
- 部署指南
- 开发指南
- 故障排除
- 查询示例
______________________________________________________________________
项目结构
IEXInsider/
├── IEXInsiderMCP/
│ ├── Controllers/
│ │ └── IEXController.cs (Unified controller)
│ ├── Services/
│ │ ├── MCPServer.cs (MCP Server - NEW!)
│ │ ├── NLPQueryService.cs
│ │ └── IEXDataService.cs
│ ├── Models/
│ │ ├── IEXMarketData.cs
│ │ └── UniversalQueryRequest.cs (NEW!)
│ ├── wwwroot/
│ │ ├── index.html
│ │ └── app.js
│ └── Program.cs
├── Release/
│ ├── IEXInsiderMCP.exe
│ ├── IEX_Market_Data.csv
│ └── START_IEXInsider.bat
├── DOCUMENTATION.md (Complete docs)
└── README.md (This file)______________________________________________________________________
构建与部署
构建
cd IEXInsiderMCP
dotnet build跑
dotnet run发布
dotnet publish -c Release -r win-x64 --self-contained -o ../Release______________________________________________________________________
支持
有问题吗? 检查:
- DOCUMENTATION.md 翻译为中文是:“文档说明.md” 或者 “文档文件.md”(根据上下文,“DOCUMENTATION”通常指“文档说明”或“文档文件”的意思,而“.md”是Markdown文档的扩展名) - 完整指南
- 控制台日志 - 详细的错误信息
- 端口5000的可用性 - 如有需要请更改
配置:
- CSV 路径:
appsettings.json→IEXData:CsvFilePath - 端口:
appsettings.json→Urls - 记录日志:
appsettings.json→Logging:LogLevel
______________________________________________________________________
做出贡献
这是一个概念验证项目。未来的改进方向:
- \[ \] 热图可视化
- \[ \] 聊天历史持久化(数据库)
- \[ \] 增强的时间块解析
- \[ \] Redis 缓存层
- \[ \] 多用户认证
- \[ \] 导出到Excel/PDF
______________________________________________________________________
许可证
内部概念验证(POC)——不对外公开分发
______________________________________________________________________
摘要
✅ 已准备好投入生产 - 0 警告,0 错误 ✅ 符合MCP标准/规定 - 与Claude、GPT、自定义代理协同工作 ✅ 可扩展的 - 完整的异步/await支持,支持并发用户 ✅ 高级过滤 - 价格区间、时间块、聚合 ✅ 统计分析 - 平均值,最大值,最小值,标准差 ✅ 统一架构 - 单控制器,合适的MCP服务器
已准备好与AI代理集成并部署到生产环境中!
______________________________________________________________________
版本: 2.0.0 最后更新时间: 2025年10月16日 构建于: .NET 9,MCP协议,爱 ❤️
