Блог им. algo2000

Книги по алготрейдингу про торговую инфраструктуру.

Всем привет!
Ищу книги, где бы описали сам процесс создания трейдингового софта, с примерами классов, типа как обрабатывать ордера, как взаимодействовать с потоками котировок… Не важно, какой язык программирования. 
Пока нашел две
Может кто-то еще встречал книжки наподобие этих? Или не книги, а какие-нибудь хорошие туториалы?
Данная публикация является личным мнением автора. Мнение владельца сайта может не совпадать с мнением автора.
527 | ★1
14 комментариев
А смысл от таких книг? У тебя есть вендор, брокер, DMA — они работают по какому-то протоколу — берешь и гуглишь реализацию.
Виталий Зенин, посмотреть хоть на пример более-менее грамотной реализации
avatar
algo2000, а как вообще с программированием дело обстоит?
Виталий Зенин, нормально, но так, что бы посмотреть просто уже чей-то готовый код, без объяснений — немного не комфортно)
avatar
algo2000, https://github.com/PlamenStilyianov/Quant мб что-то подойдет
Смысла нет: у каждой торговой системы свой  API. Для квика свой, у того же IB — другой, у той же плазы — третий и т. д. и т. п.. Каждый раз приходится читать руководство и главное смотреть и разбирать примеры. 
avatar
А. Г., Да нет, это вы говорите про детали, ну там какие поля используются, форматы данных и прочее. Но это мелочи, нюансы. Я так понимаю, вопрос про то, как сделать софт чтобы и поддерживать легко было и расширять и углублять, чтоб если у тебя 10 интеграций с разными брокерами, например, чтоб все они были единообразны и не надо было с корнем из проторговщика вырывать одну и на скотч приматывать другую)). Все это про архитектуру приложения, но типа в срезе конкретной предметной области. 
avatar
Replikant_mih,  не только поля, но и организация обмена разная. Не представляю, как однообразно сделать в том же квике, где три варианта:
— Qlua;
— библиотека TRANS2QUIK.dll под С++;
— текстовые файлы;

и в том же API от IB. 
avatar

А. Г., Ну вот на немного попроще примере могу проиллюстрировать. 

У меня есть базовый класс (на C#, например, этот специальный тип классов называется интерфейс, на питоне этого нет) «Поставщик исторических данных» эта штука содержит один метод «дай мне исторические данные по такому-то тикеру, такой-то TF, с даты по дату», фактически поставщики исторических данных это классы наследники.

 

Так вот, любой мой софт, если этому софту нужны исторические данные, я там завожу объект типа «Поставщик исторических данных» и через этот единственный метод обращаюсь для получения данных, мои любые софтины не заботятся вообще о том, как работает получение исторических данных.

 

А как оно работает? Есть несколько классов наследников от класса «Поставщик исторических данных», например, один из файлов на диске историю берет, другой класс, допустим, из базы, третий — от брокера через его API подтягивает и т.д. Все эти классы обязаны реализовать единообразный метод «Дай мне исторические данные», единообразный в части какие параметры аргументы принимать и что отдавать. Согласитесь, то как эти классы забирают исторические данные — очень отличается.

 

Если вернуться к брокерским API — да, там могут быть принципиально разные схемы, например, где-то идет подписка на данные, где-то ты сам дергаешь метод чтобы получить текущую свежую инфу. Ну будет такая вариативность значит. Понятно, что всегда куча нюансов, ну, надо как-то с этим работать).

avatar
Replikant_mih, ну да, вот именно для этих целей хочется что-нибудь изучить)
avatar
 Мне кажется надо либо читать про общие паттерны разработки и архитектуру и самому натягивать на предметную область, либо пробовать и ошибаться, либо на гите искать похожие проекты и подсматривать интересные моменты.
avatar
Я бы зарегил тестовый доступ и начал сам делать от малого к сложному
avatar
Андрей К, а какие брокеры предоставляют тестовый доступ?
avatar
algo2000, это не к брокерам. Это к самой бирже. У МосБиржи есть тестовый контур. Пишите им письмо с предоставлением доступа к тому или иному сектору рынка, к тому или иному протоколу. Они дают доступ и начинаете работать. На сайте у них гляньте раздел, например вот этот https://www.moex.com/s438

Хотя я почитал ваши комменты. Вы наверное софт хотите более низшего класса. Цепляться к API брокера или его терминалу, тогда вам выше описанное не подойдет.
avatar

Читайте на SMART-LAB:
Фото
Кто не присылает своих клиентов и сотрудников на конференцию смартлаба останется позади индустрии
Наша конфа до сих лучшая, потому что на ней максимально представлены все компании российского рынка . Именно нашу конференцию посещает больше...
Фото
Технология, которая отсекает лишнее
Поток руды, двигающийся к дробильному оборудованию, может содержать посторонние предметы: от твердосплавных кусков металла до крупных фрагментов...
Фото
Объединенный портфель облигаций, акций и денег (15,3% годовых за почти 5 лет)
Раньше писал про Сводный портфель, но правильнее называть его Объединенным. Это совокупность в равных долях 3-х наших публичных портфелей:...
Фото
Длинные ОФЗ: сколько можно заработать за 3 года, если взять текущие доходности около 17%?
Пока с начала текущего года заработать на длинных ОФЗ особо не получается (-0,56% с учетом НКД). Ожидания усиления инфляционных и прочих рисков...

теги блога algo2000

....все тэги



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