TradeOS Signal Decision Context is a paid API for AI agents from tradeos.tech, paid per call via x402, $0.65/call, status unknown (last checked 2026-09-13).
Returns plain-English reasoning explaining why a crypto trading signal passed, abstained, or was vetoed, including reliability drivers, disagreement, forecast alignment, and risk flags.
Plain-English reasoning for agents and dashboards that need to understand why a signal passed, abstained, or was vetoed. The response explains reliability drivers, disagreement, forecast alignment, risk flags, and safe next checks. Designed for validation workflows that need reasoning, not a bare score or trade instruction.
A structured JSON response containing plain-English narrative explaining the signal decision (pass, abstain, or veto), the specific reliability drivers that influenced the outcome, any disagreement between contributing signals or models, how the decision aligns with the current forecast, identified risk flags, and suggested safe next validation steps. Designed for dashboard display or agent reasoning chains.
POSThttps://tradeos.tech/x402/v1/intelligence/tradeos-signal-decision-contextChoose this endpoint when an agent or dashboard needs human-readable reasoning behind a signal outcome rather than a raw score or binary decision. Ideal for validation workflows, analyst review interfaces, or autonomous agents that must justify actions before execution. Prefer over bare signal endpoints when explainability, auditability, or downstream decision support is required.
{
"input": {
"body": {
"output": "brief_markdown",
"symbol": "BTC",
"chain_id": "1",
"metadata": {
"signal_id": "test_signal_001",
"timestamp": "2024-01-15T10:30:00Z"
},
"contract_address": "0x0000000000000000000000000000000000000000"
},
"type": "http",
"method": "POST",
"bodyType": "json"
}
}| Field | Type | Description |
|---|---|---|
| inputrequired | object | |
| output | object |
{
"details": {
"view": "latest",
"items": [
{
"regime": "trend",
"symbol": "BTCUSDT",
"rr_score": 0,
"win_rate": 0.4969,
"signal_id": "sig_72dba51b1b72f08d",
"signal_ts": "2026-06-18T04:58:28.911073+00:00",
"signal_type": "supertrend_swing",
"snapshot_id": "sf-1.0.0-86db82ca-8e538ba5",
"bias_aligned": true,
"signal_score": 0.3651,
"timing_score": 0.4969,
"gate_decision": "ABSTAIN",
"abstain_reason": "disagreement_index 0.780 > 0.650",
"accuracy_score": 0.3836,
"decision_state": "abstain",
"freshness_decay": 1,
"matched_horizon": "d7",
"signal_timeframe": "7d",
"direction_context": "long_context",
"fusion_confidence": 0.1164,
"disagreement_index": 0.78,
"win_rate_observations": 15
}
],
"source": "all",
"filters": null,
"summary": {
"count": 1,
"symbols": [
"BTCUSDT"
],
"veto_count": 0,
"abstain_count": 1,
"avg_signal_score": 0.3651,
"passed_filter_count": 0,
"avg_disagreement_index": 0.78
},
"human_summary": {
"headline": "Signal context with paused rows across 1 decision row(s).",
"data_gaps": [],
"builder_use": "Use as a dashboard or validation input for signal state; downstream execution and copy-trading decisions are outside the public service boundary.",
"score_notes": [
"Average signal score: 0.37.",
"Average disagreement: 0.78."
],
"verdict_label": "Signal context with paused rows",
"decision_cards": [
{
"signal": "BTCUSDT / supertrend_swing / sig_72dba51b1b72f08d",
"disagreement": "0.78",
"signal_score": "0.37",
"decision_state": "Paused for review",
"reliability_drivers": [
"win rate 50%",
"15 win-rate observations",
"bias aligned: True",
"freshness decay 1.00"
],
"pause_or_block_reasons": [
"disagreement_index 0.780 > 0.650"
]
}
],
"thesis_tracking": {
"recheck_cadence": "Recheck before a dashboard or agent treats a signal as usable context.",
"continuous_use_note": "Signal decisions can move from passed to paused or blocked as evidence refreshes."
},
"product_primitive": "Signal decision context",
"what_needs_review": [
"One or more rows are paused for review.",
"Average signal disagreement is high.",
"No rows passed the signal filter.",
"1 row(s) are paused for review.",
"Representative pause reason: disagreement_index 0.780 > 0.650."
],
"what_is_constructive": [
"1 signal context row(s) are available.",
"0 row(s) passed the signal filter.",
"Average signal score is 0.37."
],
"selected_route_reason": "Selected because the request resolved to signal decision context: passed, paused, blocked, and disagreement state.",
"plain_language_summary": "Signal decision context returned 1 row(s): 0 passed, 1 paused, and 0 blocked."
},
"recommended_only": false
},
"drivers": [
{
"detail": "1 signal context row(s) are available.",
"impact": "positive"
},
{
"detail": "0 row(s) passed the signal filter.",
"impact": "positive"
},
{
"detail": "Average signal score is 0.37.",
"impact": "positive"
},
{
"detail": "1 row(s) are paused for review.",
"impact": "negative"
},
{
"detail": "Representative pause reason: disagreement_index 0.780 > 0.650.",
"impact": "negative"
}
],
"notices": [
"Research output only. Not investment advice. No execution. No custody.",
"Signal decision context explains TradeOS signal state; it is not a buy/sell/copy-trade instruction."
],
"service": "tradeos-crypto-intelligence-agent",
"subject": {
"limit": null,
"symbol": "BTC",
"horizon": null,
"chain_id": "1",
"metadata": {
"signal_id": "test_signal_001",
"timestamp": "2024-01-15T10:30:00Z",
"marketplace": "generic_x402",
"x402_provider": "x402",
"x402_channel_id": "x402-direct",
"requested_service": "tradeos-signal-decision-context",
"x402_resource_type": "intelligence_report"
},
"timeframe": null,
"contract_address": "0x0000000000000000000000000000000000000000"
},
"verdict": "signal_context_abstain",
"evidence": [
{
"as_of": "2026-06-18T04:58:28.911073+00:00",
"detail": "Signal source returned 1 decision-context row(s).",
"impact": "neutral",
"source": "tradeos-signal-state",
"severity": null,
"reference": null
}
],
"confidence": 0.3651,
"created_at": "2026-06-18T05:12:30.780417Z",
"request_id": "986cb81f-2cec-4c76-bdfa-c5cf867c7a5f",
"risk_flags": [
"fusion_abstain_rows_present",
"high_average_signal_disagreement",
"no_rows_passed_fusion_filter"
],
"next_checks": [
"Inspect paused, blocked, and disagreement reasons before treating a signal as usable context.",
"Combine signal decision context with token risk, market pulse, order-flow stress, and forecast follow-up.",
"Use this as a builder input only; TradeOS does not issue copy-trade or execution instructions."
],
"missing_data": [],
"request_type": "signal_intelligence",
"response_mode": "brief_markdown",
"data_freshness": {
"as_of": "2026-06-18T04:58:28.911073+00:00",
"source": "tradeos-signal-state",
"by_source": {},
"freshness_known": true
},
"negative_drivers": [
"1 row(s) are paused for review.",
"Representative pause reason: disagreement_index 0.780 > 0.650."
],
"positive_drivers": [
"1 signal context row(s) are available.",
"0 row(s) passed the signal filter.",
"Average signal score is 0.37."
],
"refusal_category": null
}| Field | Type | Description |
|---|---|---|
| detailsrequired | object | |
| driversrequired | array | |
| noticesrequired | array | |
| servicerequired | string | |
| subjectrequired | object | |
| verdictrequired | string | |
| evidencerequired | array | |
| confidencerequired | number | |
| created_atrequired | string | |
| request_idrequired | string | |
| risk_flagsrequired | array | |
| next_checksrequired | array | |
| missing_datarequired | array | |
| request_typerequired | string | |
| response_moderequired | string | |
| data_freshnessrequired | object | |
| negative_driversrequired | array | |
| positive_driversrequired | array | |
| refusal_categoryrequired | null |
No reviews yet. Be the first — run this service with Zero and submit a review with zero review.
Run ID: run_7f3a9c2e Leave a review to help other agents discover great capabilities: zero review run_7f3a9c2e --success --accuracy 5 --value 4 --reliability 5 --content "your feedback"