A priced recommendation, not a promise.
A priced recommendation, not a promise. Every signal is stored the moment it is priced, and its outcome is recomputed from the same internal APIs when the horizon ends. Hit rate is published. That is the whole retention model.
What it is
Machine clients pay $0.05 USDC on Base L2 via x402 for one decision. This page is free. The three topics are agwc-price treasury-flow economy-health. A signal that cannot read a required source is a free 503 and is not stored. Garbage is a free 422 when a payment header is present. Unknown JSON fields are ignored.
The decision in one picture
topic + horizon
|
v
snapshot economy, settlement pulse, AGWC pool
| (SolvScore only for economy-health)
v
required source missing? -----> free 503, nothing stored, nothing charged
|
v
agwc-price -----> BULLISH / NEUTRAL / BEARISH 5 percent band
treasury-flow --> EXPAND / HOLD / CONTRACT
economy-health -> STRONG / STABLE / WEAKENING score 0 to 100
|
v
store the signal with the snapshot
|
v
when the horizon ends, the next read recomputes the outcome
and the hit rate is the only performance claim
Three topics
- agwc-price. Where the AGWC/USDC pool price will be at the end of the horizon, inside a 5 percent band. The price is reserve0 (USDC, 6 decimals) divided by reserve1 (AGWC, 18 decimals) on pool 0x24235Fa9dab948E6fde2d2B369BDa08d598E8242. Until this service has logged at least five prices spanning six hours, the verdict is NEUTRAL. That is a level-only call, with no momentum data yet. With enough history, a straight line is fit through the stored prices. If R² is not above 0.3 the slope is ignored and the call stays NEUTRAL. Otherwise the predicted percent move is the slope times the horizon, divided by the spot price. Above +5 percent is BULLISH. Below -5 percent is BEARISH. Anything else is NEUTRAL.
- treasury-flow. Whether AgentWorld treasury inflows look set to expand, hold, or contract. The first call is always HOLD. After that, EXPAND requires settled_24h of at least 10 and agent-count momentum that is positive or flat. CONTRACT requires settled_24h of 0 now and a trailing streak of zero readings that reaches back at least six hours. Otherwise HOLD. Days since the first settlement are not known, so lifetime average is not invented. The treasury USDC level is recorded and later graded. It does not have its own threshold.
- economy-health. A composite of settlement activity, agent-count momentum, and average SolvScore trust. Score = 40 times min(settled_24h, 20) / 20, plus 30 times momentum (positive 1, flat 0.5, negative 0), plus 30 times average trust / 100. No history means momentum is flat. A missing pulse or a missing trust score contributes 0, which is the worst case for that term, and confidence drops. STRONG at 60 or above. WEAKENING below 35. Otherwise STABLE.
How a hit is scored
Direction is +1, 0, or -1. For BULLISH, EXPAND, and STRONG the direction is +1. For BEARISH, CONTRACT, and WEAKENING it is -1. NEUTRAL, HOLD, and STABLE are 0. A directional call hits only when the outcome moves the same way and the absolute move is larger than the band. A zero-direction call hits when the absolute move stays inside the band. The band is 5 percent for price and for treasury USDC. It is 10 composite points for economy health. A STRONG call is therefore a claim that the composite will rise by more than 10 points, not merely that it will still look strong.
Confidence
- low when the history the rule needs is missing, or the optional sources for that topic are all missing. The first treasury-flow call is always low.
- medium when the rule can run but the history is shorter than 24 hours, or one optional source is missing.
- high when the required data is present, the optional sources for that topic were read, and the relevant history spans at least 24 hours.
Input example
{
"topic": "agwc-price",
"horizon_hours": 24
}
The example asks where AGWC will be in 24 hours. With no logged price history the only honest verdict is NEUTRAL, flagged as a level-only call. The curl with no payment header is HTTP 402. Run from this page is free via Referer on agentpaystore.com.
curl -s -X POST https://agentpaystore.com/eds/api/signal -H 'Content-Type: application/json' -d '{"topic":"agwc-price","horizon_hours":24}'
With no payment header that curl is HTTP 402 and the terms. A body that fails validation is a free 422 when a payment header is present. The same body run from this page is not charged.
How it works
- Send topic and, if you want, horizon_hours. Allowed horizons are 6, 12, 24, 48, and 168. Leave the horizon out and it is 24.
- EDS reads the AgentWorld economy, the x402 settlement pulse, and the AGWC pool. Economy health also reads the SolvScore dashboard. The snapshot is stored verbatim with the source URLs and the time it was fetched.
- The read happens before any payment is settled. If the required source is down, the response is 503 and the call is free. Price requires the pool. Treasury flow and economy health require the economy endpoint.
- The verdict, the direction, the rationale, and the assumptions are stored with that snapshot. The rationale cites the numbers the rule actually used.
- Any later read of a signal, the track record, or a new signal first checks calls whose horizon has ended, re-snapshots, and writes the outcome. A source that is down leaves that signal pending.
- The paid response includes the last verified signals and the hit rate. The rate is computed over verified signals only.
Honest assumptions
- The verdict is a deterministic rule on one snapshot. It is not a prediction of the future and it is not a promise.
- The hit rate is the only performance claim. It counts only signals whose horizon has ended and whose outcome was recomputed from the same sources.
- Sources are the AgentWorld economy API, the x402 settlement pulse, the AGWC Uniswap V2 pool reserves on Base, and the SolvScore dashboard for economy-health.
Same snapshot and same stored history, same verdict. The service does not call a model at request time and it does not use randomness in the rule.
TRY IT
The form builds the JSON body and shows the exact curl. Run from this page posts that body. A browser on agentpaystore.com is on the gate allow-list via Referer and is not charged. The curl, sent with no payment header, returns 402.
Track record
Live, from the verified signals only. An empty table means nothing has reached its horizon yet. That is the record, not a hidden one.