Token导航 LogoToken导航TokenDH.com
MCP Upstox Server logo
金融服务stdio官方级别未说明来源级核验

MCP Upstox Server

MCP Server

MCP Upstox交易服务器是一款基于历史价格数据分析并自动执行交易的应用程序,专注于识别市场中的高概率支撑和阻力水平。

工具数

4

提示词数

0

GitHub Stars

0

资源数

0
技术分析JavaScript金融数据

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

lonelypx

提供方

lonelypx

最后核验

2026/5/17 20:20

运行时

Docker

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

docker run -p 8080:8080 -d mcp-upstox-server

详细介绍

MCP Upstox交易服务器

项目概述

最互联枢轴(MCP)Upstox交易服务器是一个自动交易应用程序,可根据市场中的高概率支撑位和阻力位进行识别和交易。该系统分析历史价格数据,以确定价格反复与特定水平相互作用的枢轴点,并在当前价格接近这些重要水平时执行交易。

什么是MCP(最连通枢轴)?

MCP是一个技术分析概念,它确定了过去充当重要支撑或阻力的价格水平。这些是以下几点:

  1. 价格已多次超过平均水平(枢轴)
  2. 多个价格点聚集在特定水平(连接)周围
  3. 连接最多的级别成为MCP——一个高概率反转区域

该策略假设价格更有可能尊重之前多次充当支撑/阻力的水平,为交易者提供统计优势。

先决条件

  • Node.js(v14或更高版本)
  • NPM(节点包管理器)
  • 具有API访问权限的Upstox开发人员帐户
  • 对JavaScript和交易概念的基本理解

安装步骤

  1. 创建项目目录
   mkdir mcp-upstox-server
   cd mcp-upstox-server
  1. 初始化项目
   npm init -y
  1. 安装所需的依赖项
   npm install express axios cors dotenv upstox-js-sdk
  1. 创建服务器文件

- 将提供的服务器代码复制到名为的文件中 server.js - 创建一个 .env 提供配置的文件

  1. 获取Upstox API证书

- 登录您的Upstox开发人员帐户 - 创建一个新的应用程序以获取您的API密钥和机密 - 将重定向URI设置为 http://localhost:3000/callback 或您的自定义域名 - 更新 .env 将您的凭据归档

环境设置

开发环境

创建一个 .env.development 具有以下配置的文件:

PORT=3000
UPSTOX_API_KEY=your_development_api_key
UPSTOX_API_SECRET=your_development_api_secret
REDIRECT_URI=http://localhost:3000/callback
NODE_ENV=development

要在开发模式下运行:

NODE_ENV=development node server.js

测试环境

创建一个 .env.test 文件:

PORT=3001
UPSTOX_API_KEY=your_test_api_key
UPSTOX_API_SECRET=your_test_api_secret
REDIRECT_URI=http://localhost:3001/callback
NODE_ENV=test

要在测试模式下运行:

NODE_ENV=test node server.js

生产环境

创建一个 .env.production 文件:

PORT=8080
UPSTOX_API_KEY=your_production_api_key
UPSTOX_API_SECRET=your_production_api_secret
REDIRECT_URI=https://your-domain.com/callback
NODE_ENV=production

要在生产模式下运行:

NODE_ENV=production node server.js

部署选项

本地部署

用于个人或发展用途:

node server.js

云部署

Heroku

  1. 创建Procfile:
   web: node server.js
  1. 在Heroku仪表板中设置环境变量
  1. 部署:
   git push heroku main

AWS EC2

  1. 设置EC2实例
  2. 安装Node.js和npm
  3. 克隆存储库
  4. 设置环境变量
  5. 使用PM2管理节点进程:
   npm install -g pm2
   pm2 start server.js

Docker部署

创建一个Docker文件:

FROM node:16
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 8080
CMD ["node", "server.js"]

构建并运行:

docker build -t mcp-upstox-server .
docker run -p 8080:8080 -d mcp-upstox-server

运行服务器

  1. 启动服务器
   node server.js
  1. 使用Upstox进行身份验证

- 打开浏览器并导航到 http://localhost:3000/auth - 您将被重定向到Upstox登录页面 - 登录并授权应用程序后,您将被重定向回服务器 - 您应该看到一条成功消息,指示身份验证成功 - 您的令牌现在已安全存储,并将在需要时自动刷新

身份验证改进

服务器现在包括以下身份验证改进:

  1. 令牌持久性

- 访问和刷新令牌安全地存储在本地文件中(token.json) - 令牌在服务器启动时加载,无需重新进行身份验证

  1. 自动令牌刷新

- 系统会自动检测令牌何时到期 - 令牌在到期前5分钟在后台刷新 - 所有API调用都使用确保有效令牌可用的中间件

  1. 注销功能

- 一个新的 /logout 端点允许用户完全注销 - 这将从内存和磁盘中清除所有存储的令牌

Upstox SDK集成

服务器现在使用官方的Upstox JavaScript SDK,提供:

  1. 简化的API调用

- 通过一致的接口直接访问所有Upstox API端点 - API请求的类型检查和更好的错误处理

  1. 自动请求格式化

- SDK处理所有API请求的正确格式 - 确保符合Upstox API的要求

  1. 更容易维护

- API更改通过SDK更新进行处理 - 当Upstox API发展时,减少了修改代码的需要

使用MCP Trading API

计算符号的MCP

请求:

GET /historical-data/NSE_FO%7CNIFTY-I/1D?from=2023-01-01&to=2023-04-01

答复:

{
  "symbol": "NSE_FO|NIFTY-I",
  "interval": "1D",
  "dataPoints": [...],
  "mcp": {
    "timestamp": "2023-02-15T09:15:00.000Z",
    "price": 17865.75,
    "connections": 12
  }
}

计算多个符号的MCP

请求:

POST /mcp/calculate
Content-Type: application/json

{
  "symbols": ["NSE_FO|NIFTY-I", "NSE_FO|BANKNIFTY-I"],
  "interval": "1D",
  "from": "2023-01-01",
  "to": "2023-04-01"
}

答复:

{
  "NSE_FO|NIFTY-I": {
    "timestamp": "2023-02-15T09:15:00.000Z",
    "price": 17865.75,
    "connections": 12
  },
  "NSE_FO|BANKNIFTY-I": {
    "timestamp": "2023-02-18T09:15:00.000Z",
    "price": 41235.50,
    "connections": 9
  }
}

执行交易

请求:

POST /trade
Content-Type: application/json

{
  "symbol": "NSE_FO|NIFTY-I",
  "quantity": 50,
  "side": "BUY",
  "orderType": "LIMIT",
  "price": 17850
}

答复:

{
  "order_id": "12345678",
  "status": "success",
  "message": "Order placed successfully"
}

运行自动MCP策略

请求:

POST /strategy/mcp
Content-Type: application/json

{
  "symbol": "NSE_FO|NIFTY-I",
  "interval": "1D",
  "lookbackDays": 30,
  "investmentAmount": 100000
}

答复:

{
  "strategy": "MCP",
  "action": "BUY",
  "order": {
    "order_id": "12345678",
    "status": "success"
  },
  "mcp": {
    "timestamp": "2023-03-15T09:15:00.000Z",
    "price": 17865.75,
    "connections": 12
  },
  "currentPrice": 17870.25,
  "analysis": {
    "mcpDeviation": "0.03%",
    "connectionStrength": 12
  }
}

安全考虑

开发环境

  • 使用具有有限权限的测试API密钥
  • 仅在内存中存储令牌(禁用文件持久性)
  • 启用详细的错误记录

生产环境

  • 使用具有受限权限的正确API密钥管理
  • 使用安全数据库进行令牌存储,而不是文件系统
  • 实现API访问的IP白名单
  • 为所有连接启用HTTPS
  • 使用Nginx等反向代理
  • 实施速率限制

将以下代码添加到server.js以用于生产模式:

if (process.env.NODE_ENV === 'production') {
  // Force HTTPS
  app.use((req, res, next) => {
    if (req.header('x-forwarded-proto') !== 'https') {
      res.redirect(`https://${req.header('host')}${req.url}`);
    } else {
      next();
    }
  });
  
  // Rate limiting
  const rateLimit = require('express-rate-limit');
  const limiter = rateLimit({
    windowMs: 15 * 60 * 1000, // 15 minutes
    max: 100 // limit each IP to 100 requests per windowMs
  });
  app.use(limiter);
}

故障排除

  • 身份验证问题:确保中的API凭据正确无误 .env 文件
  • 下单错误:检查数量是否符合最小批量要求
  • 数据检索问题:验证符号格式是否正确(NSE_FO|symbol-I)
  • 令牌刷新失败:检查您的API密钥是否已过期或已被吊销

进一步定制

MCP计算和交易逻辑可以通过修改来定制:

  1. calculateMCP() 功能-调整连接标准、枢轴点标识
  2. 策略端点-修改偏差阈值、趋势识别逻辑
  3. 订单参数-变更订单类型、有效期、披露数量

贡献

欢迎投稿!请随时提交拉取请求。

许可证

该项目根据MIT许可证获得许可。

目录标签

目录标签

技术分析JavaScript金融数据自动交易本地部署金融市场支撑阻力算法交易

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

token

运行时(runtime,运行环境)

Docker

工具数量(toolCount,工具数)

4

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiotoken部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP