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

# polymarket_polygon.positions

> Polymarket positions — daily snapshots of outcome token balances by address and market, with denormalized market details.

export const TableSample = ({tableName, tableSchema}) => <>
    <div className="hidden dark:block">
      <iframe src={`https://dune.com/embeds/3419983/5785629?table_schema_t6f0df=${tableSchema}&table_name_t6f0df=${tableName}&darkMode=true`} style={{
  width: '100%',
  height: '500px',
  border: 'none',
  marginTop: '10px'
}} />
    </div>
    <div className="dark:hidden">
      <iframe src={`https://dune.com/embeds/3419983/5785629?table_schema_t6f0df=${tableSchema}&table_name_t6f0df=${tableName}`} style={{
  width: '100%',
  height: '500px',
  border: 'none',
  marginTop: '10px'
}} />
    </div>
  </>;

The `polymarket_polygon.positions` table contains daily snapshots of user positions on Polymarket: outcome token balances per address and market, joined with market details and resolution status. Grain: one row per `(day, address, token_id)`.

## Table Schema

| Column                     | Type        | Description                                                                                                                     |
| -------------------------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `day`                      | `DATE`      | The date of the position snapshot                                                                                               |
| `address`                  | `VARBINARY` | The address holding the position                                                                                                |
| `unique_key`               | `VARCHAR`   | Unique identifier for the market                                                                                                |
| `token_id`                 | `UINT256`   | Token ID of the position                                                                                                        |
| `token_outcome`            | `VARCHAR`   | Outcome represented by the token                                                                                                |
| `token_outcome_name`       | `VARCHAR`   | Name of the outcome represented by the token                                                                                    |
| `balance`                  | `DOUBLE`    | Balance of the position in outcome tokens                                                                                       |
| `question_id`              | `VARCHAR`   | Question ID for the market                                                                                                      |
| `market_question`          | `VARCHAR`   | Question of the market                                                                                                          |
| `market_description`       | `VARCHAR`   | Description of the market                                                                                                       |
| `event_market_name`        | `VARCHAR`   | Name of the event market                                                                                                        |
| `event_market_description` | `VARCHAR`   | Description of the event market                                                                                                 |
| `active`                   | `VARCHAR`   | Whether the market is active                                                                                                    |
| `closed`                   | `VARCHAR`   | Whether the market is closed                                                                                                    |
| `accepting_orders`         | `VARCHAR`   | Whether the market is accepting orders                                                                                          |
| `polymarket_link`          | `VARCHAR`   | Link to the Polymarket event page                                                                                               |
| `market_start_time`        | `VARCHAR`   | Start time of the market                                                                                                        |
| `market_end_time`          | `VARCHAR`   | End time of the market                                                                                                          |
| `market_outcome`           | `VARCHAR`   | Outcome of the market                                                                                                           |
| `resolved_on_timestamp`    | `TIMESTAMP` | When the market was resolved                                                                                                    |
| `_position_updated_at`     | `TIMESTAMP` | Time of the last balance change for this position snapshot                                                                      |
| `_market_updated_at`       | `TIMESTAMP` | Latest denormalized market metadata change time; advances only when the joined market record actually changed or resolved       |
| `_updated_at`              | `TIMESTAMP` | Row change watermark for incremental sync: greatest of the row insertion time, `_position_updated_at`, and `_market_updated_at` |

## Table sample

<TableSample tableSchema="polymarket_polygon" tableName="positions" />

## Example query

```sql theme={null}
-- Largest YES positions in a market on the latest snapshot day
SELECT
  address,
  balance
FROM polymarket_polygon.positions
WHERE day = CURRENT_DATE - INTERVAL '1' DAY
  AND market_question = 'Will X happen by Y date?'
  AND token_outcome = 'Yes'
ORDER BY balance DESC
LIMIT 20
```
