Skip to main content
Glama

finance.futures_price

Read-onlyIdempotent

Calculates the theoretical futures price from spot, risk-free rate, dividend yield, and time to expiry using a continuous-compounding cost-of-carry model.

Instructions

연속복리 보유비용 모형의 선물 이론가격을 계산한다. F = S x exp((r - q) x T). spot 은 양수, risk_free_rate 와 dividend_yield(q, 기본 0)는 연속복리 연율, time_to_expiry 는 0 초과 연 단위, 모두 Decimal 문자열. 결과는 소수 8자리. 이산복리 이율을 그대로 넣으면 값이 어긋난다.

Input Schema

NameRequiredDescriptionDefault
spotYes
dividend_yieldNo0
risk_free_rateYes
time_to_expiryYes

Output Schema

NameRequiredDescriptionDefault
_metaNo서버가 붙이는 영수증(integrity), 엔진, 힌트
traceYes계산 근거(tool, formula, inputs, steps, output)
carry_rateYes
futures_priceYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.0

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare read-only, idempotent, closed-world behavior, and the description adds real value beyond that: output is rounded to 8 decimals and feeding discrete-compounding rates silently yields wrong results, which is a genuine pitfall an agent could not infer. It stops short of stating validation/error behavior for out-of-range inputs (non-positive spot, T=0).

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?

Front-loads the model name and formula, then parameter constraints, then the discrete-vs-continuous warning. Roughly four sentences with no filler; each one adds information the schema does not.

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 pure deterministic calculation with a read-only annotation set, an output schema, and full parameter semantics supplied in prose, the definition is nearly self-sufficient. The one missing piece is disambiguation from finance.forward_price, which matters because the formulas coincide.

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?

Schema coverage is 0% — the schema carries only bare titles — so the description must carry the full burden, and it does: spot must be positive, risk_free_rate and dividend_yield are continuously compounded annual rates, dividend_yield defaults to 0, time_to_expiry is in years and must be > 0, and all are Decimal strings. Every one of the four parameters gets units, constraints and type.

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?

Names a specific verb+resource (theoretical futures price) and gives the exact cost-of-carry formula, so the computation is unambiguous. However it never contrasts itself with the sibling finance.forward_price, which uses an almost identical continuous-compounding carry formula, so an agent cannot tell from the description alone which of the two to pick.

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 is only implied: the description establishes that inputs must be continuously compounded annual rates and that discrete rates will produce wrong values, which implicitly scopes when to use it. There is no explicit 'use this instead of X' or exclusion statement, and the close sibling finance.forward_price is never mentioned.

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

Deploy Server

Other Tools