examples/futures, examples/options, examples/bonds и examples/cross_asset репозитория Ziplime.
Справочник Финама в zipfinam сейчас импортирует только акции и фонды — фьючерсы и опционы при загрузке пропускаются. Календарь срочного рынка Мосбиржи (
RTSX, расписание FORTS с вечерней сессией) zipfinam уже регистрирует, но данные по фьючерсам Мосбиржи нужно загружать из собственного источника. Примеры ниже используют американские контракты, для которых данные есть в Yahoo Finance.Фьючерсы
Листинги и контракты
Листинг — то, что вы заявляете и оцениваете. Контракт (FuturesContract) хранит спецификацию — множитель, экспирацию — и доступен через listing.asset.
Ролловер
front_contract — одновременно выбор контракта и ролловер: как только удерживаемый контракт перестаёт проходить проверку roll_before_days, функция возвращает следующую поставку, и вы переходите в неё, заявляя то, что она вернула.
await data.current_contract(cf).
Размер позиции
Размер фьючерсной позиции считается от номинала:цена × множитель × количество.
PerContract плюс биржевые сборы по базовому тикеру.
Опционы
Для оценки и греков нуженziplime[options].
Выбор из доски:
nearest_delta принимает дельту по модулю (0.20 для 20-дельтового пута) и считает дельту по Блэку — Шоулзу с переданной волатильностью. Ближе к закрытию в день экспирации почти у всех контрактов дельта равна 0 или 1, поэтому там выбирайте через strike_offset.
У OptionChain также есть calls, puts, strikes, at_strike, nearest_strike и strike_offset.
- Стратегия 0DTE вызывает
option_chainкаждую сессию: контракты листингуются заново каждый день. option_greeksберёт полеimplied_volatilityконтракта, если оно есть в данных, и вызывает ошибку, если его нет, — вместо того чтобы выдумывать волатильность. В остальных случаях передавайтеvolatility=явно.- Опционы рассчитываются по внутренней стоимости. Комиссия по умолчанию —
PerOptionContract.
Облигации
Купоны зачисляются в денежные средства, амортизация уменьшает номинал, погашение идёт по номиналу. Комиссия по умолчанию —
PerBondTurnover. Учёт амортизации и оферт делает модель удобной для рублёвых облигаций, если их данные есть в вашем источнике.
