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

# Market data

> Every NGX equity, ETF and index with quotes, daily bars, indices, FX, the trading calendar and corporate disclosures.

`GET /market/*` serves Nigerian Exchange data from Ladder's own store, refreshed about every 15 minutes during the trading session (Monday to Friday, 09:00 to 16:00 West Africa Time).

The contract is built to be stable: every object carries `object` and `schema_version`; prices and rates are decimal strings with a fixed scale; timestamps are UTC with a `Z`; unknown values are `null` rather than missing; changes are only ever additive.

| endpoint | returns |
| - | - |
| `GET /market/instruments` | the universe, paginated; `type` is `equity`, `etf`, `fund` or `index`; `search` matches symbol or name |
| `GET /market/instruments/{symbol}` | one instrument with its latest quote |
| `GET /market/instruments/{symbol}/quote` | the quote only |
| `GET /market/quotes?symbols=A,B` | quotes for up to 200 symbols in one call |
| `GET /market/instruments/{symbol}/prices` | daily bars between `from` and `to` |
| `GET /market/indices`, `GET /market/indices/{symbol}` | NGX indices |
| `GET /market/snapshot`, `GET /market/snapshot/history` | market status, breadth and index levels |
| `GET /market/fx` | indicative FX rates, never the rate Ladder converts at |
| `GET /market/calendar` | trading holidays |
| `GET /market/disclosures` | corporate filings |

The link to ordering is `ladder.investment_id`: when it is set and `ladder.orderable` is true, that id is what you pass to `POST /orders`.

```json theme={null}
{
  "data": {
    "object": "market.instrument",
    "schema_version": "1",
    "symbol": "DANGCEM",
    "name": "DANGOTE CEMENT PLC",
    "asset_class": "equity",
    "security_type": "common_stock",
    "exchange": {"name": "NGX", "mic": "XNSA", "timezone": "Africa/Lagos"},
    "currency": "NGN",
    "identifiers": {"isin": "NGDANGCEM008", "provider": "ngnmarket", "provider_ref": "33"},
    "listing": {"status": "active", "first_seen_at": "2026-10-11T22:52:09Z", "last_seen_at": "2026-10-12T08:45:00Z"},
    "equity": {"sector": "INDUSTRIAL GOODS", "sub_sector": "Building Materials", "board": "Premium Board", "shares_outstanding": 16873559251},
    "fund": null,
    "index": null,
    "media": {"logo_url": "https://cdn.jsdelivr.net/gh/ngnmarket/ngx-logos/dist/png/DANGCEM.png", "website": "www.dangotecement.com"},
    "ladder": {"investment_id": "ae5378ce-d784-4ffd-96aa-6e7d6c1a811e", "orderable": true},
    "quote": {
      "object": "market.quote",
      "schema_version": "1",
      "symbol": "DANGCEM",
      "as_of": "2026-10-12T08:40:05Z",
      "trade_date": "2026-10-12",
      "currency": "NGN",
      "last": "1066.7000",
      "previous_close": "1066.7000",
      "change": "0.0000",
      "change_percent": "0.0000",
      "day_high": null,
      "day_low": null,
      "volume": 6669,
      "market_cap": "17999025653041.70",
      "high_52w": "1189.0000",
      "low_52w": "534.6000",
      "performance": {"change_7d_percent": "0.0000", "change_1m_percent": "3.1625", "change_ytd_percent": "75.1560", "change_52w_percent": "82.3419"},
      "source": {"provider": "ngnmarket", "provider_ref": "33", "fetched_at": "2026-10-12T08:45:00Z"}
    }
  }
}
```

`as_of` is when the exchange feed last updated the value; `fetched_at` is when Ladder stored it. The `equity`, `fund` and `index` blocks are present on every instrument and only the one that applies is populated.

<Warning>
  Quotes are for information and indicative pricing. An order on a listed instrument is a market order executed at the prevailing price during the session; the executed `unit_price` is on the completed order.
</Warning>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.