initialize, handle_data, context, data, order_target_percent. Большая часть движка с тех пор переписана: в слое данных Polars вместо pandas, asyncio на всех уровнях, Python 3.12+.
Платформа ziplime.finam.ru запускает тот же движок в песочнице с более узким контрактом: без импортов, только
initialize и handle_data, без класса конфигурации. В этом разделе описан открытый движок. На платформе следуйте правилам, которые дают её собственный редактор и MCP-сервер.Строгий по умолчанию
Движок построен так, чтобы ловить ошибки, которые допускает стратегия, написанная вручную или ИИ. Упрощения, которые приукрашивают результат бэктеста, нужно включать явно:- Исполнение на следующем баре. В CLI и локальном MCP-сервере заявка исполняется на баре после принятия решения. Исполнение на том же баре включается отдельным флагом.
- Проверка векторных сигналов на заглядывание в будущее.
compute_signalsпересчитывается на усечённой истории, и сигнал, который использовал будущие данные, останавливает запуск до первой заявки. - Данные на момент публикации. Наборы данных вроде фундаментальных показателей или сделок инсайдеров отбираются по дате, когда строка стала публичной, а не по периоду, который она описывает.
- Расходы применяются или останавливают запуск, но никогда не пропадают молча. Модель расходов, которую нельзя применить, останавливает запуск с указанием её имени.
- Ни один инструмент не выставляет заявки сам. У локального MCP-сервера нет инструмента для заявок.
Что входит в движок
Денежные значения для рублёвых инструментов — например, акций Мосбиржи SBER, GAZP и LKOH — рассчитываются в рублях.
Что дальше
Установка и запуск
pip install ziplime zipfinam, загрузка данных, первый бэктест.Справочник языка
API, которым вы пользуетесь внутри файла алгоритма.
Работа с ИИ
Подключение Claude Code, Codex или Cursor через MCP.
Что нового
Изменения в 2.10.3 и 2.11.0 и порядок обновления.

