Блог им. karat39

Плисоводы в алго

Привет. )

Время идет вперед и тема плис уже не так секретна, как еще лет 5 назад, так может выйдем из сумрака? И позадаем друг другу вопросы) Знаю, на смартлабе вы есть. А чтобы просто так не висеть, напишу маленький теоретический очерк.

Плисоводом задумываются быть, когда тик_ту_трейд вашего алго надо уводить ниже 1000 наносек. Если это предложение не совсем ясно, не уверен, что дальше будет лучше.

В плисоводы заходят с разных дорог: либо как то сам, карабкаясь через овраги и болота, либо вы обладаете капиталом/инвестором и готовы инвестировать в развитие, миллионов так 10 )

В плисоводы в алго заходить крайне интересно, но жутко тяжело, муторно и к сожалению, с совершенно неожидаемым финалом. Это как прокатиться на картинге и решить пойти заниматься формулой 1 ) Не факт, что у вас получится.

С каких плис начинают? Да и их то в мире всего две: Xilinx и Intel (Altera) с разными модельными рядами. Так сложиловсь в стране, что все наши спецы в стране изучают Xilinx, видимо потому что наша оборонка сидит на них. Но если вы были внимательны и разглядывали в фото СВО, то в наших ракетах стоит якобы Altera (Intel) )). На самом деле с какой плис начать, не особо важно. Даю зуб, что пройдет 2-3 года и только тогда вы прийдете к правильному решению, исходя из своих задач. Поэтому, возможно, первой вашей плис в алго будет Altera, лишь только потому, что их полно на ебее. Американцы обновляют их партиями и скидывают их на подобных маркетах. 

Что еще сказать? ) Приходите в тему, поболаем )

★2
34 комментария
Занимался ПЛИС в прошлые годы, до трейдинга.
Intel (Alter) или AMD (Xilinx) большой разницы нет, они друг от друга почти не отстают. Нужно подбирать конкретную модель под своё устройство.
Так как речь про high-end, то это чипы топовых серий.
Можно готовую карточку купить с распаянным чипом (Development kit) для тестов. Свою карту делать, это сложно, уметь нужно. Я умел )))
Начинать нужно с изучения Modelsim и языка Verilog.
В военке ставят и то и другое. Я альтеру ставил, в соседнем кабинете хилых ставили.
Раньше чипы коммерческого диапазона не считались пригодными для военки и их разрешали возить. Как сейчас — не знаю, отстал в этом вопросе на пару лет.
avatar
Jame Bonds, ну да, под плисиной я имел ввиду какую нить готовую карту )

и разница все таки есть в марках. Но опять же, как я написал, все зависит от вашей задачи. Если нужно выжать лишние 10-15 наносек от страты, то надо прям в подробностях знать архитектуры разных чипов и не всегда так получается, что самый дорогой — самый лучший.

ну а так да, если задача просто уйти ниже 1000 наносек, то без разницы в целом на чем строить. Наверное преимещуственно уже строить на том, на чем уже есть кучу готового софта под задачи алго )
avatar
Андрей К, на ПЛИС «готовый софт» это условно. Есть «ядра» (core), например для 10Gb Ethernet, чтобы самому его не делать. Да и тот возможно придется переделывать под свой проект.
Что касается трейдинга, то вряд ли такое есть «готовое», без услуг «по настройке под проект».
avatar
Jame Bonds, готовое ядро не подойдёт, задержки большие. Там не то что ядро надо писать самому, там надо pcs трансивера самому писать — 64/66, FIFO. Та которая аппаратная внутри кристалла — она тоже с большими задержками
avatar
Union_Jack, вижу прям подкованного человека )
avatar
Андрей К, да, были задачки, правда не для трейдинга это делал. А вы тоже в области FPGA/ASIC занимаетесь?
avatar
Union_Jack, ну раз топики создаю, значит отношение какое то имею )
avatar
Андрей К, сами код пишите, или тем кто пишет зарплату платите?)
avatar
Union_Jack, так исторически сложилось, что пришлось учиться с нуля самому. Лет за 5 уже и pcs одной левой можно научиться писать )
avatar
под плисиной я имел ввиду какую нить готовую карту

Андрей К, приветствую! Готовые это типа таких? И в какие железки вставляются сами платы? Сам далёк от hft, но все эти штукенции выглядят презабавно 

avatar
FatCat, так вон же pcie разъем. Туда и вставляется. в какой нибудь сервак 1U. А в эти два левых гнезда — кабель с котировками )) Видимо слева чуть выше разъем для программирования самой плисины. У альтер свой программатор вставляется
avatar
как там на ethercat картах от больших led экранов еще не трейдят ?)
я серьезно, там относительно жирные fpga стоят и стоят копейки, в наколенных чпу станках это последний писк моды)
avatar
My Shadow, читал историю, как у америкосов трейдил сам свитч на бирже ) такая вот штука бывает )) это когда в свитчи Intel Arria ставили
avatar
Андрей К, еще есть дешевые Microsoft FPGA, по 15 баксов, и Azure датацентров. Видел статьи как их реверсили, но пригодны ли они для трейдинга непонятно. Но там 2x 40G вроде.
avatar
Макс, ага, я их видел и посчитал, что они пригодны. Знаю, что коллеги примерно такое делали.
avatar
А смысл если задержки протокола и пинг в 1000 раз больше и еще время выставления заявок надо учесть
avatar
ves2010, ну оно же это время у всех одинаково при размещении в коло.

а биржа еще подстегивает, развивает протоколы и такие условия, в которых кто первей прислал, того тапки точно. Срочка таким похвастать не может пока.
avatar
Андрей К, нет… брокер видит поток заявок еще до выставления… т.е у крупных брокеров есть чит
avatar
ves2010, вы не очень в теме. Там бинарный протокол и прямой кросс к биржевому серверу прямо от вашего fpga.
Брокер ваши заявки/сделки получит с некоторой задержкой от биржи.
avatar
Дедал, пока брок получит, уже можно будет открыться и закрыться )))
avatar
Где ж вы были 15 лет назад) а сейчас уже неинтересно.
avatar
robomakerr, 15 лет назад примерно, я был мидл по c++… какие фпга )
avatar
Мы до FPGA не доросли.
Тиктутрейд 50 мкс персентиль 90.
Есть надежда уйти куда-то быстрее 10мкс, но это максимум.

С учетом особенностей комиссии московской биржи капитал стратегии на порядок важнее скорости.

Так что скорости вашей, я, конечно, завидую и приходится торговать по умному, но крутимся без этого...
Тем более рынок сейчас дикий и скорость адаптации алгоритмов часто важнее самой их скорости…
avatar
Дедал, уйти под 10мксек — это банально поставить сетевуху solarflare/mellanox и перейти на c++ не напрягаясь. На такой базе можно выжимать к двум ближе.
avatar
Андрей К, конечно, но дальше идет архитектура по ((( если все универсально и гибко, да еще между процессами, то набегает 50.

Да, у нас solarflare с байпасом ядра.
avatar
Дедал, Там одно время tsc запрашивается раз 10 на каждый тик — уже 200 нс))
avatar
++++

Небольшой брокер.
Есть ресурсы и желание, если у вас есть опыт разработки FPGA, вы способны адекватно оценить свои затраты для небольшого алгоритма + simba + twime на Мос бирже.
То можно встретиться и обсудить.
С нас ресурсы (на разработку и торговлю), %% от результата.
avatar
Дедал, это алгоритмы типа когда стоит уже наша заявка в стакане, цена подходит и задача первым купить обьем в спреде? Сколько в секунду примерно в среднем сделок?
avatar
Дедал, спасибо.
мне кажется, что у меня жизнь расписана еще лет на 5 вперед. 
но вы спрашивайте если что ) можно в рамках этой темы

кстати в этом деле главное очень верно оценить свои ресурсы, практически все встречают непреодолимые сюрпризы. Так что я бы ресурсами так сильно не козырял )
avatar
Интересно, а какие карты есть недорогие для обучения (Китай с Али?) Платный ли софт (студия)? Какой ресурс у FPGA, 1000 программирований?
avatar
Макс, на али, чисто для обучения платы любые, собранные на Altera (Intel) Cyclone4. Они прям добротного качества и присылаются с примерами. Я в свое время покупал за 1800р, ну сейчас может 3000р. На них можно понять хоть какие то азы, поднять сеть на 100мбит.

Если захочет чуть больше, то купить на Cyclone5, ее можно будет воткнуть даже в PCIE слот.

Если потом захочется поучиться для трейдинга, то другого класса платы. На Altera Stratix V. Их вываливают на ебее пачками, баксов за 250-400.

Софт платный, но как бы торрент ;)

Если бы у FPGA был ресурс 1000, то это бы был атас. Я бы их убил дней за 100 тестов ) Но возможно вы говорите про ресурс флешки, на которую идет запись прошивки. Возможно. Но ее можно не использовать. У меня кстати флешка с ебея действительно умирала, перепаивал.
avatar
Андрей К, спасибо большое!!!
Типа таких: www.ebay.com/itm/115813230099?

Кстати концептуальный вопрос от нуба: а на FPGA уже есть аппаратные блоки — типа ALU, криптография, работа с NAND/flash и т.д? То есть насколько глубоко нужно погружаться в схемотехнику и аппаратные нюансы? Выше уже затрагивали эту тему, но хочется узнать больше ))
avatar
Макс, да, типа этих. Эта карта многое позволит для начала

сейчас opensource есть много чего готового.  Но на специфичное вряд ли. Например криптография по алгоритмам фсб, вряд ли найдете. Такие алго как кузнечик например.

погружаться все таки придется. я погружался не менее года в ежедневном режиме 
avatar
Андрей К, благодарю!
avatar

теги блога Андрей К

....все тэги



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