> ## Documentation Index
> Fetch the complete documentation index at: https://docs.miningwood.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Hybrid Matching Algorithm

> Broker-level accuracy for profit/loss and wash sale tracking

## Overview

The hybrid matching algorithm combines two data sources to provide the most accurate profit/loss and wash sale tracking:

1. **Broker's Realized Gains/Losses CSV** - Pre-calculated lot matches with definitive P\&L
2. **Transaction History CSV** - Complete record of all buy/sell transactions

## Key Benefits

<CardGroup cols={2}>
  <Card title="Broker-Level Accuracy" icon="bullseye">
    Uses broker's proprietary matching logic
  </Card>

  <Card title="Wash Sale Detection" icon="flag">
    Accurate wash sale flags from broker
  </Card>

  <Card title="FIFO Fallback" icon="layer-group">
    Estimates P/L when broker data unavailable
  </Card>

  <Card title="Complete Coverage" icon="check-double">
    Handles all transaction types
  </Card>
</CardGroup>

## How It Works

<Steps>
  <Step title="Load Broker Lots">
    System loads pre-calculated lot matches from broker's realized gains/losses CSV
  </Step>

  <Step title="Process Sells">
    For each sell transaction, checks if corresponding broker lot exists
  </Step>

  <Step title="Use Broker Data">
    If lot found, uses broker's P/L, wash sale flag, and cost basis
  </Step>

  <Step title="FIFO Estimate">
    If no broker lot, applies FIFO (First In, First Out) matching logic
  </Step>
</Steps>

## Data Sources

### Broker Realized Gains/Losses

Contains:

* Opened date (purchase date)
* Closed date (sale date)
* Quantity sold from specific lot
* Cost basis and proceeds
* Gain/loss amount (pre-calculated)
* Wash sale flag
* Disallowed loss amount
* Term (Short/Long)

### Transaction History

Contains:

* All buy/sell transactions
* Transaction dates
* Symbol, quantity, price
* Commissions and fees

## Matching Criteria

The system matches broker lots to transactions using:

* **Symbol**: Must match exactly
* **Date**: Must match the transaction date
* **Quantity**: With tolerance for fractional shares

## Data Source Indicators

<Tabs>
  <Tab title="Broker-Verified">
    ✓ **Broker-verified badge**

    All trades matched to broker lots with definitive P/L
  </Tab>

  <Tab title="FIFO Estimate">
    ⚠️ **FIFO estimate badge**

    Trades matched using FIFO logic (no broker lot available)
  </Tab>

  <Tab title="Mixed Sources">
    ✓ **Broker-verified** + ⚠️ **FIFO estimate**

    Month contains both broker-verified and FIFO-estimated trades
  </Tab>
</Tabs>

## Next Steps

<CardGroup cols={2}>
  <Card title="CSV Upload" icon="file-csv" href="/features/csv-upload">
    Learn how to upload both CSV files
  </Card>

  <Card title="Trading Analysis" icon="chart-line" href="/features/trading-analysis">
    View your matched trades
  </Card>
</CardGroup>
