Angel One交易MCP服务器
使用VS Code和Claude等人工智能助理进行自动股票交易
   
📖 概述
Angel One MCP Server是一个强大的集成,允许VS Code中的AI助手(使用模型上下文协议)直接在Angel One交易平台上执行股票交易。使用自然语言下达买卖订单,由您的AI助手处理技术细节。
🚀 特性
- 人工智能驱动的交易:只需询问您的AI助手即可执行股票交易
- 无缝集成:可与任何兼容MCP的助手(如GitHub Copilot)配合使用
- 实时订单执行:立即在Angel One上下单
- 安全认证:使用基于TOTP的安全身份验证
- 现代Python环境:支持UV包管理器,以实现更快、更可靠的依赖关系管理
🔧 设置和安装
先决条件
- Angel One交易账户
- Python 3.10+
- VS Code与MCP兼容的AI助手
安装
- 克隆此存储库:
git clone https://github.com/yourusername/angel-one-mcp.git
cd angel-one-mcp- 使用UV安装依赖项(推荐):
# Install UV if you don't have it yet
pip install uv
# Create and activate a virtual environment with UV
uv venv
# On Windows
.\.venv\Scripts\activate
# On macOS/Linux
# source .venv/bin/activate
# Install dependencies with UV
uv pip install -r requirements.txt或者,使用传统的pip:
pip install -r requirements.txt- 在中更新您的API凭据
.env文件:
ANGEL_ONE_API_KEY=YOUR_API_KEY
ANGEL_ONE_API_SECRET=YOUR_API_SECRET
ANGEL_ONE_USERNAME=YOUR_USERNAME
ANGEL_ONE_PASSWORD=YOUR_PASSWORD
ANGEL_ONE_TOTP_TOKEN=YOUR_TOTP_SECRET- 配置MCP.json文件设置:
"mcp": {
"servers": {
"AngelOneTradeServer": {
"type": "stdio",
"command": "uv",
"args": [
"--directory",
"C:\\path\\to\\angel-one-mcp",
"run",
"server.py"
]
}
}
}或者,如果不使用紫外线:
"mcp": {
"servers": {
"AngelOneTradeServer": {
"type": "stdio",
"command": "python",
"args": [
"C:\\path\\to\\angel-one-mcp\\server.py"
]
}
}
}💼 用法
配置后,您可以使用自然语言通过AI助手进行交易:
- 买入股票:“购买10股RELIANCE-EQ”
- 出售股票:“出售5股TCS-EQ”
备注:下单时,始终在股票代码后附加“-EQ”(例如“RELIANCE-EQ”、“TCS-EQ”)。
🛠️ 运作原理
建筑
该系统由三个主要部分组成:
- MCP服务器(
server.py):处理VS Code与交易功能之间的通信 - 交易逻辑(
trade_on_angel_one.py):实现Angel One API集成 - 主数据:交易所的股票代码和代币映射
贸易流
- 用户向AI助手发出自然语言命令
- 助理调用相应的MCP功能(
buyStockFromAngelOne或sellStockFromAngelOne) - 该函数调用Angel One API来下订单
- 订单确认返回给助手并显示给用户
📋 可用功能
购买股票
buyStockFromAngelOne(stock_symbol: str, quantity: int) -> str为指定的库存和数量下采购订单。
出售股票
sellStockFromAngelOne(stock_symbol: str, quantity: int) -> str为指定的库存和数量下销售订单。
🔄 主数据管理
该系统使用预加载的主数据将股票代码映射到其交易所代币:
master_data.pkl:包含股票符号与其代币之间的映射load_master_data():从磁盘加载映射find_symbol_token():查找给定股票代码的适当令牌
⚠️ 安全和交易注意事项
- API凭据应存储在
.env从版本控制中排除的文件 - TOTP身份验证提供了额外的安全层
- 永远不要分享您的API证书或TOTP机密
- 重要提示:由于交易所限制,API天使一号对购买某些股票有限制。尽管使用了带有“-EQ”后缀的正确交易品种格式,但一些股票订单可能会被拒绝。这是Angel One API的限制,而不是此集成的限制
🐞 故障排除
常见问题
- 未找到符号错误:
- 确保你为股票附加了“-EQ” - 通过检查主数据中是否有库存 master_data.json 或 master_data.pkl
- 订单被交易所拒绝:
- 某些股票可能受到Angel One/交易所规定的限制 - 尝试不同的股票或查阅Angel One文档以了解具体的股票限制
- 认证失败:
- 确保您的TOTP令牌是最新的并且配置正确 - 检查您的Angel One凭据是否有效,帐户是否处于活动状态
处理环境问题
如果您遇到UV或Python环境问题:
# Clean up and recreate the environment
rm -rf .venv
uv venv
uv pip install -r requirements.txt📝 许可证
此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。
🤝 贡献
欢迎投稿、问题和功能请求!请随时查看问题页面。
🙏 致谢
- 天使一号SmartAPI 用于提供交易API
- Microsoft模型上下文协议 用于实现AI助手集成
- 紫外线的 用于现代Python包管理
