Kalshi
Рынки прогнозов Kalshi: котировки, позиции и заявки в процессах Pailot
Kalshi — регулируемая биржа рынков прогнозов (ставки на исход будущих событий). Блок читает рынки и события, смотрит баланс и позиции, ставит и снимает заявки.
С Kalshi в Pailot вы можете:
- Фильтровать рынки и события, читать стакан (orderbook) и свечи OHLC
- Смотреть баланс, позиции, заявки, сделки и исполнения (fills)
- Создавать, менять и отменять заявки
- Проверять, открыта ли биржа
Для торговых операций нужны ID ключа API (Application Programming Interface — программный интерфейс) и закрытый ключ RSA в формате PEM.
Блок ставят на холст как отдельный шаг или прикрепляют к агенту. Ключи — в переменных окружения рабочего пространства.
Список рынков прогнозов с фильтрами.
| Параметр | Тип | Обязательный | Описание |
|---|
status | string | Нет | Статус: unopened, open, closed, settled |
seriesTicker | string | Нет | Тикер серии |
eventTicker | string | Нет | Тикер события |
limit | string | Нет | Число результатов (1–1000, по умолчанию 100) |
cursor | string | Нет | Курсор следующей страницы |
| Параметр | Тип | Описание |
|---|
markets | array | Объекты рынков |
paging | object | Курсор для следующей порции результатов |
Карточка рынка по тикеру.
| Параметр | Тип | Обязательный | Описание |
|---|
ticker | string | Да | Тикер рынка (например KXBTC-24DEC31) |
| Параметр | Тип | Описание |
|---|
market | object | Рынок с деталями |
Список событий с фильтрами.
| Параметр | Тип | Обязательный | Описание |
|---|
status | string | Нет | Статус: open, closed, settled |
seriesTicker | string | Нет | Тикер серии |
withNestedMarkets | string | Нет | Включить вложенные рынки (true/false) |
limit | string | Нет | Число результатов (1–200, по умолчанию 200) |
cursor | string | Нет | Курсор следующей страницы |
| Параметр | Тип | Описание |
|---|
events | array | Объекты событий |
paging | object | Курсор для следующей порции результатов |
Карточка события по тикеру.
| Параметр | Тип | Обязательный | Описание |
|---|
eventTicker | string | Да | Тикер события |
withNestedMarkets | string | Нет | Включить вложенные рынки (true/false) |
| Параметр | Тип | Описание |
|---|
event | object | Событие с деталями |
Баланс счёта и стоимость портфеля.
| Параметр | Тип | Обязательный | Описание |
|---|
keyId | string | Да | ID ключа API Kalshi |
privateKey | string | Да | Закрытый ключ RSA (формат PEM) |
| Параметр | Тип | Описание |
|---|
balance | number | Баланс счёта в центах |
portfolioValue | number | Стоимость портфеля в центах |
Открытые позиции.
| Параметр | Тип | Обязательный | Описание |
|---|
keyId | string | Да | ID ключа API Kalshi |
privateKey | string | Да | Закрытый ключ RSA (формат PEM) |
ticker | string | Нет | Фильтр по тикеру рынка |
eventTicker | string | Нет | Фильтр по тикеру события (макс. 10 через запятую) |
settlementStatus | string | Нет | Статус расчёта: all, unsettled, settled. По умолчанию unsettled |
limit | string | Нет | Число результатов (1–1000, по умолчанию 100) |
cursor | string | Нет | Курсор следующей страницы |
| Параметр | Тип | Описание |
|---|
positions | array | Объекты позиций |
paging | object | Курсор для следующей порции результатов |
Заявки с фильтрами.
| Параметр | Тип | Обязательный | Описание |
|---|
keyId | string | Да | ID ключа API Kalshi |
privateKey | string | Да | Закрытый ключ RSA (формат PEM) |
ticker | string | Нет | Фильтр по тикеру рынка |
eventTicker | string | Нет | Фильтр по тикеру события (макс. 10 через запятую) |
status | string | Нет | Статус: resting, canceled, executed |
limit | string | Нет | Число результатов (1–200, по умолчанию 100) |
cursor | string | Нет | Курсор следующей страницы |
| Параметр | Тип | Описание |
|---|
orders | array | Объекты заявок |
paging | object | Курсор для следующей порции результатов |
Карточка заявки по ID.
| Параметр | Тип | Обязательный | Описание |
|---|
keyId | string | Да | ID ключа API Kalshi |
privateKey | string | Да | Закрытый ключ RSA (формат PEM) |
orderId | string | Да | ID заявки |
| Параметр | Тип | Описание |
|---|
order | object | Заявка с деталями |
Стакан рынка: заявки yes и no.
| Параметр | Тип | Обязательный | Описание |
|---|
ticker | string | Да | Тикер рынка (например KXBTC-24DEC31) |
| Параметр | Тип | Описание |
|---|
orderbook | object | Стакан: заявки yes/no на покупку и продажу |
Последние сделки по всем рынкам.
| Параметр | Тип | Обязательный | Описание |
|---|
limit | string | Нет | Число результатов (1–1000, по умолчанию 100) |
cursor | string | Нет | Курсор следующей страницы |
| Параметр | Тип | Описание |
|---|
trades | array | Объекты сделок |
paging | object | Курсор для следующей порции результатов |
Свечи OHLC по рынку.
| Параметр | Тип | Обязательный | Описание |
|---|
seriesTicker | string | Да | Тикер серии |
ticker | string | Да | Тикер рынка (например KXBTC-24DEC31) |
startTs | number | Да | Начало периода (Unix, секунды) |
endTs | number | Да | Конец периода (Unix, секунды) |
periodInterval | number | Да | Интервал: 1 (1 мин), 60 (1 час) или 1440 (1 день) |
| Параметр | Тип | Описание |
|---|
candlesticks | array | Свечи OHLC |
Исполнения заявок в портфеле.
| Параметр | Тип | Обязательный | Описание |
|---|
keyId | string | Да | ID ключа API Kalshi |
privateKey | string | Да | Закрытый ключ RSA (формат PEM) |
ticker | string | Нет | Фильтр по тикеру рынка |
orderId | string | Нет | Фильтр по ID заявки |
minTs | number | Нет | Минимальное время (Unix, миллисекунды) |
maxTs | number | Нет | Максимальное время (Unix, миллисекунды) |
limit | string | Нет | Число результатов (1–1000, по умолчанию 100) |
cursor | string | Нет | Курсор следующей страницы |
| Параметр | Тип | Описание |
|---|
fills | array | Исполнения / сделки |
paging | object | Курсор для следующей порции результатов |
Карточка серии рынков по тикеру.
| Параметр | Тип | Обязательный | Описание |
|---|
seriesTicker | string | Да | Тикер серии |
| Параметр | Тип | Описание |
|---|
series | object | Серия с деталями |
Текущий статус биржи Kalshi: торговля и активность площадки.
| Параметр | Тип | Обязательный | Описание |
|---|
| Параметр | Тип | Описание |
|---|
status | object | Статус биржи: флаги trading_active и exchange_active |
Новая заявка на рынке прогнозов Kalshi.
| Параметр | Тип | Обязательный | Описание |
|---|
keyId | string | Да | ID ключа API Kalshi |
privateKey | string | Да | Закрытый ключ RSA (формат PEM) |
ticker | string | Да | Тикер рынка (например KXBTC-24DEC31) |
side | string | Да | Сторона: yes или no |
action | string | Да | Действие: buy или sell |
count | string | Да | Число контрактов (минимум 1) |
type | string | Нет | Тип заявки: limit или market (по умолчанию limit) |
yesPrice | string | Нет | Цена yes в центах (1–99) |
noPrice | string | Нет | Цена no в центах (1–99) |
yesPriceDollars | string | Нет | Цена yes в долларах (например 0.56) |
noPriceDollars | string | Нет | Цена no в долларах (например 0.56) |
clientOrderId | string | Нет | Свой идентификатор заявки |
expirationTs | string | Нет | Срок заявки — Unix timestamp |
timeInForce | string | Нет | Срок действия: fill_or_kill, good_till_canceled, immediate_or_cancel |
buyMaxCost | string | Нет | Максимальная стоимость в центах (включает fill_or_kill) |
postOnly | string | Нет | true — только заявка мейкера |
reduceOnly | string | Нет | true — только уменьшение позиции |
selfTradePreventionType | string | Нет | Защита от самосделки: taker_at_cross или maker |
orderGroupId | string | Нет | ID группы заявок |
| Параметр | Тип | Описание |
|---|
order | object | Созданная заявка |
Отменить заявку на Kalshi.
| Параметр | Тип | Обязательный | Описание |
|---|
keyId | string | Да | ID ключа API Kalshi |
privateKey | string | Да | Закрытый ключ RSA (формат PEM) |
orderId | string | Да | ID заявки |
| Параметр | Тип | Описание |
|---|
order | object | Отменённая заявка |
reducedBy | number | Сколько контрактов снято |
Изменить цену или объём существующей заявки.
| Параметр | Тип | Обязательный | Описание |
|---|
keyId | string | Да | ID ключа API Kalshi |
privateKey | string | Да | Закрытый ключ RSA (формат PEM) |
orderId | string | Да | ID заявки |
ticker | string | Да | Тикер рынка |
side | string | Да | Сторона: yes или no |
action | string | Да | Действие: buy или sell |
clientOrderId | string | Да | Исходный клиентский ID заявки |
updatedClientOrderId | string | Да | Новый клиентский ID после правки |
count | string | Нет | Новое количество |
yesPrice | string | Нет | Новая цена yes в центах (1–99) |
noPrice | string | Нет | Новая цена no в центах (1–99) |
yesPriceDollars | string | Нет | Новая цена yes в долларах (например 0.56) |
noPriceDollars | string | Нет | Новая цена no в долларах (например 0.56) |
| Параметр | Тип | Описание |
|---|
order | object | Изменённая заявка |