⚡️Видео When Nanoseconds Matter: Ultrafast Trading Systems Довольно интересная лекция от David Gross из Optiver о том, какие фишки используются в проектировании комплексных торговых систем: - как лучше представить L3 ордербук в памяти, и как искать в нем. - немного о проектировании и коде SPMC bounded очереди в shared memory. - идея spawn'ить perf прямо из своего процесса. - немного о likely/unlikely/cold секциях в коде. - упомнянул о том, какой выигрыш даёт kernel bypass при работе с сетью. - и...
Один микросек - C++, low latency, concurrency, HFT
Графики
📊 Средний охват постов
📉 ERR % по дням
📋 Публикации по дням
📎 Типы контента
Лучшие публикации
20 из 20Когда перешел в перспективный крипто HFT стартап... (автор: KNADCORE)
Про логирование и как его ускорить Как-то раз я ускорял логгер через io_uring, т.к. скорость логгера не позволяла совмещать активную торговлю и достаточное количество информации для расследования случившихся инцидентов. Поэтому расскажу что понял на эту тему. Простое логирование состоит из 2х частей: форматирование и вывод. Различные throttle'ры, примочки, фильтры, окрашиватели рассматривать не будем. Форматирование: 1) std::stringstream - не стоит, не надо: это медленно. 2) std::snprintf - не с...
В декабре прошлого года я не продлил домен eyeleo.com для моего самого общественно-полезного проекта в жизни. Зашли посмотреть по ссылке? А зачем, домен то не продлён. Где-то году в 2011-м в новогодние каникулы я написал Windows программу, напоминающую делать перерывы, чтобы глаза отдыхали от дисплея. Мне самому такая была нужна, а существующие вариации мне не нравились. EyeLeo была небольшой бесплатной программой, но делающей важное дело, поэтому она быстро стала весьма популярной, и долгое вре...
Наверное, уже все заметили: красный цвет на всех рынках. Свечи вниз, другими словами. Слив. Дамп. Крипта приняла на себя первый удар, т.к. классические фондовые биржи закрыты в выходные. Краткосрочного резкого падения рынка HFT'шники не боятся, они этого ждут: деньги зарабатываются на движениях в любую сторону. Однако, торговая инфра переходит в такое время в режим повышенной нагрузки (опасности): - Повышенный трафик с рынка, выжирается RAM, CPU в сотку, сервисы могут начать не вывозить, очереди...
Что почитать по C++? https://www.saminiir.com/lets-code-tcp-ip-stack-1-ethernet-arp/ - серия статей "Let's code a TCP/IP stack" https://pthorpe92.dev/programming/systems/common-misunderstandings/ - серия статей "Common misunderstandings" по processes, tasks, async I/O. https://eli.thegreenplace.net/2017/concurrent-servers-part-1-introduction/ - базовое "Concurrent servers" про select/epoll. https://accu.org/journals/overload/32/182/teodorescu/ - базовый гайд про атомики "In an atomic world" от a...
Что не так с float'ом и спасет ли double? По каким таким причинам биржи не уважают floating-point numbers? Смотришь в документацию, а они в json'ах цену и количество лотов шлют не number type, а string type. Не {"price":36.12}, а {"price":"36.12"}. Они так делают, если: - практически: в их кодовой без используется какой-нибудь BigDecimal, который так сериализует числа. - теоретически: они не могут гарантировать отсутствие чисел, непредставимых в double типе (например, 9007199254740993.0), даже, ...
Месяц-два назад начал изучать новый язык, чего не делал уже несколько лет. Предыдущим новым языком был Golang аж в 2018-м, но он меня не вштырил, хотя были приятные моменты и откровения. Что за язык то? Вы угадаете его с 2х слов: blazingly fast. Подсказываю: 100% memory safe. Правильно, это Ржавый. Не буду ничего больше писать, а то получу сотни отписок от недовольных коллег по плюсам. Но мне он нравится. Параллельно вникаю в Solana.
Обнаружил, что Алиса теперь использует YandexGPT для ответа на несценарные вопросы. Пока ещё не придумал, как это использовать, но вот вам Алиса, пишущая на плюсах
На работе завал, придётся делегировать. Что стоит почитать по C++? (новые статьи, заметки, новости, блогпосты, видео)