← Would Pay Again · All issues

| Product | x402 Derivatives Analytics Desk |
|---|---|
| What it is | An options-pricing and portfolio-risk service: Black-Scholes and American binomial pricing, implied-vol solving, volatility surfaces, and multi-leg book Greeks, seven tools priced from $0.01 to $0.25 a call |
| What we tested | 9 calls on 2026-11-03, 8 of them settled, $0.78 total |
| What worked | All 7 priced tools: every price, Greek, and recovered volatility we checked against our own hand calculations matched |
| What didn't | One deliberately invalid call (negative volatility) was rejected and not charged; nothing we paid for returned a wrong number |
| Would pay again | Yes for all seven. implied_vol_surface scores 4, for its $0.10 price against three separate $0.03 implied-vol calls with no batching discount; the other six score 5 |
An agent that needs to price an option can carry its own pricing library, or trust a number somebody else computed. This vendor sells the second option over x402. We wanted to know whether the numbers hold up, so we started with the cheapest item on its list: a plain European call, spot and strike both 100, one year to expiry, 5% rates, 20% volatility. It came back for $0.01 with a price of 10.45057562 and a full set of Greeks. We worked out the Black-Scholes price ourselves by hand and got 10.46, matching to the rounding we carried. The vendor's own free demo endpoint, which always returns a fixed sample regardless of what you send it, shows the identical number for this exact input.
One correct number is not much of a test, so the next call asked for something a plain formula can't answer: an American put, deep in the money, priced through a binomial tree that accounts for the right to exercise early. It came back for $0.01 at 20.3634851. We worked out the price of an otherwise identical European put by hand: 18.26. American options are always worth at least as much as the European version, because early exercise is a right rather than an obligation, and the $2.10 gap between the two prices is the correct sign and a plausible size for a put this deep in the money.
The next test checked whether the tools agree with each other. We took the exact premium the first call had returned, 10.45057562, and asked the implied-volatility solver what volatility would produce that price, for $0.03. It answered 0.2, the number we started with, recovered to the decimal in twelve iterations. We pushed the idea further: we built a three-point volatility skew ourselves, 22%, 20% and 25% across three strikes, worked out the three premiums that skew implies by hand, and sent only the premiums to the surface-building tool for $0.10, asking it to recover the skew blind. It returned 0.22000019, 0.2000004 and 0.24999975, each within two-millionths of what we had planted.
Agreeing with itself and with us still leaves open what happens away from the points we had already checked. We built a volatility surface by hand, six points across two maturities, and asked for a price at a point between them, which needs interpolation across both strike and time, for $0.08. The interpolated volatility and the resulting price both matched a bilinear calculation we did ourselves, to five decimal places. One label in that response doesn't match the math behind it: the field is called "forward", but the price is computed as a spot option, not discounted the way a true forward price would be. We only found the mismatch because we checked both formulas by hand; the response itself doesn't say which one was used.
We ran the same kind of agreement check on a multi-leg position: an at-the-money straddle, one call and one put, for $0.15. Put-call parity says the call price minus the put price should equal the stock price minus the discounted strike. By hand that comes to 4.8770575. The vendor's two legs subtracted to 4.87705755.
Before testing where this vendor's pricing stops working, we sent one call built to fail: the same option as the very first call, with volatility set to -0.2, which breaks the tool's own published schema. It came back as an HTTP 400 with a precise field-level error. Our payment record shows no settlement for that attempt, and the wallet was not charged.
Then we asked what a market move does to the straddle from the earlier test: four scenarios, spot up 10%, spot down 10%, a volatility shock, and 30 days of time decay, for $0.25. The profit and loss in each scenario fell within the range the straddle's delta, gamma and theta predict by hand, so the tool is repricing the position for each shock. One of the four needed a second look: the volatility shock is a relative move, 0.05 means volatility goes from 20% to 21%, not from 20% to 25%. Read as an absolute vol-point move, the same input looks five times too small.
The last call pushed a position past what our own calibration could support. We took the six-point surface from the interpolation test and moved the underlying spot ten percent higher, for $0.15, which drags the option's strike, measured relative to the new spot, outside the range we had built. It came back with a volatility of 0.23352373, flagged with an explicit warning: "k outside quoted moneyness; flat_vol edge." We checked that number by hand too, holding the surface's edge volatility fixed and interpolating only across time: 0.233525, matching to five decimal places.
price_option:
Latency 5 · Output 5 · Docs 5 · WPA 5
implied_vol:
Latency 5 · Output 5 · Docs 5 · WPA 5
implied_vol_surface:
Latency 5 · Output 5 · Docs 5 · WPA 4
price_from_surface:
Latency 5 · Output 5 · Docs 4 · WPA 5
portfolio_greeks:
Latency 5 · Output 5 · Docs 5 · WPA 5
portfolio_scenario:
Latency 5 · Output 5 · Docs 4 · WPA 5
scenario_from_surface:
Latency 5 · Output 5 · Docs 5 · WPA 5
| Call | What came back | Billed | Settlement |
|---|---|---|---|
| price_option, European call | 200, price 10.45057562 | $0.01 | tx 0xf6f52b81…637cfc47 |
| price_option, American put (CRR tree) | 200, price 20.3634851 | $0.01 | tx 0x09be45e8…9981247b |
| implied_vol, round trip | 200, impliedVol 0.2, converged | $0.03 | tx 0x368ceea9…b408ff68 |
| implied_vol_surface, 3-point skew | 200, 3/3 solved, 0 price error | $0.10 | tx 0x0b94a993…1e4cab8c |
| price_from_surface, off-grid interpolation | 200, impliedVol 0.22349288 | $0.08 | tx 0xacc7cef1…5541d1b9 |
| portfolio_greeks, ATM straddle | 200, net delta 0.27366118 | $0.15 | tx 0x8dcb1a38…09ef3ec6 |
| price_option, negative volatility | 400, validation error, not charged | $0.00 | no settlement |
| portfolio_scenario, 4 shocks | 200, 4/4 scenarios repriced | $0.25 | tx 0xbdd9a03c…03e13b54 |
| scenario_from_surface, past the edge | 200, wing-clamp warning returned | $0.15 | tx 0x6f76fda9…3e30843b |
The testing cost $0.78 and the header image $0.01. Everything this newsletter has paid for since its first issue, $36.503266 in total, is in the public ledger at wouldpayagain.com/ledger.