Event neutral earnings agent

Trading only what belongs to the company.

RESIDUAL strips market, sector and liquidity effects out of an earnings reaction on Bitget stock perpetuals, then trades what is left as a hedged pair.

See a move taken apart

Walk forward replay

75 real earnings events · SEC verified

Scroll to explore

Overview

The market moved.

When a company reports earnings, its stock moves for many reasons at once. RESIDUAL separates the company's own part from the rest, and only acts on that.

Signal room

Take one earnings move apart

Every dot is a real earnings release. Pick one, or let it play through the trades.

TradedNo tradeDot size shows how large the company's own move was

How it works

From filing to hedged pair

  1. Catch the release

    RESIDUAL watches SEC EDGAR for earnings filings from a curated set of companies that trade as Bitget stock perpetuals. The SEC acceptance time becomes the event clock.

  2. Read the numbers, keep the receipts

    Reported revenue and the company's own guidance are pulled from the press release. Every number keeps the exact sentence it came from and a fingerprint of the document, and is checked again before use.

  3. Remove the market and the sector

    Using weeks of hourly Bitget prices from before the release, RESIDUAL learns how the stock usually moves with the broad market and its peers, then subtracts that from the reaction. What is left belongs to the company.

  4. Ask for a second reading

    An AI reads the release and says whether the company move looks durable, temporary or already priced in. It must quote the filing word for word, and it can only shrink a position, never set one.

  5. Pass every gate, or stand aside

    Is there a hedge that tracks the stock? Enough volume? A move big enough to beat costs? Stable across models? One failure and the answer is no trade.

  6. Trade the pair, then explain the result

    Long or short the company against a beta weighted hedge. After 24 hours, the profit or loss is split into what the company did, what the hedge missed, and what trading cost.

Paper execution

What happened next

Proof

Scored walk forward

Each decision only used information from earlier events. Then we compared it with simply buying beats and selling misses, on the same releases.

Cumulative paper result, release by release

Every pre-declared rule, published

Size study: what Bitget liquidity allows

Questions

Fair things to ask

Is this trading real money?

No. Historical results are paper trades built from real Bitget prices. Live mode can place orders on Bitget Demo Trading when demo keys are configured. RESIDUAL never touches a real money account.

Where does the "expected" revenue come from?

From the company itself: the revenue guidance it published a quarter earlier. The SEC does not publish analyst consensus, so this keeps every number traceable to a filing. It is a guidance surprise, not a consensus surprise.

Why do most releases end in no trade?

Because the gates are strict. Early events predate Bitget listing the stock, and many reactions happen after hours when volume is thin. Standing aside is a decision too, and every one is explained.

Does the AI decide the trades?

No. The market, sector and hedge numbers are pure statistics. The AI only labels the move and can reduce size. Any answer that invents a quote or adds a number is rejected.

Does it beat the market?

Not proven. On the same releases, the plain headline trade did better in this small sample. We publish that, along with every trade, so anyone can check or improve on it.

Can I reproduce everything?

Yes. The filings, prices and AI answers are stored in the repository, so the whole replay runs offline with one command: python -m residual replay --offline.