Skip to main content
Glama
iuk-ink

Binance MCP Server

Binance MCP Server

Version Node.js License

A Binance USDT-M futures MCP server based on Model Context Protocol, providing AI assistants with 61 MCP tools covering market data, technical indicators, risk analysis, and futures trading.

Built on the MCP server v2 SDK and Binance's official SDK (@binance/derivatives-trading-usds-futures), all values are automatically normalized according to exchange precision rules, with two-level market data caching, -1007 timeout idempotent recovery, and clock skew detection.

Quick Start

Zero-Configuration Experience (Analysis Only, No Trading)

npx @iuk-ink/binance-mcp-server

No API key is required. Connect to the testnet by default and use the market data, indicator, and risk analysis tools.

Configuring an MCP Client

{
  "mcpServers": {
    "binance": {
      "command": "npx",
      "args": ["-y", "@iuk-ink/binance-mcp-server"],
      "env": {
        "BINANCE_TESTNET": "true"
      }
    }
  }
}

If you need trading features, add BINANCE_API_KEY and BINANCE_API_SECRET.

Environment Variables

Variable

Required

Default

Description

BINANCE_TESTNET

No

true

Testnet (virtual funds) / Mainnet

BINANCE_USE_DEMO

No

false

Demo trading environment (shares credentials with mainnet)

BINANCE_BASE_URL

No

Custom REST endpoint (highest priority)

BINANCE_API_KEY

No

Trading tools are not registered if not set

BINANCE_API_SECRET

No

Same as above

BINANCE_PROXY_URL

No

HTTP/HTTPS proxy address

BINANCE_TIMEOUT

No

10000

Request timeout (ms)

BINANCE_RETRIES

No

3

Network retry count

BINANCE_BACKOFF

No

1000

Retry backoff base (ms)

BINANCE_RECV_WINDOW

No

5000

Signature time window (ms)

MCP_TOOL_DOMAINS

No

All

Tool domain filter, comma-separated: market,trading,indicator,analysis

MCP_SERVER_NAME

No

binance-mcp-server

MCP server name

LOG_LEVEL

No

info

debug / info / warn / error

Related MCP server: Binance MCP Server

Tool List (61, Mainnet)

On testnet, there are 57 tools (the 4 sentiment endpoints are only available on mainnet and are not registered).

Market Data (18)

Tool

Description

market_price

Latest trade price

market_book_ticker

Best bid/ask price + quantity (much lighter than orderbook)

market_orderbook

Multi-level order book depth (5/10/20/50/100/500/1000)

market_klines

Historical K-line data

market_24hr_ticker

24h change / high / low / volume

market_mark_price

Mark price (= liquidation reference price, includes funding rate)

market_open_interest

Open interest (OI)

market_funding_rate

Current funding rate and bounds

market_funding_rate_history

Historical funding rates

market_continuous_klines

Perpetual / quarterly / next quarter continuous contract K-lines (basis analysis)

market_exchange_info

Trading rules / precision / minimum order size

market_overview

One-stop snapshot: market data + indicators + funding rate + order book, in a single call

market_ping / market_time

Connectivity test / server clock calibration

market_open_interest_hist

OI historical statistics (mainnet only)

market_long_short_ratio

All-account long/short ratio (mainnet only)

market_taker_volume

Aggressive buy/sell volume ratio (mainnet only)

market_top_trader_ratio

Large trader position long/short ratio (mainnet only)

Technical Indicators (19)

Direct-connection design: complete "fetch K-lines → calculate indicator" in one step, without needing to call market_klines.

Category

Tools

Trend

indicator_sma / indicator_ema / indicator_macd / indicator_adx / indicator_super_trend / indicator_vwap

Momentum

indicator_rsi / indicator_stoch / indicator_cci / indicator_mfi / indicator_obv

Volatility

indicator_atr / indicator_bbands / indicator_volatility_regime

Composite signals

indicator_ma_cross (MA cross) / indicator_macd_rsi / indicator_bb_rsi / indicator_divergence (RSI divergence)

Batch

indicator_multi (one call = RSI + MACD + BBands + optional ATR / ADX / Stoch)

Risk Analysis (3)

Tool

Description

analysis_sharpe

Sharpe + Sortino + annualized return / volatility (annualization factor automatically inferred from the K-line timeframe)

analysis_drawdown

Maximum drawdown (including peak/trough prices and positions)

analysis_var

VaR / CVaR (confidence level 0.5~0.99 adjustable)

Futures Trading (21, API Key Required)

Category

Tools

Account

trading_balance / trading_account / trading_positions / trading_income / trading_commission

Order

trading_place_order (includes dryRun simulation) / trading_place_algo (stop loss / take profit / trailing stop) / trading_modify_order / trading_cancel_order / trading_cancel_algo / trading_cancel_all

Query

trading_get_order / trading_open_orders / trading_order_history / trading_trades / trading_force_orders / trading_algo_orders

Configuration

trading_set_leverage / trading_set_margin_type / trading_position_margin / trading_position_mode

Orders are automatically handled: price / quantity precision rounded down (tickSize / stepSize), minimum notional value validation, and after a -1007 match timeout, it verifies whether the order was filled using an idempotent order ID before deciding whether to retry.

Migrating from 2.x to 3.x

Breaking Changes

  • MCP SDK: @modelcontextprotocol/sdk@1@modelcontextprotocol/server@2 (official package rename)

  • Binance integration: community package binance@3 → official @binance/derivatives-trading-usds-futures@38

  • Node.js: >=18>=20

  • Proxy environment variable: HTTP_PROXYBINANCE_PROXY_URL

  • Toolset 76 → 61: removed the statistics helper domain (10 tools for mean / extremes / quartiles, etc.) and redundant standalone / signal variants of indicators; the legacy _direct tools are now direct-connect tools without the suffix (for example, rsi_directindicator_rsi); risk tools renamed (analysis_* from risk_*)

  • Tool name prefixes: all tools have a domain prefix (market_ / indicator_ / analysis_ / trading_); existing AI client prompts and workflows must adapt to the new names

New Capabilities

  • market_overview one-stop snapshot (aggregates market data / indicator / funding rate / order book in a single call)

  • MCP_TOOL_DOMAINS tool domain filtering, BINANCE_USE_DEMO / BINANCE_BASE_URL environment configuration

  • Two-level cache (exchangeInfo 5min + klines 3s, in-flight deduplication)

  • -1007 match timeout idempotent recovery, clock skew detection at startup

  • Automatic order precision rounding + upfront-order minimum notional validation

  • Parameter validation fully aligned with official constraints (clientOrderId character set, GTD upper bound, trailing drawdown rate 0.1~10, etc.)

AI Usage Guide (Skill)

The repository includes skills/binance-trader/SKILL.md — a usage manual written for AI assistant, covering tool selection decisions, cross-tool workflows, trading safety discipline, and error recovery scripts. Clients that support the Skill mechanism (Claude Code / Trae, etc.) can mount it directly, allowing the AI to upgrade from "can use tools" to "use tools well".

Local Development

git clone https://github.com/iuk-ink/binance-mcp-server
cd binance-mcp-server
npm install

Commands

Command

Description

npm run dev

Direct startup with tsx for development

npm run typecheck

TypeScript type checking

npm test

Run all 196 tests with node:test (no network dependencies)

npm run build

Compile to dist/

npm start

Run the compiled output

License

MIT

Available Tools

57 tools
analysis_drawdown最大回撤A
Read-only

直连版:拉取 K 线以收盘价为净值序列,计算标的最大回撤(负数)与峰谷位置(非账户绩效)。窗口越大越接近历史极值,建议 1d×365 起评估最大可能回撤。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
symbolYes
intervalYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
peakYes
troughYes
maxDrawdownYes
sampleCountYes

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The read-only/open-world annotations already cover safety, and the description adds value by explaining that closing prices are used as the net-value series, results are negative numbers, peak positions are returned, and larger windows approach historical extremes. No contradictions with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two succinct sentences, no redundancy; the first sentence states the operation, the second gives actionable guidance. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple, has an output schema for return details, and the description gives the key use recommendation. It is complete enough for an agent to invoke it correctly, though it could strengthen explicit routing away from account-performance tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description matters. It communicates the recommended interval limit 1d×365 and connects 'window' to limit, but it does not directly explain symbol or interval beyond the schema enum. It partially compensates for the missing parameter descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies a specific verb and resource: fetching K-line data and calculating the asset's maximum drawdown and peak-trough positions. It also explicitly notes that this is not account performance, which distinguishes it from analysis_sharpe and analysis_var.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It provides clear practical context for how to choose the window: 'larger windows approach historical extremes; suggest starting at 1d×365'. It does not name alternatives, but the 'non account performance' note acts as a when-not-to-use signal.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

analysis_sharpe夏普·索提诺A
Read-only

直连版:拉取 K 线推导标的收益率序列,计算年化收益/波动、夏普与索提诺。度量对象为标的价格序列的风险特征(非账户绩效);periodPerYear 缺省按 interval 自动推断(1h→8760、1d→365);严肃评估建议使用 1d×365 及以上大窗口(小窗口年化统计意义有限)。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
symbolYes
intervalYes
riskFreeRateNo单周期无风险利率(小数,如 0.0001 = 0.01%),默认 0
periodPerYearNo年化系数(每年 K 线根数),缺省按 interval 自动推断

Output Schema

ParametersJSON Schema
NameRequiredDescription
sharpeYes
sortinoYes
sampleCountYes
annualReturnYes
periodPerYearYes
annualVolatilityYes

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=true and openWorldHint=true. Beyond that, the description discloses the derivation path ('拉取 K 线推导收益率'), what is computed ('年化收益/波动、夏普与索提诺'), and the auto-inference behavior of periodPerYear. It also discloses the limitation that small windows have limited statistical meaning, which is honest and useful. This is more than annotations provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and information-dense: three sentences, each contributing a distinct semantic block (what it computes, what it measures, how periodPerYear is defaulted, and a usage caveat). It is well-structured for an AI consumer.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description explains the core behavior, the derivation approach, the parameter defaulting strategy, and a statistical caution. It doesn't describe the return value shape beyond an available output schema, so the output_schema likely covers that. Missing details such as how to treat riskFreeRate defaults or exact timezone conventions are minor against the available annotations and schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema's description coverage is about 40% (only periodPerYear and riskFreeRate have descriptions). The description adds meaning by explaining the default behavior of periodPerYear (auto-inferred by interval) and the meaning of riskFreeRate remains opaque, but the description doesn't detail all five parameters. It adds semantics for the timing, but not the format of symbol, limit, or riskFreeRate; the schema already provides some parameter domains. The description partially compensates for the schema gaps.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('拉取 K 线推导标的收益率序列') and resource ('标的收益率'), and explicitly scopes the metric to '标的价格序列的风险特征(非账户绩效)', distinguishing it from account-focused tools. However, it doesn't name a specific sibling alternative, so differentiation from other analysis/indicator siblings is implicit rather than explicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly scopes the tool to '标的收益率序列' and explicitly excludes '账户绩效', noting that 'serious evaluation' should use larger windows. However, it doesn't explicitly describe when to use this tool instead of other indicators/analysis tools, leaving some inference to the agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

analysis_varVaR · CVaRA
Read-only

直连版:拉取 K 线推导收益率,按历史模拟法计算置信度下的 VaR 与 CVaR(负值=损失;度量标的单根 K 线尾部风险,非账户绩效)。可作止损距离参考:止损应 ≥ 单根 VaR × 杠杆,否则易被正常波动扫损。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
symbolYes
intervalYes
confidenceNo置信度(0.5~0.99)

Output Schema

ParametersJSON Schema
NameRequiredDescription
varYes
cvarYes
confidenceYes
sampleCountYes

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

在注解已有 liveHint=true 与 openWorldHint=true 的基础上,描述补充分传了额外行为:历史模拟法、计算对象为收益率序列、单一 K 线对象的含义,以及重要符号约定'负值=损失'。这些信息能防止把结果直接读作另一层含义,帮助智能体正确理解调用后的结果。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

全部内容只有两条有效句子:第一句讲计算对象、方法、结果并通过符号约定;第二句给出阈值且是真正可执行的止损指导。每句都有独立价值,无冗余,起点句在句首,结构紧凑清晰。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

在已有输出 schema 以及 readonly/openWorld 注解的前提下,描述已覆盖计算全员向量、统计方法、置信度、结果定义容忍、适用配置六个关键,能让智能体有安全决策所需的信息。只差少量有关结果输出格式与极端置信度(limit 过小)注意事项的更多补充,不给失去完整分。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

schema 文本覆盖率仅 25%(只有 confidence 有描述),需要描述补齐参数含义。描述通过'K线——收益率——VaR/CVaR'的链路让 symbol 与 interval 的实际角色自然成立,也暗示了 limit 的效率与样本采样意义。虽然没有逐参数列名说明,但已能给充分弥补了 schema 的缺口。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

描述正确定义了动词与资源:拉取 K 线推导收益率,按历史模拟法计算置信度下的 VaR 与 CVaR。通过'度量工具后单根 K 线尾部风险,非账户绩效'进一步将它与 analysis_sharpe、analysis_drawdown 等账户/策略类评估分开,属于清晰的用途定义。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

明确说明了该工具的核心情境——单根 K 线尾部风险——并提出了参考规则:止损 ≥ 单根 VaR × 杠杆,否则可能被正常波动扫损。'非账户绩效'是对应用范围的明确排除,可视为一种边界说明;缺点是没有直接指出应与哪个具体兄弟工具对比使用中选择。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

indicator_adx平均趋向指标A
Read-only

直连版:拉取 K 线后计算 ADX,返回稳定序列(衡量趋势强度,0-100,与方向无关)。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
periodNo
symbolYes
intervalYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already mark this as read-only and open-world. The description adds useful behavioral detail beyond annotations by stating the internal flow: it fetches K-lines, calculates ADX, and returns a stable sequence. It also clarifies the numeric output domain and that the value is direction-independent, which helps an agent understand what the tool actually returns.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one compact sentence that front-loads the tool's access mode and calculation flow, then adds the key context about the output range and interpretation. There is no wasted text or redundant schema re-statement.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only indicator with output schema and annotations, the description is reasonably complete for a basic call. It does not provide explicit guidance about the period/limit parameters or how to choose this tool over sibling indicators, but the output schema and defaults make an ordinary symbol/interval call feasible.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description needs to compensate. However, the description only mentions K-lines and ADX, providing no explanation of period (default 14), limit (default 200), or how these affect the calculation and returned series. The agent must infer meaning from parameter names and defaults alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a clear verb and resource: it pulls K-lines and computes ADX, returning a stable trend-strength sequence. The additional context that the result is 0-100 and direction-independent clearly identifies the indicator's purpose, although it does not explicitly distinguish itself from the many sibling indicator tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is appropriate when trend strength is needed regardless of direction, but it does not explicitly say when to use ADX instead of another indicator such as indicator_rsi or indicator_bb. There is no when-not-to-use information or explicit sibling alternative.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

indicator_atr平均真实波幅A
Read-only

直连版:拉取 K 线后计算 ATR,返回稳定序列(衡量波动,默认 Wilder 平滑)。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
periodNo
symbolYes
intervalYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

除注解readOnlyHint已经说明只读外,描述额外说明了计算过程(拉取K线、计算ATR)、默认平滑方式(Wilder)和返回特性(稳定序列),这补充了注解之外的实际执行行为。没有与注解矛盾。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

描述仅用一句话就包含了类型、计算方式、结果特性和默认参数,语义紧凑,前置了对“直连版”的限定,没有任何冗余。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

在已有输出schema和只读注解的加持下,描述基本覆盖了核心调用背景,但“直连版”的设定没有上下文说明,也没有提及与潜在非直连版或交易类工具的边界。对于多工具开放环境,仍有模糊空间,尚算刚刚及格。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

当前参数有4个,schema描述覆盖率为0%,描述中几乎没有对参数进行额外解释。只通过“默认Wilder平滑”间接暗示了period的默认风格,但symbol、interval、limit等参数均未在描述中说明对应语义或使用建议,描述未帮助填充schema空白。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

明确说明直接获取K线后计算ATR,并指出其为波动率工具,同时提到默认Wilder平滑。与其他指标工具(SMA/EMA/MACD等)在功能上有明显区分,动词和资源明确。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

描述中通过“衡量波动”点明了使用场景,且在指标类工具中能自然引导Agent在需要波动率时选择该工具。但未明说何时不应使用或与其他波动率工具的取舍,缺少明确的排除性指引。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

indicator_bbands布林带C
Read-only

直连版:拉取 K 线后计算布林带,返回稳定三元组序列(lower / middle / upper)。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
periodNo
symbolYes
intervalYes
deviationMultiplierNo

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already mark the tool as read-only and open-world safe. The description adds that it first pulls K-lines and returns a stable triple sequence, which is useful context beyond the annotations. However, it does not clarify what 'stable' means, how limits are applied, or whether the output aligns with the K-line history length, so transparency remains partial.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence with the key behavioral fact and output shape front-loaded. It is concise and easy to parse. It is slightly sparse, but there is no waste or unnecessary repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a five-parameter indicator tool with no output schema, the description leaves too much unspecified: the meaning and defaults of the parameters, how the returned triple is structured over the K-line window, and how it behaves with different limits. The annotations cover safety but not operational details, so an agent still lacks enough to use the parameters confidently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not compensate: it does not explain 'limit', 'period', 'deviationMultiplier', 'symbol', or 'interval'. Although the description ties the calculation to K-lines and the Bollinger output, it provides almost no semantic value for the five parameters, which are critical for correct invocation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a concrete behavior: it pulls K-line data, computes Bollinger Bands, and returns a lower/middle/upper triple sequence. It goes beyond restating the title and gives the return shape. It does not explicitly differentiate from sibling indicators, though 'direct version' hints at an implementation distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use this tool instead of the many sibling indicator tools such as indicator_bb_rsi or indicator_sma. The phrase '直连版' hints at a direct-vs-composite usage context, but no conditions, alternatives, or exclusions are provided, leaving the agent to guess.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

indicator_bb_rsi布林带 + RSI 组合B
Read-only

直连版:拉取 K 线后同时计算布林带完整数据、RSI、%B 与价格分区。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
periodNo
symbolYes
intervalYes
rsiPeriodNo
deviationMultiplierNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
rsiYes
zoneYes
lowerYes
upperYes
middleYes
percentBYes

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds useful behavioral context — it fetches K-line data (拉取 K 线) and performs all computations in one pass — which conveys the dependency on exchange data. However, the term '直连版' is ambiguous and unexplained, and the meaning of '%B 与价格分区' outputs is not clarified, so the added value is moderate rather than strong.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single Japanese sentence that front-loads the action and lists the computable outputs without any filler or repetition of the input schema. The '直连版' prefix is cryptic and slightly undermines the line, but the rest of the description is economical and well-ordered.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The output schema exists and covers return values, so that par is not needed here. However, the meaning of '直连版', the mapping of parameters to each sub-computation, and any notion of K线 history depth/limits are missing. plus no hint to differentiate selection from the close sibling indicators. A complete definition for a combined-indicator tool should add these.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description carries the full burden for explaining parameters, but it does not return an instruction for any parameter: how period relates to BB, how rsiPeriod relates to RSI, what limit governs, or what deviatiate+multiplier does. Only the implicit mapping — K-lines to limit and the BB/RSI sections to the two period parameters — is guessable. For a 6-parameter tool with zero schema coverage, this does not compensate for the gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb-resource combination: pull K-lines and simultaneously compute full Bollinger Band data, RSI, %B, and price zones, which is clear and distinct from the name alone. It differentiates from siblings like indicator_bbands and indicator_rsi by the '同时' (simultaneously) framing, though the term '直连版' is never explained and the distinction from other combo indicators like MACD+RSI is left implicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage context is only implied: an agent can infer this tool should be chosen when both Bollinger and RSI are needed simultaneously, and the title supports the combination intent. However, there is no explicit when-to-use statement, no exclusions, and no routing guidance against the many sibling indicators like indicator_bbands, indicator_rsi, or indicator_macd_rsi.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

indicator_cci顺势指标B
Read-only

直连版:拉取 K 线后计算 CCI,返回稳定序列(以典型价离差归一,可正可负)。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
periodNo
symbolYes
intervalYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

annotations 已具备 readOnlyHint=true 和 openWorldHint=true,安全画像无需描述额外承担。描述补充了有价值的行为:该工具会自行拉取 K 线数据('直连版',暗示每次调用有网络数据成本),并说明输出序列经过典型价离差归一、可正可负,这对输出解读有帮助。但'直连版'与'稳定序列'均为未定义术语,行为信息整体有仍显单薄。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

全文一句,简短且关键信息(计算对象、计算方式、输出特性)靠前集中,无明显冗余。'直连版'和'稳定序列'两个术语富有信息量但仍需解释,既保持压缩的评价则不算5。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

存在 output schema 和 input 枚举/默认值,承担了返回结构与合法取值的一部分职责,因此描述不必解释返回值字段。但对一个需要 symbol/interval/period/limit 的调用,描述中的参数说明缺失如 period 对计算的影响、limit 对序列长度的行为,'直连版'的语义也未澄清,中等复杂二元完整度仅达基本线。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

schema 的参数描述覆盖率为 0%,描述必须补偿,但描述几乎未涉及参数。'拉取K线'间接指向 symbol 与 interval,却完全没有说明 period 的含义(只能凭默认值20和CCI常识硬推),limit 更是完全未提及。对 0% 覆盖率的 schema 来说,这是明显的补偿缺口。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

描述明确说明了动作(拉取K线后计算CCI)和结果(返回归一化、可正可负的稳定序列),并交代了计算口径(以典型价离差归一),不是对工具名的简单复述。但未与同组大量 indicator_* 兄弟工具做任何区分,依赖工具名自身传达'这是CCI指标',因此不足5分。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

描述只说明了工具做什么(拉K线算CCI),没有给出任何'何时用本工具而非替代品'的指引。面对 indicator_multi、indicator_macd_rsi、indicator_bb_rsi 等复合工具,以及十余个单指标工具,描述未说明何时应选 CCI、何时应选其他指标或复合工具。'直连版'一词似乎暗示存在非直连版本,但没有解释其适用取舍,属于不完整或无用的指引。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

indicator_divergenceRSI 背离检测A
Read-only

直连版:拉取 K 线后检测价格与 RSI 的顶背离 / 底背离(前后半窗极值对比),返回背离类型与全部极值明细。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
symbolYes
intervalYes
lookbackNo背离检测分析窗口(K 线根数)
rsiPeriodNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
rsiYes
typeYes
priceYes
windowYes

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds meaningful behavioral detail beyond that: it internally pulls K-lines ('拉取 K线后检测') and explains the half-window extreme-comparison algorithm, so the agent knows the tool has internal data dependencies and what computation drives the result. No contradiction with the read-only annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single compact Chinese sentence conveys purpose, pipeline (K-line fetch --> detect), and return concept (divergence type + extreme details) with little waste. A very small deduction for the '直连版' prefix, which may confuse agents by hinting at a nonexistent sibling version.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 5 parameters, covers output schema, and a read-only annotation, the description covers the core 'what' and 'algorithm' but not edge behavior (e.g., what happens when there is insufficient data, how many divergence results are returned, or the relation between lookback/limit/rsiPeriod. An agent can call it correctly with schema-provided defaults, but may be surprised by edge-case results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 20% (only lookback is explained), so the description should compensate. It partially does: '前后半窗极值对比' gives context for lookback's window semantics. But rsiPeriod, limit, symbol, interval and their interplay are not elaborated in either the schema or the description, and defaults (14/200/20) are standard enough that agents are likely to call correctly without further detail.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource: it detects price-vs-RSI top/bottom divergence ('检测价格与 RSI 的顶背离 / 底背离'). The '前後半窗极值对比' mechanism makes the function concrete, and divergence is a unique concept among the indicator siblings, distinguishing it from indicator_rsi, indicator_macd, etc. It loses a point only because it never explicitly names an alternative or a differentiation against the other indicator tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended use — проверка divergence between price and RSI — is clear, so when an agent needs divergence detectentation this tool is the obvious choice. But there is no guidance on when NOT to use it, no mention of raw-als indicators like indicator_rsi for plain RSI values, and no statement about alert-window tuning. Usage is implied rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

indicator_ema指数移动平均B
Read-only

直连版:拉取 K 线后计算指数移动平均,返回 EMA 序列(以首价为平滑种子,period 为周期)。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
periodNo
symbolYes
intervalYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, so the tool's non-destructive nature is known. The description adds context by revealing that the tool pulls K-lines internally and uses the first price as the smoothing seed, but it does not specify behavior for insufficient data or limit/period pitfalls. No contradiction exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is a single front-loaded sentence that introduces the main action before modifiers, and adds only concise formula-relevant detail. The term "直连版" is a slight ambiguity that could be clearer, so it is not a perfect score.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The output schema and read-only annotation covered return structure and safety, and the description covers the core algorithm. However, with four poorly specified parameters, no sibling differentiation, and no usage alternatives, the definition does not fully equip an agent to choose and calibrate the call across similar indicators.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must supply parameter meaning. It only elaborates on period, calling it the周期, and gives the smoothing-seed behavior; it does not explain limit, interval usage, or how symbol/interval parameterize the K-line pull. This leaves much of the parameter understanding to inference.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear operation and resource: "拉取 K 线后计算指数移动平均" and returns an "EMA 序列". It also gives a useful formula detail (first price as smoothing seed). It does not explicitly contrast with sibling tools like indicator_sma or indicator_macd, which prevents a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no when-to-use direction, no stated preference compared to other indicator tools, and no examples of scenarios where EMA is appropriate. The only contextual phrase "直连版" is ambiguous and does not explain selection between this and sibling indicators.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

indicator_macdMACDC
Read-only

直连版:拉取 K 线后计算 MACD,返回稳定三元组序列(macd / signal / histogram)。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
symbolYes
intervalYes
longPeriodNo
shortPeriodNo
signalPeriodNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes

TDQS

C2.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds some behavioral context beyond the annotations by revealing that the tool pulls K-lines, computes MACD, and returns a stable sequence of triples. The annotations already cover read-only and open-world hints, so the burden is lower. However, it does not mention edge cases, error conditions, or how the return sequence is structured relative to time or limit.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single short sentence that front-loads the core behavior (K-line fetch, MACD calculation, output shape). Every phrase earns its place, though the '直连版本' wording is fuzzy and consumes space without being fully informative.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given schema coverage of 0%, six parameters, and a sibling ecosystem full of choosing ambiguity, this description is far from complete. It provides an output shape, so the output schema can carry some burden, but it totally fails to explain parameter semantics or give usage context, making the tool under-specified for an correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not mention or explain any of the 6 parameters. Even the key MACD parameters like longPeriod, shortPeriod, and signalPeriod are omitted entirely, so the agent receives no semantic explanation for the parameters beyond raw schema defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource ('拉取 K 线后计算 MACD') and identifies the output as a stable triple sequence (macd / signal / histogram). '直连版' hints at a distinguishing mode and distinguishes this from combined indicator siblings like indicator_macd_rsi, though the meaning of '直连版' is not fully explained.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool instead of the many sibling indicators (e.g., indicator_macd_rsi, indicator_multi, indicator_rsi). The phrase '直连版' implies some mode difference, but it never states when an agent should choose this tool or when it should not. There is no explicit exclusions or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

indicator_macd_rsiMACD + RSI 组合B
Read-only

直连版:拉取 K 线后同时计算 MACD 与 RSI 最新值,返回完整数据(不输出主观信号)。

ParametersJSON Schema
NameRequiredDescriptionDefault
fastNo
slowNo
limitNo
signalNo
symbolYes
intervalYes
rsiPeriodNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
rsiYes
macdYes

TDQS

B3.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

annotations 已提供 readOnlyHint=true 和 openWorldHint=true;描述额外说明该工具会先拉取 K 线再计算指标并返回完整数据,且不会产生主观信号,这增加了对调用行为和输出边界的透明性。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

描述只有一句话,结构紧凑且信息密度高:先讲数据来源,再讲计算内容,再讲返回方式,最后标注边界。没有冗余或重复 schema 已有默认值的信息。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

有输出 schema 和 readOnly annotations 的情况下,工具行为的核心部分得到覆盖;但该工具参数较多,且描述既未解释参数语义,也未提供使用边界或替代工具指引,整体上下文仍不够完整。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

schema 参数覆盖率为 0%,描述也没有说明 fast、slow、signal、rsiPeriod、limit 等参数的含义或默认值关系。对于 7 个参数的组合指标工具,参数语义完全缺失,描述本身无法帮助 Agent 理解除符号和时间周期外的输入。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

描述明确说明了工具动作:拉取 K 线后计算 MACD 与 RSI 的最新值,并指出返回完整数据、不输出主观信号。结合工具名“MACD + RSI 组合”可以看出它区别于单独计算 MACD 或 RSI 的兄弟工具,但没有显式点名区分边界。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

描述中没有给出“何时应该使用本工具、何时应改用 indicator_macd/indicator_rsi/indicator_multi”等指引。“不输出主观信号”只是对输出的限制,不是调用时机的指导。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

indicator_ma_cross均线交叉A
Read-only

直连版:拉取 K 线后检测双均线交叉状态(golden_cross / death_cross / none)与多空偏向。

ParametersJSON Schema
NameRequiredDescriptionDefault
fastNo
slowNo
typeNo均线类型EMA
limitNo
symbolYes
intervalYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
biasYes
fastYes
slowYes
crossYes

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark this as read-only and open-world, so the safety profile is known. The description adds meaningful behavioral context by stating that it fetches K-lines before computing crossover status and that it produces a directional bias classification, which goes beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that front-loads the tool identity and immediately lists the key output categories. There is no redundant writing or repetition of schema defaults.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema and readOnly annotations, the description does not need to repeat return values or safety guarantees. However, given six parameters and low schema coverage, the description is thin on parameter-level context and does not help an agent decide between this and related indicator tools. It is minimally sufficient but not fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is very low at 17%, and the description only vaguely compensates by mentioning "dual moving average." It does not explain how fast, slow, type, limit, symbol, or interval interact, nor does it clarify fast vs slow behavior. Schema fields like symbol and interval are self-explanatory, but the important indicator parameters remain under-documented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action and resource: it pulls K-line data and detects dual moving average crossover state, listing explicit outputs (golden_cross / death_cross / none) and bullish/bearish bias. This distinguishes it from sibling tools like indicator_sma, indicator_ema, and indicator_macd, which either return raw indicator values or use a different construction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies its use case: an agent should call this when the user wants dual moving average crossover detection. However, it gives no explicit when-to-use or when-not-to-use guidance, nor does it mention alternative tools such as indicator_macd or indicator_multi for similar signal detection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

indicator_mfi资金流量指标B
Read-only

直连版:拉取 K 线后计算 MFI,返回稳定序列(0-100,带成交量的 RSI 变体)。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
periodNo
symbolYes
intervalYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes

TDQS

B3.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate read-only behavior, and the description adds meaningful context about the data source (K-line pull) and the output format (stable 0-100 series). It does not contradict the annotations and adds transparency beyond them, though it omits edge cases or failure behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single compact sentence that packs the action, formula basis, and output range without redundancy. It is appropriately front-loaded with the operation and delivers high information density.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is a standard technical indicator with an output schema, so the return structure is already covered. The description adds the key conceptual distinction (volume-weighted RSI) and data dependency (requires K-lines), which is nearly sufficient for correct invocation by an agent familiar with MFI.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not explain any of the four parameters. Even common MFI semantics like 'period' as lookback window or 'limit' as data length are left completely implicit, forcing the agent to rely on naming heuristics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action: pull K-lines and compute MFI, returning a bounded 0-100 series that is a volume-weighted RSI variant. This makes the tool's purpose unambiguous, though it does not explicitly distinguish it from sibling indicators by name.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternative indicator tools such as indicator_rsi or indicator_obv. The phrase '直连版' hints at a variant but does not explain trade-offs or selection criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

indicator_multi批量指标A
Read-only

直连版:单次拉取 K 线,批量计算 RSI(14) + MACD(12/26/9) + BBands(20/2) 最新值。可选启用 ATR / ADX / Stoch。替代逐个调用 3-6 次网络往返。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
symbolYes
intervalYes
includeADXNo
includeATRNo
includeStochNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
adxNo
atrNo
rsiYes
macdYes
stochNo
bbandsYes

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

annotation已经标记readOnlyHint和openWorldHint,描述不需要重复安全说明。描述额外补充了“直接拉K线”“只算最新值”“一次网络往返间接完成多个指标计算”,这些不是schema能直接看出的行为上下文,很有价值。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

两句中文,先给最核心的用途,再给可选参数,最后给网络收益。没有任何冗余句子,信息密度很高。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

在存在输出schema、readOnlyHint且参数schema已含default/enum/range的情况下,描述已经覆盖了“何时用、算什么、有哪些可选开关和最大收益”,没有明显缺口。选择正确的所需信息已足够。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

schema本身没有字段级description,覆盖率为0%,而描述主动讲解了默认指标周期和includeATR/includeADX/includeStoch三个布尔参数的含义。但没有说明limit对指标 lookback 窗口的具体影响,也没显式对应symbol/interval,所以扣掉一分。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

明确说明动作是“单次拉取K线,批量计算”,并列出默认计算 RSI(14)+MACD(12/26/9)+BBands(20/2),可选用ATR/ADX/Stoch。它与indicator_rsi、indicator_macd、indicator_bbands等单个指标工具显著区分,不依赖打开schema也知道这是批量版。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

清楚写明“替代逐个调用 3-6 次网络往返”,即当需要多个指标时优先使用本工具。缺点是没有显式说明“如果只需一个指标,应改用单个indicator_*”,所以不算完全满足when-not的边界。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

indicator_obv能量潮C
Read-only

直连版:拉取 K 线后计算 OBV,返回稳定序列(结合开盘与收盘方向的累计成交量)。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
periodNo
symbolYes
intervalYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

注释已经声明 readOnlyHint=true 和 openWorldHint=true,工具安全属性已有保障。描述在此基础上补充了它会先拉取 K 线、基于开盘与收盘方向累计成交量的计算逻辑,并指出返回的是‘稳定序列’,这些信息有一定价值。不过没有说明数据缺失、K线不足、边界情况等行为,也只能算中等透明。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

描述非常简短,前置说明了核心功能,没有冗余信息。除“直连”一词与为何要“稳定序列”外,整体表达紧凑,值得给较高评分。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

有输出 schema 且是只读计算类工具,降低了部分负担,但仍有 4 个参数、0% schema 描述覆盖、且存在大量指标类兄弟工具,描述未提供使用场景、参数含义或与其他指标工具的区别,上下文信息不充分,不足以支持可靠的工具选择与调用决策。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

输入 Schema 的参数描述覆盖率为 0%,且描述文本没有对 symbol、interval、limit、period 四个参数做出进一步解释。描述只提到“先拉取 K 线”,但未说明 period 如何参与 OBV 计算,也未说明 limit 与 period 的关系,agent 无法从描述中获得额外参数语义。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

描述明确说明了‘拉取 K 线后计算 OBV’,即该工具的核心动作与计算对象,并指出返回的是结合开盘/收盘方向的累计成交量序列。虽然没有点名区分某个具体兄弟工具,但‘OBV/能量潮’这一指标身份清晰,足以与 VWAP、RSI 等其他指标区分。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

描述完全没有说明何时应使用 OBV,而非其他工具,如 MACD、RSI 或成交类指标。多个兄弟指示器之间也没有任何引导或排除关系,仅靠‘直连版’无法帮助 agent 判断该工具最适合的场景。没有提供任何条件或备选项说明。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

indicator_rsi相对强弱指标A
Read-only

直连版:拉取 K 线后计算 RSI,返回稳定序列(0-100,Wilder 平滑,period 为周期)。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
periodNo
symbolYes
intervalYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

注解已声明只读和公开数据访问,描述在此基础上补充了关键运行行为:基于K线计算、使用 Wilder 平滑、输出被限定在 0-100 的稳定序列。没有与注解矛盾,也不需要再说明副作用。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

一句话涵盖数据来源、计算方式、输出范围和关键参数,没有冗余。关键信息前置,便于快速定位;对于简单的指标工具,这种长度是合适的。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

该工具是相对简单的指标计算工具,且已有输出 schema 和只读注解,描述提供了足够的核心语义,如周期、平滑算法和数值范围。虽缺少参数选型说明和与替代工具的边界,但对调用本身已比较完整。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

输入 schema 的字段描述覆盖率为 0%,描述也未对 symbol、interval、limit 给出额外语义,只提到“period 为周期”,这基本是参数名本身的同义重复。因此参数意义更多依赖字段命名和交易常识,工具描述补偿不足。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

描述直接说明“拉取 K 线后计算 RSI”,给出具体动作、资源与输出特点(0-100、Wilder 平滑),明确区分于其他指标类工具。标题只是指标名称,但描述补充了计算方式和返回序列,使目的非常清晰。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

描述没有说明何时应使用本工具,也没有在 RSI 与 MACD/RSI、背离、多指标等其他关联指标之间给出选型指引。“直连版”暗示了一种实现差异,但未解释与替代方案的区别或适用场景。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

indicator_sma简单移动平均A
Read-only

直连版:拉取 K 线后计算简单移动平均,返回稳定 SMA 序列(period 为周期)。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
periodNo
symbolYes
intervalYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already mark the tool as read-only, so the description's main job is to explain how it behaves beyond safety. It does this by disclosing that the tool itself pulls K-line data before computing the SMA, and returns a stable SMA series. This is meaningful behavioral context, though it could say more about caching or how missing data is handled.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that directly explains the calculation pipeline and output. There is no filler, repetition, or unnecessary qualification; every clause contributes useful information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple indicator tool with read-only annotations and an output schema already present, the description is mostly complete. The main gap is the missing explanation of the 'limit' parameter and how the pull length influences the returned SMA series, which is important for a correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate for parameter meanings. It only clarifies that 'period' is the cycle length; it does not explain what 'limit' means, how 'interval' relates to the K-line fetch, or what constraints affect the output series. The parameter semantics are far from fully covered.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action and resource: pulling K-lines and calculating a simple moving average. It also mentions the return value ('稳定 SMA 序列') and the meaning of period. This sharply distinguishes indicator_sma from siblings like indicator_ema, indicator_rsi, or indicator_macd.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage: when a simple moving average over K-lines is needed, this tool should be used. However, it provides no explicit when/when-not guidance or alternatives, and the term '直连版' hints at a particular mode without fully explaining it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

indicator_stoch随机指标 KDJB
Read-only

直连版:拉取 K 线后计算随机指标,返回稳定 K / D / J 三元组序列(kPeriod / kSmoothing / dPeriod 可调)。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
symbolYes
dPeriodNo
kPeriodNo
intervalYes
kSlowingNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark it readOnly and openWorld, and the description adds that it computes from pulled K-line data and returns a K/D/J sequence. It does not cover failures or odd-specific shape, but the readOnly annotation reduces the need for mutation/risk disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence that states the input action, the output format, and the tunable parameters with minimal filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the output schema and read-only annotations exist, the definition is almost sufficient for simple invocation. However, the kSmoothing/kSlowing mismatch and lack of usage context leave a meaningful gap in advisory quality.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description tries to add parameter meaning by listing kPeriod/kSmoothing/dPeriod as adjustable, but the schema only contains kSlowing, not kSmoothing, so an agent could generate an invalid parameter. Since schema description coverage is 0% and limit/symbol/interval meanings are left unstated, the description does not fully compensate for the schema gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it pulls candlesticks and computes a KDJ stochastic indicator, returning a K/D/J triple series. This specific output distinguishes it from generic 'indicator_*' siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to choose KDJ versus the many sibling indicator tools, and no exclusions or alternative conditions are stated. '直连版' hints at a variant but does not explain when to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

indicator_super_trendSuperTrendA
Read-only

直连版:拉取 K 线后计算 SuperTrend,返回稳定序列(supertrend 值 + BULLISH/BEARISH 方向)。period 为 ATR 周期,multiplier 为通道倍数。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
periodNo
symbolYes
intervalYes
multiplierNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

注解已声明 readOnlyHint=true,描述补充了“拉取 K 线后计算”和“返回稳定序列”,这增加了对于工具行为的理解。但没有对数据源、稳定序列的含义或限制、是否依赖历史K线等做进一步披露。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

描述只有两句话,并且把主要行为、返回内容放在第一句,参数说明放在第二句,无冗余信息,阅读成本低。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

有输出 schema 作为补充,描述已覆盖算法来源和返回形态,但缺少 limit 的含义、直连版本的适用场景以及与其他 indicator 类工具的区分。对于一个需要 5 个参数的工具而言,本描述的信息仍不够完整。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

描述补充了 period 为 ATR 周期、multiplier 为通道倍数的语义,这两个定义是 schema 中缺失的。但它没有描述 symbol、interval、limit 的确切含义做到,另外定义不够完整;至少覆盖了部分核心参数。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

描述明确说明“直连版”是拉取 K 线线后后计算 SuperTrend 并返回“supertrend 值 + BULLISH/BEARISH 方向”,给出了具体动词、资源和输出形态,能够清晰区分。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

描描述没有说明在什么场景下优选此工具、何时应使用其他替代工具,也没有给出排除条件。虽然提到“直连版”,但这并不能让 agent 清楚它与其它 indicator 类工具的分工

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

indicator_volatility_regime波动率状态分类B
Read-only

直连版:基于布林带宽百分位判断 squeeze / low_volatility / normal / high_volatility / expansion,辅助仓位管理。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
symbolYes
bbPeriodNo
intervalYes
lookbackNo带宽百分位历史比较窗口(K 线根数)

Output Schema

ParametersJSON Schema
NameRequiredDescription
regimeYes
bandwidthYes
percentileYes

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint=true and openWorldHint=true, so the description only needs to supplement actual behavior. It adds the algorithm source (Bollinger bandwidth percentile) and output categories, which give useful transparency. It still omits minor behavioral details such as what happens with insufficient data or whether the output is a series or single-of-state, though output schema metrics may cover some of this.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a compact one-liner that carries the formula, categories, and intended purpose without redundant wording. The qualifier '直连版' is slightly unexplained but does not bloat the sentence. It is near-ideal in size and accessibility.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so the return-value description is not strictly needed. The formula, output states, and position-management purpose give the core context, but the absence of sibling-tool routing and full parameter population left the agent somewhat limited when disambiguating this tool, from Bandwidth and ATR or setting the right limit.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 20% since only, lookback has a schema description. The description indirectly connotes meaning for bbPeriod and lookback via '布林带宽百分位', but it does not expressly name or explain all parameters like limit, symbol, or interval. It partially compensates for the missing schema documentation, so semantics are clearer than a bare param-list but still incomplete.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear verb-based role: it classifies volatility regimes from Bollinger bandwidth percentile and enumerates the five output states (squeeze, low_volatility, normal, high_volatility, expansion). This makes the tool functional-purpose obvious, though it does not explicitly contrast with sibling volatility indicators such as bbands or ATR.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase '辅助仓位管理' provides a plausible use context (position sizing decisions). However, it does not say when to choose this over alternations like indicator_bbands or indicator_atr, nor defines exclusion conditions or setup prerequisites. The use case is inferred, not explicitly routed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

indicator_vwap成交量加权平均价B
Read-only

直连版:拉取 K 线后计算累计 VWAP,返回稳定序列。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
symbolYes
intervalYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes

TDQS

B3.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already mark the tool readOnlyHint/openWorldHint, and the description adds useful behavior beyond that: it fetches K-lines, computes a cumulative rather than rolling VWAP, and returns a stable sequence. This gives real insight into the computation model without contradicting the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short sentence with no filler. The core mechanism is front-loaded ('直连版') and the computation objective is stated directly, making the description easy to process.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only indicator with only three parameters and an output schema, the description is nearly sufficient for calling the tool. However, the vague '直连版' term and the absence of parameter and usage context leave some room for an agent to mis-model when and how to invoke it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not compensate by explaining symbol, interval, or limit. It only implies K-line context, so the agent must rely entirely on the property names and enum values without any descriptive clarification.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear action and resource: pull K-lines, compute cumulative VWAP, and return a series. It clearly distinguishes this from trading tools, but it does not explicitly contrast it with the sibling indicator tools such as indicator_sma or indicator_ema. The overall purpose is clear even without sidder differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use VWAP relative to other indicators, or which conditions favor this '直连版' over any alternative. '直连版' hints that another version may exist, but no alternative, tradeoff, or exclusion is described.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

market_24hr_ticker24h 行情统计A
Read-only

获取 24h 滚动统计(涨跌幅/高低价/成交量额)。缺省 symbol 返回全市场(weight 高,慎用)。

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolNo

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

annotations 已声明 readOnlyHint 和 openWorldHint,描述在此基础上补充了全市场调用成本高的风险提示,对 agent 实际调用有实质价值。未提限频、返回体量等,但已有注解覆盖安全性,这仍高于基本要求。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

整个描述一句话完成,主行为在前,调用警告在后,没有重复 schema 结构字段。每个词都有信息量,属于简洁且高密度的工具说明。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

对单参数、有安全注解、无输出 schema 的工具来说,已交代用途、返回维度、缺省行为和高成本风险。缺少数显式替代条件与 symbol 格式示例,但对于这类简单只读行情工具已达到足够完整度。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

schema 仅有一个可选的 symbol,且描述覆盖率为 0;描述明确说明缺省 symbol 时的语义是会返回全市场并带来高 weight,这超出 schema 本身的信息。虽然没有给出 symbol 写法示例,但 symbol 为自明性参数,可选行为已经落实清楚。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

描述以具体动词“获取”指明行为,“24h 滚动统计(涨跌幅/高低价/成交量额)”明确资源类别,并与 market_price、market_book_ticker 这类实时快照工具区分。缺省 symbol 返回全市场这一行为也进一步明确了工具边界。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

描述了缺省 symbol 时返回全市场,并明确提示 weight 高、慎用,这是清晰的调用条件。虽然没有显式列举可替代工具,但已提供了决定“带 symbol 还是不带”的直接指导。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

market_book_ticker最优买卖报价A
Read-only

获取最优买/卖价与数量(比订单簿轻量)。缺省 symbol 返回全市场(weight 高,慎用)。

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolNo

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With readOnlyHint and openWorldHint already declared safe, the description adds real behavioral value by noting that omitting symbol changes the scope to the entire market and increases API weight. This is beyond both the schema and annotations and helps the agent avoid an expensive accidental call.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two parenthetical-clauses, each crucial: no inherited wasted. The core return value is front-loaded, the weight caveat at the end is essential. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a low-complexity light market data tool with no output schema, the description fully enough: what it returns, that it is lighter than the orderbook, and the scope/weight implication of the default. The agent can select and call it confidently without missing unknown consequences.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 0%, but the description compensatesru: 'symbol' semantics by explaining that omitting symbol returns the whole market, and 'weight high, use with caution'. The only param is self-evidently a market ticker symbol, so absentity of format examples is a meaning gap but not a serious one.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states in Chinese that this retrieves the best bid/ask price and quantity, which is a specific verb + resource. It also explicitly distinguishes it from the order book by calling it lighter, making it easy to tell apart from market_orderbook and other market data tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear selection context: use it when you need top-of-book prices, and it contrasts with the full order book. It also warns that omitting symbol returns the whole market with a high weight, so an agent knows when to be cautious. It stops short of naming an explicit alternative tool, but the intended contrast to the order book is evident.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

market_continuous_klines连续合约 K 线B
Read-only

获取连续合约(如季度/永续)的 K 线。

ParametersJSON Schema
NameRequiredDescriptionDefault
pairYes
limitNo
intervalYes
contractTypeYes

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint and openWorldHint, covering the main safety and completeness expectations. The description adds no further behavioral detail about paging, limits, returned data shape, or differences across contract types, so it is adequate but not enriching.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise, front-loaded sentence with no filler. Every word contributes to identifying the resource and scope.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 4 parameters, no output schema, and no parameter documentation, the one-line description is insufficient for an agent to confidently call the tool in edge cases such as choosing between contract types or understanding limit behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 0%, so the description was expected to carry parameter meaning. It explains none of pair, limit, interval, or contractType beyond the overall concept of K线. The agent must rely entirely on parameter names and schema enums.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('获取') and a specific resource ('连续合约…的K线'), with examples (季度/永续) that help disambiguate it from the more generic sibling market_klines. It does not explicitly name the sibling, so it stops short of full differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended usage is implied: use this tool when continuous-contract candlestick data is needed. However, it does not explicitly say when not to use it, nor does it point to market_klines or another alternative.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

market_exchange_info交易规则A
Read-only

获取交易对精度规格(价格/数量小数位、tickSize、stepSize、最小名义价值)。缺省返回全市场(数据量大,慎用)。

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolNo

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond readOnlyHint, the description discloses default all-market behavior, large payload risk, andespecific fields returned. It does not mention pagination or response shape, but the operation is a simple read-only info lookup and annotations already cover safety.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise clauses, front-loaded with the core purpose and fields, followed by a caution. Every sentence earns its place and there is no indentation or unrelated text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only exchange-information tool with one optional parameter and no output schema, the description covers the return content and the all-market cas. It does not mention exact output container/format, but the named fields provide enough.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0 %, so the description must define symbol semantics. The description implies that symbol filters to a trading pair by saying 'default returns all market', but it never explicitly states the symbol format/value and does not explain what the parameter represents in relation to the output. It compensates partially but not fully for the empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb+resource: obtain trading-pair precision specifications, and enumerates the returned fields (price/qty decimals, tickSize, stepSize, minnotional). This clearly distinguishes it from sibling market book/ticker/kline tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It tells the agent that omitting symbol returns he entire market and warns that the payload is large and should be used carefully, which implies passing a symbol to limit scope. It could be stronger with an explicit 'use this when you need precision/exchange rules rather than market data or trading operations', but the context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

market_funding_rate资金费率规则A
Read-only

获取全市场资金费率规则(各币种费率上下限与结算间隔,无 symbol 过滤,weight 高慎用)。查单交易对当前费率数值请用 market_mark_price。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already signal read-only and open-world, but the description goes beyond them by exposing a high-usage cost ('weight 高慎用') and the unparameterized global scope. It also clarifies that the output contains rules, not current values, which is a key operational distinction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded: it states the exact endpoint purpose, the returned fields, the no-filter scope, a usage-cost warning, and a sibling alternative. Every clause adds value, and there is no redundant prose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no parameters and no output schema, the description nonetheless tells the agent what it will receive (rules for all currencies: upper/lower rate limits and settlement intervals) and how it differs from the current-pair tool. The agent can invoke the tool correctly without further documentation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema is empty, so there are no parameters to document. The description still adds meaning by making clear that symbol-level filtering is intentionally absent, preventing an agent from looking for a symbol parameter that does not exist.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names the exact verb and resource: '获取全市场资金费率规则' and spells out what it returns (费率上下限与结算间隔). It also distinguishes itself from a sibling by noting that current single-pair funding values belong to market_mark_price, so the agent can tell tools apart without opining schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states scope explicitly ('无 symbol 过滤') and warns the weight is high, so the caller should use it sparingly. It also gives a concrete alternative with a clear conditional: for a single trading pair's current funding rate, use market_mark_price.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

market_funding_rate_history历史资金费率B
Read-only

获取指定交易对的历史资金费率记录。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
symbolNo

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and openWorldHint, so the safety profile is covered. The description adds that the result is a historical record of funding rates, but it does not disclose behaviors such as ordering, time range, what happens when no symbol is provided, or whether the rate is the latest vs. per-interval. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one clean, front-loaded sentence with zero filler. It states the exact action and resource without any redundant explanation, so it earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

While the tool is simple and has annotations protecting safety, the description does not clarify any alternative use case versus siblings, the meaning of `limit` in plain terms, or the expected behavior when `symbol` is omitted. For a two-parameter read-only tool, this is minimally acceptable but leaves some gaps an agent would have to infer from the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate for parameter meaning. It partially clarifies that 'symbol' refers to a trading pair via '指定交易对', but it says nothing about `limit` other than what the schema fields already provide (default, min, max). The description does not explain the meaning of the records returned or how the limit affects them.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('获取' / get) and resource ('指定交易对的历史资金费率记录' / historical funding rate records for a specified trading pair). Using '历史' clearly distinguishes this from the sibling `market_funding_rate`, making its purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no explicit when-to-use or when-not-to-use guidance and does not mention alternatives like `market_funding_rate` or `market_mark_price`. The only implicit signal is the word '历史' (historical), which the agent must infer means this tool is for past data rather than current funding rate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

market_klinesK 线历史B
Read-only

获取指定交易对与周期的 K 线(含 OHLCV 与成交信息),支持时间范围过滤。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
symbolYes
endTimeNo
intervalYes
startTimeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint and openWorldHint, so the safety profile is covered. The description adds context about the return content (OHLCV and trade info) and time-range support, but does not disclose pagination, ordering, or any other parser-specific behavior. Acceptable but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence in Chinese that front-loads the main operation ('获取指定交易器与周期的 K 线') and adds useful detail (OHLCV, volume, time range). Every part contributes value; there is no haffle.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is a simple read-only data retrieval operation, and annotations already cover its read-only nature. The description states the object, key parameters, and time-range filtering; with an output schema present, it does not need to explain return structure. Minor absence of limit/> pagination and clear sibling distinction leaves it 1 point short of complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With schema coverage at 0%, the description carries most param burden. It clarifies that `symbol` means trading pair and `interval` means period, and that `startTime`/`endTime` form a range filter. However, `limit` is never mentioned, and the schema has no per-parameter descriptions, so some parameter semantics still rely on type names/defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb '获取' and the resource 'K线' with specific scope (trading pair and cycle) and content (OHLCV plus volume/trade info). It does not explicitly distinguish itself from the sibling `market_continuous_klines`, so it falls short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus alternatives like `market_continuous_klines` or `market_price`. It only mentions an available feature (time-range filtering), without stating prerequisites, exclusions, or alternative conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

market_mark_price标记价A
Read-only

获取标记价、指数价与资金费率信息。查单交易对资金费率数值(lastFundingRate + nextFundingTime)首选本工具。缺省 symbol 返回全市场(weight 高,慎用)。

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolNo

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and openWorldHint, so the safety profile is covered. The description adds meaningful behavioral context around default behavior (omitting symbol returns full market) and the high weight cost, which is useful for an agent deciding whether to invoke the tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and well-structured: the main resource is stated first, the preferred use case is next, and a caution about default behavior closes it. Every sentence earns its place with no redundant content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given a single optional parameter, read-only annotations, and no output schema, the description covers the essential invocation-relevant details. It lacks an explicit symbol format example, but the caution about missing symbol and the funding-rate fields named make it sufficiently complete for an agent to select and call the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema only defines an optional string symbol with no description, so the description carries the parameter-semantics burden. It explains that symbol targets a single trading pair and that omitting it means full-market data, which adds real meaning; however, it does not specify the expected symbol format.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: it fetches mark price, index price, and funding rate information. It also differentiates itself by calling out the single-trading-pair funding rate values use case, which helps an agent distinguish it from related market tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear usage context: use this tool first when querying a single trading pair's funding rate values, and warns that omitting symbol returns the whole market with high weight. It does not explicitly name a specific sibling alternative, but the '首选本工具' guidance makes the intended use case clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

market_open_interest未平仓量A
Read-only

获取指定交易对当前未平仓量。

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
timeYes
symbolYes
openInterestYes

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already mark this as readOnlyHint=true, and the description adds that the result is 'current' and scoped to a pair. It does not mention freshness, rate limits, or behavior on invalid symbol, but for a read-only snapshot that gap is acceptable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One single sentence with no redundant words or filler. The important resource and scope are front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter read-only tool with an output schema and annotations covering safety, the description is nearly sufficient. The only remaining gap is the exact symbol format and possibly supported contract type, but those are minor for a simple 'get by symbol' tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema supplies a bare 'symbol' string with no description and 0% schema description coverage. The description clarifies that symbol means '交易对', but it does not define the expected format, casing, or exchange convention, so the parameter semantics is only partially compensated.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and object: it '获取' the '当前未平仓量' for a given trading pair. This clearly distinguishes the resource from market_price, market_funding_rate, and other sibling tools, but it does not explicitly name any sibling or contrast itself.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Description does not explicitly provide when to use or when not to use this tool. The intended usage is inferred because the resource is open interest; however, with 50+ sibling tools in the market domain, no explicit guidance is given for selecting this one over a more general market tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

market_orderbook订单簿深度A
Read-only

获取指定交易对的买卖盘快照。limit 合法值 5/10/20/50/100/500/1000。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
symbolYes

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations readOnlyHint=true and openWorldHint=true already convey the read-only, potentially changing nature of the data, and the description does not contradict them. The description adds meaningful behavioral guidance beyond the annotations by constraining limit to legal values (5/10/20/50/100/500/1000), which the schema leaves effectively unbounded. It does not describe the ordering of the bid/ask sides, a minor gap for a read-only snapshot tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact: one clause establishes the action, one clause delivers the parameter constraint. Every sentence earns its place, and the most decision-relevant information (legal limit values) is front-loaded immediately after the purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given two simple parameters, a read-only and open-world annotation set, and no output schema, the description covers what the agent needs in order to invoke the tool correctly: the supported symbol and the admissible limit values. A short note on return shape (e.g., sides/ordering) would be a nice addition since no output schema exists, but it is not blocking for a basic snapshot call.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

At 0% schema description coverage, the description compensates well: the phrase '指定交易对' explains what the symbol parameter means, and the explict enumeration of legal limit values (5/10/20/50/100/500/1000) provides far more precision than the schema's meaningless numeric bounds. It does not explain whether the limit applies to each side or the total depth, but the core meaning of both parameters is in place.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action and resource: '获取指定交易对的买卖盘快照' (fetches a snapshot of the order book for a specified trading pair). It is unambiguous about which resource it concerns, though it does not explicitly contrast itself with the similarly named sibling market_book_ticker.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use or when-not-to-use guidance. The description never explains why an agent should choose this tool instead of market_book_ticker (best bid/ask) or market_klines (candles); an agent is left to infer the use case from the tool name and purpose alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

market_overview市场快照A
Read-only

一次返回单个交易对的完整分析数据(行情/流动性/资金/情绪/指标/派生量),供 AI 直接解读并给出分析结论。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
symbolYes
intervalNo1h

Output Schema

ParametersJSON Schema
NameRequiredDescription
metaYes
priceYes
candlesYes
capitalYes
derivedYes
liquidityYes
sentimentYes
indicatorsYes

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds that the tool aggregates many analysis dimensions in one call, which is useful behavioral context. It does not disclose how `limit` and `interval` shape the returned snapshot, nor any timing or completeness caveats, though the schema and annotations reduce the burden.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one efficient sentence: it front-loads the single-call behavior, defines the scope as one trading pair, lists the major analysis categories, and states the intended downstream use. There is no filler, repetition, or redundant restatement of the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the read-only annotation, the existence of an output schema, and only one required parameter, the description is almost sufficient for an agent to call the tool. The main missing piece is the semantics of `interval` and `limit`, since the description does not clarify whether they affect the analysis window, sample size, or underlying data aggregation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description should compensate. It adds meaning for `symbol` ('single trading pair'), but it does not explain what `interval` or `limit` mean in the context of a market overview, nor how defaults and bounds affect the result. The parameter names and schema constraints are only partially self-explanatory.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear verb and resource: it returns a complete analysis snapshot for one trading pair in a single call, covering market, liquidity, funds, sentiment, indicators, and derived values. It is clearly meant for direct AI interpretation and conclusion generation. It does not explicitly contrast itself with individual sibling tools, but the aggregate-scope is distinctive enough.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly indicates its intended use: when an AI needs a comprehensive single-pair overview in one shot and will interpret the results directly. It also restricts scope to a single trading pair. However, it does not explicitly name alternative tools or describe when not to use it in favor of a specific market/indicator endpoint.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

market_ping连通性测试A
Read-only

测试与币安交易所 REST API 的连通性。无需参数,成功返回 { ok: true }。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYes

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already indicate read-only and open-world behavior, and the description reinforces that by stating the tool only tests connectivity and returns a simple success object. It also discloses the expected success response, which adds value beyond the annotations. It does not describe failure behavior, but that is a minor omission for a ping tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that front-loads the purpose, mentions the lack of parameters, and states the expected return value. Every word adds information, with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple no-parameter connectivity test with an output schema and readOnly annotations, the description provides all necessary information: what it tests, that no parameters are needed, and what a successful result looks like. Nothing required for an agent to select and invoke this tool is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are zero parameters, and the description explicitly states 'no parameters required,' which removes any ambiguity. The baseline for zero parameters is 4, and the description fully confirms this without needing extra param details.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action (testing connectivity) and a specific resource (Binance exchange REST API), and clearly differentiates itself from sibling market data tools by focusing on connectivity rather than data retrieval. It is not a tautology and adds detail beyond the tool name.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly conveys that this tool is used for a connectivity check and explicitly notes that no parameters are required. It does not name alternative tools or specify when not to use it, so it falls short of the 'explicit when/when-not' bar, but the use case is obvious and unambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

market_price最新成交价B
Read-only

获取交易对最新成交价。返回 symbol 与 price(number 类型)。

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
priceYes
symbolYes

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

注解已经声明 readOnlyHint 和 openWorldHint,因此安全性和网络属性已覆盖。描述补充了返回值字段 symbol 和 price(number 类型),但未说明数据时效性、缓存或异常行为;对这类简单查询可接受。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

描述仅两句,第一句即点明核心动作和对象,第二句说明返回值,信息密度高且无冗余。结构十分简洁高效。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

工具本身只有一个参数,且存在输出 schema,返回结构不必由描述完整展开。整体说明足够支撑调用,但缺少 symbol 写法和命名惯例,因此略距“完全完整”一步。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema 覆盖率为 0%,描述必须承担参数语义。描述中“交易对”暗示 symbol 代表交易对,但没有说明 symbol 的具体格式(如 BTCUSDT 还是 BTC/USDT),也没有任何约束说明。描述未能充分弥补缺少参数文档的问题。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

描述明确指定了动作和资源:获取指定交易对的最新成交价。成交价一词能与同类的 market_mark_price、market_24hr_ticker 等工具自然区分,但没有显式点出替代工具,因此略低于最高分。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

描述没有说明何时应使用本工具而不使用其他市场数据工具,也没有排除性说明,例如不需要深度数据时使用 market_price、需要标记价格时使用 market_mark_price 等。使用场景只是隐含在名称和描述中。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

market_time服务器时钟A
Read-only

获取币安交易所服务器时间(毫秒时间戳),用于时钟同步与签名校验。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
serverTimeYes

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The readOnlyHint annotation already tells the AI the operation is safe and non-mutating. The description adds the precise return type and use-case context, which is useful but modest.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One precise sentence with no filler: it states what is returned, the unit, and the intended purposes. Every phrase carries information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only, server-time tool with an output schema present, the description is complete. An agent knows exactly what to expect and how to use the result.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are no parameters, and the schema describes this fully with 100% coverage. A clear description is still helpful to mention what the tool actually retrieves.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: it fetches Binance server time as a millisecond timestamp. This clearly distinguishes it from sibling trading and market-data tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly gives usage context: clock synchronization and signature verification. It does not name alternatives or exclusion cases, but with zero parameters and a unique purpose, the given context is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_account账户总览A
Read-onlyIdempotent

返回:钱包余额 / 未实现盈亏 / 保证金等汇总。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
availableBalanceYes
totalMarginBalanceYes
totalWalletBalanceYes
totalUnrealizedProfitYes
totalPositionInitialMarginYes
totalOpenOrderInitialMarginYes

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations (readOnlyHint, idempotentHint, openWorldHint) already cover the safety profile, so the description's burden is low. It adds one useful fact: the response is an aggregated 汇总 of wallet/UP/L/margin. It does not reveal whether the numbers are real-time, cached, or aggregated across all account assets, but for a simple read-only overview the output schema likely covers that - the description also completes the annotations without any attribution.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short sentence, front-valued verb and enumerated result categories, and no fluff. The Chinese phrasing is compact and precise; every element earns its line space. Even the title and description together leave no repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only, idempotent tool with an output schema, this definition is nearly complete: an agent can sed it and understand what should come back (the summary categories), since schema/annotations cover the rest. The one missing piece is an explicit relation to sibling trading_balance to prevent picking the wrong account tool, but given the tool's low complexity, this is a small omission.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool admits zero parameters, so the baseline for parameter semantics is 4; there is nothing the description needs to document. The field list (wallet balance, unrealized P&L, margin) tellingly shapes the no-arg call's result, which is all the param-aware an agent can ask given an empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('返回' - returns) plus the resource: wallet balance, unrealized P&L, margin summaries. It clearly conveys an account-overview aggregation, reinforced by the title 账户总览. It does not explicitly distinguish itself from sibling tools such as trading_balance, so it falls a step short of 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to invoke this tool versus alternatives, and with dozens of trading siblings including trading_balance, trading_positions, trading_position_mode, and trading_position_margin, an agent gets no routing hint because it is a summary-use it. The 'when-to-use' must be completely inferred, so this is effectively implied-only minimal formulation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_algo_orders条件单列表A
Read-onlyIdempotent

返回:当前挂出的未触发条件单。symbol 可选。

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolNo

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already cover read-only, idempotent, and open-world behavior, so the safety profile is clear. The description adds the scoping detail that only current un-triggered conditional orders are returned, but it does not mention pagination, output shape, or what happens when symbol is omitted. No contradiction with annotations exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences, front-loads the return purpose, and contains no filler. It is appropriately compact, though its terseness is part of why some semantic and routing details are missing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only list endpoint with one optional parameter and no output schema, the description covers the essential contract: what is returned, that the orders are current and un-triggered, and that symbol can be used. Pagination or response shape details would be nice, but are not critical for making the call correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description only says 'symbol 可选'. This conveys that symbol is optional, but it does not explain the symbol format, whether omitting it returns all symbols, or whether it functions as an exact filter. For a one-parameter tool this is workable, but the description does not fully compensate for the empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the specific operation: return currently pending, un-triggered conditional orders. The qualifier '条件单/未触发' clearly distinguishes this from related order endpoints like trading_open_orders, trading_order_history, and trading_get_order.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly identifies the intended context: retrieving current conditional orders, with symbol as an optional filter. It does not explicitly say when not to use it or which sibling endpoint to choose for regular open orders, historical orders, or single-order lookups, so the routing guidance is only implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_balance资产余额A
Read-onlyIdempotent

返回:账户全部资产余额(含未实现盈亏)。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, openWorldHint=true, and idempotentHint=true, so the safety profile is covered. The description adds useful behavioral scope by specifying '全部资产余额' and including unrealized P&L, with no contradiction to the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short sentence with no filler. The key information is front-loaded, and every part of the description earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless read-only tool with an output schema and safety annotations already provided, the description is complete. It states exactly what is returned and that unrealized P&L is included, leaving no invoke-time ambiguity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters and 100% schema description coverage, so no parameter details are needed from the description. The baseline 4 applies because there are no parameters whose meaning could be ambiguous.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description specifies a verb (返回) and a clear resource (账户全部资产余额), and further clarifies the return content with 含未实现盈亏. This distinguishes it from related siblings like trading_positions and trading_account, even without explicitly naming them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended use is implied by the tool name and description: any time an agent needs the account's full asset balance including unrealized P&L. However, there is no explicit guidance or exclusion pointing to alternatives such as trading_positions or trading_account.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_cancel_algo撤销条件单B
Destructive

撤销条件单。clientAlgoId 与 algoId 二选一。

ParametersJSON Schema
NameRequiredDescriptionDefault
algoIdNo
clientAlgoIdNo

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds no behavioral detail beyond what annotations already convey: readOnlyHint is false and destructiveHint is true. It does not mention irreversibility, what happens on success/failure, or any side effects after the cancel request. The description is consistent with the annotations, so there is no contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that front-loads the purpose and then adds the key parameter constraint with no redundant filler. Every part earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter destructive tool and no output schema, the description captures the essential: cancel the conditional order and provide one of two identifiers. However, it lacks guidance on behavior for invalid identifiers, both-or-neither ID cases, and possible response behavior, so the invocation context is only minimally complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description must compensate. It adds the crucial one-of relationship ('clientAlgoId 与 algoId 二选一'), which is not visible in the input schema. However, it does not define what each ID represents or how they differ, leaving partial semantic burden on the parameter names alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the action ('撤销条件单' = cancel conditional order), naming the resource type as conditional/algorithmic orders. This clearly differentiates it from regular order cancellation tools like trading_cancel_order, but it does not explicitly named-and-distinguish sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description only gives the parameter constraint that clientAlgoId and algoId are mutually alternative; it does not say when to use this tool rather than trading_cancel_all or trading_cancel_order, nor what to do if the order was already filled or does not exist. There is essentially no play/sibling guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_cancel_all撤销全部未成交A
Destructive

撤销指定交易对全部未成交订单。

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYes

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations 已声明 destructiveHint=true、readOnlyHint=false,而描述进一步明确了破坏范围为“指定交易对的全部未成交订单”,补充了操作规模和对象。描述与 annotations 一致,无矛盾。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

整个描述只有一句简短完整的中文,信息密度高,没有冗余内容,也没有重复schema已经能直接看到的内容之外的无用信息。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

作为销毁性操作,描述说明了取消范围和对象,但缺少 symbol 格式约束、取消后的返回行为,以及是否对已提交未成交的算法订单生效等上下文。由于没有输出 schema,描述本身并未完整覆盖调用者可能需要的全部行为信息。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

输入 schema 只有一个 symbol 参数且无任何说明,schema 描述覆盖率为 0%。描述中的“指定交易对”为 symbol 参数提供了基础语义,但未说明 symbol 的具体数值格式(如 BTCUSDT 还是 BTC/USDT),也没有给出示例,因此补偿有限。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

描述包含明确动词“撤销”、目标资源“全部未成交订单”以及作用范围“指定交易对”,清晰说明工具功能。它与同组工具 trading_cancel_order(撤销单个订单)和 trading_cancel_algo(撤销算法订单)在语义上可区分。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

描述隐含了使用场景:需要撤销某个交易对的全部未成交订单时使用。但没有明确说明在单笔撤单时应改用 trading_cancel_order,也没有给出任何“何时不要使用”或替代工具的排除说明,属于隐含而非显式指导。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_cancel_order撤单A
Destructive

撤销指定订单。orderId 与 origClientOrderId 二选一。

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYes
orderIdNo
origClientOrderIdNo

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already provide destructiveHint=true and readOnlyHint=false, covering the mutating nature. The description states the action (cancel) and the scope (specified order) but does not disclose additional behavioral traits such as idempotency, failure conditions for already-filled orders, or whether the order is removed permanently. It adds marginal scope context beyond the annotations, warranting a median score.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one short sentence that front-loads the primary action and then adds the critical identifier-choice constraint. It avoids fluff, every clause earns its place, though it is terse rather than comprehensive.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has 3 parameters, no output schema, and only a sparse description. It communicates the core action and the key identifier constraint, but omits details such as when cancellation might fail, the need to specify symbol alongside the chosen ID, and any confirmation behavior. This is acceptable but not fully complete for an agent to understand all edge cases.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% description coverage, so the description must clarify parameters. It does this effectively by stating "orderId 与 origClientOrderId 二选一" — indicating the two identifiers are mutually exclusive alternatives (pick one). This is essential information absent from the JSON schema, but it still does not explain the symbol parameter's role, which remains minimal.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description begins with a specific verb+resource pair: "撤销指定订单" (cancel the specified order). The word "指定" (specified) directly distinguishes it from the sibling tool trading_cancel_all, which cancels all orders, so the agent knows which tool is relevant for a targeted cancellation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage: cancel one specific order identified by orderId or origClientOrderId. It does not explicitly state when to avoid this tool (e.g., when wanting to cancel all orders, use trading_cancel_all) nor mention any preconditions like the symbol being required. It provides a parameter-choice guideline but no broader usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_commission用户费率A
Read-onlyIdempotent

返回:指定交易对的 maker/taker 费率(含 VIP 折扣与 BNB 抵扣)。

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
symbolYes
makerCommissionRateYes
takerCommissionRateYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnly, idempotent, and openWorld behavior, so the description does not need to restate safety. It does add useful context about the inclusion of VIP discounts and BNB deduction in the returned rate, which goes beyond the annotations and clarifies rate semantics.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with a clear front-loaded action and the key scope immediately after it. It contains no filler, redundant phrasing, or repetition of schema or annotation details, earning its place efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a simple single-parameter read-only tool, and the description plus the available output schema are sufficient to guide a caller. The only minor gap is that the exact expected symbol format is not specified in the description, but the schema field name and simple shape keep the completeness high.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has no description for the 'symbol' parameter, and schema coverage is 0%. The description compensates by identifying the parameter as the '指定交易对' (specified trading pair), which directly maps to 'symbol'. This gives essential meaning even if it does not specify the exact string format like 'BTCUSDT'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('返回') and a precise resource: maker/taker rates for a specified trading pair. It also adds detail about VIP discounts and BNB deduction, making it distinct from any market or position-focused sibling tools. There is no ambiguity about what this tool returns.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage: call it to retrieve fee rates for a given trading pair. It does not explicitly discuss when to prefer this tool over alternatives, but no sibling has a similarly direct fee-return purpose, so the context is reasonably inferable. The absence of explicit exclusions or alternative routing keeps it at a mid score.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_force_orders强平订单C
Read-onlyIdempotent

返回:强平/自动减仓(ADL)订单记录。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
symbolNo
autoCloseTypeNo

TDQS

C2.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The provided annotations readOnlyHint/idempotentHint already cover the safety profile, and the description adds that the returned records are specifically force-liquidation/ADL. However, it discloses no additional behavioral details like pagination limits, what populates the 'ADL' vs 'DIQUIDATION' subtypes, or open-world behavior beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that wastes no words and immediately conveys the core return type. It is appropriately compact, though the compactness comes at the expense of the other information an agent needs.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, no parameter descriptions, and no usage notes, the description is too thin to be considered complete. An agent cannot know how to safely or usefully set 'limit', 'symbol', or 'autoCloseType' from the description alone, nor what fields the returned record list will contain.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are 3 parameters, schema description coverage is 0%, and the description does not mention any of them. Plot, autoCloseType, or how filtering works. The schema namesand enum are self-evident to some degree, but the description provides no extra semantic guidance, so it completely fails to compensate for the absence of property descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('返回') and a precise resource ('强平/自动减仓(ADL)订单记录'), making the tool's purpose clear. It also inherently distinguishes this from general order-history tools, though it does not explicitly name a sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no context on when to prefer this over alternatives such as trading_order_history or trading_trades. There is neither an explicit 'when to use' statement nor any comparison with sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_get_order订单查询B
Read-onlyIdempotent

返回:指定订单详情。orderId 与 origClientOrderId 二选一。

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYes
orderIdNo
origClientOrderIdNo

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

注解已提供readOnlyHint=true、openWorldHint=true、idempotentHint=true,安全形态已被覆盖。描述补充了“orderId与origClientOrderId二选一”这一约束,但对获取行为、错误、返回格式等没有额外披露。未与注解矛盾。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

描述简洁紧凑,两句信息包含“返回结果”和“参数约束”,没有任何冗余内容。虽然可以更规范地改为一个完整句子,但在对效率和切题性上表现良好。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

对于工具的简单参数集合、该描述可一定程度上调用,但缺少“要查询的具体订单需要已知ID”这种应用场景提示,也没有提及返回值的形状或选型或许会因参数不同而异。它仍是“最小可用”而不算完整。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

模式描述覆盖率为0%,描述承担了部分参数解释:“orderId与origClientOrderId二选一”给出了两个参数的互斥选择关系,这对正确调用很关键。但未说明symbol参数、orderId的取值范围语义或origClientOrderId的格式,未完全弥补schema的空白。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

描述以明确的动词“返回”加资源“指定订单详情”表明这是按订单ID查询订单详情的工具。通过“指定订单”与“orderId/origClientOrderId”可以看出它与其他订单列表类工具(open_orders/order_history)区分,虽然未明确点名兄弟工具。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

描述没有说明何时使用此工具而不是trading_open_orders、trading_order_orders等替代方案。除“二选一”的参数约束外,没有给出明确的使用场景、前置条件或排除条件。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_income收支流水C
Read-onlyIdempotent

返回:资金费/手续费/已实现盈亏等流水记录。income 负数为支出。incomeType 合法值与官方枚举一致(如 FUNDING_FEE / COMMISSION / REALIZED_PNL)。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
symbolNo
endTimeNo
startTimeNo
incomeTypeNo

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the safety profile is covered. The description adds meaningful context (income negative means expenditure, incomeType consistent with official enum), but does not disclose pagination, ordering, time-range behavior, or response structure, so it is adequate rather than rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences front-load the core return value, followed by the key convention about negative income and incomeType enum. There is no filler, though a bit more structure around parameters would improve completeness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description should explain what fields each record contains, but it does not. Parameter semantics are incomplete for 5 optional params, and time range behavior is not explained. In a large sibling family, these gaps make the definition only minimally sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must carry the burden for explaining parameters. It only clarifies incomeType via examples and the 'official enum' note. It does not explain limit semantics, symbol format, or startTime/endTime units/format, and schema itself lacks descriptions, leaving agents to guess.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('返回') and resource ('流水记录' of funding fee, commission, realized PnL), so an agent can identify it as an income/expense history tool. It does not explicitly differentiate it from trading_commission, trading_trades, or trading_account, so it falls short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to use this tool instead of alternatives like trading_commission or trading_trades. The intended use is only implied by the examples of income types, so agents browsing many siblings get little routing help.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_modify_order改单A
Destructive

修改未成交订单(仅 LIMIT)。orderId 与 origClientOrderId 二选一。

ParametersJSON Schema
NameRequiredDescriptionDefault
sideYes
priceYes
symbolYes
orderIdNo
quantityYes
origClientOrderIdNo

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already signal destructive behavior, and the description adds useful constraints: only unfilled orders and only LIMIT type are elligate for modification. It does not disclose deeper behavior such as whether existing order is replaced/caneled or how failures handled, but it meaningfully extends the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence delivers the essential scope and constraint without filler. The key function and the orderId/origClientOrderId exclusivity are front-loaded, making the definition easy and fast to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no output schema and no parameter descriptions, the definition is incomplete. It does not describe what happens after a successful modification, whether it replaces or cancels, possible failures, or how to know which side of the order to adjust. An agent would need substantial inferred knowledge to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description covers 0% of parameters, so the description must compensate. It clarifies that orderId and origClientOrderId are mutually exclusive, but it does not explain the meaning of symbol, side, quantity, or price beyond their raw schema names and constraints. This leaves significant semantics implied.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('modify unfilled orders') and an explicit scope restriction ('LIMIT only'). This clearly distinguishes the tool from place/cancel/get sibling tools and tells an agent exactly what resource it affects.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use the tool by restricting modifications to unfilled LIMIT orders, but it provides no explicit guidance about when to prefer this tool over trading_place_order, trading_cancel_order, or other alternatives. The scope is helpful but limited.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_open_orders未成交订单B
Read-onlyIdempotent

返回:当前全部未成交订单。symbol 可选。

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolNo

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint and idempotentHint, and the description adds the contextual scope (all current unfilled orders, optional symbol). There is no contradiction with annotations, but the description does not cover additional behavior such as pagination, market affects, or response structure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two very short sentences with no fluff. Core operation and param optionality are front-loaded. Every word adds necessary content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For simple a simple read-only tool with only one optional parameter, the core capability is communicated. However, with schema coverage at 0 and no output schema, the description leaves the agent with very little context about acceptable symbol values or how results are returned; enough for basic usage but not fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has only one parameter with no descriptions; the description merely says 'symbol 可选' and does not explain that the symbol filters the returned open orders or what format/values are expected. This is valuable only minimal information beyond the schema's optionality.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it returns all current unfilled orders ('当前全部未成交订单') and notes the optional symbol parameter. This is specific and useful, though it does not explicitly differentiate itself from sibling order-related tools such as trading_order_history or trading_get_order.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no explicit when-to-use guidance or alternatives. The word '当前' hints that this is for current open orders rather than historical ones, but it does not tell the agent when to choose this tool over other trading order tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_order_history历史订单B
Read-onlyIdempotent

返回:指定交易对的历史订单(时间倒序)。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
symbolYes
endTimeNo
orderIdNo
startTimeNo

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, covering the safety profile. The description adds that results are returned in reverse chronological order, which is a useful behavior, but it does not disclose pagination, default limit behavior, or how the optional filters interact.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded and wastes no words: it tells what is returned, for which resource, and in what order, in a single efficient sentence.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With five parameters and no output schema, the description is too thin to fully guide a correct call. It only establishes the required symbol and ordering, while filter parameters, default limit, pagination, and output format are not addressed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the tool description only refers to the symbol via 'specified trading pair'. startTime, endTime, limit, and orderId are not explained, leaving their filtering semantics and combination behavior to be guessed from schema names and constraints.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('returns') and resource ('historical orders') scoped to a specified trading pair, with order direction specified as time-descending. It does not explicitly contrast with sibling tools like trading_open_orders or trading_trades, but 'historical' conveys the core distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool versus alternatives such as trading_open_orders, trading_trades, or trading_get_order. There are no concrete conditions or exclusions, so the agent must infer use case from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_place_algo创建条件单A
Destructive

创建条件委托(止损/止盈/追踪止损)。type 决定必填参数:

  • STOP_MARKET / TAKE_PROFIT_MARKET:需 triggerPrice

  • STOP / TAKE_PROFIT:需 triggerPrice + price(限价委托价)

  • TRAILING_STOP_MARKET:需 callbackRate(百分比,0.1~10),可选 activatePrice 触发价方向规则(违反将报 -2021 Order would immediately trigger):

  • 止损类(STOP*):BUY 须高于最新价,SELL 须低于最新价

  • 止盈类(TAKE_PROFIT*):BUY 须低于最新价,SELL 须高于最新价 closePosition=true 时触发后全平仓位,且要求该 symbol 已有对应方向持仓 (无持仓时报错 GTE can only be used with open positions),不可传 quantity / reduceOnly。 持仓模式:双向(Hedge)必须传 positionSide(LONG/SHORT),单向省略;可用 trading_position_mode 查询。

ParametersJSON Schema
NameRequiredDescriptionDefault
sideYes
typeYes
priceNo限价委托价,仅 STOP / TAKE_PROFIT 类型需要
symbolYes
quantityNo
reduceOnlyNo
timeInForceNo
workingTypeNo
callbackRateNo追踪止损回撤百分比(0.1~10,1=1%),仅 TRAILING_STOP_MARKET 需要
clientAlgoIdNo
positionSideNo
priceProtectNo
triggerPriceNo触发价。止损类 BUY 须高于现价 / SELL 须低于现价,止盈类相反
activatePriceNo追踪止损激活价,未达到前不开始追踪
closePositionNo触发后全平该合约仓位;为 true 时不可传 quantity / reduceOnly

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark the tool as non-read-only and destructive, but the description adds important behavioral context: trigger-direction constraints with the -2021 error, the requirement that closePosition implies existing position and shuts off quantity/reduceOnly, and hedge-mode positionSide requirements. This is exactly what an agent needs to predict side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Every sentence delivers a new usable rule; the typ-to-parameter mapping is fronted, choes have third constraints in short clauses, and there is no filler or schema repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 15-parameter, no-output-schema tool, it covers key decision and edge cases: what differs between order types, closePosition behaviors, direction constraints, and hedging mode. The missing return shape and unexplained option semantics for some optional fields keeps it from perfect completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is low (33%), and the description significantly compensates by explaining the parameter dependencies, required fields for each order type, the trigger-price direction rules, and closePosition/quantity conflict. A few optional params (timeInForce, workingType, priceProtect, clientAlgoId) are not meaningfully expanded on, so it is not a full 5.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific operation: creating conditional orders for stop-loss, take-profit, and trailing-stop scenarios. It lists the supported order types, so an agent can distinguish this tool from ordinary order placement siblings such as trading_place_order.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives explicit type-driven usage rules: which params are required for STOP_MARKET vs STOP vs TRAILING, and special rules for closePosition and positionSide in hedge mode. It does not explicitly mention 'use trading_place_order instead for immediate orders', so it stops short of a perfect when-not-to-use statement.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_place_order下单A
Destructive

下单(自动精度规整)。dryRun=true 时仅校验不提交。reduceOnly 仅单向模式可用。timeInForce 为 GTD 时必须提供 goodTillDate。持仓模式约束:单向省略 positionSide,双向(Hedge)必须传 positionSide(LONG/SHORT),可用 trading_position_mode 查询。

ParametersJSON Schema
NameRequiredDescriptionDefault
sideYes
typeYes
priceNo
dryRunNo
symbolYes
quantityYes
reduceOnlyNo
timeInForceNo
goodTillDateNo
positionSideNo
newClientOrderIdNo
newOrderRespTypeNo

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

注解已声明 readOnlyHint=false 和 destructivedestination,描述在此基础上补充了实际行为:自动精度规整、dryRun 的只校验不提交语义、reduceOnly 的模式限制,以及持仓模式对 positionSide 的约束。这些信息超出注解本身,帮助 agent 理解操作的动态规则,但未未涉及真实下单后的资金/保证金锁定等后果,属于适度而不是完全透明。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

描述由五个短句组成,用分散号清晰分隔,重要的一次性校验与模式约束前置,没有冗余修饰。每条信息都对应一个可操作约束,结构紧凑高效,符合高分标准。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

这是一个 12 个参数、无输出 schema、无参数描述、带 destructiveHint 的复杂资金操作工具。描述虽然覆盖了主要约束,但缺少 LIMIT/MARKET 与 price 的依赖关系、newOrderRespType 的语义、下单后返回/回执行为,以及精度规整的具体规则。对于一个会产生真实交易影响的工具,这些遗漏使 agent 在行动后无法准确预测结果。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

schema 描述覆盖率 0%,描述承担了很大责任,且确实对 dryRun、reduceOnly、positionSide、timeInForce、goodTillDate 等约 5-6 个参数补充了语义。但 price 与 LIMIT 的关系、quantity 的含义、newClientOrderId、newOrderRespType(ACK/RESULT) 等重要参数的语义仍完全未解释,仅凭枚举值无法让 agent 正确选择。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

描述明确以「下单(自动精度规整)」开头,给出了具体动作+资源,并且用「自动精度规整」点出了该工具的一个独特行为特征。标题和名称本身已清楚表明这是下单工具,但描述没有显式说明它与 trading_place_algo、trading_modify_order 等兄弟工具的边界,因此扣一分。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

描述给出了多条明确的调用条件:dryRun=true 时仅校验不提交、reduceOnly 仅单向模式可用、timeInForce=GTD 时必须提供 goodTillDate、双向模式必须传 positionSide,并指明可用 trading_position_mode 查询持仓模式。这些是清晰、可执行的上下文,但没有显式说明何时不应使用本工具而应改用其他兄弟工具(如 algo 下单),故为4分而非5分。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_position_margin调整逐仓保证金A
Destructive

调整逐仓保证金。type: 1=增加,2=减少(官方枚举);amount 恒为正数。双向(Hedge)模式下须提供 positionSide。

ParametersJSON Schema
NameRequiredDescriptionDefault
typeYes
amountYes
symbolYes
positionSideNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
typeYes
amountYes

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark the tool as destructive (destructiveHint: true) and readOnly: false. The description adds behavioral context by specifying increase vs decrease with positive amounts, and by requiring positionSide in Hedge mode. It does not fully disclose risks such as liquidation impact, but it correctly reflects the mutating nature of the operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely compact—three short sentences, each conveying a distinct necessary fact: operation, enum semantics, and conditional requirement. No filler or redundant restatement of the name or schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 4 parameters, moderate risk, and an output schema, this description is sufficient: it explains the enum, the amount constraint, and the Hedge-mode dependency. It does not list usage exceptions or deeper warnings, but the output schema covers return behavior, and the destructive hint already signals caution.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must carry parameter meaning. It explains type, amount, and positionSide usage. Symbol is not described, but its meaning is obvious and the description does add real clarity beyond the raw enum schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the operation: adjusting position margin ('调整逐仓保证金') with type 1=增加 and 2=减少. The verb '调整' plus resource '逐仓保证金' is specific and distinguishes the tool from margin-type switching and leverage tools in the sibling list.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives the essential usage condition for Hedge mode ('双向模式下须提供 positionSide') and clarifies the meaning of type values. It does not explicitly state when not to use the tool or point to alternatives, but the provided context is clear and actionable for normal usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_position_mode持仓模式A

查询并切换持仓模式。dual=true 双向(Hedge),false 单向(One-way)。缺省 dual 时仅查询。

ParametersJSON Schema
NameRequiredDescriptionDefault
dualNo

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds an important conditional behavior: without dual it is a read-only query with dual it changes mode. This is consistent with readOnlyHint=false and gives the agent a meaningful distinction beyond static annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences carry the action, the mode mapping, and the no-parameter behavior. It is front-loaded and contains no waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers all usage branches and the sole parameter. It would be more complete if it described the return shape or mentioned whether switching can be blocked by existing positions, but these are minor for such a small tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema document has 0% coverage for the only parameter. The description compensates fully by explaining true false and the omitted case for dual, leaving no ambiguity about how to invoke the tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a precise verb and resource: query and switch position mode, and defines the two modes. It does not explicitly contrast itself with sibling toolers, but the resource 'position mode' is clear and distinct.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives clear usage context: omit dual to query, provide dual to switch. It stops short of 5 because it does not mention exclusions or alternatives such as trading_positions or trading_set_margin_type.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_positions持仓查询B
Read-onlyIdempotent

返回:当前持仓列表。缺省 symbol 返回全部持仓。

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolNo

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, and openWorldHints, so the core safety profile is covered. The description adds the default-omitted-symbol behavior, which is useful. It does not disclose whether '当前持仓' includes all accounts/markets, or how results are ordered/pagined.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two very short, front-loaded clauses with no filler. Every item conveys necessary behavior.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool is simple and annotations cover side effects, so the scenario is low-complexity. But there is no output schema and no explanation of what fields each position entry includes (e.g. quantity, price, P/L), leaving the result shape somewhat ambiguous for the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has no description on the sole symbol parameter, so the description's '缺省 symbol 返回全部' meaningfully supplies the key semantics: an omitted symbol returns all positions. For a single optional string param, that is the essential distinguishing guidance.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states a clear verb ('返回') and resource ('当前持仓列表'), which immediately identifies it as a position-listing tool. It does not explicitly contrast with sibling tools like trading_balance or trading_position_mode, so it stops short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as order history or balance queries. The '缺省 symbol 返回全部持仓' note is a parameter behavior, not a usage scenario or exclusion.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_set_leverage设置杠杆C
Destructive

设置交易对杠杆倍数(1~125,视交易对而定)。

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYes
leverageYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
symbolYes
leverageYes

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already flag the tool as destructive and non-read-only, lowering the bar for behavioral disclosure. The description adds the useful caveat that the valid leverage range is 1-125 but varies by trading pair. However, it does not mention the effect on existing positions or account-level consequences beyond what annotations state.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with no filler, front-loading the core purpose. It is appropriately brief but arguably under-specified given the complexities of a destructive trading operation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a state-changing tool with a destructive hint, the description is materially incomplete. It lacks guidance on when to use the tool, how to coordinate with margin-type settings, and what the operational impact will be. The output schema's existence covers the return value, but not the missing behavioral and usage context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema-description coverage, the description must compensate for the lack of parameter documentation. It mentions the leverage range but that is already present in the schema bounds, and it offers no explanation of the symbol parameter or its expected values.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: setting the leverage multiplier for a trading pair. The action is clear and distinct from the sibling tools such as trading_set_margin_type and trading_position_margin, though it does not explicitly differentiate itself by naming an alternative.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus related alternatives like trading_set_margin_type or trading_position_margin. It states the action but leaves all selection context and preconditions to the agent to infer.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_set_margin_type设置保证金模式A
Destructive

切换 ISOLATED(逐仓)/ CROSSED(全仓)。存在持仓时可能被拒绝。

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYes
marginTypeYes

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

虽然 annotations 已标记 destructiveHint=true,但描述额外披露了“存在持仓时可能被拒绝”这一关键运行时行为。它让代理知道这是一个有状态依赖的写操作,超出注解本身的含义,提供了有价值的上下文。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

描述只有两句话,核心操作和约束条件都已前置,没有重复 schema 或 annotations 中的冗余信息。每个短语都承载了有效语义。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

对只有 2 个必填参数且值为 enum 的设置类工具来说,description 已经覆盖了操作目标、可选值、以及主要失败场景。没有 output schema,因此不需要描述返回值;整体对正确调用与风险判断足够完整。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

schema 描述覆盖率为 0%,没有参数说明,因此描述需要承担更多参数解释。描述中的“ISOLATED(逐仓)/ CROSSED(全仓)”补充了 marginType 的中文含义,但 symbol 参数没有被进一步解释。整体属于最低可用水平,仍有一定信息增量。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

描述使用具体动词“切换”和明确资源“保证金模式”,并直接指出可切换的两个值 ISOLATED(逐仓)和 CROSSED(全仓)。这足以与同为设置类的 trading_set_leverage、trading_position_mode 等 sibling 工具区分开。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

描述没有说明何时应使用该工具,也没有与 set_leverage、position_mode 等类似工具做条件区分。唯一提供的限制是“存在持仓时可能被拒绝”,这是操作后果而非使用时机,因此缺乏有效的选用指导。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trading_trades成交记录C
Read-onlyIdempotent

返回:指定交易对的逐笔成交记录。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
symbolYes
orderIdNo

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and idempotentHint=true, so the description does not need to restate that this is a safe read operation. The description adds 'per-transaction trade records for a specified pair' but does not disclose pagination, ordering, rate limits, or other behavioral details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with no filler, front-loaded with the returning verb and core resource. It is efficient, though it sacrifices useful detail for brevity, and is not as hollow as a pure tautology.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 3-parameter tool with no output schema and 0% schema description coverage, this is insufficient. The description omits return fields, pagination, ordering, error conditions, and the role of optional parameters, so an agent cannot fully understand the call result or edge cases.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description carries the burden of explaining parameters. It only implies the symbol parameter via '指定交易对'. It does not explain limit or orderId semantics, even though orderId is a non-obvious filter that needs clarification.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool returns '逐笔成交记录' (trade-by-trade transaction records) for a specified trading pair, which gives a specific verb, resource, and scope. However, it does not explicitly differentiate itself from sibling tools like trading_order_history or trading_force_orders, so it falls short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when this tool should be used versus alternatives such as trading_order_history, market_klines, or market_trades. The description simply says what it returns, not when to choose it over the many similar sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 83 tool updatesv3.0.1
    • Addedanalysis_drawdown
    • Addedanalysis_sharpe
    • Addedanalysis_var
    • Changedindicator_adx10 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / candles
        Removed value: -{
        -  "description": "HLC K 线数组 [{high, low, close}]",
        -  "items": {
        -    "properties": {
        -      "close": {
        -        "type": "number"
        -      },
        -      "high": {
        -        "type": "number"
        -      },
        -      "low": {
        -        "type": "number"
        -      }
        -    },
        -    "required": [
        -      "high",
        -      "low",
        -      "close"
        -    ],
        -    "type": "object"
        -  },
        -  "minItems": 1,
        -  "type": "array"
        -}
      • addedInput schema / properties / interval
        Added value: +{
        +  "enum": [
        +    "1m",
        +    "3m",
        +    "5m",
        +    "15m",
        +    "30m",
        +    "1h",
        +    "2h",
        +    "4h",
        +    "6h",
        +    "8h",
        +    "12h",
        +    "1d",
        +    "3d",
        +    "1w",
        +    "1M"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / limit
        Added value: +{
        +  "default": 200,
        +  "maximum": 1500,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • removedInput schema / properties / period / description
        Removed value: -"计算周期"
      • changedInput schema / properties / period / maximum
        Previous value: -9007199254740991New value: +100
      • removedInput schema / properties / smoothingType
        Removed value: -{
        -  "default": "EMA",
        -  "enum": [
        -    "EMA",
        -    "RMA",
        -    "SMA",
        -    "WMA",
        -    "WSMA"
        -  ],
        -  "type": "string"
        -}
      • addedInput schema / properties / symbol
        Added value: +{
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "candles"
        -]New value: +[
        +  "symbol",
        +  "interval"
        +]
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "items": {
        +        "type": "number"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "data"
        +  ],
        +  "type": "object"
        +}
    • Removedindicator_adx_direct
    • Changedindicator_atr10 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / candles
        Removed value: -{
        -  "description": "HLC K 线数组 [{high, low, close}]",
        -  "items": {
        -    "properties": {
        -      "close": {
        -        "type": "number"
        -      },
        -      "high": {
        -        "type": "number"
        -      },
        -      "low": {
        -        "type": "number"
        -      }
        -    },
        -    "required": [
        -      "high",
        -      "low",
        -      "close"
        -    ],
        -    "type": "object"
        -  },
        -  "minItems": 1,
        -  "type": "array"
        -}
      • addedInput schema / properties / interval
        Added value: +{
        +  "enum": [
        +    "1m",
        +    "3m",
        +    "5m",
        +    "15m",
        +    "30m",
        +    "1h",
        +    "2h",
        +    "4h",
        +    "6h",
        +    "8h",
        +    "12h",
        +    "1d",
        +    "3d",
        +    "1w",
        +    "1M"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / limit
        Added value: +{
        +  "default": 200,
        +  "maximum": 1500,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • removedInput schema / properties / period / description
        Removed value: -"计算周期"
      • changedInput schema / properties / period / maximum
        Previous value: -9007199254740991New value: +100
      • removedInput schema / properties / smoothingType
        Removed value: -{
        -  "default": "EMA",
        -  "enum": [
        -    "EMA",
        -    "RMA",
        -    "SMA",
        -    "WMA",
        -    "WSMA"
        -  ],
        -  "type": "string"
        -}
      • addedInput schema / properties / symbol
        Added value: +{
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "candles"
        -]New value: +[
        +  "symbol",
        +  "interval"
        +]
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "items": {
        +        "type": "number"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "data"
        +  ],
        +  "type": "object"
        +}
    • Removedindicator_atr_direct
    • Changedindicator_bb_rsi13 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / deviationMultiplier / description
        Removed value: -"BBands 标准差倍数"
      • addedInput schema / properties / deviationMultiplier / maximum
        Added value: +10
      • addedInput schema / properties / interval
        Added value: +{
        +  "enum": [
        +    "1m",
        +    "3m",
        +    "5m",
        +    "15m",
        +    "30m",
        +    "1h",
        +    "2h",
        +    "4h",
        +    "6h",
        +    "8h",
        +    "12h",
        +    "1d",
        +    "3d",
        +    "1w",
        +    "1M"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / limit
        Added value: +{
        +  "default": 200,
        +  "maximum": 1500,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • removedInput schema / properties / period / description
        Removed value: -"BBands 周期"
      • changedInput schema / properties / period / maximum
        Previous value: -9007199254740991New value: +250
      • removedInput schema / properties / rsiPeriod / description
        Removed value: -"RSI 周期"
      • changedInput schema / properties / rsiPeriod / maximum
        Previous value: -9007199254740991New value: +250
      • addedInput schema / properties / symbol
        Added value: +{
        +  "type": "string"
        +}
      • removedInput schema / properties / values
        Removed value: -{
        -  "description": "价格序列(收盘价)",
        -  "items": {
        -    "type": "number"
        -  },
        -  "minItems": 1,
        -  "type": "array"
        -}
      • changedInput schema / required
        Previous value: -[
        -  "values"
        -]New value: +[
        +  "symbol",
        +  "interval"
        +]
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "lower": {
        +      "type": "number"
        +    },
        +    "middle": {
        +      "type": "number"
        +    },
        +    "percentB": {
        +      "type": "number"
        +    },
        +    "rsi": {
        +      "type": "number"
        +    },
        +    "upper": {
        +      "type": "number"
        +    },
        +    "zone": {
        +      "enum": [
        +        "above",
        +        "upper_half",
        +        "lower_half",
        +        "below"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "upper",
        +    "middle",
        +    "lower",
        +    "percentB",
        +    "zone",
        +    "rsi"
        +  ],
        +  "type": "object"
        +}
    • Removedindicator_bb_rsi_direct
    • Changedindicator_bbands10 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / deviationMultiplier / description
        Removed value: -"标准差倍数"
      • addedInput schema / properties / deviationMultiplier / maximum
        Added value: +10
      • addedInput schema / properties / interval
        Added value: +{
        +  "enum": [
        +    "1m",
        +    "3m",
        +    "5m",
        +    "15m",
        +    "30m",
        +    "1h",
        +    "2h",
        +    "4h",
        +    "6h",
        +    "8h",
        +    "12h",
        +    "1d",
        +    "3d",
        +    "1w",
        +    "1M"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / limit
        Added value: +{
        +  "default": 200,
        +  "maximum": 1500,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • removedInput schema / properties / period / description
        Removed value: -"计算周期"
      • changedInput schema / properties / period / maximum
        Previous value: -9007199254740991New value: +250
      • addedInput schema / properties / symbol
        Added value: +{
        +  "type": "string"
        +}
      • removedInput schema / properties / values
        Removed value: -{
        -  "description": "价格序列(收盘价)",
        -  "items": {
        -    "type": "number"
        -  },
        -  "minItems": 1,
        -  "type": "array"
        -}
      • changedInput schema / required
        Previous value: -[
        -  "values"
        -]New value: +[
        +  "symbol",
        +  "interval"
        +]
    • Removedindicator_bbands_direct
    • Addedindicator_cci
    • Changedindicator_divergence10 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / properties / interval
        Added value: +{
        +  "enum": [
        +    "1m",
        +    "3m",
        +    "5m",
        +    "15m",
        +    "30m",
        +    "1h",
        +    "2h",
        +    "4h",
        +    "6h",
        +    "8h",
        +    "12h",
        +    "1d",
        +    "3d",
        +    "1w",
        +    "1M"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / limit
        Added value: +{
        +  "default": 200,
        +  "maximum": 1500,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • changedInput schema / properties / lookback / description
        Previous value: -"分析窗口大小(等分为左右两半各 10 根)"New value: +"背离检测分析窗口(K 线根数)"
      • removedInput schema / properties / rsiPeriod / description
        Removed value: -"RSI 周期"
      • changedInput schema / properties / rsiPeriod / maximum
        Previous value: -9007199254740991New value: +250
      • addedInput schema / properties / symbol
        Added value: +{
        +  "type": "string"
        +}
      • removedInput schema / properties / values
        Removed value: -{
        -  "description": "价格序列(收盘价)",
        -  "items": {
        -    "type": "number"
        -  },
        -  "minItems": 1,
        -  "type": "array"
        -}
      • changedInput schema / required
        Previous value: -[
        -  "values"
        -]New value: +[
        +  "symbol",
        +  "interval"
        +]
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "price": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "high1": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "index": {
        +              "type": "number"
        +            },
        +            "value": {
        +              "type": "number"
        +            }
        +          },
        +          "required": [
        +            "index",
        +            "value"
        +          ],
        +          "type": "object"
        +        },
        +        "high2": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "index": {
        +              "type": "number"
        +            },
        +            "value": {
        +              "type": "number"
        +            }
        +          },
        +          "required": [
        +            "index",
        +            "value"
        +          ],
        +          "type": "object"
        +        },
        +        "low1": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "index": {
        +              "type": "number"
        +            },
        +            "value": {
        +              "type": "number"
        +            }
        +          },
        +          "required": [
        +            "index",
        +            "value"
        +          ],
        +          "type": "object"
        +        },
        +        "low2": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "index": {
        +              "type": "number"
        +            },
        +            "value": {
        +              "type": "number"
        +            }
        +          },
        +          "required": [
        +            "index",
        +            "value"
        +          ],
        +          "type": "object"
        +        }
        +      },
        +      "required": [
        +        "high1",
        +        "high2",
        +        "low1",
        +        "low2"
        +      ],
        +      "type": "object"
        +    },
        +    "rsi": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "atHigh1": {
        +          "type": "number"
        +        },
        +        "atHigh2": {
        +          "type": "number"
        +        },
        +        "atLow1": {
        +          "type": "number"
        +        },
        +        "atLow2": {
        +          "type": "number"
        +        }
        +      },
        +      "required": [
        +        "atHigh1",
        +        "atHigh2",
        +        "atLow1",
        +        "atLow2"
        +      ],
        +      "type": "object"
        +    },
        +    "type": {
        +      "enum": [
        +        "bearish",
        +        "bullish",
        +        "both",
        +        "none"
        +      ],
        +      "type": "string"
        +    },
        +    "window": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "type",
        +    "window",
        +    "price",
        +    "rsi"
        +  ],
        +  "type": "object"
        +}
    • Removedindicator_divergence_direct
    • Changedindicator_ema12 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / interval / description
        Removed value: -"计算周期"
      • addedInput schema / properties / interval / enum
        Added value: +[
        +  "1m",
        +  "3m",
        +  "5m",
        +  "15m",
        +  "30m",
        +  "1h",
        +  "2h",
        +  "4h",
        +  "6h",
        +  "8h",
        +  "12h",
        +  "1d",
        +  "3d",
        +  "1w",
        +  "1M"
        +]
      • removedInput schema / properties / interval / maximum
        Removed value: -9007199254740991
      • removedInput schema / properties / interval / minimum
        Removed value: -2
      • changedInput schema / properties / interval / type
        Previous value: -"integer"New value: +"string"
      • addedInput schema / properties / limit
        Added value: +{
        +  "default": 200,
        +  "maximum": 1500,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • addedInput schema / properties / period
        Added value: +{
        +  "default": 20,
        +  "maximum": 500,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • addedInput schema / properties / symbol
        Added value: +{
        +  "type": "string"
        +}
      • removedInput schema / properties / values
        Removed value: -{
        -  "description": "价格序列(收盘价)",
        -  "items": {
        -    "type": "number"
        -  },
        -  "minItems": 1,
        -  "type": "array"
        -}
      • changedInput schema / required
        Previous value: -[
        -  "values",
        -  "interval"
        -]New value: +[
        +  "symbol",
        +  "interval"
        +]
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "items": {
        +        "type": "number"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "data"
        +  ],
        +  "type": "object"
        +}
    • Changedindicator_ma_cross12 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / fast / description
        Removed value: -"快线周期"
      • changedInput schema / properties / fast / maximum
        Previous value: -9007199254740991New value: +250
      • addedInput schema / properties / interval
        Added value: +{
        +  "enum": [
        +    "1m",
        +    "3m",
        +    "5m",
        +    "15m",
        +    "30m",
        +    "1h",
        +    "2h",
        +    "4h",
        +    "6h",
        +    "8h",
        +    "12h",
        +    "1d",
        +    "3d",
        +    "1w",
        +    "1M"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / limit
        Added value: +{
        +  "default": 200,
        +  "maximum": 1500,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • removedInput schema / properties / slow / description
        Removed value: -"慢线周期"
      • changedInput schema / properties / slow / maximum
        Previous value: -9007199254740991New value: +250
      • addedInput schema / properties / symbol
        Added value: +{
        +  "type": "string"
        +}
      • changedInput schema / properties / type / description
        Previous value: -"平滑类型"New value: +"均线类型"
      • removedInput schema / properties / values
        Removed value: -{
        -  "description": "价格序列(收盘价)",
        -  "items": {
        -    "type": "number"
        -  },
        -  "minItems": 1,
        -  "type": "array"
        -}
      • changedInput schema / required
        Previous value: -[
        -  "values"
        -]New value: +[
        +  "symbol",
        +  "interval"
        +]
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "bias": {
        +      "enum": [
        +        "bullish",
        +        "bearish",
        +        "neutral"
        +      ],
        +      "type": "string"
        +    },
        +    "cross": {
        +      "enum": [
        +        "golden_cross",
        +        "death_cross",
        +        "none"
        +      ],
        +      "type": "string"
        +    },
        +    "fast": {
        +      "type": "number"
        +    },
        +    "slow": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "cross",
        +    "bias",
        +    "fast",
        +    "slow"
        +  ],
        +  "type": "object"
        +}
    • Removedindicator_ma_cross_direct
    • Changedindicator_macd14 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / fast
        Removed value: -{
        -  "default": 12,
        -  "description": "快线周期",
        -  "maximum": 9007199254740991,
        -  "minimum": 2,
        -  "type": "integer"
        -}
      • removedInput schema / properties / indicatorType
        Removed value: -{
        -  "default": "EMA",
        -  "description": "平滑类型",
        -  "enum": [
        -    "EMA",
        -    "DEMA"
        -  ],
        -  "type": "string"
        -}
      • addedInput schema / properties / interval
        Added value: +{
        +  "enum": [
        +    "1m",
        +    "3m",
        +    "5m",
        +    "15m",
        +    "30m",
        +    "1h",
        +    "2h",
        +    "4h",
        +    "6h",
        +    "8h",
        +    "12h",
        +    "1d",
        +    "3d",
        +    "1w",
        +    "1M"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / limit
        Added value: +{
        +  "default": 200,
        +  "maximum": 1500,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • addedInput schema / properties / longPeriod
        Added value: +{
        +  "default": 26,
        +  "maximum": 250,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • addedInput schema / properties / shortPeriod
        Added value: +{
        +  "default": 12,
        +  "maximum": 250,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • removedInput schema / properties / signal
        Removed value: -{
        -  "default": 9,
        -  "description": "信号线周期",
        -  "maximum": 9007199254740991,
        -  "minimum": 2,
        -  "type": "integer"
        -}
      • addedInput schema / properties / signalPeriod
        Added value: +{
        +  "default": 9,
        +  "maximum": 100,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • removedInput schema / properties / slow
        Removed value: -{
        -  "default": 26,
        -  "description": "慢线周期",
        -  "maximum": 9007199254740991,
        -  "minimum": 2,
        -  "type": "integer"
        -}
      • addedInput schema / properties / symbol
        Added value: +{
        +  "type": "string"
        +}
      • removedInput schema / properties / values
        Removed value: -{
        -  "description": "价格序列(收盘价)",
        -  "items": {
        -    "type": "number"
        -  },
        -  "minItems": 1,
        -  "type": "array"
        -}
      • changedInput schema / required
        Previous value: -[
        -  "values"
        -]New value: +[
        +  "symbol",
        +  "interval"
        +]
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "histogram": {
        +            "type": "number"
        +          },
        +          "macd": {
        +            "type": "number"
        +          },
        +          "signal": {
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "macd",
        +          "signal",
        +          "histogram"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "data"
        +  ],
        +  "type": "object"
        +}
    • Removedindicator_macd_direct
    • Changedindicator_macd_rsi15 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / fast / description
        Removed value: -"MACD 快线周期"
      • changedInput schema / properties / fast / maximum
        Previous value: -9007199254740991New value: +250
      • addedInput schema / properties / interval
        Added value: +{
        +  "enum": [
        +    "1m",
        +    "3m",
        +    "5m",
        +    "15m",
        +    "30m",
        +    "1h",
        +    "2h",
        +    "4h",
        +    "6h",
        +    "8h",
        +    "12h",
        +    "1d",
        +    "3d",
        +    "1w",
        +    "1M"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / limit
        Added value: +{
        +  "default": 200,
        +  "maximum": 1500,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • removedInput schema / properties / rsiPeriod / description
        Removed value: -"RSI 周期"
      • changedInput schema / properties / rsiPeriod / maximum
        Previous value: -9007199254740991New value: +250
      • removedInput schema / properties / signal / description
        Removed value: -"MACD 信号线周期"
      • changedInput schema / properties / signal / maximum
        Previous value: -9007199254740991New value: +100
      • removedInput schema / properties / slow / description
        Removed value: -"MACD 慢线周期"
      • changedInput schema / properties / slow / maximum
        Previous value: -9007199254740991New value: +250
      • addedInput schema / properties / symbol
        Added value: +{
        +  "type": "string"
        +}
      • removedInput schema / properties / values
        Removed value: -{
        -  "description": "价格序列(收盘价)",
        -  "items": {
        -    "type": "number"
        -  },
        -  "minItems": 1,
        -  "type": "array"
        -}
      • changedInput schema / required
        Previous value: -[
        -  "values"
        -]New value: +[
        +  "symbol",
        +  "interval"
        +]
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "macd": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "histogram": {
        +          "type": "number"
        +        },
        +        "macd": {
        +          "type": "number"
        +        },
        +        "signal": {
        +          "type": "number"
        +        }
        +      },
        +      "required": [
        +        "macd",
        +        "signal",
        +        "histogram"
        +      ],
        +      "type": "object"
        +    },
        +    "rsi": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "macd",
        +    "rsi"
        +  ],
        +  "type": "object"
        +}
    • Removedindicator_macd_rsi_direct
    • Addedindicator_mfi
    • Addedindicator_multi
    • Removedindicator_multi_direct
    • Addedindicator_obv
    • Changedindicator_rsi12 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / interval / description
        Removed value: -"计算周期"
      • addedInput schema / properties / interval / enum
        Added value: +[
        +  "1m",
        +  "3m",
        +  "5m",
        +  "15m",
        +  "30m",
        +  "1h",
        +  "2h",
        +  "4h",
        +  "6h",
        +  "8h",
        +  "12h",
        +  "1d",
        +  "3d",
        +  "1w",
        +  "1M"
        +]
      • removedInput schema / properties / interval / maximum
        Removed value: -9007199254740991
      • removedInput schema / properties / interval / minimum
        Removed value: -2
      • changedInput schema / properties / interval / type
        Previous value: -"integer"New value: +"string"
      • addedInput schema / properties / limit
        Added value: +{
        +  "default": 200,
        +  "maximum": 1500,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • addedInput schema / properties / period
        Added value: +{
        +  "default": 14,
        +  "maximum": 250,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • addedInput schema / properties / symbol
        Added value: +{
        +  "type": "string"
        +}
      • removedInput schema / properties / values
        Removed value: -{
        -  "description": "价格序列(收盘价)",
        -  "items": {
        -    "type": "number"
        -  },
        -  "minItems": 1,
        -  "type": "array"
        -}
      • changedInput schema / required
        Previous value: -[
        -  "values",
        -  "interval"
        -]New value: +[
        +  "symbol",
        +  "interval"
        +]
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "items": {
        +        "type": "number"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "data"
        +  ],
        +  "type": "object"
        +}
    • Removedindicator_rsi_direct
    • Changedindicator_sma12 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / interval / description
        Removed value: -"计算周期"
      • addedInput schema / properties / interval / enum
        Added value: +[
        +  "1m",
        +  "3m",
        +  "5m",
        +  "15m",
        +  "30m",
        +  "1h",
        +  "2h",
        +  "4h",
        +  "6h",
        +  "8h",
        +  "12h",
        +  "1d",
        +  "3d",
        +  "1w",
        +  "1M"
        +]
      • removedInput schema / properties / interval / maximum
        Removed value: -9007199254740991
      • removedInput schema / properties / interval / minimum
        Removed value: -2
      • changedInput schema / properties / interval / type
        Previous value: -"integer"New value: +"string"
      • addedInput schema / properties / limit
        Added value: +{
        +  "default": 200,
        +  "maximum": 1500,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • addedInput schema / properties / period
        Added value: +{
        +  "default": 20,
        +  "maximum": 500,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • addedInput schema / properties / symbol
        Added value: +{
        +  "type": "string"
        +}
      • removedInput schema / properties / values
        Removed value: -{
        -  "description": "价格序列(收盘价)",
        -  "items": {
        -    "type": "number"
        -  },
        -  "minItems": 1,
        -  "type": "array"
        -}
      • changedInput schema / required
        Previous value: -[
        -  "values",
        -  "interval"
        -]New value: +[
        +  "symbol",
        +  "interval"
        +]
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "items": {
        +        "type": "number"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "data"
        +  ],
        +  "type": "object"
        +}
    • Addedindicator_stoch
    • Removedindicator_stochastic
    • Removedindicator_stochastic_direct
    • Addedindicator_super_trend
    • Changedindicator_volatility_regime10 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / bbPeriod / description
        Removed value: -"BBands 周期"
      • changedInput schema / properties / bbPeriod / maximum
        Previous value: -9007199254740991New value: +250
      • addedInput schema / properties / interval
        Added value: +{
        +  "enum": [
        +    "1m",
        +    "3m",
        +    "5m",
        +    "15m",
        +    "30m",
        +    "1h",
        +    "2h",
        +    "4h",
        +    "6h",
        +    "8h",
        +    "12h",
        +    "1d",
        +    "3d",
        +    "1w",
        +    "1M"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / limit
        Added value: +{
        +  "default": 200,
        +  "maximum": 1500,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • changedInput schema / properties / lookback / description
        Previous value: -"历史比较窗口"New value: +"带宽百分位历史比较窗口(K 线根数)"
      • addedInput schema / properties / symbol
        Added value: +{
        +  "type": "string"
        +}
      • removedInput schema / properties / values
        Removed value: -{
        -  "description": "价格序列(收盘价)",
        -  "items": {
        -    "type": "number"
        -  },
        -  "minItems": 1,
        -  "type": "array"
        -}
      • changedInput schema / required
        Previous value: -[
        -  "values"
        -]New value: +[
        +  "symbol",
        +  "interval"
        +]
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "bandwidth": {
        +      "type": "number"
        +    },
        +    "percentile": {
        +      "type": "number"
        +    },
        +    "regime": {
        +      "enum": [
        +        "squeeze",
        +        "low_volatility",
        +        "normal",
        +        "high_volatility",
        +        "expansion"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "regime",
        +    "bandwidth",
        +    "percentile"
        +  ],
        +  "type": "object"
        +}
    • Removedindicator_volatility_regime_direct
    • Addedindicator_vwap
    • Changedmarket_24hr_ticker2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号(不传则全部)"
    • Changedmarket_book_ticker2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号(不传则全部)"
    • Changedmarket_continuous_klines7 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / contractType / description
        Removed value: -"合约类型 PERPETUAL=永续 / CURRENT_QUARTER=当季 / NEXT_QUARTER=次季"
      • changedInput schema / properties / contractType / enum
        Previous value: -[
        -  "PERPETUAL",
        -  "CURRENT_QUARTER",
        -  "NEXT_QUARTER"
        -]New value: +[
        +  "PERPETUAL",
        +  "CURRENT_QUARTER",
        +  "NEXT_QUARTER",
        +  "TRADIFI_PERPETUAL"
        +]
      • removedInput schema / properties / interval / description
        Removed value: -"K 线周期"
      • changedInput schema / properties / limit / default
        Previous value: -100New value: +500
      • removedInput schema / properties / limit / description
        Removed value: -"数据量限制"
      • removedInput schema / properties / pair / description
        Removed value: -"交易对符号 如 BTCUSDT"
    • Changedmarket_exchange_info2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / properties / symbol
        Added value: +{
        +  "type": "string"
        +}
    • Changedmarket_funding_rate2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / symbol
        Removed value: -{
        -  "description": "交易对符号(不传则全部)",
        -  "type": "string"
        -}
    • Changedmarket_funding_rate_history4 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / limit / description
        Removed value: -"数据量限制"
      • changedInput schema / properties / limit / maximum
        Previous value: -1500New value: +1000
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号(不传则全部)"
    • Changedmarket_klines8 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / properties / endTime
        Added value: +{
        +  "maximum": 9007199254740991,
        +  "minimum": -9007199254740991,
        +  "type": "integer"
        +}
      • removedInput schema / properties / interval / description
        Removed value: -"K 线周期"
      • changedInput schema / properties / limit / default
        Previous value: -500New value: +100
      • removedInput schema / properties / limit / description
        Removed value: -"数据量限制"
      • addedInput schema / properties / startTime
        Added value: +{
        +  "maximum": 9007199254740991,
        +  "minimum": -9007199254740991,
        +  "type": "integer"
        +}
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号 如 BTCUSDT"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "close": {
        +            "type": "number"
        +          },
        +          "closeTime": {
        +            "type": "number"
        +          },
        +          "high": {
        +            "type": "number"
        +          },
        +          "low": {
        +            "type": "number"
        +          },
        +          "open": {
        +            "type": "number"
        +          },
        +          "openTime": {
        +            "type": "number"
        +          },
        +          "quoteVolume": {
        +            "type": "number"
        +          },
        +          "takerBuyVolume": {
        +            "type": "number"
        +          },
        +          "takerQuoteVolume": {
        +            "type": "number"
        +          },
        +          "trades": {
        +            "type": "number"
        +          },
        +          "volume": {
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "openTime",
        +          "open",
        +          "high",
        +          "low",
        +          "close",
        +          "volume",
        +          "closeTime",
        +          "quoteVolume",
        +          "trades",
        +          "takerBuyVolume",
        +          "takerQuoteVolume"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "data"
        +  ],
        +  "type": "object"
        +}
    • Changedmarket_mark_price2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号(不传则全部)"
    • Changedmarket_open_interest3 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号 如 BTCUSDT"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "openInterest": {
        +      "type": "number"
        +    },
        +    "symbol": {
        +      "type": "string"
        +    },
        +    "time": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "symbol",
        +    "openInterest",
        +    "time"
        +  ],
        +  "type": "object"
        +}
    • Changedmarket_orderbook8 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / limit / anyOf
        Removed value: -[
        -  {
        -    "const": 5,
        -    "type": "number"
        -  },
        -  {
        -    "const": 10,
        -    "type": "number"
        -  },
        -  {
        -    "const": 20,
        -    "type": "number"
        -  },
        -  {
        -    "const": 50,
        -    "type": "number"
        -  },
        -  {
        -    "const": 100,
        -    "type": "number"
        -  },
        -  {
        -    "const": 500,
        -    "type": "number"
        -  },
        -  {
        -    "const": 1000,
        -    "type": "number"
        -  },
        -  {
        -    "const": 5000,
        -    "type": "number"
        -  }
        -]
      • changedInput schema / properties / limit / default
        Previous value: -100New value: +20
      • removedInput schema / properties / limit / description
        Removed value: -"深度档位"
      • addedInput schema / properties / limit / maximum
        Added value: +9007199254740991
      • addedInput schema / properties / limit / minimum
        Added value: +-9007199254740991
      • addedInput schema / properties / limit / type
        Added value: +"integer"
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号 如 BTCUSDT"
    • Addedmarket_overview
    • Changedmarket_ping2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "ok": {
        +      "type": "boolean"
        +    }
        +  },
        +  "required": [
        +    "ok"
        +  ],
        +  "type": "object"
        +}
    • Changedmarket_price3 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号 如 BTCUSDT"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "price": {
        +      "type": "number"
        +    },
        +    "symbol": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "symbol",
        +    "price"
        +  ],
        +  "type": "object"
        +}
    • Changedmarket_time2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "serverTime": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "serverTime"
        +  ],
        +  "type": "object"
        +}
    • Removedrisk_drawdown
    • Removedrisk_sharpe
    • Removedrisk_var
    • Changedtrading_account2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "availableBalance": {
        +      "type": "number"
        +    },
        +    "totalMarginBalance": {
        +      "type": "number"
        +    },
        +    "totalOpenOrderInitialMargin": {
        +      "type": "number"
        +    },
        +    "totalPositionInitialMargin": {
        +      "type": "number"
        +    },
        +    "totalUnrealizedProfit": {
        +      "type": "number"
        +    },
        +    "totalWalletBalance": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "totalWalletBalance",
        +    "totalUnrealizedProfit",
        +    "totalMarginBalance",
        +    "availableBalance",
        +    "totalPositionInitialMargin",
        +    "totalOpenOrderInitialMargin"
        +  ],
        +  "type": "object"
        +}
    • Changedtrading_algo_orders3 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / algoId
        Removed value: -{
        -  "description": "算法订单ID",
        -  "maximum": 9007199254740991,
        -  "minimum": -9007199254740991,
        -  "type": "integer"
        -}
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号 如 BTCUSDT"
    • Changedtrading_balance2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "asset": {
        +            "type": "string"
        +          },
        +          "availableBalance": {
        +            "type": "number"
        +          },
        +          "balance": {
        +            "type": "number"
        +          },
        +          "crossWalletBalance": {
        +            "type": "number"
        +          },
        +          "unrealizedProfit": {
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "asset",
        +          "balance",
        +          "availableBalance",
        +          "crossWalletBalance",
        +          "unrealizedProfit"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "data"
        +  ],
        +  "type": "object"
        +}
    • Changedtrading_cancel_algo3 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / algoId / description
        Removed value: -"算法订单ID"
      • removedInput schema / properties / clientAlgoId / description
        Removed value: -"自定义算法订单ID"
    • Changedtrading_cancel_all2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号 如 BTCUSDT"
    • Changedtrading_cancel_order4 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / orderId / description
        Removed value: -"系统订单ID"
      • removedInput schema / properties / origClientOrderId / description
        Removed value: -"自定义订单ID"
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号 如 BTCUSDT"
    • Changedtrading_commission3 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号 如 BTCUSDT"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "makerCommissionRate": {
        +      "type": "number"
        +    },
        +    "symbol": {
        +      "type": "string"
        +    },
        +    "takerCommissionRate": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "symbol",
        +    "makerCommissionRate",
        +    "takerCommissionRate"
        +  ],
        +  "type": "object"
        +}
    • Changedtrading_force_orders5 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / autoCloseType / description
        Removed value: -"LIQUIDATION=强平 / ADL=自动减仓"
      • removedInput schema / properties / limit / description
        Removed value: -"数据量限制"
      • changedInput schema / properties / limit / maximum
        Previous value: -1000New value: +100
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号 如 BTCUSDT"
    • Changedtrading_get_order4 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / orderId / description
        Removed value: -"系统订单ID"
      • removedInput schema / properties / origClientOrderId / description
        Removed value: -"自定义订单ID"
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号 如 BTCUSDT"
    • Changedtrading_income6 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / properties / endTime
        Added value: +{
        +  "maximum": 9007199254740991,
        +  "minimum": -9007199254740991,
        +  "type": "integer"
        +}
      • changedInput schema / properties / incomeType / enum
        Previous value: -[
        -  "TRANSFER",
        -  "WELCOME_BONUS",
        -  "REALIZED_PNL",
        -  "FUNDING_FEE",
        -  "COMMISSION",
        -  "INSURANCE_CLEAR"
        -]New value: +[
        +  "TRANSFER",
        +  "WELCOME_BONUS",
        +  "REALIZED_PNL",
        +  "FUNDING_FEE",
        +  "COMMISSION",
        +  "INSURANCE_CLEAR",
        +  "REFERRAL_KICKBACK",
        +  "COMMISSION_REBATE",
        +  "API_REBATE",
        +  "CONTEST_REWARD",
        +  "CROSS_COLLATERAL_TRANSFER",
        +  "OPTIONS_PREMIUM_FEE",
        +  "OPTIONS_SETTLE_PROFIT",
        +  "INTERNAL_TRANSFER",
        +  "AUTO_EXCHANGE",
        +  "DELIVERED_SETTELMENT",
        +  "COIN_SWAP_DEPOSIT",
        +  "COIN_SWAP_WITHDRAW",
        +  "POSITION_LIMIT_INCREASE_FEE",
        +  "STRATEGY_UMFUTURES_TRANSFER",
        +  "FEE_RETURN",
        +  "BFUSD_REWARD"
        +]
      • removedInput schema / properties / limit / description
        Removed value: -"数据量限制"
      • addedInput schema / properties / startTime
        Added value: +{
        +  "maximum": 9007199254740991,
        +  "minimum": -9007199254740991,
        +  "type": "integer"
        +}
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号 如 BTCUSDT"
    • Changedtrading_modify_order8 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / orderId / description
        Removed value: -"系统订单ID"
      • removedInput schema / properties / origClientOrderId / description
        Removed value: -"自定义订单ID"
      • removedInput schema / properties / price / description
        Removed value: -"新价格"
      • removedInput schema / properties / quantity / description
        Removed value: -"新数量"
      • removedInput schema / properties / side / description
        Removed value: -"方向 BUY=买入 / SELL=卖出"
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号 如 BTCUSDT"
      • changedInput schema / required
        Previous value: -[
        -  "symbol",
        -  "side"
        -]New value: +[
        +  "symbol",
        +  "side",
        +  "quantity",
        +  "price"
        +]
    • Changedtrading_open_orders2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号 如 BTCUSDT"
    • Changedtrading_order_history7 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / endTime / description
        Removed value: -"结束毫秒时间戳"
      • changedInput schema / properties / limit / default
        Previous value: -500New value: +100
      • removedInput schema / properties / limit / description
        Removed value: -"数据量限制"
      • addedInput schema / properties / orderId
        Added value: +{
        +  "maximum": 9007199254740991,
        +  "minimum": -9007199254740991,
        +  "type": "integer"
        +}
      • removedInput schema / properties / startTime / description
        Removed value: -"起始毫秒时间戳"
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号 如 BTCUSDT"
    • Changedtrading_place_algo15 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / properties / activatePrice
        Added value: +{
        +  "description": "追踪止损激活价,未达到前不开始追踪",
        +  "exclusiveMinimum": 0,
        +  "type": "number"
        +}
      • addedInput schema / properties / callbackRate
        Added value: +{
        +  "description": "追踪止损回撤百分比(0.1~10,1=1%),仅 TRAILING_STOP_MARKET 需要",
        +  "maximum": 10,
        +  "minimum": 0.1,
        +  "type": "number"
        +}
      • addedInput schema / properties / clientAlgoId
        Added value: +{
        +  "type": "string"
        +}
      • addedInput schema / properties / closePosition
        Added value: +{
        +  "description": "触发后全平该合约仓位;为 true 时不可传 quantity / reduceOnly",
        +  "type": "boolean"
        +}
      • removedInput schema / properties / positionSide / description
        Removed value: -"持仓方向(双向持仓模式时需指定)"
      • changedInput schema / properties / positionSide / enum
        Previous value: -[
        -  "BOTH",
        -  "LONG",
        -  "SHORT"
        -]New value: +[
        +  "LONG",
        +  "SHORT"
        +]
      • addedInput schema / properties / price / description
        Added value: +"限价委托价,仅 STOP / TAKE_PROFIT 类型需要"
      • addedInput schema / properties / priceProtect
        Added value: +{
        +  "type": "boolean"
        +}
      • removedInput schema / properties / side / description
        Removed value: -"方向 BUY=买入 / SELL=卖出"
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号 如 BTCUSDT"
      • addedInput schema / properties / timeInForce
        Added value: +{
        +  "enum": [
        +    "GTC",
        +    "IOC",
        +    "FOK"
        +  ],
        +  "type": "string"
        +}
      • changedInput schema / properties / triggerPrice / description
        Previous value: -"触发价格"New value: +"触发价。止损类 BUY 须高于现价 / SELL 须低于现价,止盈类相反"
      • changedInput schema / properties / type / enum
        Previous value: -[
        -  "LIMIT",
        -  "MARKET",
        -  "STOP",
        -  "STOP_MARKET",
        -  "TAKE_PROFIT",
        -  "TAKE_PROFIT_MARKET",
        -  "TRAILING_STOP_MARKET"
        -]New value: +[
        +  "STOP_MARKET",
        +  "TAKE_PROFIT_MARKET",
        +  "STOP",
        +  "TAKE_PROFIT",
        +  "TRAILING_STOP_MARKET"
        +]
      • addedInput schema / properties / workingType
        Added value: +{
        +  "enum": [
        +    "MARK_PRICE",
        +    "CONTRACT_PRICE"
        +  ],
        +  "type": "string"
        +}
    • Changedtrading_place_order17 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / properties / dryRun
        Added value: +{
        +  "default": false,
        +  "type": "boolean"
        +}
      • addedInput schema / properties / goodTillDate
        Added value: +{
        +  "exclusiveMinimum": 0,
        +  "maximum": 9007199254740991,
        +  "type": "integer"
        +}
      • addedInput schema / properties / newClientOrderId
        Added value: +{
        +  "type": "string"
        +}
      • addedInput schema / properties / newOrderRespType
        Added value: +{
        +  "enum": [
        +    "ACK",
        +    "RESULT"
        +  ],
        +  "type": "string"
        +}
      • removedInput schema / properties / positionSide / description
        Removed value: -"持仓方向(双向持仓模式时需指定)"
      • changedInput schema / properties / positionSide / enum
        Previous value: -[
        -  "BOTH",
        -  "LONG",
        -  "SHORT"
        -]New value: +[
        +  "LONG",
        +  "SHORT"
        +]
      • removedInput schema / properties / price / description
        Removed value: -"价格(市价可不传)"
      • removedInput schema / properties / quantity / description
        Removed value: -"数量(市价全仓可不传)"
      • removedInput schema / properties / reduceOnly / description
        Removed value: -"仅减仓 true=是"
      • removedInput schema / properties / side / description
        Removed value: -"方向 BUY=买入 / SELL=卖出"
      • removedInput schema / properties / stopPrice
        Removed value: -{
        -  "description": "止损/止盈触发价",
        -  "exclusiveMinimum": 0,
        -  "type": "number"
        -}
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号 如 BTCUSDT"
      • removedInput schema / properties / timeInForce / description
        Removed value: -"有效期 GTC=有效至取消 / IOC=立即成交或取消 / FOK=全部成交或取消"
      • changedInput schema / properties / timeInForce / enum
        Previous value: -[
        -  "GTC",
        -  "IOC",
        -  "FOK",
        -  "GTX",
        -  "GTD"
        -]New value: +[
        +  "GTC",
        +  "IOC",
        +  "FOK",
        +  "GTX",
        +  "GTD",
        +  "RPI"
        +]
      • changedInput schema / properties / type / enum
        Previous value: -[
        -  "LIMIT",
        -  "MARKET",
        -  "STOP",
        -  "STOP_MARKET",
        -  "TAKE_PROFIT",
        -  "TAKE_PROFIT_MARKET",
        -  "TRAILING_STOP_MARKET"
        -]New value: +[
        +  "LIMIT",
        +  "MARKET"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "symbol",
        -  "side",
        -  "type"
        -]New value: +[
        +  "symbol",
        +  "side",
        +  "type",
        +  "quantity"
        +]
    • Changedtrading_position_margin10 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / amount / description
        Removed value: -"调整金额"
      • removedInput schema / properties / positionSide / description
        Removed value: -"持仓方向(双向持仓模式时需指定)"
      • changedInput schema / properties / positionSide / enum
        Previous value: -[
        -  "BOTH",
        -  "LONG",
        -  "SHORT"
        -]New value: +[
        +  "LONG",
        +  "SHORT"
        +]
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号 如 BTCUSDT"
      • addedInput schema / properties / type / anyOf
        Added value: +[
        +  {
        +    "const": 1,
        +    "type": "number"
        +  },
        +  {
        +    "const": 2,
        +    "type": "number"
        +  }
        +]
      • removedInput schema / properties / type / description
        Removed value: -"1=增加保证金 / 0=减少保证金"
      • removedInput schema / properties / type / enum
        Removed value: -[
        -  "0",
        -  "1"
        -]
      • removedInput schema / properties / type / type
        Removed value: -"string"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "amount": {
        +      "type": "number"
        +    },
        +    "type": {
        +      "anyOf": [
        +        {
        +          "const": 1,
        +          "type": "number"
        +        },
        +        {
        +          "const": 2,
        +          "type": "number"
        +        }
        +      ]
        +    }
        +  },
        +  "required": [
        +    "amount",
        +    "type"
        +  ],
        +  "type": "object"
        +}
    • Changedtrading_position_mode4 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / properties / dual
        Added value: +{
        +  "type": "boolean"
        +}
      • removedInput schema / properties / dualSidePosition
        Removed value: -{
        -  "description": "持仓模式 true=双向 / false=单向",
        -  "enum": [
        -    "true",
        -    "false"
        -  ],
        -  "type": "string"
        -}
      • removedInput schema / required
        Removed value: -[
        -  "dualSidePosition"
        -]
    • Changedtrading_positions2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / symbol / description
        Removed value: -"可选过滤"
    • Changedtrading_set_leverage4 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / leverage / description
        Removed value: -"杠杆倍数"
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号 如 BTCUSDT"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "leverage": {
        +      "type": "number"
        +    },
        +    "symbol": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "symbol",
        +    "leverage"
        +  ],
        +  "type": "object"
        +}
    • Changedtrading_set_margin_type3 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / marginType / description
        Removed value: -"保证金类型 ISOLATED=逐仓 / CROSSED=全仓"
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号 如 BTCUSDT"
    • Changedtrading_trades4 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / limit / description
        Removed value: -"数据量限制"
      • removedInput schema / properties / orderId / description
        Removed value: -"按订单ID过滤"
      • removedInput schema / properties / symbol / description
        Removed value: -"交易对符号 如 BTCUSDT"
    • Removedutil_average
    • Removedutil_extract_klines
    • Removedutil_grid
    • Removedutil_max
    • Removedutil_median
    • Removedutil_min
    • Removedutil_quartile
    • Removedutil_stddev
    • Removedutil_streaks
    • Removedutil_weekday
  2. 132 tool updatesv2.0.3
    • Removedfutures_account_balance
    • Removedfutures_account_report
    • Removedfutures_agg_trades
    • Removedfutures_all_book_tickers
    • Removedfutures_all_orders
    • Removedfutures_batch_orders
    • Removedfutures_cancel_all_open_orders
    • Removedfutures_cancel_batch_orders
    • Removedfutures_cancel_order
    • Removedfutures_daily_stats
    • Removedfutures_exchange_info
    • Removedfutures_get_order
    • Removedfutures_income
    • Removedfutures_klines
    • Removedfutures_leverage
    • Removedfutures_leverage_bracket
    • Removedfutures_margin_history
    • Removedfutures_margin_type
    • Removedfutures_mark_price
    • Removedfutures_open_orders
    • Removedfutures_order
    • Removedfutures_orderbook
    • Removedfutures_ping
    • Removedfutures_position_margin
    • Removedfutures_prices
    • Removedfutures_quick_order
    • Removedfutures_time
    • Removedfutures_trades
    • Removedfutures_update_order
    • Removedfutures_user_trades
    • Removedindicator_abands
    • Changedindicator_adx6 fields changed
      • changedInput schema / properties / candles / description
        Previous value: -"HLC 数组"New value: +"HLC K 线数组 [{high, low, close}]"
      • removedInput schema / properties / interval
        Removed value: -{
        -  "description": "计算周期",
        -  "minimum": 2,
        -  "type": "number"
        -}
      • addedInput schema / properties / period
        Added value: +{
        +  "default": 14,
        +  "description": "计算周期",
        +  "maximum": 9007199254740991,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • addedInput schema / properties / smoothingType / default
        Added value: +"EMA"
      • removedInput schema / properties / smoothingType / description
        Removed value: -"平滑类型"
      • changedInput schema / required
        Previous value: -[
        -  "candles",
        -  "interval"
        -]New value: +[
        +  "candles"
        +]
    • Addedindicator_adx_direct
    • Removedindicator_ao
    • Changedindicator_atr6 fields changed
      • changedInput schema / properties / candles / description
        Previous value: -"HLC 数组"New value: +"HLC K 线数组 [{high, low, close}]"
      • removedInput schema / properties / interval
        Removed value: -{
        -  "description": "计算周期",
        -  "minimum": 2,
        -  "type": "number"
        -}
      • addedInput schema / properties / period
        Added value: +{
        +  "default": 14,
        +  "description": "计算周期",
        +  "maximum": 9007199254740991,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • addedInput schema / properties / smoothingType / default
        Added value: +"EMA"
      • removedInput schema / properties / smoothingType / description
        Removed value: -"平滑类型"
      • changedInput schema / required
        Previous value: -[
        -  "candles",
        -  "interval"
        -]New value: +[
        +  "candles"
        +]
    • Addedindicator_atr_direct
    • Addedindicator_bb_rsi
    • Addedindicator_bb_rsi_direct
    • Changedindicator_bbands5 fields changed
      • addedInput schema / properties / deviationMultiplier / minimum
        Added value: +0.1
      • removedInput schema / properties / interval
        Removed value: -{
        -  "description": "计算周期",
        -  "minimum": 2,
        -  "type": "number"
        -}
      • addedInput schema / properties / period
        Added value: +{
        +  "default": 20,
        +  "description": "计算周期",
        +  "maximum": 9007199254740991,
        +  "minimum": 2,
        +  "type": "integer"
        +}
      • changedInput schema / properties / values / description
        Previous value: -"价格数组"New value: +"价格序列(收盘价)"
      • changedInput schema / required
        Previous value: -[
        -  "values",
        -  "interval"
        -]New value: +[
        +  "values"
        +]
    • Addedindicator_bbands_direct
    • Removedindicator_cci
    • Removedindicator_dema
    • Addedindicator_divergence
    • Addedindicator_divergence_direct
    • Removedindicator_dma
    • Removedindicator_dx
    • Changedindicator_ema3 fields changed
      • addedInput schema / properties / interval / maximum
        Added value: +9007199254740991
      • changedInput schema / properties / interval / type
        Previous value: -"number"New value: +"integer"
      • changedInput schema / properties / values / description
        Previous value: -"价格数组"New value: +"价格序列(收盘价)"
    • Removedindicator_iqr
    • Removedindicator_linreg
    • Addedindicator_ma_cross
    • Addedindicator_ma_cross_direct
    • Changedindicator_macd15 fields changed
      • changedInput schema / properties / fast / description
        Previous value: -"快线"New value: +"快线周期"
      • addedInput schema / properties / fast / maximum
        Added value: +9007199254740991
      • addedInput schema / properties / fast / minimum
        Added value: +2
      • changedInput schema / properties / fast / type
        Previous value: -"number"New value: +"integer"
      • addedInput schema / properties / indicatorType / default
        Added value: +"EMA"
      • changedInput schema / properties / indicatorType / enum
        Previous value: -[
        -  "EMA",
        -  "RMA",
        -  "SMA",
        -  "WMA",
        -  "WSMA"
        -]New value: +[
        +  "EMA",
        +  "DEMA"
        +]
      • changedInput schema / properties / signal / description
        Previous value: -"信号线"New value: +"信号线周期"
      • addedInput schema / properties / signal / maximum
        Added value: +9007199254740991
      • addedInput schema / properties / signal / minimum
        Added value: +2
      • changedInput schema / properties / signal / type
        Previous value: -"number"New value: +"integer"
      • changedInput schema / properties / slow / description
        Previous value: -"慢线"New value: +"慢线周期"
      • addedInput schema / properties / slow / maximum
        Added value: +9007199254740991
      • addedInput schema / properties / slow / minimum
        Added value: +2
      • changedInput schema / properties / slow / type
        Previous value: -"number"New value: +"integer"
      • changedInput schema / properties / values / description
        Previous value: -"价格数组"New value: +"价格序列(收盘价)"
    • Addedindicator_macd_direct
    • Addedindicator_macd_rsi
    • Addedindicator_macd_rsi_direct
    • Removedindicator_mom
    • Addedindicator_multi_direct
    • Removedindicator_obv
    • Removedindicator_psar
    • Removedindicator_rma
    • Removedindicator_roc
    • Changedindicator_rsi3 fields changed
      • addedInput schema / properties / interval / maximum
        Added value: +9007199254740991
      • changedInput schema / properties / interval / type
        Previous value: -"number"New value: +"integer"
      • changedInput schema / properties / values / description
        Previous value: -"价格数组"New value: +"价格序列(收盘价)"
    • Addedindicator_rsi_direct
    • Changedindicator_sma3 fields changed
      • addedInput schema / properties / interval / maximum
        Added value: +9007199254740991
      • changedInput schema / properties / interval / type
        Previous value: -"number"New value: +"integer"
      • changedInput schema / properties / values / description
        Previous value: -"价格数组"New value: +"价格序列(收盘价)"
    • Removedindicator_stoch
    • Removedindicator_stoch_rsi
    • Addedindicator_stochastic
    • Addedindicator_stochastic_direct
    • Removedindicator_tds
    • Addedindicator_volatility_regime
    • Addedindicator_volatility_regime_direct
    • Removedindicator_vwap
    • Removedindicator_williams_r
    • Removedindicator_wma
    • Removedindicator_wsma
    • Removedindicator_zigzag
    • Addedmarket_24hr_ticker
    • Addedmarket_book_ticker
    • Addedmarket_continuous_klines
    • Addedmarket_exchange_info
    • Addedmarket_funding_rate
    • Addedmarket_funding_rate_history
    • Addedmarket_klines
    • Addedmarket_mark_price
    • Addedmarket_open_interest
    • Addedmarket_orderbook
    • Addedmarket_ping
    • Addedmarket_price
    • Addedmarket_time
    • Addedrisk_drawdown
    • Addedrisk_sharpe
    • Addedrisk_var
    • Removedsignal_bb_rsi
    • Removedsignal_ema_cross
    • Removedsignal_ma_cross
    • Removedsignal_macd_rsi
    • Addedtrading_account
    • Addedtrading_algo_orders
    • Addedtrading_balance
    • Addedtrading_cancel_algo
    • Addedtrading_cancel_all
    • Addedtrading_cancel_order
    • Addedtrading_commission
    • Addedtrading_force_orders
    • Addedtrading_get_order
    • Addedtrading_income
    • Addedtrading_modify_order
    • Addedtrading_open_orders
    • Addedtrading_order_history
    • Addedtrading_place_algo
    • Addedtrading_place_order
    • Addedtrading_position_margin
    • Addedtrading_position_mode
    • Addedtrading_positions
    • Addedtrading_set_leverage
    • Addedtrading_set_margin_type
    • Addedtrading_trades
    • Changedutil_average1 field changed
      • changedInput schema / properties / values / description
        Previous value: -"价格数组"New value: +"数值数组(至少1个元素)"
    • Removedutil_calmar
    • Addedutil_extract_klines
    • Changedutil_grid10 fields changed
      • changedInput schema / properties / levels / description
        Previous value: -"层数"New value: +"网格层级数(≥2)"
      • addedInput schema / properties / levels / maximum
        Added value: +9007199254740991
      • changedInput schema / properties / levels / type
        Previous value: -"number"New value: +"integer"
      • changedInput schema / properties / lower / description
        Previous value: -"下限"New value: +"网格下限价格"
      • addedInput schema / properties / spacing / default
        Added value: +"arithmetic"
      • changedInput schema / properties / spacing / description
        Previous value: -"间距类型"New value: +"间距模式"
      • changedInput schema / properties / tickSize / description
        Previous value: -"最小精度"New value: +"最小价格精度(tick size)"
      • addedInput schema / properties / tickSize / exclusiveMinimum
        Added value: +0
      • changedInput schema / properties / upper / description
        Previous value: -"上限"New value: +"网格上限价格"
      • changedInput schema / required
        Previous value: -[
        -  "lower",
        -  "upper",
        -  "levels",
        -  "spacing"
        -]New value: +[
        +  "lower",
        +  "upper",
        +  "levels"
        +]
    • Changedutil_max1 field changed
      • changedInput schema / properties / values / description
        Previous value: -"价格数组"New value: +"数值数组(至少1个元素)"
    • Removedutil_max_drawdown
    • Changedutil_median1 field changed
      • changedInput schema / properties / values / description
        Previous value: -"价格数组"New value: +"数值数组(至少1个元素)"
    • Changedutil_min1 field changed
      • changedInput schema / properties / values / description
        Previous value: -"价格数组"New value: +"数值数组(至少1个元素)"
    • Changedutil_quartile2 fields changed
      • changedInput schema / properties / q / description
        Previous value: -"四分位点"New value: +"四分位位置:0.25/0.5/0.75"
      • changedInput schema / properties / values / description
        Previous value: -"价格数组"New value: +"数值数组"
    • Removedutil_sharpe
    • Changedutil_stddev2 fields changed
      • changedInput schema / properties / average / description
        Previous value: -"预计算均值"New value: +"预计算的均值(可选,不传则内部计算)"
      • changedInput schema / properties / values / description
        Previous value: -"价格数组"New value: +"数值数组"
    • Changedutil_streaks3 fields changed
      • changedInput schema / properties / keepSide / description
        Previous value: -"方向"New value: +"统计方向:up(上涨段)/ down(下跌段)"
      • changedInput schema / properties / prices / description
        Previous value: -"价格数组"New value: +"价格序列"
      • changedInput schema / properties / prices / minItems
        Previous value: -1New value: +2
    • Removedutil_var
    • Changedutil_weekday2 fields changed
      • changedInput schema / properties / date / description
        Previous value: -"ISO日期"New value: +"ISO 日期字符串(YYYY-MM-DD),不传则使用当前日期"
      • changedInput schema / properties / timezone / description
        Previous value: -"时区"New value: +"时区标识符(如 UTC, Asia/Shanghai)"
    • Removedutil_win_rate
  3. 76 tool updatesv2.0.2
    • First observedfutures_account_balance
    • First observedfutures_account_report
    • First observedfutures_agg_trades
    • First observedfutures_all_book_tickers
    • First observedfutures_all_orders
    • First observedfutures_batch_orders
    • First observedfutures_cancel_all_open_orders
    • First observedfutures_cancel_batch_orders
    • First observedfutures_cancel_order
    • First observedfutures_daily_stats
    • First observedfutures_exchange_info
    • First observedfutures_get_order
    • First observedfutures_income
    • First observedfutures_klines
    • First observedfutures_leverage
    • First observedfutures_leverage_bracket
    • First observedfutures_margin_history
    • First observedfutures_margin_type
    • First observedfutures_mark_price
    • First observedfutures_open_orders
    • First observedfutures_order
    • First observedfutures_orderbook
    • First observedfutures_ping
    • First observedfutures_position_margin
    • First observedfutures_prices
    • First observedfutures_quick_order
    • First observedfutures_time
    • First observedfutures_trades
    • First observedfutures_update_order
    • First observedfutures_user_trades
    • First observedindicator_abands
    • First observedindicator_adx
    • First observedindicator_ao
    • First observedindicator_atr
    • First observedindicator_bbands
    • First observedindicator_cci
    • First observedindicator_dema
    • First observedindicator_dma
    • First observedindicator_dx
    • First observedindicator_ema
    • First observedindicator_iqr
    • First observedindicator_linreg
    • First observedindicator_macd
    • First observedindicator_mom
    • First observedindicator_obv
    • First observedindicator_psar
    • First observedindicator_rma
    • First observedindicator_roc
    • First observedindicator_rsi
    • First observedindicator_sma
    • First observedindicator_stoch
    • First observedindicator_stoch_rsi
    • First observedindicator_tds
    • First observedindicator_vwap
    • First observedindicator_williams_r
    • First observedindicator_wma
    • First observedindicator_wsma
    • First observedindicator_zigzag
    • First observedsignal_bb_rsi
    • First observedsignal_ema_cross
    • First observedsignal_ma_cross
    • First observedsignal_macd_rsi
    • First observedutil_average
    • First observedutil_calmar
    • First observedutil_grid
    • First observedutil_max
    • First observedutil_max_drawdown
    • First observedutil_median
    • First observedutil_min
    • First observedutil_quartile
    • First observedutil_sharpe
    • First observedutil_stddev
    • First observedutil_streaks
    • First observedutil_var
    • First observedutil_weekday
    • First observedutil_win_rate

TDQS

B3.4/5.0
Disambiguation4/5

Most tools target distinct resources or actions with clear category prefixes. Some overlap exists among composite indicators (indicator_macd_rsi, indicator_bb_rsi, indicator_multi) and funding-rate related tools, but descriptions explicitly disambiguate which to use.

Naming Consistency5/5

All tools follow a strict <domain>_<object_or_action> pattern across market, trading, indicator, and analysis prefixes. Names are consistently snake_case, making the large set predictable and scannable.

Tool Count2/5

57 tools is well above the 25+ threshold for 'too many.' While grouped into coherent categories, the indicator subset alone could be consolidated (e.g., combined macd_rsi, bb_rsi, multi), and the overall surface feels excessive for a single server.

Completeness4/5

The server covers the core Binance futures/spot lifecycle well: market data, order management, positions, balance, leverage, margin, and algo orders. Minor gaps such as missing deposit/withdraw endpoints and batch order operations exist, but trading workflows are largely complete.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    F
    maintenance
    A Model Context Protocol server implementation that enables AI assistants to interact with the Paradex perpetual futures trading platform, allowing for retrieving market data, managing trading accounts, placing orders, and monitoring positions.
    16
    9
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol server that exposes Binance cryptocurrency exchange data to LLMs, allowing agents to access real-time prices, order books, and historical market data without requiring API keys.
    20
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables automated cryptocurrency trading on Binance and provides integration for monitoring Base network operations. It allows users to execute trades, fetch market data, and calculate technical indicators like RSI and MACD through the Model Context Protocol.
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides real-time investment news, technical analysis via TA-Lib, and Binance trading capabilities including order management and market data retrieval. It enables AI assistants to perform financial market research and execute trades through the Model Context Protocol.
    -

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/iuk-ink/binance-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server