Nine columns, no time on any row, and a one-letter suffix that decides whether a position was long or short.
A date read as UTC is 20:00 the previous evening in New York, which files a whole day under the wrong session. FillStub stamps these at midnight New York: the right day, and deliberately not a minute the market has, so the SPX book declines rather than placing your fill at an hour it cannot vouch for.
An OEXP row reading 11S is a LONG being sold off, and one reading 11 is a short being bought back. Checked against the fills that opened those same positions in the same file.
The OASGN row carries the contract and a row described as Option Maturity: Cash Component carries the money. They are one event and are merged.
Robinhood now lists SPX, XSP, NDX, RUT and VIX. The cash-settled lifecycle applies to all of them and no phantom share position is created.
The current nine-column activity report. Every resolution row carries a warning naming the direction it was read as, and the ledger contradicts it loudly if a sign is ever backwards.