> For the complete documentation index, see [llms.txt](https://docs.dexpal.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.dexpal.io/for-partners/schemas/trading-hours.md).

# Trading Hours

Trading hours schedule for markets that are not open 24/7 (e.g. traditional asset markets). Present in [`markets`](/for-partners/endpoints/dex-markets.md) as `tradingHours`. Omit entirely (or return `null`) for perpetual crypto markets that trade continuously.

## Schema

| Field             | Type    | Required | Description                                                           |
| ----------------- | ------- | -------- | --------------------------------------------------------------------- |
| `timezone`        | string  | yes      | IANA timezone name e.g. `"America/New_York"`, `"Europe/London"`.      |
| `schedule`        | string  | yes      | Human-readable schedule string e.g. `"Mon–Fri 09:30–16:00"`.          |
| `isCurrentlyOpen` | boolean | yes      | Whether the market is open at the time of the response.               |
| `nextOpenAt`      | ISO8601 | no       | Timestamp of the next market open. Omit if currently open or unknown. |

## Example

```json
{
  "timezone": "America/New_York",
  "schedule": "Mon–Fri 09:30–16:00",
  "isCurrentlyOpen": true,
  "nextOpenAt": null
}
```

```json
{
  "timezone": "America/New_York",
  "schedule": "Mon–Fri 09:30–16:00",
  "isCurrentlyOpen": false,
  "nextOpenAt": "2026-04-21T13:30:00Z"
}
```

## Notes

* `isCurrentlyOpen` must be evaluated at response time in the market's local timezone.
* `nextOpenAt` should account for holidays and closures where known.
* Crypto perpetual markets should omit `tradingHours` entirely — they are always open.
