# Obtener lista de mercados

`GET /v2/markets`

Cada mercado abierto para operar, cada uno con su instantánea actual: precio, cambio diario, límites de apalancamiento, comisiones y horario de negociación.
Los mercados que están ocultos o excluidos de cotización se omiten.

Pasar `accountId` lee la instantánea desde el shard de negociación que aloja esa cuenta — el estado contra el que se valoraría una orden colocada en él.
Aquí no se comprueba la titularidad de la cuenta: solo selecciona qué shard responde.

<a id="authorization"></a>

## Autorización

bearer: http · bearer (obligatorio). Clave de API personal, con el prefijo `usk_`.

<a id="parameters"></a>

## Parámetros

- query: accountId (string · uuid; opcional). Cuenta de trader respecto a la cual resolver la lista de mercados: los límites de apalancamiento y la disponibilidad se devuelven tal como se aplican a esa cuenta. Omitida — se devuelven los valores predeterminados de toda la plataforma.

Tipo: string · uuid

format: uuid

pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$

<a id="example-curl"></a>

## Ejemplo · cURL

```bash
curl --request GET 'https://api.upscale.trade/v2/markets' \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer YOUR_API_KEY'
```

<a id="example-javascript"></a>

## Ejemplo · JavaScript

```javascript
const response = await fetch("https://api.upscale.trade/v2/markets", {
  method: "GET",
  headers: {
    "Accept": "application/json",
    "Authorization": "Bearer YOUR_API_KEY"
  },
});
console.log(response.status, await response.text());
```

<a id="example-python"></a>

## Ejemplo · Python

```python
import requests

response = requests.request(
    "GET",
    "https://api.upscale.trade/v2/markets",
    headers={"Accept":"application/json","Authorization":"Bearer YOUR_API_KEY"},
    timeout=30,
)
print(response.status_code, response.text)
```

<a id="response-401"></a>

## Respuesta 401

**401**  — No autorizado

<a id="response-429"></a>

## Respuesta 429

**429**  — Se superó el límite de velocidad de la clave de API (`api_key_rate_limit_exceeded`). `Retry-After` indica cuándo volver; el cuerpo incluye el bucket (`read` / `write`), la ventana que se activó, su límite y `retryAt`.

<a id="response-default-marketv2response"></a>

## Respuesta default · MarketV2Response

**default** application/json — Respuesta

Tipo: object[]

[]Esquema: MarketV2Response

[]Tipo: object

[]Campos obligatorios: id, config, state, settings, change, schedule

[]Tipos de campos obligatorios: id (string · uuid; obligatorio), config (object; obligatorio), state (object; obligatorio), settings (object; obligatorio), change (object; obligatorio), schedule (object · nullable; obligatorio)

- []id (string · uuid; obligatorio)

[]id ejemplo: 00000000-0000-4000-8000-000000000000

[]id.Tipo: string · uuid

[]id.Identificador de mercado — el valor que la creación de orden toma como `marketId`.

[]id.format: uuid

[]id.pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$

- []config (object; obligatorio)

[]config ejemplo: {
  "baseAsset": "BTC",
  "quoteAsset": "USD",
  "settlementToken": "USD",
  "type": "base",
  "name": "BTC",
  "description": "Market description",
  "ticker": "BTC/USD",
  "imageLink": "https://app.storm.tg/markets/btc.png",
  "tags": [
    "Crypto"
  ],
  "category": "crypto",
  "priority": 0
}

[]config.Tipo: object

[]config.Campos obligatorios: baseAsset, quoteAsset, settlementToken, type, name, description, ticker, imageLink, tags, category, priority

[]config.Tipos de campos obligatorios: baseAsset (string; obligatorio), quoteAsset (string; obligatorio), settlementToken (string; obligatorio), type (string; obligatorio), name (string; obligatorio), description (string; obligatorio), ticker (string; obligatorio), imageLink (string; obligatorio), tags (string[]; obligatorio), category (string · enum; obligatorio), priority (number · nullable; obligatorio)

[]config.Descripción estática del mercado: activos, denominación y categoría.

- []config.baseAsset (string; obligatorio)

[]config.baseAsset ejemplo: BTC

[]config.baseAsset.Tipo: string

[]config.baseAsset.Ticker del activo base — el valor que los endpoints por mercado toman como `asset`.

- []config.quoteAsset (string; obligatorio)

[]config.quoteAsset ejemplo: USD

[]config.quoteAsset.Tipo: string

[]config.quoteAsset.Los precios de los activos y los importes nocionales se cotizan en.

- []config.settlementToken (string; obligatorio)

[]config.settlementToken ejemplo: USD

[]config.settlementToken.Tipo: string

[]config.settlementToken.Las posiciones de activos se liquidan en.

- []config.type (string; obligatorio)

[]config.type ejemplo: base

[]config.type.Tipo: string

[]config.type.Modelo de precios del mercado.

- []config.name (string; obligatorio)

[]config.name ejemplo: BTC

[]config.name.Tipo: string

[]config.name.Nombre para mostrar del mercado.

- []config.description (string; obligatorio)

[]config.description ejemplo: Market description

[]config.description.Tipo: string

[]config.description.Descripción de formato libre que se muestra en la aplicación.

- []config.ticker (string; obligatorio)

[]config.ticker ejemplo: BTC/USD

[]config.ticker.Tipo: string

[]config.ticker.Etiqueta completa del par.

- []config.imageLink (string; obligatorio)

[]config.imageLink ejemplo: https://app.storm.tg/markets/btc.png

[]config.imageLink.Tipo: string

[]config.imageLink.Icono del mercado.

- []config.tags (string[]; obligatorio)

[]config.tags ejemplo: [
  "Crypto"
]

[]config.tags.Tipo: string[]

[]config.tags.Etiquetas por las que la aplicación agrupa los mercados.

[]config.tags.[]Tipo: string

- []config.category (string · enum; obligatorio)

[]config.category ejemplo: crypto

[]config.category.Tipo: string · enum

[]config.category.Si el mercado es cripto o un activo del mundo real — una cuenta puede estar limitada a uno de los dos.

[]config.category.Valores permitidos: ["crypto","rwa"]

- []config.priority (number · nullable; obligatorio)

[]config.priority ejemplo: 0

[]config.priority.Tipo: number · nullable

[]config.priority.Peso de ordenación en la lista de mercados; el mayor va primero. Nulo cuando no está clasificado.

- []state (object; obligatorio)

[]state ejemplo: {
  "indexPrice": "1000000000",
  "blockTimestamp": 0,
  "fundingRate": "1000000000",
  "nextFundingAt": 0,
  "lastFundingAt": 0,
  "vpiSpread": "1000000000",
  "vpiMarketDepthLong": "1000000000",
  "vpiMarketDepthShort": "1000000000",
  "vpiCoefficientLong": "1000000000",
  "vpiCoefficientShort": "1000000000"
}

[]state.Tipo: object

[]state.Campos obligatorios: indexPrice, blockTimestamp, fundingRate, nextFundingAt, lastFundingAt, vpiSpread, vpiMarketDepthLong, vpiMarketDepthShort, vpiCoefficientLong, vpiCoefficientShort

[]state.Tipos de campos obligatorios: indexPrice (string · int32; obligatorio), blockTimestamp (number; obligatorio), fundingRate (string · int32; obligatorio), nextFundingAt (number; obligatorio), lastFundingAt (number · nullable; obligatorio), vpiSpread (string · int32; obligatorio), vpiMarketDepthLong (string · int32; obligatorio), vpiMarketDepthShort (string · int32; obligatorio), vpiCoefficientLong (string · int32; obligatorio), vpiCoefficientShort (string · int32; obligatorio)

[]state.Estado en vivo: precio del índice, financiación y la profundidad contra la que se fija el precio de una orden.

- []state.indexPrice (string · int32; obligatorio)

[]state.indexPrice ejemplo: 1000000000

[]state.indexPrice.Tipo: string · int32

[]state.indexPrice.Precio de índice actual del mercado, fp9 en bruto — contra lo que se fijan los precios de las órdenes y se comparan los disparadores.

[]state.indexPrice.format: int32

[]state.indexPrice.pattern: ^(?:-?[1-9][0-9]*|0)$

- []state.blockTimestamp (number; obligatorio)

[]state.blockTimestamp ejemplo: 0

[]state.blockTimestamp.Tipo: number

[]state.blockTimestamp.Cuándo se produjo esta instantánea de estado, marca de tiempo unix en milisegundos.

- []state.fundingRate (string · int32; obligatorio)

[]state.fundingRate ejemplo: 1000000000

[]state.fundingRate.Tipo: string · int32

[]state.fundingRate.Tasa de financiación del intervalo en curso, fp9 fracción sin procesar. Positivo significa que los largos pagan a los cortos.

[]state.fundingRate.format: int32

[]state.fundingRate.pattern: ^(?:-?[1-9][0-9]*|0)$

- []state.nextFundingAt (number; obligatorio)

[]state.nextFundingAt ejemplo: 0

[]state.nextFundingAt.Tipo: number

[]state.nextFundingAt.Cuándo se liquida la financiación a continuación, marca de tiempo unix en milisegundos.

- []state.lastFundingAt (number · nullable; obligatorio)

[]state.lastFundingAt ejemplo: 0

[]state.lastFundingAt.Tipo: number · nullable

[]state.lastFundingAt.Cuándo se liquidó la financiación por última vez, marca de tiempo unix en milisegundos. Nulo antes de la primera liquidación.

- []state.vpiSpread (string · int32; obligatorio)

[]state.vpiSpread ejemplo: 1000000000

[]state.vpiSpread.Tipo: string · int32

[]state.vpiSpread.Spread actual cobrado sobre el precio del índice, fp9 fracción sin procesar.

[]state.vpiSpread.format: int32

[]state.vpiSpread.pattern: ^(?:-?[1-9][0-9]*|0)$

- []state.vpiMarketDepthLong (string · int32; obligatorio)

[]state.vpiMarketDepthLong ejemplo: 1000000000

[]state.vpiMarketDepthLong.Tipo: string · int32

[]state.vpiMarketDepthLong.Profundidad disponible en el lado largo, fp9 en bruto. Las órdenes grandes en su contra mueven el precio de ejecución.

[]state.vpiMarketDepthLong.format: int32

[]state.vpiMarketDepthLong.pattern: ^(?:-?[1-9][0-9]*|0)$

- []state.vpiMarketDepthShort (string · int32; obligatorio)

[]state.vpiMarketDepthShort ejemplo: 1000000000

[]state.vpiMarketDepthShort.Tipo: string · int32

[]state.vpiMarketDepthShort.Profundidad disponible en el lado corto, fp9 en bruto.

[]state.vpiMarketDepthShort.format: int32

[]state.vpiMarketDepthShort.pattern: ^(?:-?[1-9][0-9]*|0)$

- []state.vpiCoefficientLong (string · int32; obligatorio)

[]state.vpiCoefficientLong ejemplo: 1000000000

[]state.vpiCoefficientLong.Tipo: string · int32

[]state.vpiCoefficientLong.Coeficiente de impacto en el precio aplicado a las órdenes largas, fp9 en bruto.

[]state.vpiCoefficientLong.format: int32

[]state.vpiCoefficientLong.pattern: ^(?:-?[1-9][0-9]*|0)$

- []state.vpiCoefficientShort (string · int32; obligatorio)

[]state.vpiCoefficientShort ejemplo: 1000000000

[]state.vpiCoefficientShort.Tipo: string · int32

[]state.vpiCoefficientShort.Coeficiente de impacto en el precio aplicado a las órdenes cortas, fp9 en bruto.

[]state.vpiCoefficientShort.format: int32

[]state.vpiCoefficientShort.pattern: ^(?:-?[1-9][0-9]*|0)$

- []settings (object; obligatorio)

[]settings ejemplo: {
  "fee": "1000000000",
  "minInitMarginRatio": "1000000000",
  "initMarginRatio": "1000000000",
  "maintenanceMarginRatio": "1000000000",
  "maxLeverageByAccount": {
    "key": "1000000000"
  },
  "spreadLimit": "1000000000",
  "maxPriceImpact": "1000000000",
  "maxPriceSpread": "1000000000",
  "maxOpenNotionalLong": "1000000000",
  "maxOpenNotionalShort": "1000000000",
  "minStopTriggerDistanceRatio": "1000000000",
  "isCloseOnly": true,
  "isClosed": true,
  "isPaused": true,
  "isZeroSpread": true
}

[]settings.Tipo: object

[]settings.Campos obligatorios: fee, minInitMarginRatio, initMarginRatio, maintenanceMarginRatio, maxLeverageByAccount, spreadLimit, maxPriceImpact, maxPriceSpread, maxOpenNotionalLong, maxOpenNotionalShort, minStopTriggerDistanceRatio, isCloseOnly, isClosed, isPaused, isZeroSpread

[]settings.Tipos de campos obligatorios: fee (string · int32; obligatorio), minInitMarginRatio (string · int32; obligatorio), initMarginRatio (string · int32; obligatorio), maintenanceMarginRatio (string · int32; obligatorio), maxLeverageByAccount (object; obligatorio), spreadLimit (string · int32; obligatorio), maxPriceImpact (string · int32; obligatorio), maxPriceSpread (string · int32; obligatorio), maxOpenNotionalLong (string · int32; obligatorio), maxOpenNotionalShort (string · int32; obligatorio), minStopTriggerDistanceRatio (string · int32; obligatorio), isCloseOnly (boolean; obligatorio), isClosed (boolean; obligatorio), isPaused (boolean; obligatorio), isZeroSpread (boolean; obligatorio)

[]settings.Reglas de negociación del mercado: comisiones, ratios de margen y los límites máximos contra los que se verifica una orden.

- []settings.fee (string · int32; obligatorio)

[]settings.fee ejemplo: 1000000000

[]settings.fee.Tipo: string · int32

[]settings.fee.Tasa de comisión de negociación, fp9 fracción en bruto (`1000000` = 0.1%).

[]settings.fee.format: int32

[]settings.fee.pattern: ^(?:-?[1-9][0-9]*|0)$

- []settings.minInitMarginRatio (string · int32; obligatorio)

[]settings.minInitMarginRatio ejemplo: 1000000000

[]settings.minInitMarginRatio.Tipo: string · int32

[]settings.minInitMarginRatio.La menor ratio de margen inicial que acepta el mercado, fp9 fracción bruta — el límite máximo de apalancamiento.

[]settings.minInitMarginRatio.format: int32

[]settings.minInitMarginRatio.pattern: ^(?:-?[1-9][0-9]*|0)$

- []settings.initMarginRatio (string · int32; obligatorio)

[]settings.initMarginRatio ejemplo: 1000000000

[]settings.initMarginRatio.Tipo: string · int32

[]settings.initMarginRatio.Ratio de margen inicial predeterminado del mercado, fp9 fracción bruta.

[]settings.initMarginRatio.format: int32

[]settings.initMarginRatio.pattern: ^(?:-?[1-9][0-9]*|0)$

- []settings.maintenanceMarginRatio (string · int32; obligatorio)

[]settings.maintenanceMarginRatio ejemplo: 1000000000

[]settings.maintenanceMarginRatio.Tipo: string · int32

[]settings.maintenanceMarginRatio.Ratio de margen por debajo del cual se liquida una posición, fp9 fracción bruta.

[]settings.maintenanceMarginRatio.format: int32

[]settings.maintenanceMarginRatio.pattern: ^(?:-?[1-9][0-9]*|0)$

- []settings.maxLeverageByAccount (object; obligatorio)

[]settings.maxLeverageByAccount ejemplo: {
  "key": "1000000000"
}

[]settings.maxLeverageByAccount.Tipo: object

[]settings.maxLeverageByAccount.Apalancamiento máximo permitido por tipo de cuenta, fp9 bruto, indexado por tipo de cuenta.

[]settings.maxLeverageByAccount.*.Tipo: string · int32

[]settings.maxLeverageByAccount.*.Ejemplo: "1000000000"

[]settings.maxLeverageByAccount.*.format: int32

[]settings.maxLeverageByAccount.*.pattern: ^(?:-?[1-9][0-9]*|0)$

- []settings.spreadLimit (string · int32; obligatorio)

[]settings.spreadLimit ejemplo: 1000000000

[]settings.spreadLimit.Tipo: string · int32

[]settings.spreadLimit.El mayor spread que cobrará el mercado, fp9 fracción bruta.

[]settings.spreadLimit.format: int32

[]settings.spreadLimit.pattern: ^(?:-?[1-9][0-9]*|0)$

- []settings.maxPriceImpact (string · int32; obligatorio)

[]settings.maxPriceImpact ejemplo: 1000000000

[]settings.maxPriceImpact.Tipo: string · int32

[]settings.maxPriceImpact.Mayor impacto en el precio que puede causar una sola orden, fp9 fracción sin procesar.

[]settings.maxPriceImpact.format: int32

[]settings.maxPriceImpact.pattern: ^(?:-?[1-9][0-9]*|0)$

- []settings.maxPriceSpread (string · int32; obligatorio)

[]settings.maxPriceSpread ejemplo: 1000000000

[]settings.maxPriceSpread.Tipo: string · int32

[]settings.maxPriceSpread.Mayor desviación permitida entre el precio de mercado y el precio del índice, fp9 fracción sin procesar.

[]settings.maxPriceSpread.format: int32

[]settings.maxPriceSpread.pattern: ^(?:-?[1-9][0-9]*|0)$

- []settings.maxOpenNotionalLong (string · int32; obligatorio)

[]settings.maxOpenNotionalLong ejemplo: 1000000000

[]settings.maxOpenNotionalLong.Tipo: string · int32

[]settings.maxOpenNotionalLong.Límite máximo sobre el nocional abierto mantenido en largo en este mercado, fp9 sin procesar. `0` significa sin límite.

[]settings.maxOpenNotionalLong.format: int32

[]settings.maxOpenNotionalLong.pattern: ^(?:-?[1-9][0-9]*|0)$

- []settings.maxOpenNotionalShort (string · int32; obligatorio)

[]settings.maxOpenNotionalShort ejemplo: 1000000000

[]settings.maxOpenNotionalShort.Tipo: string · int32

[]settings.maxOpenNotionalShort.Límite máximo sobre el nocional abierto mantenido en corto en este mercado, fp9 sin procesar. `0` significa sin límite.

[]settings.maxOpenNotionalShort.format: int32

[]settings.maxOpenNotionalShort.pattern: ^(?:-?[1-9][0-9]*|0)$

- []settings.minStopTriggerDistanceRatio (string · int32; obligatorio)

[]settings.minStopTriggerDistanceRatio ejemplo: 1000000000

[]settings.minStopTriggerDistanceRatio.Tipo: string · int32

[]settings.minStopTriggerDistanceRatio.Distancia mínima entre el precio actual y un disparador de stop, fp9 fracción sin procesar. Un disparador más cercano se empuja hasta esta distancia.

[]settings.minStopTriggerDistanceRatio.format: int32

[]settings.minStopTriggerDistanceRatio.pattern: ^(?:-?[1-9][0-9]*|0)$

- []settings.isCloseOnly (boolean; obligatorio)

[]settings.isCloseOnly ejemplo: true

[]settings.isCloseOnly.Tipo: boolean

[]settings.isCloseOnly.Si el mercado solo acepta órdenes que cierran una posición.

- []settings.isClosed (boolean; obligatorio)

[]settings.isClosed ejemplo: true

[]settings.isClosed.Tipo: boolean

- []settings.isPaused (boolean; obligatorio)

[]settings.isPaused ejemplo: true

[]settings.isPaused.Tipo: boolean

- []settings.isZeroSpread (boolean; obligatorio)

[]settings.isZeroSpread ejemplo: true

[]settings.isZeroSpread.Tipo: boolean

[]settings.isZeroSpread.Si el mercado actualmente cotiza sin spread.

- []change (object; obligatorio)

[]change ejemplo: {
  "initialPrice": 0,
  "initialPrice1h": 0,
  "initialPrice4h": 0
}

[]change.Tipo: object

[]change.Campos obligatorios: initialPrice, initialPrice1h, initialPrice4h

[]change.Tipos de campos obligatorios: initialPrice (number; obligatorio), initialPrice1h (number; obligatorio), initialPrice4h (number; obligatorio)

[]change.Precios de referencia para calcular las variaciones de precio de 1h, 4h y 24h.

- []change.initialPrice (number; obligatorio)

[]change.initialPrice ejemplo: 0

[]change.initialPrice.Tipo: number

[]change.initialPrice.Precio hace 24 horas, como número decimal — la base del cambio diario. `0` cuando no hay historial disponible.

- []change.initialPrice1h (number; obligatorio)

[]change.initialPrice1h ejemplo: 0

[]change.initialPrice1h.Tipo: number

[]change.initialPrice1h.Precio hace una hora, como número decimal. `0` cuando no hay historial disponible.

- []change.initialPrice4h (number; obligatorio)

[]change.initialPrice4h ejemplo: 0

[]change.initialPrice4h.Tipo: number

[]change.initialPrice4h.Precio de hace cuatro horas, como número decimal. `0` cuando no hay historial disponible.

- []schedule (object · nullable; obligatorio)

[]schedule ejemplo: {
  "nextPauseAt": 0,
  "nextUnpauseAt": 0,
  "closestPauseAt": 0,
  "closestUnpauseAt": 0,
  "pausedAt": 0,
  "inPause": true
}

[]schedule.Tipo: object · nullable

[]schedule.Campos obligatorios: nextPauseAt, nextUnpauseAt, closestPauseAt, closestUnpauseAt, pausedAt, inPause

[]schedule.Tipos de campos obligatorios: nextPauseAt (number; obligatorio), nextUnpauseAt (number; obligatorio), closestPauseAt (number; obligatorio), closestUnpauseAt (number; obligatorio), pausedAt (number; obligatorio), inPause (boolean; obligatorio)

[]schedule.Sesiones de negociación del mercado. Nulo cuando cotiza sin interrupción.

- []schedule.nextPauseAt (number; obligatorio)

[]schedule.nextPauseAt ejemplo: 0

[]schedule.nextPauseAt.Tipo: number

[]schedule.nextPauseAt.Inicio de la próxima pausa programada, marca de tiempo Unix en milisegundos. `0` cuando el mercado no tiene ninguna pausa, y `9007199254740991` cuando no hay ninguna programada con posterioridad a la actual.

- []schedule.nextUnpauseAt (number; obligatorio)

[]schedule.nextUnpauseAt ejemplo: 0

[]schedule.nextUnpauseAt.Tipo: number

[]schedule.nextUnpauseAt.Fin de la pausa en la que se encuentra el mercado, o de la siguiente, marca de tiempo Unix en milisegundos. Mismas reglas de `0` y de centinela que en `nextPauseAt`.

- []schedule.closestPauseAt (number; obligatorio)

[]schedule.closestPauseAt ejemplo: 0

[]schedule.closestPauseAt.Tipo: number

[]schedule.closestPauseAt.Mismo valor que `nextPauseAt`. Se mantiene por compatibilidad con versiones anteriores.

- []schedule.closestUnpauseAt (number; obligatorio)

[]schedule.closestUnpauseAt ejemplo: 0

[]schedule.closestUnpauseAt.Tipo: number

[]schedule.closestUnpauseAt.Mismo valor que `nextUnpauseAt`. Se conserva por compatibilidad con versiones anteriores.

- []schedule.pausedAt (number; obligatorio)

[]schedule.pausedAt ejemplo: 0

[]schedule.pausedAt.Tipo: number

[]schedule.pausedAt.Inicio de la pausa actualmente en curso, marca de tiempo unix en milisegundos. `0` cuando el mercado está operando.

- []schedule.inPause (boolean; obligatorio)

[]schedule.inPause ejemplo: true

[]schedule.inPause.Tipo: boolean

[]schedule.inPause.Si el mercado se encuentra dentro de una pausa programada en este momento. Las órdenes se rechazan mientras esté en ella.

Ejemplo



```json
[
  {
    "id": "00000000-0000-4000-8000-000000000000",
    "config": {
      "baseAsset": "BTC",
      "quoteAsset": "USD",
      "settlementToken": "USD",
      "type": "base",
      "name": "BTC",
      "description": "Market description",
      "ticker": "BTC/USD",
      "imageLink": "https://app.storm.tg/markets/btc.png",
      "tags": [
        "Crypto"
      ],
      "category": "crypto",
      "priority": 0
    },
    "state": {
      "indexPrice": "1000000000",
      "blockTimestamp": 0,
      "fundingRate": "1000000000",
      "nextFundingAt": 0,
      "lastFundingAt": 0,
      "vpiSpread": "1000000000",
      "vpiMarketDepthLong": "1000000000",
      "vpiMarketDepthShort": "1000000000",
      "vpiCoefficientLong": "1000000000",
      "vpiCoefficientShort": "1000000000"
    },
    "settings": {
      "fee": "1000000000",
      "minInitMarginRatio": "1000000000",
      "initMarginRatio": "1000000000",
      "maintenanceMarginRatio": "1000000000",
      "maxLeverageByAccount": {
        "key": "1000000000"
      },
      "spreadLimit": "1000000000",
      "maxPriceImpact": "1000000000",
      "maxPriceSpread": "1000000000",
      "maxOpenNotionalLong": "1000000000",
      "maxOpenNotionalShort": "1000000000",
      "minStopTriggerDistanceRatio": "1000000000",
      "isCloseOnly": true,
      "isClosed": true,
      "isPaused": true,
      "isZeroSpread": true
    },
    "change": {
      "initialPrice": 0,
      "initialPrice1h": 0,
      "initialPrice4h": 0
    },
    "schedule": {
      "nextPauseAt": 0,
      "nextUnpauseAt": 0,
      "closestPauseAt": 0,
      "closestUnpauseAt": 0,
      "pausedAt": 0,
      "inPause": true
    }
  }
]
```