Блог им. Replikant_mih

Мож у кого есть код на Питоне как из формата "Si" получить формат "SiM2" для актуального контракта?

Привет. 

Или там просто? По идее там 4 диапазона дат (без года), смотря куда попали — такая и буква, цифра от года. Или там нюансов много?

 

Не обязательно Питон, можно любой другой или просто схема, алгоритм.

Si — пример. А так желательно для всех фьючей. Я так понимания, там есть только с экспирацией раз в месяц и раз в 3, так что это, видимо, 2 ветки и список фьючей с разбиением по веткам.

    630 | ★2
    19 комментариев
    Качайте не si а каждый фьюч отдельно и склеивайте сами. Это проще и надежней. Особенно на питоне. 
    avatar
    SergeyJu, Да мне имя текущего актуального. Дальше за скобками уже имя как-то задействуется.
    avatar
    У меня есть функции на MQL, которые делают символы в формате XX-YY.ZZ, то есть для Открытия. Ничего сложного там нет, обычная работа с переменной String.
    Дмитрий Овчинников, черт, я вначале  даже не понял, что вопрос всего лишь об именах. Тем более, что «актуальны» сразу несколько контрактов и, если по уму, то переход с контракта на контракт тоже над кодировать в алго. 
    avatar
    SergeyJu, Ну да, под «актуальным» имею в виду «текущий», ну который самый ликвидный).
    avatar
    Replikant_mih, ну так если речь идет о ликвидности — используйте дневные обороты. 
    avatar
    SergeyJu, Ну кстати да, простой вариант, сгенерить все возможные варианты, в пределах текущего года, и видимо, пары соседних и обороты подгрузить и сравнить, действительно.
    avatar
    Дмитрий Овчинников, Да со string-то всё понятно, хочется автоматически получать имя актуального контракта. Подаешь в функцию «Si» на выход выдает имя актуального контракта, например: «SiM2». Откуда в этом имени брать часть «Si» и часть «2» понятно, а буква — там надо на срок жизни период жизни и т.д. смотреть — посложнее.
    avatar
    Replikant_mih, 
    у меня задачи этих функций немного иные, но для вашей задачи надо просто перебрать несколько контрактов, получить инфо по дате экспирации и выбрать тот, у которого она ближе всего, но не сегодня/завтра ;)

    Как вариант.

    Я вот так получаю последний день контракта.


    Дальше дело техники. Перебрать 4 контракта и высчитать действующий. А подгонять по дате код наверное можно все таки нарваться на смещение дат, но это не точно

    avatar
    Андрей К, Спасибо. Есть подозрение, что пока проще руками)).
    avatar
    Андрей К, а что это за платформа или как коннектиться? Я кроме сокетов и т.д. ничего не знаю
    Алик Нурилович, это питон с установленным apimoex. 
    wlm1ke.github.io/apimoex/build/html/getting_started.html

    Наша биржа распротраняет данные через сервис iss (moex iss). apimoex умеет подрубаться и качать от туда.
    avatar
    На сайте биржи есть список тикеров для конкретного фьюча с датой запуска и датой экспиры. Ближайший — это тот (из торгующихся) где дата экспиры ближе всего.

    «По идее там 4 диапазона дат (без года), смотря куда попали — такая и буква, цифра от года. Или там нюансов много?»

    Нет, даты гуляют. Для ближайшего — вариант АндреяК или календарь парсить, для склейки истории — только календарь парсить.
    avatar
    quant_trader, Понял, спасибо. В какой-то момент, бывает, понимаешь, что профит от задачи не окупит гемор при её реализации)).
    avatar
    Replikant_mih, могу скинуть код парсера календаря в текстовый файл :)
    avatar
    Календарь

    код фьюча moex_fut_id
    {'BR': '114', 'Eu': '116', 'GK': '395', 'GM': '24', 'GZ': '2', 'LK': '4', 'MX': '241', 'RI': '31', 'Si': '8', 'SR': '94'}

    date_str=datetime.date.today().strftime("%Y%m%d")
    futures_list_url='https://www.moex.com/ru/derivatives/st-selectcontract.aspx?r='+moex_fut_id+'&day1=20010101&day2='+date_str

    дальше качаем, парсим итд

    avatar
    quant_trader, спасибо.
    avatar

    Читайте на SMART-LAB:
    Фото
    🎄 СЕГОДНЯ БОЛЬШОЙ НОВОГОДНИЙ ЭФИР + РОЗЫГРЫШ АЙФОНА 🎄
    Мы подготовили максимально полезный и важный эфир, чтобы вы завершили год мощно и уверенно вошли в 2026-й. Тема финальной встречи: «Как раскачать...
    Фото
    📈 Синара: целевая цена акций МГКЛ на конец 2026 года — 5,2 рубля
    Ниже приводим краткое содержание мнения аналитиков. Инвестиционный банк Синара обновил прогноз по МГКЛ: оценочная капитализация ПАО...
    Фото
    🥳 В десяточку! Два выпуска на сумму более 10 млрд рублей
    ГК «А101» завершила сбор книги заявок на два выпуска облигаций общим объемом 10,5 млрд рублей. Начало торгов состоится 26 декабря....
    Фото
    Какая доходность среди облигаций с наивысшим рейтингом надежности и сроком погашения от 3 лет?

    теги блога Replikant_mih

    ....все тэги



    UPDONW
    Новый дизайн