Высокочастотный трейдинг (HFT) с использованием FPGA

  • Автор темы Автор темы cfifcfif
  • Дата начала Дата начала

cfifcfif

Элитный участник
Почему же? Вот например простая идея. Если следить за треугольными парами на голом графике, к примеру евра, фунт и еврофунт, то можно заметить, что еврофунт и евра или фунт и еврофунт порой запаздывают с началом движения относительно друг друга. То есть замерла валюта и пошла, с задержкой в пределах секунды пошла родственная валюта. HFT в таких случаях будет работать, потому что задержки идут внутри свечи М1. А программинг микроконтроллеров... Ну тут не совсем программинг доступных микроконтроллеров, насколько я понял статью.

Но вообще конечно с этим лучше развернуться на опционном рынке, а не на форексе...
К энтому и идём господа, форекс энта стажировка.:openselllim:
 

cfifcfif

Элитный участник
Как выглядят 10 миллисекунд высокочастотного трейдинга:D

Эрик Хансэйдер, основатель компании Nanex, занимающейся аналитикой и информационными системами для высокочастотного трейдинга, публикует на YouTube очень любопытные визуализации высокочастотной торговли. Вот, например, 10 миллисекунд торговли акциями корпорации Merck:
Прямоугольники, расположенные по окружности, представляют собой биржи. Летящие между ними треугольники и кружки — изменения котировок и сделки. Нижний прямоугольник (6 часов) — лучшие курсы покупки и продажи среди всех бирж. Визуализация медленнее реального времени примерно в 40 000 раз. Вот так выглядели первые несколько секунд после IPO Facebook (из-за технических проблем начало торгов задержалось, поэтому в начале видео ускоренно промотано около 45 минут):
А вот — пол-секунды торговли акциями Johnson&Johnson:
Вот — недавняя аномалия на фондовом рынке, когда вспышка активности трейдинговых программ произошла на 245 миллисекунд раньше публикации отчета о потребительских настроениях, повлиявшего на цену многих акций:
Такие аномалии могут быть как признаком утечки информации, так и следствием тактики некоторых трейдеров, которые стремятся искусственно «раскачать» рынок перед публикацией важных для котировок новостей. Эта тактика на жаргоне финансистов называется «растревожить осиное гнездо» (Banging the beehive). В феврале этого года похожая аномалия произошла с акциями энергетических компаний — активные торги начались за 400 миллисекунд до публикации отчёта по природному газу.
По словам Эрика Хансэйдера, программа, которая визуализирует высокочастотный трейдинг, была написана специально для того, чтобы наглядно показать чиновникам, регулирующий финансовые рынки, с чем они имеют дело. Впрочем, пишет он, есть большие сомнения, что ему удалось донести до них представление о современных скоростях и о том, насколько важны для рынка технические аспекты работы сетей и биржевых компьютеров.
Неудивительно, ведь скоростная торговля, ставшая возможной после появления электронных бирж, зародилась около 15 лет назад, и первоначально подразумевала заключение сделок в течение нескольких секунд. Сейчас счёт идет на милли- и даже микросекунды. Трейдеры готовы тратить сотни миллионов долларов на прокладку кабелей, сокращающих пинг на 6 миллисекунд. Для моделирования финансовых рынков используются суперкомпьютеры, составлением алгоритмов для торговых роботов заняты лучшие математики и программисты мира, а трейдинговые программы работают на специально созданных для них FPGA, которые гораздо быстрее железа общего назначения. В 2012 году в США высокочастотные трейдеры заключили около половины всех сделок на фондовых рынках.
Вся инфа была взята с сайта http://smart-lab.ru
 

cfifcfif

Элитный участник
У меня к вам вопрос.
хачю тоже замутить
чё математику знаю 2+2х2= 8
в программирование шарю в МОЛ4 тока так индюка переименовываю.
Вот тока думаю кампутер немного под устарел или не?
 

Вложения

  • i (1).jpg
    i (1).jpg
    7,2 КБ · Просмотры: 256

gyfto

Новичок форума
Зря ты с иронией. HFT можно, но уж заведомо не на MT4, даже при наличии ECN, потому что MT4 не поддерживает FIX-протокол (Рош об этом прямо сказал, и этот позор до сих пор на форуме пятёрки висит). Есть HFT-терминалы, навскидку могу назвать кофейный, но я ими не пользовался, и имеют ли они отношение к HFT и сверхкоротким пингам - не знаю... Вообще по идее, HFT это VPS физически недалеко от биржи, биржевое железо, кабели и хороший мат.аппарат. Какой - не знаю, но в народе говорят, что ММК.
Благодарю, что собрал ролики вместе.
 

gyfto

Новичок форума
У меня к вам вопрос.
хачю тоже замутить
чё математику знаю 2+2х2= 8
в программирование шарю в МОЛ4 тока так индюка переименовываю.
Вот тока думаю кампутер немного под устарел или не?

Скорее, как-то так:
bitcoin-fpga-mining-rig.jpg-.jpg
 

cfifcfif

Элитный участник
Ни *** себе :oops:

А можно скайп твой? пару серьёзных вопросов задать
естественно через личку.
 
Последнее редактирование модератором:

liberty

Местный житель
По сути HFT это сверх быстрый скальп заведомо брибыльных коротко временных ситуаций? или просто сверх быстрый скальп? тогда самым главным в HFT является алгоритм-робот?
 

gyfto

Новичок форума
Это в любом случае алготорговля. Если HFT-шник работает лимитниками, то он и создаёт ликвидность, а если рыночными ордерами, то это уже да, скальпинг на, образно говоря, десятимиллисекундном таймфрейме. По поводу заведомо прибыльности... Резонно заметить, что если HFT является заведомо прибыльным, то вряд ли мы здесь услышим ответ. Значит, единственный вариант узнать это - провести исследовательскую работу, реализовать "на бумаге" HFT-алгоритмы и оценить %. Конечно, Эксель для такой задачи может не подойти, скорее всего это R-Studio... Слышал, что на форуме mql4.com энтузиасты переводили документацию к нему, так что на русском языке всё есть. Впрочем, подождите, может ещё кто что ответит...
 
Последнее редактирование:

liberty

Местный житель
в таком случае алгоритм для hft довольно сложный из за учёта множества нюансов скальпируемого инструмента и самого рынка но в то же время принцип довольно простой,интересно продаются ли такие алгоритмы? скорее всего тут вопрос в доступе в эти круга,где трейдеру всё в комплексе дадут и техническую составляющую и робота,ну или добиваться всех аспектов в этом деле самому
 
Последнее редактирование:

gyfto

Новичок форума
liberty, перепишитесь в личке с фондовыми брокерами, присутствующими здесь на форуме, спросите у них их HFT-терминалы (если есть), и если ответ положительный - пусть отпишутся, что в данном случае предоставляют их терминалы, за счёт чего они имеют приставку "HFT", - за счёт скорости выставления ордеров на площадку плюс возможность написания ТС, или это "железная" привязка HFT-версии терминала к ip FPGA на "внутреннем" VPS? Давайте начнём с HFT-терминалов, определимся, потом будем определяться дальше. Вот пример отечественного HFT-терминала: _http://cofite.ru/products/#hft
 

Buldakov

Местный житель
Статейка очень занимательная. А теперь давай посчитаем.

По поводу быстродействия на FPGA.
Одному знакомому товарищу дали задание определить зависимость длинны оптоволоконного кабеля от температуры. По кабелю пускают лазерный луч с частотой порядка 100 мГц. И считают за сколько времени луч пройдет участок оптического кабеля длинной 1 км. Он там тоже использовал FPGA. При времени переключении микросхемы порядка 7 нс. была получена точность определения времени порядка 4 пс. Это примерно как стрелочным секундомером определять время с точностью долей миллисекунды.

Теперь вернемся к статье.Как я помню у Форекс нет определенного местоположения. И вы не можете точно сказать где у вас находится выделенный сервер. Допустим вы получили задержку 1 мкс. За это время свет проходит всего 300 метров. Разве вы сумеете разместить устройство ближе этого? Ну допустим вы это сделали. Как вы думаете сколько логических элементов с их задержками будет на пути сигнала? А добавим сюда время ожидания на запросы. и мы получим те же 200 мС. За это время даже наш процессор кр580вм80а работающий на частоте 2.5 мГц. выполнит несколько сотен тысяч операций типа регистр - регистр. Неужели вам надо больше? Ну да ладно.Возьмем процессор пентиум с частотой 3.8 гГц. Он выполнит 1000000000 операций за это время.
И что мы получили в итоге? за 1 мкс получили ответ и в 200000 раз медленней его передали.
 

gyfto

Новичок форума
Извиняюсь, был неправ по поводу
на, образно говоря, десятимиллисекундном таймфрейме
4742771.png


И подтверждающая цитата с первого поста
Исследования показывают, что HFT трейдеры держат акцию в среднем всего 22 секунды[2].
Хотя, стоит заметить, что это картинка компании Cofite, которая имеет немного другой взгляд на терминологию HFT, чем у той же Nanex. Вот другой скрин, по скорости раунд-трипа:
4749941.png


Но, с другой стороны, будет резонным заметить, а даст ли такой HFT с таким ТФ конкурентное преимущество перед другими ордерами? Мне кажется, что нет, значит Buldakov прав в своей критике.
 
Последнее редактирование:

liberty

Местный житель
Buldakov,,основная задача для hft трейдера это сокращение любых возможных технических задержек с биржей,и это достигается путём коллокации-установки/аренды сервера/vps как можно ближе к бирже и брокеру предоставляющему выход на биржу,все условия исполнения уже зависят от рынка/ликвидности инструмента,как пример можно взять чикагскую CME и местного брокера,которые находяться в одном квартале,установив сервер между ними пинг уже будет составлять микросекунды(до 1 миллисекунды),а время исполнение заявки это вопрос ликвидности,где в плане hft её должно быть предостаточно
 

Buldakov

Местный житель
Ну установили вы сервер vpn как можно ближе к брокеру (например в дальности одного квартала). Допустим эту проблему вы уже решили. Теперь остается главная задача.
Что вы будете программировать в FPGA? (ксати FPGA это тип корпуса микросхемы,от него уже все отказываются как от имеющего достаточно большие задержки. Более быстродействующий корпус BGA)
Или у вас есть уже решение задачи по автоматической системе торговли. И вам осталось только запрограммировать FPGA? Боюсь что нет.
Сколько на данном форуме разных роботов и систем торговли. И компьютеры у многих, я думаю довольно быстродействующие. А результаты не на много улучшились по сравнением с докомпьютерным временем.

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

liberty

Местный житель
Я ничего не полагаю,мы о чём то разном говорим,я про важность скорости связи с биржей,естественно без алгоритма-робота это всё не оправданно,но быстрая связь с биржей с любой торговой стратегией является самым важным
 
Последнее редактирование:

Buldakov

Местный житель
Я говорю на эту же тему. Доход не зависит от скорости связи с биржей. Доход зависит от возможности связаться с биржей в любое время.

Можно по телефону , звоня брокеру со скоростью 1 сделка в минуту получать доход больше, чем совершая сделки со скоростью 1 сделка в 1 mS.

Теперь по поводу FPGA. Если взять чипы Альтера - то они содержат порядка 5000 винтелей на корпус при цене 100 долларов. Если алгоритм сложный - то одной плисины может не хватить. И при этом максимальное быстродействие у них вроде 200 мГц.
Советую присмотреться к аналоговым вычислительным машинам. Они позволяют например умножать два сигнала с погрешностью 0.1 процент и частотой порядка 2000 мГц. Это быстродействие на порядок больше , чем у FPGA/
 
Последнее редактирование:

gyfto

Новичок форума
Buldakov, я тебя не совсем понял. Доход зависит от очерёдности обработки ордеров. Если твой ордер был обработан прежде остальных, он имеет конкурентное преимущество перед остальными в очереди. Далее, FPGA - это VHDL, на мой непрофессиональный взгляд напоминает одновременно чистый си и асм. Значит, на ручнике HFT не организуешь, то есть необходимо и достаточно только FPGA (или BGA) недалеко от биржи с возможностью выхода на него по RDP. Есть фирмы, предлагающие готовые решения (конечно, надо оценивать, что дешевле выйдет, собирать и программить самостоятельно, либо заказывать).
 
Последнее редактирование:

Buldakov

Местный житель
Ну а теперь более конкретно давай и в цифрах.
Если я ошибусь в порядке цифр просьба поправить.

Допустим мы хотим получить задержку от появления котировок на бирже до попадания сигналов на совершение сделки на биржу порядка 10 миллисекунд.
Тогда по "теореме найквиста" мы можем ловить время между сделками порядка 20 мс.
Когда у нас бывает поток сделок порядка 50 в секунду. - Либо очень сильный уровень, либо новости. Такие моменты бывают довольно редки. Если мне не изменяет память не чаще 1 раза в день и по длительности не более 1 минуты. Если мы хотим торговать в это время - то для этого система подходит. Но большинство времени рынок совершает не более 1-2 сделок в секунду.
Ну да ладно. Допустим мы хотим работать на новостях.
Посмотрим пинги оборудования.
1 мс - время от сетевой карточки до карточки брокера. итого прядка 6 мс включая запросы и подтверждения сделок.
2 мс - время запроса самого оборудования на вашей стороне.
2 мс - время запроса на освобождения канала брокера. (он же не только с вами работает)
Итого 10 мс - время передачи данных.
Это время вряд ли вы сумеете сократить.
Осталось 10 мс на программу.
Возьмем к примеру компьютер Intel 486 с частотой 120мГц (такое старье)
На таком старье на LPT порте делал осциллограф с частотой опроса порядка 120 кгц. Максимальная частота LPT порта 1000 кгц. Вам должно хватить и этого для обмена.
Так что попробуйте взять готовую материнскую плату желательно одноядерного процессора. Для низкого требования к быстродействия поставьте какую нибудь стандартную однозадачную операционку и на ассемблере или еще лучше в машинных кодах напишите программу.
Если быстродействия не хватит возьмите плату и напишите для нее свой Bios с указанием вашей программе работать в быстродействующем кеше процессора.

По поводу специалистов по FPGA. В стране вы найдете несколько десятков хороших. Работающих на частотах порядка 20 мгц. И сотни любителей которые могут попробовать без гарантии работы. На максимальных частотах вы найдете всего несколько человек. Кто сможет не только запрограммировать но и обеспечить правильную разводку платы и защиту от помех по питанию. это самый дорогой вариант.
 
Верх