Basis here is (mark - oracle) / oracle, computed by the gateway from the two prices in the same response. Mark is the chain oracle read the venue bands and prices risk against; oracle is the multi-venue spot index.
The published rate does NOT come from this spread. It comes from the oracle adapter's own smoothed basis, computed off-engine by the replica of the venue's price oracle and pushed into the engine with every read. The two usually point the same way and are not the same number, so a position sized off the basis column is sized off an approximation of the rate in the column beside it.
A market whose oracle read is halted shows a dash rather than a rate. That is deliberate: the halted read carries a rate of zero, and a zero funding rate is a legal value, so publishing it would be indistinguishable from a market that genuinely charges nothing.
Funding that has accrued against your own positions is on the portfolio page, per position and since it was opened: negative is paid, positive received. It comes from the same ledger as the history above, so it starts on 2026-09-12 as well.