How to export a Robinhood activity report, and the suffix nobody documents

Nine columns, no time on any row, and a one-letter suffix that decides whether a position was long or short.

The steps

step 1
Open the account menu, then Settings, then Reports and Statements.
step 2
Generate an Activity Report for the range you want and choose CSV.
step 3
The file arrives by email or download. Drop it whole; the equity rows are kept as equity.

What you get, and what it means

what you get
5/13/2026   SPXW   OASGN
SPXW 5/13/2026 Put $7,445.00   qty 10

5/13/2026   SPXW   OCC
Option Maturity: Cash Component   ($750.00)
what it means
one assignment of a short put, settled in cash
the money row is the same event, not a second one
the position closes at +10, which flattens a short

counted separately, this is two lots where there was one

Traps in this file

There is no time on any row, only a date

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.

The S on a quantity does not mean short

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.

An index settlement is two rows

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.

Index options are recent here

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.

Drop your Robinhood file