Upscale
Menu
On this page

Получить список рынков

Попробовать ↓
GET/v2/markets
Получить список рынковКонфигурация

Каждый рынок, открытый для торговли, с его текущим снимком: цена, дневное изменение, границы кредитного плеча, комиссии и расписание торгов. Скрытые или исключённые из листинга рынки не включаются.

Передача accountId считывает снимок из торгового шарда, который обслуживает этот счёт — состояние, по которому был бы оценён Ордер, размещённый на нём. Здесь принадлежность счёта не проверяется: он только выбирает, какой шард отвечает.

Базовый URL https://api.upscale.trade

Авторизация

bearerhttp · bearerобязательно

Персональный API-ключ с префиксом usk_.

Параметры

Строка запроса
accountIdstring · 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})$
Пример: 00000000-0000-4000-8000-000000000000

Примеры

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

Ответы

401

Неавторизовано

429

Превышен лимит частоты запросов API-ключа (api_key_rate_limit_exceeded). Retry-After указывает, когда вернуться; тело содержит бакет (read / write), окно, которое сработало, его лимит и retryAt.

defaultОтветapplication/json

Массив MarketV2Response

idstring · uuidобязательно

Идентификатор рынка — значение, которое создание Ордера принимает в качестве marketId.

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})$
Пример: 00000000-0000-4000-8000-000000000000
configobjectобязательно

Статическое описание рынка: активы, наименование и категория.

Объект · 11 поля
baseAssetstringобязательно

Тикер базового актива — значение, которое эндпоинты для конкретного рынка принимают как asset.

Пример: BTC
quoteAssetstringобязательно

Актив, в котором котируются цены активов и номиналы.

Пример: USD
settlementTokenstringобязательно

Актив, в котором рассчитываются позиции.

Пример: USD
typestringобязательно

Модель ценообразования рынка.

Пример: base
namestringобязательно

Отображаемое имя рынка.

Пример: BTC
descriptionstringобязательно

Описание в свободной форме, отображаемое в приложении.

Пример: Market description
tickerstringобязательно

Полная метка пары.

Пример: BTC/USD
imageLinkstringобязательно

Иконка рынка.

Пример: https://app.storm.tg/markets/btc.png
tagsstring[]обязательно

Теги, по которым приложение группирует рынки.

Элементы массива · string

string

Пример: "Crypto"
Посмотреть пример
[
  "Crypto"
]
categorystring · enumобязательно

Является ли рынок криптовалютным или реальным активом — аккаунт может быть ограничен одним из двух.

Допустимо: "crypto" "rwa"
Пример: crypto
prioritynumber · nullableобязательно

Вес сортировки в списке рынков; более высокий идёт первым. Null, если не ранжирован.

Пример: 0
Посмотреть пример
{
  "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
}
stateobjectобязательно

Текущее состояние: индексная цена, финансирование и глубина, относительно которой рассчитывается цена ордера.

Объект · 10 поля
indexPricestring · int32обязательно

Текущая индексная цена рынка, fp9 в сыром виде — то, относительно чего оцениваются ордера и сравниваются триггеры.

pattern
^(?:-?[1-9][0-9]*|0)$
Пример: 1000000000
blockTimestampnumberобязательно

Когда был создан этот снимок состояния, временная метка Unix в миллисекундах.

Пример: 0
fundingRatestring · int32обязательно

Ставка финансирования текущего интервала, fp9 в виде необработанной доли. Положительное значение означает, что лонги платят шортам.

pattern
^(?:-?[1-9][0-9]*|0)$
Пример: 1000000000
nextFundingAtnumberобязательно

Когда в следующий раз будет произведен расчет финансирования, временная метка Unix в миллисекундах.

Пример: 0
lastFundingAtnumber · nullableобязательно

Когда финансирование было рассчитано в последний раз, временная метка Unix в миллисекундах. Null до первого расчета.

Пример: 0
vpiSpreadstring · int32обязательно

Текущий спред, взимаемый сверх цены индекса, fp9 в виде необработанной доли.

pattern
^(?:-?[1-9][0-9]*|0)$
Пример: 1000000000
vpiMarketDepthLongstring · int32обязательно

Глубина, доступная на стороне лонгов, fp9 в необработанном виде. Крупные ордера против нее сдвигают цену исполнения.

pattern
^(?:-?[1-9][0-9]*|0)$
Пример: 1000000000
vpiMarketDepthShortstring · int32обязательно

Глубина, доступная на стороне шорта, fp9 в сыром виде.

pattern
^(?:-?[1-9][0-9]*|0)$
Пример: 1000000000
vpiCoefficientLongstring · int32обязательно

Коэффициент влияния на цену, применяемый к длинным ордерам, fp9 в сыром виде.

pattern
^(?:-?[1-9][0-9]*|0)$
Пример: 1000000000
vpiCoefficientShortstring · int32обязательно

Коэффициент влияния на цену, применяемый к коротким ордерам, fp9 в сыром виде.

pattern
^(?:-?[1-9][0-9]*|0)$
Пример: 1000000000
Посмотреть пример
{
  "indexPrice": "1000000000",
  "blockTimestamp": 0,
  "fundingRate": "1000000000",
  "nextFundingAt": 0,
  "lastFundingAt": 0,
  "vpiSpread": "1000000000",
  "vpiMarketDepthLong": "1000000000",
  "vpiMarketDepthShort": "1000000000",
  "vpiCoefficientLong": "1000000000",
  "vpiCoefficientShort": "1000000000"
}
settingsobjectобязательно

Правила торговли на рынке: комиссии, коэффициенты маржи и лимиты, с которыми сверяется ордер.

Объект · 15 поля
feestring · int32обязательно

Ставка торговой комиссии, fp9 в виде сырой дроби (1000000 = 0.1%).

pattern
^(?:-?[1-9][0-9]*|0)$
Пример: 1000000000
minInitMarginRatiostring · int32обязательно

Наименьший коэффициент начальной маржи, который принимает рынок, fp9 в виде необработанной дроби — предел кредитного плеча.

pattern
^(?:-?[1-9][0-9]*|0)$
Пример: 1000000000
initMarginRatiostring · int32обязательно

Коэффициент начальной маржи рынка по умолчанию, fp9 в виде необработанной дроби.

pattern
^(?:-?[1-9][0-9]*|0)$
Пример: 1000000000
maintenanceMarginRatiostring · int32обязательно

Коэффициент маржи, ниже которого позиция ликвидируется, fp9 в виде необработанной дроби.

pattern
^(?:-?[1-9][0-9]*|0)$
Пример: 1000000000
maxLeverageByAccountobjectобязательно

Наибольшее кредитное плечо, разрешённое для каждого типа аккаунта, fp9 в необработанном виде, с ключом по типу аккаунта.

Дополнительные свойства

string · int32

Пример: "1000000000"
pattern
^(?:-?[1-9][0-9]*|0)$
Посмотреть пример
{
  "key": "1000000000"
}
spreadLimitstring · int32обязательно

Наибольший спред, который будет взимать рынок, fp9 в виде необработанной дроби.

pattern
^(?:-?[1-9][0-9]*|0)$
Пример: 1000000000
maxPriceImpactstring · int32обязательно

Максимальное влияние на цену, которое может вызвать один ордер, fp9 в виде необработанной доли.

pattern
^(?:-?[1-9][0-9]*|0)$
Пример: 1000000000
maxPriceSpreadstring · int32обязательно

Максимально допустимое отклонение между рыночной и индексной ценой, fp9 в виде необработанной доли.

pattern
^(?:-?[1-9][0-9]*|0)$
Пример: 1000000000
maxOpenNotionalLongstring · int32обязательно

Ограничение на открытый номинал, удерживаемый в длинной позиции на этом рынке, fp9 в необработанном виде. 0 означает отсутствие ограничения.

pattern
^(?:-?[1-9][0-9]*|0)$
Пример: 1000000000
maxOpenNotionalShortstring · int32обязательно

Ограничение на открытый номинал, удерживаемый в короткой позиции на этом рынке, fp9 в необработанном виде. 0 означает отсутствие ограничения.

pattern
^(?:-?[1-9][0-9]*|0)$
Пример: 1000000000
minStopTriggerDistanceRatiostring · int32обязательно

Минимальное расстояние между текущей ценой и триггером стоп-ордера, fp9 в виде необработанной доли. Более близкий триггер отодвигается на это расстояние.

pattern
^(?:-?[1-9][0-9]*|0)$
Пример: 1000000000
isCloseOnlybooleanобязательно

Принимает ли рынок только ордера, закрывающие позицию.

Пример: true
isClosedbooleanобязательно
Пример: true
isPausedbooleanобязательно
Пример: true
isZeroSpreadbooleanобязательно

Торгуется ли рынок в настоящее время без спреда.

Пример: true
Посмотреть пример
{
  "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
}
changeobjectобязательно

Справочные цены для расчёта изменений цены за 1 ч, 4 ч и 24 ч.

Объект · 3 поля
initialPricenumberобязательно

Цена 24 часов назад, в виде десятичного числа — база дневного изменения. 0, если история недоступна.

Пример: 0
initialPrice1hnumberобязательно

Цена один час назад, в виде десятичного числа. 0, если история недоступна.

Пример: 0
initialPrice4hnumberобязательно

Цена четыре часа назад, в виде десятичного числа. 0, когда история недоступна.

Пример: 0
Посмотреть пример
{
  "initialPrice": 0,
  "initialPrice1h": 0,
  "initialPrice4h": 0
}
scheduleobject · nullableобязательно

Торговые сессии рынка. Null, когда рынок торгуется круглосуточно.

Объект · 6 поля
nextPauseAtnumberобязательно

Начало следующего запланированного перерыва, временная метка Unix в миллисекундах. 0, когда у рынка вообще нет перерывов, и 9007199254740991, когда после текущего ничего не запланировано.

Пример: 0
nextUnpauseAtnumberобязательно

Конец перерыва, в котором находится рынок, или следующего перерыва, временная метка Unix в миллисекундах. Те же 0 и правила для сигнальных значений, что и nextPauseAt.

Пример: 0
closestPauseAtnumberобязательно

То же значение, что и nextPauseAt. Сохранено для обратной совместимости.

Пример: 0
closestUnpauseAtnumberобязательно

То же значение, что и nextUnpauseAt. Сохранено для обратной совместимости.

Пример: 0
pausedAtnumberобязательно

Начало текущего перерыва, метка времени Unix в миллисекундах. 0, когда рынок торгуется.

Пример: 0
inPausebooleanобязательно

Находится ли рынок прямо сейчас в запланированном перерыве. Ордера отклоняются, пока он длится.

Пример: true
Посмотреть пример
{
  "nextPauseAt": 0,
  "nextUnpauseAt": 0,
  "closestPauseAt": 0,
  "closestUnpauseAt": 0,
  "pausedAt": 0,
  "inPause": true
}