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

# Trader Trade Event

> Typed trade-event alert covering every confirmed prediction trade variant.

<Note>
  **Event:** `trader_trade_event` \
  **Endpoint:** `wss://api.struct.to/ws/alerts` \
  **Cost:** 0.2 credits per event
</Note>

Fires on every confirmed prediction trade. Unlike `trader_new_trade`, this alert delivers a typed discriminated-union payload that covers all trade variants (`OrderFilled`, `Redemption`, `Merge`, `Split`, `PositionsConverted`, `Cancelled`, oracle lifecycle, and more) with the correct fields per variant.

## Filters

| Filter                      | Type       | Required | Description                                                                              |
| --------------------------- | ---------- | -------- | ---------------------------------------------------------------------------------------- |
| `wallet_addresses`          | `string[]` | No       | Restrict to specific trader wallet addresses (max 500)                                   |
| `condition_ids`             | `string[]` | No       | Restrict to specific markets (max 500)                                                   |
| `event_slugs`               | `string[]` | No       | Restrict to specific events (max 500)                                                    |
| `trade_types`               | `string[]` | No       | Restrict to specific trade variants (e.g. `OrderFilled`, `Redemption`, `Merge`, `Split`) |
| `min_usd_value`             | `number`   | No       | Minimum trade size in USD                                                                |
| `min_price`                 | `number`   | No       | Minimum probability threshold (0.0 to 1.0)                                               |
| `max_price`                 | `number`   | No       | Maximum probability threshold (0.0 to 1.0)                                               |
| `exclude_shortterm_markets` | `boolean`  | No       | Exclude short-term "updown" markets                                                      |

## Subscribe

```json theme={null}
{
  "op": "subscribe",
  "event": "trader_trade_event",
  "wallet_addresses": ["0x37BA57e2942A57F05B5E4BCFD4d027845cFC40ec"],
  "condition_ids": ["0x4fec624c0ff2bfae89956cebd6fbc9c58f995f824382dc587dc5a32a4b15940b"],
  "min_usd_value": 50,
  "exclude_shortterm_markets": true
}
```

## Response

The `data` object is a discriminated union keyed on `trade_type`. The `OrderFilled` variant is shown below; `Redemption`, `Merge`, `Split`, `PositionsConverted`, `Cancelled`, and the oracle lifecycle variants follow the same shapes documented for the [Trades room](/websockets/rooms/trades).

```json theme={null}
{
  "event": "trader_trade_event",
  "timestamp": 1743500000000,
  "data": {
    "trade_type": "OrderFilled",
    "id": "0xabc123def456",
    "hash": "0x9876543210fedcba9876543210fedcba9876543210fedcba9876543210fedcba",
    "block": 65000000,
    "confirmed_at": 1700000000,
    "log_index": 0,
    "block_index": 0,
    "order_hash": "0x1111111111111111111111111111111111111111111111111111111111111111",
    "trader": {
      "address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"
    },
    "taker": "0x0000000000000000000000000000000000000000",
    "side": "Buy",
    "condition_id": "0x4fec624c0ff2bfae89956cebd6fbc9c58f995f824382dc587dc5a32a4b15940b",
    "position_id": "452312848583266388373324160190187140051835877600158453279131187530910662656",
    "outcome": "Yes",
    "outcome_index": 0,
    "question": "Will the Fed cut rates in June 2026?",
    "slug": "will-the-fed-cut-rates-in-june-2026",
    "event_slug": "fed-rate-decisions-2026",
    "image_url": "https://polymarket-upload.s3.us-east-2.amazonaws.com/will-the-fed-cut-rates-in-june-2026.png",
    "usd_amount": 25.0,
    "shares_amount": 50.0,
    "price": 0.5,
    "probability": 0.5,
    "fee": 0.025,
    "fee_shares": 0.0,
    "fee_pct": 0.1,
    "exchange": "CTFExchange",
    "builder_code": "0x0000000000000000000000000000000000000000000000000000000000000000",
    "builder_fee": 0.0
  }
}
```

<Note>
  `builder_code` is the lower-cased `0x...` bytes32 identifier of the integrator that brokered the order (CLOB v2 only). `0x0000…` means the order was placed directly through Polymarket. Both `builder_code` and `builder_fee` are omitted on v1 trades. See [Fetching trades by builder code](/guides/fetching-trades-by-builder-code).
</Note>
