Two contracts on Robinhood Chain. The engine takes cash-settled positions on tokenized stocks at up to 5x against a house pot, priced by signed prints. The strategy vault sits on top: it holds depositors' USDG, and an operator that asks Jev turns each answer into a position on the engine.
(id, price, ts, live) signed EIP-712 by one key fixed at deployment. The transaction carries it; the contract refuses one older than 90 seconds, older than the last applied, or more than 30% from it.reduce(pid, print, bps) closes a slice of a position. The slice takes its share of margin, escrow, open interest and equity; what stays keeps its entry and its clock.create(name, listing, maxLev, configHash): anyone. The hash is the keccak of the canonical JSON of the config (keys sorted, no whitespace). The text is published to /api/strategy, which accepts it only if it hashes to what the chain holds.deposit(id, amount, print) mints shares at NAV. NAV is cash plus the position's equity at the print, which the call applies first. A flat strategy needs no print.withdraw(id, shares, print) pays NAV × shares ÷ total. Cash first; if that is short, the position is reduced by exactly the fraction needed, or closed if what would remain is under 1 USDG.act(id, print, side, lev, answerHash, probBps): operator only. Applies the print, closes the position if the side or leverage changed (or if more than a tenth of NAV is idle cash), opens the new one with all cash as margin less the engine's fee and the Jev slice, and records the answer hash. A retired strategy is only ever flattened.margin = cash × 10000 ÷ 10015, capped by what the house can escrow (houseFree ÷ 3) and by the listing's open-interest room.settle(id, calls, amount, ref) bills at most maxPerCall per call (0.001 USDG, hard cap 0.01) and only from that strategy's budget, to the operator. Anyone may top a budget up.everyMin has passed and it holds money or a position.direction, a choice among long, short and flat, each with the creator's criteria as its text, sent to Jev through OpenJEV's public API (POST api.openjev.sh/v1/systemone, model openjev).p. If the choice is flat or p < minConf, flat. Else lev = 1 + round((p − minConf) ÷ (1 − minConf) × (maxLev − 1)).answerHash posted with the act. /api/calls?id=N returns the records; hash one yourself and compare.usage.cost in dollars; a typical call is about $0.00002) in USDG, never under one wei and never over the cap.houseFree ÷ 3 is the largest margin anyone can post right now.