🚀 Groww MCP 服務器
Groww MCP 服務器是一個全面的模型上下文協議(MCP)服務器,適用於 Groww 交易 API。該服務器提供了與 Groww 交易平臺進行交互的工具,讓你能夠下單、管理投資組合、獲取實時市場數據等。

🚀 快速開始
在使用本服務器前,請確保你已經滿足以下先決條件並完成相應配置:
先決條件
- Groww 賬戶:你需要一個已啟用期貨和期權(F&O)交易的 Groww 賬戶。
- API 訂閱:擁有有效的交易 API 訂閱(每月 499 盧比 + 稅費)。
- API 密鑰:從 Groww 賬戶設置中生成你的 API 訪問令牌。
生成 API 密鑰
- 登錄你的 Groww 賬戶。
- 點擊右上角的個人資料部分。
- 點擊設置圖標。
- 導航至“交易 API”。
- 創建並管理你的 API 令牌。
配置
服務器需要以下配置:
{
"apiKey": "your_groww_api_key_here",
"debug": false
}
✨ 主要特性
本 MCP 服務器可訪問所有主要的 Groww API 端點:
🔧 交易工具與搜索
download_instruments_csv
- 下載/刷新完整的可交易工具數據。
search_instruments
- 按名稱、交易符號、Groww 符號或標準搜索交易工具。
get_instrument_details
- 獲取特定交易工具的詳細信息。
📋 訂單管理
place_order
- 下達新訂單(股票、期貨和期權)。
modify_order
- 修改現有待處理/未成交訂單。
cancel_order
- 取消待處理/未成交訂單。
get_order_status
- 通過 Groww 訂單 ID 獲取訂單狀態。
get_order_status_by_reference
- 通過用戶參考 ID 獲取訂單狀態。
get_order_list
- 獲取當天所有訂單的列表。
get_order_details
- 獲取訂單詳細信息。
get_order_trades
- 獲取訂單的所有交易/執行情況。
💼 投資組合管理
get_holdings
- 獲取 DEMAT 賬戶中的當前股票持倉。
get_positions
- 獲取所有交易頭寸。
get_position_by_symbol
- 獲取特定交易符號的頭寸。
💰 保證金管理
get_user_margin
- 獲取可用保證金詳情。
calculate_margin_requirement
- 計算訂單所需的保證金。
📊 實時市場數據
get_live_quote
- 獲取交易工具的完整實時市場數據。
get_ltp
- 獲取多個交易工具(最多 50 個)的最新成交價(LTP)。
get_ohlc
- 獲取多個交易工具(最多 50 個)的開盤價、最高價、最低價和收盤價(OHLC)數據。
📈 歷史數據
get_historical_data
- 獲取交易工具的歷史蠟燭圖數據。
📊 技術分析
calculate_moving_averages
- 計算簡單移動平均線(SMA)和指數移動平均線(EMA)用於趨勢分析。
calculate_rsi
- 計算相對強弱指數(RSI)用於動量分析。
calculate_bollinger_bands
- 計算布林帶用於波動率分析。
calculate_support_resistance
- 識別關鍵的支撐和阻力水平。
calculate_volatility_metrics
- 計算各種波動率指標用於風險評估。
calculate_macd
- 計算異同移動平均線(MACD)用於趨勢和動量分析。
calculate_stochastic
- 計算隨機震盪指標用於動量分析。
calculate_williams_r
- 計算威廉指標 %R 用於動量分析。
calculate_adx
- 計算平均趨向指數(ADX)用於趨勢強度分析。
calculate_fibonacci_levels
- 計算斐波那契回撤和擴展水平。
analyze_candlestick_patterns
- 識別常見的蠟燭圖形態。
📦 安裝指南
文檔未提及安裝步驟,故跳過此章節。
💻 使用示例
基礎用法
搜索交易工具
search_instruments({
query: "reliance",
exchange: "NSE",
segment: "CASH",
limit: 5
})
search_instruments({
query: "nifty",
segment: "FNO",
instrument_type: "CE",
limit: 10
})
get_instrument_details({
trading_symbol: "RELIANCE",
exchange: "NSE"
})
下達市價訂單
place_order({
trading_symbol: "RELIANCE",
quantity: 10,
exchange: "NSE",
segment: "CASH",
product: "CNC",
order_type: "MARKET",
transaction_type: "BUY"
})
高級用法
下達限價訂單
place_order({
trading_symbol: "WIPRO",
quantity: 100,
exchange: "NSE",
segment: "CASH",
product: "CNC",
order_type: "LIMIT",
transaction_type: "BUY",
price: 250
})
下達止損訂單
place_order({
trading_symbol: "RELIANCE",
quantity: 10,
exchange: "NSE",
segment: "CASH",
product: "CNC",
order_type: "SL",
transaction_type: "SELL",
price: 2450,
trigger_price: 2400
})
獲取實時市場數據
get_live_quote({
trading_symbol: "NIFTY",
exchange: "NSE",
segment: "CASH"
})
get_ltp({
segment: "CASH",
exchange_symbols: ["NSE_RELIANCE", "NSE_TCS", "NSE_INFY"]
})
獲取歷史數據
get_historical_data({
trading_symbol: "RELIANCE",
exchange: "NSE",
segment: "CASH",
start_time: "2024-01-01 09:15:00",
end_time: "2024-01-01 15:30:00",
interval_in_minutes: 5
})
技術分析示例
calculate_moving_averages({
trading_symbol: "RELIANCE",
exchange: "NSE",
segment: "CASH",
start_time: "2024-01-01 09:15:00",
end_time: "2024-01-31 15:30:00",
periods: [5, 10, 20, 50]
})
calculate_rsi({
trading_symbol: "NIFTY",
exchange: "NSE",
segment: "CASH",
start_time: "2024-01-01 09:15:00",
end_time: "2024-01-31 15:30:00",
period: 14
})
calculate_bollinger_bands({
trading_symbol: "RELIANCE",
exchange: "NSE",
segment: "CASH",
start_time: "2024-01-01 09:15:00",
end_time: "2024-01-31 15:30:00",
period: 20,
std_dev: 2
})
calculate_support_resistance({
trading_symbol: "RELIANCE",
exchange: "NSE",
segment: "CASH",
start_time: "2023-12-01 09:15:00",
end_time: "2024-01-31 15:30:00",
interval_in_minutes: 60,
min_touches: 2
})
calculate_volatility_metrics({
trading_symbol: "RELIANCE",
exchange: "NSE",
segment: "CASH",
start_time: "2023-01-01 09:15:00",
end_time: "2024-01-31 15:30:00",
interval_in_minutes: 1440
})
calculate_macd({
trading_symbol: "RELIANCE",
exchange: "NSE",
segment: "CASH",
start_time: "2024-01-01 09:15:00",
end_time: "2024-01-31 15:30:00",
fast_period: 12,
slow_period: 26,
signal_period: 9
})
calculate_stochastic({
trading_symbol: "NIFTY",
exchange: "NSE",
segment: "CASH",
start_time: "2024-01-01 09:15:00",
end_time: "2024-01-31 15:30:00",
k_period: 14,
d_period: 3
})
calculate_williams_r({
trading_symbol: "RELIANCE",
exchange: "NSE",
segment: "CASH",
start_time: "2024-01-01 09:15:00",
end_time: "2024-01-31 15:30:00",
period: 14
})
calculate_adx({
trading_symbol: "RELIANCE",
exchange: "NSE",
segment: "CASH",
start_time: "2024-01-01 09:15:00",
end_time: "2024-01-31 15:30:00",
period: 14
})
calculate_fibonacci_levels({
trading_symbol: "RELIANCE",
exchange: "NSE",
segment: "CASH",
start_time: "2023-12-01 09:15:00",
end_time: "2024-01-31 15:30:00",
trend_direction: "AUTO"
})
analyze_candlestick_patterns({
trading_symbol: "RELIANCE",
exchange: "NSE",
segment: "CASH",
start_time: "2024-01-25 09:15:00",
end_time: "2024-01-31 15:30:00",
lookback_candles: 5
})
計算保證金要求
calculate_margin_requirement({
segment: "CASH",
orders: [
{
trading_symbol: "RELIANCE",
transaction_type: "BUY",
quantity: 10,
order_type: "LIMIT",
product: "CNC",
exchange: "NSE",
price: 2500
},
{
trading_symbol: "TCS",
transaction_type: "BUY",
quantity: 5,
order_type: "MARKET",
product: "CNC",
exchange: "NSE"
}
]
})
📚 詳細文檔
API 枚舉和常量
交易所
NSE
- 印度國家證券交易所
BSE
- 孟買證券交易所
交易板塊
CASH
- 常規股票市場
FNO
- 期貨和期權
訂單類型
MARKET
- 以最佳可用價格立即執行
LIMIT
- 以指定價格或更優價格執行
SL
- 止損訂單
SL_M
- 止損市價訂單
交易類型
產品類型
CNC
- 現金和交割(基於交割)
MIS
- 日內保證金平倉
NRML
- 常規保證金交易
有效期
速率限制
Groww API 在類別級別應用了速率限制:
類別 |
請求操作 |
每秒 |
每分鐘 |
每天 |
訂單 |
創建、修改、取消 |
15 |
250 |
3000 |
實時數據 |
報價、最新成交價、OHLC |
10 |
300 |
5000 |
非交易 |
狀態、列表、持倉、保證金 |
10 |
250 |
3000 |
錯誤處理
服務器處理各種類型的錯誤:
- API 認證錯誤:無效的 API 密鑰。
- 速率限制錯誤:超出 API 速率限制。
- 驗證錯誤:無效的參數。
- 交易錯誤:市場關閉、保證金不足等。
所有錯誤都會返回描述性消息,以幫助識別和解決問題。
支持和文檔
🔧 技術細節
文檔未提供具體技術實現細節,故跳過此章節。
📄 許可證
本項目採用 MIT 許可證。
⚠️ 重要提示
- 交易風險警告:
- 在金融市場交易涉及重大損失風險。
- 過去的表現並不保證未來的結果。
- 僅使用你能夠承受損失的資金進行交易。
- 本工具僅用於教育和開發目的。
- 始終手動驗證訂單和交易。
- 開發者不對任何交易損失負責。