Skip to main content
Исполнение в Ziplime скрыто за одним интерфейсом биржи. В бэктесте работает SimulationExchange, а для реальной торговли zipfinam подставляет FinamExchange и запускает тот же файл стратегии. Заявки уходят на ваш счёт в Финаме через Finam Trade API.
Реальная торговля выставляет настоящие заявки. Она запускается из вашего терминала или задания, но никогда не через локальный MCP-сервер — у него намеренно нет инструмента для заявок.

Установка

Учётные данные и счёт

Арена и боевой Trade API работают по одному протоколу, разница только в адресе. Начинайте с Арены и переключайтесь на реальный счёт осознанно.

Запуск

Реальная торговля запускается через run_simulation_iter — тот же движок, что и в бэктесте, но с часами реального времени и биржей Финама:
asset_service и bundle готовятся так же, как для бэктеста: бандл даёт историю для индикаторов на первом тике, а свежие бары приходят от Финама. Полный рабочий скрипт — examples/run_live_finam.py в репозитории zipfinam.

Что делает адаптер

  • Стратегии выделяется капитал, а не весь счёт. С capital_limit вызов order_target_percent(0.5) означает половину бюджета стратегии, а не половину брокерского счёта.
  • Лоты. Объём округляется вниз до целых лотов (GAZP — по 10 бумаг). Если размер лота неизвестен, заявка не отправляется вовсе: наугад ничего не торгуется. Остаток меньше лота не отправляется.
  • Принятая заявка ≠ исполненная. После каждого тика статус заявок запрашивается у брокера через refresh_order_states(), и отклонённая заявка отмечается как ошибка, а не как успех.
  • Котировки, бары и размеры лотов всегда берутся из Trade API. Есть и вариант биржи поверх gRPC — FinamGrpcExchange.

Перед запуском на реальном счёте

  • Проведите бэктест с исполнением на следующем баре и реальной комиссией (equity_commission=PerDollar(...)), а не с нулевой комиссией CLI по умолчанию.
  • Убедитесь, что каждый TICKER@MIC, которым вы торгуете, находится в базе инструментов.
  • Сначала прогоните стратегию на Арене, затем переходите на реальный счёт с небольшим capital_limit.