EquityPricing; для пользовательских наборов данных нужны собственные загрузчики.
Основной принцип
- Создайте объект
Pipeline. - Подключите его в
initialize. - Получите результат после инициализации — обычно в
before_trading_start. - Используйте результат для выбора инструментов или целевых весов.
Создание пайплайна
Фильтры screen
Параметрscreen определяет, какие инструменты попадут в результат.
AverageDollarVolume отражает средний денежный объём в валюте котировки — как правило, в рублях. Имя класса остаётся неизменным как часть API.
Фильтр также можно задать после создания пайплайна:
Примеры распространённых факторов
Последние значения OHLCV
Скользящая средняя
Доходность
Средний денежный объём
Ранжирование и фильтрация
Факторы поддерживают, в частности, следующие методы:
Пример:
Получение результата пайплайна
Методcontext.pipeline_output(name) доступен после инициализации.
Пользовательские факторы
ИспользуйтеCustomFactor для расчётов, которых нет среди встроенных факторов.
Когда использовать пайплайны
Используйте пайплайны, если:- Нужен ежедневно ранжируемый набор инструментов.
- Один и тот же кросс-секционный фактор рассчитывается для множества инструментов.
- Ресурсоёмкую логику отбора инструментов нужно вынести из
handle_data.
data.current и data.history, если:
- Стратегия торгует небольшим фиксированным набором инструментов.
- Сигнал прост и рассчитывается отдельно для каждого инструмента.
- Кросс-секционное ранжирование не требуется.