LINUX.ORG.RU
ФорумTalks

Открываю исходники платформы разработки торговых алгоритмов

 , , ,


29

18

День добрый сообществу.

Я занимаюсь автоматизацией торговли и аналитикой финансового рынка (роботостроительство/алготрейдинг) и планирую открыть часть своего наработанного инструментария для совместной разработки и обмена опытом в технических вопросах. Больше всего меня интересует имеются ли подобные специалисты на ЛОРе, интересует ли кого-либо подобное сотрудничество.

Вначале немного расскажу о специфике проектов. Для специалиста в данной сфере не секрет, что большинство расширяемых платформ являются очень неудобными для гибкой и экзотической разработки торговых систем. Действительно удобные платформы привязаны к конкретному брокеру (и к его котировкам) или являются платными и закрытыми (чаще всего все вместе). MT4 со своим MQL адаптирован на классический тех. анализ, имеет во флаконе ущербную систему генетических алгоритмов для оптимизации торговых систем и вообще всячески поддерживает жульничества со стороны дилинговых центров (те, кто видел мастер-пакет MT4, поняли о чем я).

Поэтому для себя я создал цепочку проектов для разработки, тестирования, оптимизации и использования торговых систем. В данный момент проект берет котировки у швейцарского банка и торговой площадки Dukascopy. Качество котировок изумительное у них, скажу я вам. Все честно, открыто и качественно. Далее эти котировки попадают в БД под управлением postgreSQL. Сразу нарезаются на всяческие TF, графики Renko, хранятся в чистом виде (тики), есть поддержка гибридных TF (например S441 = 441 second), а так же прочая экзотика. Те кто серьезно занимается роботостроительством поймут зачем все это. Так же, систему очень легко расширить добавив новые правила формирования данных, например таких как квантовые графики, скоростные графики и прочее.

Основной примочкой системы является гибкое использование разнообразных сущностей классического и продвинутого тех. анализа. Поясню на примере написания простейшего торгового алгорима:

Простейший пример торгового алгоритма - это класс, наследующий все необходимые базовые примочки у родителя пустого торгового алгоритма. Класс имеет инициализационный конструктор, а так же ряд методов аля newTick(double bid, double ask, long time), newBar(Bar previous), newEvent(Event e)... У торгового ядра есть легко расширяемый ряд примочек. Существующие примочки: легкое и гибкое извелечение всяческой информации о исторических ордерах (реальных с торгового сервера, демо-ордеров при тестировании, вирутальных ордеров), поддержка библиотеки тех. анализа TA-LIB, построители графиков, анализаторы отчетов (мат. ожидание, профит-фактор, дисперсия, среднеквадратическое отклонение, процентные соотношения, анализ доходности по теории Винса, Вильямса). Поддержка смешанных и скрещенных алгоритмов, возможность подключение бриджов для разнообразных брокеров, дубликаторов сигналов (для цепочки инвестиционных счетов), подключение систем к гибко-конфигурируемым генетическим алгоритмам с целью оптимизации, выполнение полного перебора и прочий инструментарий. Легкое использование трала или другого функционала (например, перевода в безубыток):

Position p = trader.buy(Instruments.EURUSD, ...);
p.addTrailingStop(Indicators.ParabolicSAR(0.001, ...), ...);

Все это я разрабатывал чисто для себя и добился довольно серьезного уровня понимания специфики, технологий и обеспечил существенный финансовый доход. Однако, со временем я начал ощущать, что варюсь в собственном соку хоть и всячески стараюсь читать книги/статьи... Я ищу партнеров с которыми можно будет обмениваться техническими тонкостями, создать какого-то рода узкое сообщество по интересам, а так же выпиливать удобные инструменты для работы. Развиваться, смотреть что люди делают в мире. Буду рад услышать мнение от профессионалов, любителей и совсем новичков подобного рода деятельности.

База: Java + TA-LIB + postgreSQL. Java была выбрана из-за специфики использования автоматизированных торговых систем на разнообразных ОС, а так же из-за интерфейса API торговой площадки Dukascopy.

Еще имеется ряд дополнительных инстурментариев для экзотического анализа и выполнения специфичеких операции: нейросеть распознавания образов, алгоритмы паттерн-матчинга, системы дублирования торговых операций, генераторы отчетов, генераторы детальной информации о точках входа, специфические тестеры точек, анализаторы фундаментальных событий на базе fuzzy logic, календари экономических событий и прикладной софт, анализаторы качества котировок, анализаторы волатильности, визуализаторы работы нейросети/ГА, утилиты для анализа и визуализации ценового стакана. Все не вспомню сейчас, но многое согласен открыть при условии совместного активного развития проектов.

Подготовку исходников и открытие проекта планирую на конец текущего года. Конечно, при условии позитивного резонанса сообщества.

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

ixrws winddos ZenitharChampion Root-msk ns_ramesses Made_in_China inline X10Dead qrck iBliss Kroz capricorn20 trex6

★★★

Последнее исправление: observer (всего исправлений: 1)

Ответ на: комментарий от crypto5

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

Они обеспечивают возможность «долгосрочным спекулянтам» в любой момент войти на рынок.

Kroz ★★★★★
()
Ответ на: комментарий от crypto5

А есть всякие дейтрейдеры и роботостроители, которые покупают и продают максимум в течении часа

Это не правда) Не путать HFT (High frequecy trading) с простыми торговыми алгоритмами.

observer ★★★
() автор топика
Ответ на: комментарий от Kroz

Они обеспечивают возможность «долгосрочным спекулянтам» в любой момент войти на рынок.

Та нифига они не обеспечивают, для такого обеспечения нужно что бы кто-то сидел и держал бумагу готовую к продаже. А дейтрейдеры к вечеру закрывают свои позиции и скидывают бумагу обычным инвесторам.

crypto5
()
Ответ на: комментарий от observer

Это не правда) Не путать HFT (High frequecy trading) с простыми торговыми алгоритмами.

HFT который делает часовые транзакции - это какой то эстонский HFT. В HFT речь идет о микросекундах вообщето.

crypto5
()
Ответ на: комментарий от crypto5

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

Ты вообще понимаешь зачем выпускаются ценные бумаги? Компании нужна большая сумма денег сейчас под какой-то проект. Ей нужна вся сумма сразу! И у нее нет времени ждать, пока «долгосрочные спекулянты» наберут кворум! А, поверь, на IPO очереди не выстраиваются, это хороший кусок работы - искать инвесторов.

Kroz ★★★★★
()
Последнее исправление: Kroz (всего исправлений: 1)
Ответ на: комментарий от Kroz

Ты вообще понимаешь зачем выпускаются ценные бумаги? Компании нужна большая сумма денег сейчас под какой-то проект. Ей нужна вся сумма сразу! И у нее нет времени ждать, пока «долгосрочные спекулянты» наберут кворум! А, поверь, на IPO очереди не выстраиваются, это хороший кусок работы - искать инвесторов.

Ну да, только это все иррелевантно дейтрейдингу и торговым автоматам. Дейтрейдеры и роботы тут не причем и никак не помогают.

crypto5
()
Ответ на: комментарий от Kroz

держите мою клаву

  • разница между bid и ask, если не ошибаюсь, называют спрэдом, который имеет лишь психологический смысл. Реальные потребности в активе могут не отражаться в стакане (напр., в случае использования мтс);
  • ликвидность может быть определена минимум через функцию от объема пакета, т.к. ликвидность, скажем, 1ой облигации ОГК-2 почти абсолютная, но ликвидность 1млн облигаций ОГК-2 - нулевая;
  • сделки совершаются благодаря разнице субъективных оценок, поэтому методы оценки субъективны (в идеале). Для оценки, в любом случае, будет использоваться ставка дисконта, которая привязана исключительно к индивидуальной функции полезности. Так, миллионер легче идет на риск в 100 тыс. рублей, в отличии от обывателя с общим портфелем в 100 тысяч - это показывает, что не смотря на общие безрисковые ставки, ставку LIBOR, ставку рефинансирования, инвесторов что-то отличает. что? - функция полезности; * никаких «умножений» на коэффициент.
  • если облигации будут дешеветь, то это может быть полезно для эмитента, т.к. он сможет выкупить свои долги до погашения и еще заработать на этом (редкий случай);
    * на самом деле, стоимость облигации в вашем примере уменьшается за счет неравноценности платежей, отнесенных к разным периодам времени. ценность 100 рублей сегодня != ценности 100 рублей десять лет назад
  • риск ликвидности - потенциальная возможность того, что актив может быть не востребован на рынке; * уточняйте авторитетность вашего источника
  • ликвидность - возможность произвести обмен одного актива на другой и обратно (сокращаю) за минимальный срок с минимальными потерями. Т.о. характеризуется временем и величиной потерь, зависит от объема пакета (см. выше)
Otkrick
()
Ответ на: комментарий от crypto5

В любом случае, даже роботизированные скальперы - большая редкость. Чаще всего роботы учитывают диапазоны движений цены (статистическая волатильность, зоны повышения волатильности, статистические уровни перенасыщения, ширина тренда...) и получаются среднесрочные и долгосрочные торговые алгоритмы.

observer ★★★
() автор топика
Ответ на: комментарий от observer

Во всяком случае, с такими роботами я сталкивался по работе, общаясь с коллегами и по наслышкам/статьям/книжкам.

observer ★★★
() автор топика
Ответ на: комментарий от observer

В любом случае, даже роботизированные скальперы - большая редкость. Чаще всего роботы учитывают диапазоны движений цены (статистическая волатильность, зоны повышения волатильности, статистические уровни перенасыщения, ширина тренда...) и получаются среднесрочные и долгосрочные торговые алгоритмы.

Ну это уже не роботы, и часто такую работу вообще делают в экселе специальные люди.

crypto5
()
Ответ на: комментарий от crypto5

Ну это уже не роботы, и часто такую работу вообще делают в экселе специальные люди.

Не согласен. Не удивительно, что основной объем операций на рынке уже пренадлежит роботам. Роботы анализируют тысячи характеристик рынка ежеминутно, довольно быстро и идеально создают хэш-таблицы всевозможных данных, быстро их анализируют, адаптируются и перестраиваются под текущий рынок.

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

observer ★★★
() автор топика
Ответ на: комментарий от shty

Торговля на рынке - игра с отрицательной суммой: оба игрока платят бирже, брокеру, иногда управляющей компании + победитель платит налог. Т.е. при «розыгрыше» 100 рублей, в игре остается уже 95ть. Рынок ЦБ прямым образом позитивно влияет на эмитентов лишь в моменты первичных выпусков (конечно, многие компании держат у себя свои акции, поэтому косвенно получают профит от пузырей).
Для экономики страны иностранный капитал создает угрозу контроля извне (быстрый вывод провоцирует кризис), при этом его приток оживляет экономику.
Существенно повлиять на рынки могут «большие дяди», поэтому у них есть существенное преимущество в этой игре (пример на бумагах ТГК).
Вообще, торговля активами похожа на игру в покер с форой, это и затягивает. Вы же, наверно, не против, что сейчас где-то проводится чемпионат по холдему? Эта игра негативно, лично на вас, не должна влиять. А сложившаяся зависимость положения в экономике с фондовым рынком определена властью, которую мы невыбираем. Здесь нет вины тех, кто купил 10 акций Газпрома и надеется заработать хотя бы на пиво (50 000 частных инвесторов именно с таким портретом)

Otkrick
()
Ответ на: комментарий от observer

Даже алгоритмы анализа волатильности, на самом деле, делают массу анализа, рассматривая всевозможные схемы поведения цены, что требует огромных вычислительных мощностей.

observer ★★★
() автор топика
Ответ на: комментарий от observer

Не согласен. Не удивительно, что основной объем операций на рынке уже пренадлежит роботам. Роботы анализируют тысячи характеристик рынка ежеминутно, довольно быстро и идеально создают хэш-таблицы всевозможных данных, быстро их анализируют, адаптируются и перестраиваются под текущий рынок.

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

НУ а долгосрочные алгоритмы - это сколько дней?

crypto5
()
Ответ на: комментарий от crypto5

извиняюсь, что вклиниваюсь, но какая разница между ликвидностью внутри дня или внутри недели, месяца? Объективная цена у актива может сформироваться на основе достаточно большого объема сделок. «Слабые» компании могут переоцениваться рынком раз в месяц, а фишки - ежеминутно. Средневзвешенная цена может охарактеризовать реакцию участников рынка на решения руководства эмитента, например. Что в этом плохого? Спекулянты платят комиссии организаторам торгов на равных условиях, платят за свои ошибки или зарабатывают на успешных сделках. Кстати, инвесторы, которые держат у себя существенные пакеты бумаг доставляют больше проблем, т.к. могут манипулировать ценами на актив

Otkrick
()
Ответ на: комментарий от Root-msk

А для тех кто в танке, можно по подробней? Я просто не видел серверной части.

Самая забавная тулзовина в мастер-пакете MT4/MT5 - это рисовалка свечек. Суть простая: в режиме онлайн можно «нарисовать» (или задать набором значений) как в какой-то конкретный промежуток времени пойдет цена. В простонародии такие приколы трейдеры называют стопорезами. Люди открывают позиции по тренду, подпираясь короткими стоплоссами или вообще уже попереводили все в безубыток... ну, а дальше все ясно)

observer ★★★
() автор топика
Ответ на: комментарий от Root-msk

А какой волшебный тиковый тестер в некоторых ревизиях MT4... ммм. Допустим есть свечка М1 и роботостроитель для теста выбирает режим генерации тиковых данных из свечек. Так вот МТ4 сгенерирует ему 60 секундных свечек (S1) так, что каждая из них имеет амплитуду почти эквивалентную свече М1.

Результаты потрясные получаются. В тестере ордера по 5-10 пунктов закрываются с профитом в раза 3 чаще нормального.

observer ★★★
() автор топика
Ответ на: комментарий от Otkrick

Спекулянты платят комиссии организаторам торгов на равных условиях, платят за свои ошибки или зарабатывают на успешных сделках

Я так понимаю это неправда. Крупные лавки заключают эксклюзивные соглашения с брокерами и им транзакция обходится значительно дешевле чем скажем обходилась бы мне.

Кстати, инвесторы, которые держат у себя существенные пакеты бумаг доставляют больше проблем, т.к. могут манипулировать ценами на актив

Трейдерам, да, могут доставить проблем.

crypto5
()
Ответ на: комментарий от observer

Самая забавная тулзовина в мастер-пакете MT4/MT5 - это рисовалка свечек. Суть простая: в режиме онлайн можно «нарисовать» (или задать набором значений) как в какой-то конкретный промежуток времени пойдет цена. В простонародии такие приколы трейдеры называют стопорезами. Люди открывают позиции по тренду, подпираясь короткими стоплоссами или вообще уже попереводили все в безубыток... ну, а дальше все ясно)

Я так понял, многие ДЦ вообще кухни и не выводят деньги на рынок. Они осуществляют клиринг в ДЦ. Т.е. брокер вынужден быть противоположной трейдера. И что в ДЦ в СНГ кухни?

Root-msk ★★★★★
()
Ответ на: комментарий от s9gf4ult

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

А не пробовал на FORTS торговать опционами? А вообще не торговал до кризиса, когда можно было купить индекс, вложить в ПИФ и иметь 100% прибыли в год и не париться?

Root-msk ★★★★★
()
Ответ на: комментарий от observer

После второго поста понял что «замечательный» - это сарказм ...

s9gf4ult ★★
()
Ответ на: комментарий от Kroz

«Солидные инвесторы нацеленные на перспективу» - те же спекулянты просто долгосрочные.

это подмена понятий и провокация, не очень умно

shty ★★★★★
()
Ответ на: комментарий от observer

Чаще всего роботы учитывают диапазоны движений цены (статистическая волатильность, зоны повышения волатильности, статистические уровни перенасыщения, ширина тренда...) и получаются среднесрочные и долгосрочные торговые алгоритмы.

насчёт чаще всего это вы батенька погорячились

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

shty ★★★★★
()
Ответ на: комментарий от Otkrick

и я всё равно не понимаю как «Спекулянт» «предоставляет возможность купить, и предоставляет возможность продать», или здесь читать спекулянт = брокер?

shty ★★★★★
()
Ответ на: комментарий от crypto5

Я так понимаю это неправда. Крупные лавки...

вам(условно) ничто не мешает стать крупной лавкой и заключить соглашение с брокером. мы платим брокеру 1000$ фиксировано в месяц и можем совершать практически неограниченное количество сделок. Комиссия биржи платится с каждой сделки. Это доступно каждому

Otkrick
()
Ответ на: комментарий от shty

инвестор тоже человек, и он потенциально получает прибыль от вложений: сначала покупает актив, держит его и продает. разница - его профит. верно?

1. если вы, как инвестор, посмотрите на стакан неликвидной бумаги, то вы увидите, что заработать можно только отыграв спрэд, который очень велик (купили за 80 рублей, а продать можете только за 30 рублей.. это сколько ж держать нужно, чтобы окупилась?)

2. если бумага ликвидна (совершается достаточное количество сделок, в том числе спекулянтами), то спрэд небольшой, бумага становится более привлекательной.

Брокер предоставляет возможность купить/продать за плату, а спекулянты увеличивают ликвидность = сокращают потери при купле/продаже

Otkrick
()
Ответ на: комментарий от Otkrick

инвестор тоже человек, и он потенциально получает прибыль от вложений: сначала покупает актив, держит его и продает. разница - его профит. верно?

это называется рассказывать «как летает дэвид копперфильд»: как он летает? ну вот смотри, он выходит на сцену в такой белой рубашке объёмной, сзади него чёрный фон, становится на сцену, расставляет руки, отталкивается и... летит

shty ★★★★★
()
Ответ на: комментарий от Otkrick

если вы, как инвестор, посмотрите на стакан неликвидной бумаги, то вы увидите, что заработать можно только отыграв спрэд

инвестор делает ставку на долгосрочное развитие предприятия, спекулянт смотрит на свечки и индикаторы, чуешь тонкую разницу? :)

shty ★★★★★
()
Ответ на: комментарий от Otkrick

спекулянты увеличивают ликвидность = сокращают потери при купле/продаже

но важно это, в первую очередь, для таких же спекулянтов :)

shty ★★★★★
()
Ответ на: комментарий от shty

спекулянт смотрит на свечки и индикаторы, чуешь тонкую разницу? :)

что за глупость? не путай спекулянтов и интрадейщиков-спекулянтов. на бирже инвестор=спекулянт.

stave ★★★★★
()
Ответ на: комментарий от stave

не путай спекулянтов и интрадейщиков-спекулянтов

я в сортах спекулянтов не разбираюсь :)

на бирже инвестор=спекулянт

конечно, но не все инвесторы сидят на бирже

shty ★★★★★
()
Ответ на: комментарий от stave

что за глупость?

глупость? ну расскажи каким индикатором можно оценить развитие предприятия IRL (и как это делать в долгосрочной перспективе, в частности)

shty ★★★★★
()
Последнее исправление: shty (всего исправлений: 1)
Ответ на: комментарий от O02eg

ты снова тут

готов уже рассказывать про т.н. «совковую систему», или как обычно вальяжно попукивать будешь? :)

shty ★★★★★
()
Последнее исправление: shty (всего исправлений: 1)
Ответ на: комментарий от shty

ты снова тут

Зато Вы сюда посрать неожиданно и в первый раз зашли. Какая у вас клиническая форма проекции.

O02eg ★★★★★
()
Ответ на: комментарий от shty

глупость? ну расскажи каким индикатором можно оценить развитие предприятия IRL (и как это делать в долгосрочной перспективе, в частности)

а по каким индикаторам люди инвестируют деньги не через биржу? http://www.magnit-info.ru/investors/finance/ например

stave ★★★★★
()
Ответ на: комментарий от O02eg

Зато Вы сюда посрать неожиданно и в первый раз зашли.

Вы мне свою мотивацию с какой целью приписываете?

shty ★★★★★
()
Ответ на: комментарий от stave

а по каким индикаторам люди инвестируют деньги не через биржу?

стоп-стоп-стоп, индикатором я называю Alligator, Ichimoku, MACD, BWMFI, etc.

финансовая отчётность это несколько другое

shty ★★★★★
()
Ответ на: комментарий от shty

Вы мне свою мотивацию с какой целью приписываете?
shty

Сказал человек, активно засирающий тред троллингом про спекулянтов. Действительно, клиническая форма проекции.

O02eg ★★★★★
()
Ответ на: комментарий от O02eg

Сказал человек, активно засирающий тред троллингом про спекулянтов.

я больше года писал торговую платформу и видел как всё это происходит изнутри, так что мне можно, а ты кто такой что здесь свои сопли вешаешь?

shty ★★★★★
()
Ответ на: комментарий от shty

я больше года писал торговую платформу и видел как всё это происходит изнутри

А я Папа Римский-Корсаков, очень приятно.

O02eg ★★★★★
()
Ответ на: комментарий от O02eg

А я Папа Римский-Корсаков,

сказал Щ02уп и жидко обделался, теперь детишки вопрос, почему ему:

очень приятно.

?

shty ★★★★★
()
Ответ на: комментарий от O02eg

Я не понимаю

всё правильно, в дикой природе овцы тоже ничего не понимают

shty ★★★★★
()
Последнее исправление: shty (всего исправлений: 1)
Ответ на: комментарий от shty

стоп-стоп-стоп, индикатором я называю Alligator, Ichimoku, MACD, BWMFI, etc.

ниточки спасения для азартных игроков. мат анализ помогает, но никак не является решающим в продаже/покупке.

stave ★★★★★
()
Ответ на: комментарий от stave

тех. анализ помогает

// поправил :)

но никак не является решающим в продаже/покупке.

таки зачем тогда МТС?

shty ★★★★★
()
Ответ на: комментарий от Otkrick

вам(условно) ничто не мешает стать крупной лавкой и заключить соглашение с брокером. мы платим брокеру 1000$ фиксировано в месяц и можем совершать практически неограниченное количество сделок. Комиссия биржи платится с каждой сделки. Это доступно каждому

Я если честно не понял смысл реплики. На NYSE маржа биржи в районе бакса на 100 акций для меня. HFT чуваки прокручивающие миллиарды в день уже давно обанкротились бы при таких комиссиях, поэтому они договариваются с брокерами и платят доли цента за тоже самое за что я плачу бакс.

crypto5
()
Ответ на: комментарий от shty

инвестор vs спекулянт. Первичные цели у них общие. никогда и ни при каких условиях инвестора не заботит собственно проблемы предприятия; если цена актива растет(по любым причинам), то это ему выгодно ровно как и спекулянту. Инвестор отличается от спекулянта только тем, что приобретает активы при первичном выпуске, поэтому принимает на себя больший риск. Спекулянт работает на вторичке. В иностранной литературе иногда встречается фраза «инвесторы не шортят». Все! «Инвестор работает в долгосрочной перспективе» это устоявшееся, но ни чем не обоснованное утверждение, которое призвано облагородить спекулянтов, которые хоть неделю-другую держат актив до реализации

Otkrick
()
Ответ на: комментарий от crypto5

Ну собери миллиард, прокручивай его в день несколько раз, получишь точно такие же скидки.. это тарифы посредников, что теперь не устраивает? тихий троллинг?

Otkrick
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.