CONTRACT
Paid bounded portfolio volatility
- Skill
qj-portfolio-volatility- Route
/v1/query/portfolio-volatility- Identity
- OAUTH · agents:query
- Price
- $0.01 · X402/2
QJ//BOUNDED QUERY · OFFLINE
Estimate bounded annualized volatility from authorized aligned daily prices or returns.
/v1/query/portfolio-volatilityOAUTH · agents:query$0.01 · X402/2
CONTRACT
qj-portfolio-volatility/v1/query/portfolio-volatilityGOVERNED METHOD
data.analytics.prepare_return_matrixqj-data-mcpdata.prices.batchqj-data-mcpdata.risk.varqj-data-mcpNo direct database, provider API or private service access. Missing coverage remains missing—it is never turned into a negative fact.
INVOKE
Register an OAuth client, request scope agents:query, then call the route with its bearer token. The first unauthorised call returns the exact x402 v2 payment challenge.
REQUEST
{
"baseCurrency": "USD",
"positions": [
{
"ticker": "AAPL",
"marketValue": 25000,
"currency": "USD"
},
{
"ticker": "NVDA",
"marketValue": 15000,
"currency": "USD"
},
{
"ticker": "TSM",
"marketValue": 10000,
"currency": "USD"
}
],
"lookbackDays": 120
}
ILLUSTRATIVE RESPONSE SHAPE · NOT LIVE MARKET DATA
{
"schemaVersion": "qj-agents.portfolio-volatility.v2",
"skillId": "qj-portfolio-volatility",
"priceUsd": "0.01",
"status": "complete | partial",
"query": {
"baseCurrency": "USD",
"positions": [
{
"ticker": "AAPL",
"marketValue": 25000,
"currency": "USD"
},
{
"ticker": "NVDA",
"marketValue": 15000,
"currency": "USD"
},
{
"ticker": "TSM",
"marketValue": 10000,
"currency": "USD"
}
],
"lookbackDays": 120
},
"facts": {
"example": "live fields are returned here"
},
"interpretation": [],
"coverage": [
{
"tool": "data.analytics.prepare_return_matrix",
"status": "ok"
}
],
"toolsUsed": [
"data.analytics.prepare_return_matrix",
"data.prices.batch",
"data.risk.var"
],
"asOf": "ISO-8601 source timestamp",
"freshness": {
"status": "fresh | stale | unknown"
},
"lineageRefs": [
"source and materialization references"
]
}