Цены активов
Intotes предоставляет REST-эндпоинты для получения текущих цен криптоактивов и курсов обмена фиатных валют. Они используются внутренне для криптовалютных циклических событий и доступны для отображения и конвертации.
Цена криптоактива
Получение текущей цены криптоактива.
GET /api/v1/assets/{symbol}/price
Параметры пути
| Параметр | Тип | Описание |
|---|---|---|
symbol | string | Символ торговой пары (например, BTCUSDT, ETHUSDT, SOLUSDT). |
Ответ
{
"symbol": "BTCUSDT",
"price": 8734521
}
| Поле | Тип | Описание |
|---|---|---|
symbol | string | Запрошенный символ торговой пары. |
price | integer | Текущая цена актива в копейках. |
Поддерживаемые активы
Распространенные символы:
| Символ | Актив |
|---|---|
BTCUSDT | Bitcoin |
ETHUSDT | Ethereum |
SOLUSDT | Solana |
Дополнительные торговые пары могут быть доступны. Формат символа следует конвенции Bybit: базовый актив, за которым следует валюта котировки (например, BTCUSDT = BTC в ценах USDT).
Источник цен
Цены активов получены из Bybit API и часто обновляются фоновым воркером. REST-эндпоинт возвращает последнюю кэшированную цену. Для потоковой передачи цен в реальном времени используйте WebSocket-ленту цен активов.
Пример
# Получить текущую цену BTC
curl "https://api.intots.com/api/v1/assets/BTCUSDT/price"
# Получить текущую цену ETH
curl "https://api.intots.com/api/v1/assets/ETHUSDT/price"
const res = await fetch('/api/v1/assets/BTCUSDT/price');
const data = await res.json();
console.log(`BTC: $${(data.price / 100).toFixed(2)}`);
// BTC: $87345.21
Курс обмена валют
Получение текущего курса обмена между двумя валютами.
GET /api/v1/currency/rate
Параметры запроса
| Параметр | Тип | Описание |
|---|---|---|
from | string | Обязательно. Код исходной валюты (например, USD). |
to | string | Обязательно. Код целевой валюты (например, RUB). |
Ответ
{
"from": "USD",
"to": "RUB",
"rate": 9250
}
| Поле | Тип | Описание |
|---|---|---|
from | string | Код исходной валюты. |
to | string | Код целевой валюты. |
rate | integer | Курс обмена в копейках. Разделите на 100 для получения десятичного значения. |
Пример
# Получить курс USD к RUB
curl "https://api.intots.com/api/v1/currency/rate?from=USD&to=RUB"
const res = await fetch('/api/v1/currency/rate?from=USD&to=RUB');
const data = await res.json();
const rate = data.rate / 100;
console.log(`1 USD = ${rate.toFixed(2)} RUB`);
// 1 USD = 92.50 RUB
Как используются цены
Криптовалютные циклические события
Криптовалютные циклические события -- это прогнозные рынки, привязанные к краткосрочным ценовым движениям активов, таких как BTC, ETH и SOL. Эти события используют эндпоинты цен активов для:
- Установки начальных и целевых цен при создании события.
- Определения исхода при разрешении (достиг ли актив целевой цены?).
- Отображения текущей справочной цены рядом с прогнозным рынком.
Отображение и конвертация
Эндпоинт курсов валют используется по всей платформе для:
- Пок аза эквивалентных значений в локальной валюте пользователя.
- Обеспечения работы P2P-обмена (конвертация RUB/USDT).
- Предоставления справочных курсов для потоков пополнения и вывода средств.
Альтернативы реального времени
REST-эндпоинты возвращают кэшированные цены, подходящие для большинства целей отображения. Если вам нужны потоковые обновления в реальном времени, используйте вместо этого WebSocket-ленты:
| Данные | REST-эндпоинт | WebSocket-эндпоинт |
|---|---|---|
| Цена криптоактива | GET /api/v1/assets/{symbol}/price | /api/v1/ws/assets/{symbol}/price |
WebSocket-лента доставляет обновления сразу при поступлении новых цен от Bybit, тогда как REST-эндпоинт отражает последнее кэшированное значение.
С оветы
- Все цены в копейках. Разделите на 100 для отображения в десятичном виде (например,
8734521=$87,345.21). - Курсы обмена тоже в копейках. Курс
9250означает 92.50 единиц целевой валюты за единицу исходной. - Кэшируйте ответы на стороне клиента на несколько секунд, чтобы избежать ненужных запросов. Базовые данные обновляются с фиксированным интервалом на сервере.
- Используйте WebSocket для живых тикеров. REST-эндпоинт лучше всего подходит для начальной загрузки страницы; переключайтесь на WebSocket для непрерывных обновлений.