Tax Engine, Options, OTC, and Lot Intelligence
Bedrock keeps tax treatment tied to the lots, elections, counterparty movements, rules, and decisions that produced the result.
Tax Engine & Cost Basis
- Full spot lot tracking: every acquisition becomes a lot with immutable identity, tracked from purchase to disposition
- Cost basis, proceeds, and fee allocation computed under current Treasury regulations (Treas. Reg. §1.1001-7 and TD 10000)
- Swap-fee decomposition: fees paid in the disposed token, the acquired token, or split across multiple sell legs are handled correctly
- §1091 wash sale detection with automatic basis adjustment and disallowed-loss carry
- §1092 straddle identification with holding-period reset and loss deferral
- §1223 holding-period tacking across transfers: lots keep their original acquisition dates when assets move between wallets
- Short-term vs. long-term character determined per lot, per disposition
- Charitable donation treatment with zero-gain election
- Retroactive lot designation: designate specific lots after the fact, with full holding-period isolation
- Configurable taxpayer tax policy per profile
Options & Derivatives
- §1234(b) options income treatment for written options (covered calls, puts)
- Options position lifecycle: write, close, exercise, expire, buyback
- Straddle detection with automated suggestions and multi-leg straddle identification
- Physically-settled option delivery tied back to specific underlying lots
- Options import from exchange files plus manual entry for bespoke paper and OTC contracts
- Settlement reconciliation: confirms option settlements against on-chain movements
- Lot encumbrance tracking: know which lots are pledged as option backing at any moment
- Backing-lot assignment with smart-pick suggestions ranked by tax outcome
OTC & External Transfer Management
- External Transfer Rules: designate an address as a counterparty you settle through, and sends to it are recorded as transfers, not sales
- Captured value moves to a dedicated tracking ledger, one per asset per counterparty, carrying original cost basis and acquisition dates intact: no gain or loss at send time
- Record the disposition when the trade actually settles, not when the value left your wallet, with gain or loss computed against that original basis and holding period
- Automatic return capture: value the counterparty sends back unsold comes home as a transfer with basis restored, so a round trip nets to zero tax events; anything beyond the tracked position books as an ordinary deposit at market value and is flagged for review
- Retroactive application with a full preview: see which transactions a rule captures and how gain/loss changes before you save it
- Guardrails throughout: real evidence always beats designation, closed periods are never touched, and each rule shows exactly what happened to every transaction its addresses cover
- Turning a rule off reverses it cleanly, and the tracking ledgers remain as the record of what it did
Lot Selection & the Rules Engine
- Standard strategies: FIFO, LIFO, HIFO, LOFO, plus long-term-first and loss-first variants
- Profile-scoped, priority-ordered rules that decide which strategy applies to each disposition type (sell, send, transfer, fee, option encumbrance)
- Rules can target ledger attributes (e.g., treasury vs. exchange wallets)
- Specific-identification (SpecID) overrides for hand-picking exact lots on any disposition
- Lot-selection preview: see the tax result of each strategy before committing
- Lot locks: fence off lots so automated selection never consumes them
- Every allocation records *why* that lot was chosen (strategy, rule, override) as a permanent, auditable reason code