okx_taker_volume
Analyze OKX cryptocurrency taker volume to identify buying and selling pressure for informed trading decisions.
Instructions
获取OKX加密货币主动买入和卖出的交易量
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | No | 币种,格式: BTC 或 ETH | BTC |
| period | No | 时间粒度,仅支持: [5m/1H/1D] 注意大小写,仅分钟为小写m | 1h |
| instType | No | 产品类型 SPOT:现货 CONTRACTS:衍生品 | SPOT |
Implementation Reference
- mcp_aktools/__init__.py:436-462 (handler)The handler function for the 'okx_taker_volume' tool. Includes registration via @mcp.tool decorator and input schema definitions via pydantic Field. Fetches OKX API data for taker (active buy/sell) volumes, processes into DataFrame, and returns formatted CSV string.@mcp.tool( title="获取加密货币主动买卖情况", description="获取OKX加密货币主动买入和卖出的交易量", ) def okx_taker_volume( symbol: str = Field("BTC", description="币种,格式: BTC 或 ETH"), period: str = Field("1h", description="时间粒度,仅支持: [5m/1H/1D] 注意大小写,仅分钟为小写m"), instType: str = Field("SPOT", description="产品类型 SPOT:现货 CONTRACTS:衍生品"), ): res = requests.get( f"{OKX_BASE_URL}/api/v5/rubik/stat/taker-volume", params={ "ccy": symbol, "period": period, "instType": instType, }, timeout=20, ) data = res.json() or {} dfs = pd.DataFrame(data.get("data", [])) if dfs.empty: return pd.DataFrame() dfs.columns = ["时间", "卖出量", "买入量"] dfs["时间"] = pd.to_datetime(dfs["时间"], errors="coerce", unit="ms") dfs["卖出量"] = pd.to_numeric(dfs["卖出量"], errors="coerce") dfs["买入量"] = pd.to_numeric(dfs["买入量"], errors="coerce") return dfs.to_csv(index=False, float_format="%.2f").strip()