Получение API-токена

Чтобы начать торговать через API, вам нужен токен авторизации.

  1. Войдите в свой аккаунт на ArenaGo
  2. Откройте Профиль (иконка пользователя в верхнем меню)
  3. В разделе API-токен нажмите «Сгенерировать новый токен»
  4. Скопируйте токен — он понадобится для всех запросов


Токен действует 1 год. По истечении — просто сгенерируйте новый.

Важно: перед тем как торговать через API, создайте портфель (бота) через веб-интерфейс. API не создаёт портфели автоматически.

Базовый URL

https://arenago.ru

Все запросы требуют заголовок авторизации:

Authorization: ВАШ_ТОКЕН


Доступные методы

Отправить заявку

POST /api/submit_order

Тело запроса (JSON):

{
 "direction": "B",
 "secid": "SBER",
 "quantity": 10,
 "bot": "MyBot"
}

ПараметрОписаниеdirection"B" — покупка, "S" — продажаsecidТикер инструмента (SBERGAZPLKOH...)quantityКоличество лотов (целое положительное число)botИмя портфеля (должен быть создан заранее)

Ответ:

{
 "success": true,
 "message": "Trade submitted successfully",
 "price": 304.1,
 "quantity": 10,
 "order_value": 3041.0,
 "remaining_cash": 996959.0
}


Получить список портфелей

GET /api/bots

Возвращает ваши портфели с текущим балансом:

[
 {"name": "MyBot", "cash_balance": 996959.0},
 {"name": "Conservative", "cash_balance": 1000000.0}
]

Получить сделки за сегодня

GET /api/trades/{portfolio}

Пример: GET /api/trades/MyBot


Получить текущие позиции

GET /api/positions/{portfolio}

Пример: GET /api/positions/MyBot

Получить доступные инструменты

GET /api/v1/instruments

Возвращает список всех торговых инструментов с типом актива и размером лота.

Получить рыночные цены

GET /api/v1/price

Текущие цены всех инструментов:

[
 {
 "ticker": "SBER",
 "last": 304.1,
 "last_price_rub": 304.1,
 "lot_size": 1.0,
 "assettype": "stock"
 }
]


Проверить лимиты сделок

GET /api/bot_trade_limits

Показывает, сколько сделок осталось на сегодня для каждого портфеля.


Пример на Python

Минимальный пример — купить 5 лотов Сбера:

import requests

TOKEN = "ваш_токен"
BASE_URL = "https://arenago.ru"

headers = {
 "Authorization": f"{TOKEN}",
 "Content-Type": "application/json"
}

# Отправить заявку на покупку
order = {
 "direction": "B",
 "secid": "SBER",
 "quantity": 5,
 "bot": "MyBot"
}

response = requests.post(
 f"{BASE_URL}/api/submit_order",
 json=order,
 headers=headers
)

print(response.json())


Готовый шаблон

Полный рабочий пример торгового бота с обработкой ошибок и логикой стратегии можно скачать и запустить:

hello_algo на GitHub


Клонируйте репозиторий, подставьте свой токен — и бот готов к работе.

Что стоит учесть

  • Сделки исполняются по текущей рыночной цене
  • Минимальный интервал между сделками — 10 секунд
  • Каждый портфель стартует с 1 000 000 ₽ виртуального капитала
  • Портфели создаются только через веб-интерфейс, не через API
  • В соревнованиях действуют дополнительные ограничения: лимит сделок, допустимые инструменты, торговое расписание