context.portfolio, чтобы во время запуска проверять результаты стратегии и позиции. В context.account доступны показатели кредитного плеча, маржи и счёта в целом. Метод context.record(...) записывает пользовательские метрики в итоговую таблицу результатов.
Поля портфеля
context.portfolio — объект Portfolio, который обновляется по ходу симуляции.
Основные поля:
Пример для портфеля в рублях:
Вспомогательные методы позиций
Чтобы получить количество или стоимость позиции по одному инструменту, используйте вспомогательные методы.await context.portfolio.get_asset_positions(asset, exchange_name=None, trading_account_id=None)
Возвращает позиции, соответствующие идентификатору базового инструмента. Метод может объединять разные биржевые листинги одного базового инструмента.
await context.portfolio.get_exchange_asset_positions(asset, exchange_name=None, trading_account_id=None)
Возвращает позиции, которые точно соответствуют SID биржевого инструмента.
exchange_name должно совпадать с именем биржи в конфигурации запуска.
Методы количества и стоимости
exchange_asset, когда важен конкретный листинг. Варианты asset подходят, если разные листинги одного базового инструмента нужно рассматривать вместе.
Поля позиции
Каждый объектPosition содержит:
Поля счёта
context.account содержит показатели счёта и кредитного плеча.
Основные поля:
Пример:
Запись пользовательских метрик
context.record(*args, **kwargs)
Записанные значения добавляются в ежедневную таблицу результатов и доступны в analyze.
Анализ записанных значений
perf формируется после завершения запуска. Точный набор столбцов зависит от набора метрик и имён, переданных в context.record.