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)
Ответ на: комментарий от Deleted

Полагаю, да. Но выбор лицензии будет позже. Вначале хочу понять где искать нужных энтузиастов.

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

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

observer ★★★
() автор топика

Кстати, сразу вопрос к начальству. maxcom, а можно будет нечто подобное после релиза опубликовать в мини-новость?

observer ★★★
() автор топика

Мои интересы - адаптивные алгоритмы, статистические методы распознавания образов, обработка сигналов, оптимальное и адаптивное управление (правда, пока только в технических системах). Проект нравится. Могу быть полезен?

И ещё вопрос - не страшно ли выкладывать в открытый доступ инструменты и ноу-хау, приносящие деньги из воздуха? Очевидно же, что денег из воздуха все хотят, но на всех их не хватит?

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

Могу быть полезен?

Да, здорово, что заинтересовало.

И ещё вопрос - не страшно ли выкладывать в открытый доступ инструменты и ноу-хау, приносящие деньги из воздуха? Очевидно же, что денег из воздуха все хотят, но на всех их не хватит?

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

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

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

Денег из воздуха не бывает.
Перед тем как что то начинает приносить деньги это что то необходимо настроить проведя кучу аналигической работы.

Очевидно выкладывать заточенную и рабочую в текущий момент систему со всеми данными ТС не собирается.
Речь скорее о инструментарии для аналитики.

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

Да, таким образом я несколько упрощаю посторонним людям заработать деньги, но я только рад этому. Моим алгоритмам это не угрожает. Я не боюсь, что кто-то сожрет всю ликвидность, когда она мне нужна или же кто-то перекосит преенасытит рынок моим алгоритмом, что он перестанет работать. Я не верю что разные люди способны написать идентичный торговый алгоритм. Реально приносящий деньги проект - это минимум 30К строк математики.

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

Очевидно выкладывать заточенную и рабочую в текущий момент систему со всеми данными ТС не собирается. Речь скорее о инструментарии для аналитики.

Совершенно верно.

observer ★★★
() автор топика

Тоже непрочь присоединиться, хотя пока сложно сказать насколько могу помочь. Интересует всё это с, так сказать, научной точки зрения.

aleks13
()

О, лохотронщики из ДЦ начали заманивать лохов иным спробом... Ну-ну.

Да твоя разводящая платформа MT4, дилинговые центры и роботы - нах никому не нужны.

le_legioner ★★
()

Спасибо конечно что скастовал.
Но я действительно отношусь скорее к любителям по данной теме и вряд ли чем то смогу помочь в разработки инструмента для работы.
Т.к у людителя подход к этому всегда другой (всегда есть расчет что деньги будут потеряны).

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

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

Думаю, попробовать можно, а там уже поглядим как пойдет дело. Потеряю только время на подготовку сорцов и документации, а это даже для себя не помешает.

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

Ну а ещё на ЛОРе очень много фанатиков.
Так что тех кто готов совместно писать код код надо скорее искать на профильных форумах. :)

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

Да, черкану на нескольких тематичных ресурсах.

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

Просто, по своему складу ума и специфике мышления мне ближе айтишники, чем трейдеры.

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

Реально приносящий деньги проект - это минимум 30К строк математики.

А каков примерный объем чистого инструментария, без этой математики?

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

Итого проектов-инструментов насчитывается 12. Некоторые совсем крошечные, есть парочку крупных.

observer ★★★
() автор топика

Заливай на github. Для себя разрабатывал такую систему на python+костыли для загребания котировок/выставления заявок.

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

github

Так и планировал. Самый удобный вариант.

observer ★★★
() автор топика

С удовольствием бы помог в таком благородном деле.
К сожалению сам я никогда не торговал на бирже на реальные деньги (только демосчета на форекс и на ртс/ммвб), но с удовольствием бы поучаствовал в подобном проекте как программист. Представление о работе биржи у меня есть, когда-то давно реализовыввал биржевого робота с простейшими алгоритмами.

Связаться со мной можно на мойник.mail.ru

P.S. Придумайте название для своего проекта и заведите тег. Я бы с удовольствием подписался, чтобы ничего не пропустить.

trex6 ★★★★★
()

Мне тоже было бы интересно следить за этим проектом, хотя я с данной темой знаком довольно поверхностно, но желание разобраться есть. Так что, просьба добавить меня в список кастуемых в следующих новостях, т.к. в толксы могу не заглянуть банально :)

Norgat ★★★★★
()

Да вы выкладывайте, выкладывайте. Поглядим

lelf
()

Чем вы отличаетесь от дурвейщика, например?

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

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

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

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

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

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

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

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

Реально приносящий деньги проект - это минимум 30К строк математики.

Ах если бы все так просто было, сколько бы было миллионеров на бирже. Всего-то 30к строк математики :) Тем не менее в выигрыше всего 5% от всего числа игроков :(

stave ★★★★★
()

Я правильно понимаю что это то-то типа QUIK?

На самом деле давно уже хочу копнуть в эту сторону. Товарищ пользуется QUIK, но под wine там не все гладко, что немного приглушает энтузиазм.

Однозначно открывайте, очень интересно!

Про себя. Как говорил, пока к этой теме приглядываюсь, заодно наблюдаю за товарищаем, который так работает уже пару лет, читал пару книг для начинающих. Для себя решил обязательно попробовать, правда со сроками пока не определился. Если буду пробовать, обязательно попробую ваш проект, если попробую, обязательно найду что улучшить (думаю, c С на Java перейти будет несложно).

Держите меня в курсе. E-mail: kroz.nn на гмыле.

Kroz ★★★★★
()

P. S.

Несколько вопросов:
1. Насколько интерфейсы привязаны к площадке?
2. Насколько API документировано и поддерживается? Ну, то есть если что-то не так - есть ли возможность задать куда-то вопрос (куда-то где ответят)? Это к рискам: тут уже не просто кнопочки, тут цена ошибки измеряется в реальных деньгах.

Еще пару рекомендаций/вопросов:
1. Зачем хотите открыть? Если просто поделиться - ок, респект и уважуха. Если хотите чтобы развивало сообщество - здесь просто открыть исходники мало, нужны еще орг. меры.
2. Есть ли четкое видение куда проект двигается? Если продукт уже отличный, может это и не обязательно (просто полировка), но если хочется чего-то большего - вектор развития обязателен.

Kroz ★★★★★
()

Интересно, ждем релиза!

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

Это даже еще интересней :)

Ждем на github, буду рад помочь.

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

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

Взлёт и падение фейсбука на пустом месте тому пример.

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

Взлёт и падение фейсбука на пустом месте тому пример.

Фейсбук изначально выставил акции по завышенным ценам, но хомячки повелись.

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

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

Кратко расскажу о профитах маржинальной торговли:

1. Повышение ликвидности инструментов. Благодаря маржинальной торговле имея в кармане 1К USD можно создать встречную ликвидность в размере превышающем базовую сумму в 10-500 раз.

2. Долгосрочные и среднесрочные спекуляции/инвестиции вносят серьезные вклады в экономику той или иной страны. Именно поэтому конвертируемость валюты это так хорошо и к этому большинство стран стремится. Кстати, рынок справедлив и краткосрочного робота-скальпера (или HFT) построить дико сложно.

3. Спекулятивные операции устанавливают справедливую цену. Защищают инструмент от перекупленных или перепроданных перенасыщений, которые чаще всего неблагоприятны для экономик.

4. Участники маржинальной торговли делают существенный вклад в поддержку всего инструментария финансового рынка. Оплачивая ряд комиссий/налогов, они понижают цену подобного рода операций. Благодаря им появляется все больше банков, брокеров (использующих банки в качестве ликвидности). Узкий спрэд на EUR/USD тому доказательство, а вот это уже необходимо не только спекулянтам и инвесторам.

5. Как вы считаете как будет лучше стране: если я буду работать на кого-то (например аутсорсить), буду получать 1-2К USD или буду вводить заработанные деньги торговлей в размере 10-20К USD и буду их тратить тут? Конечно же второй вариант, он лучше для этой страны ровно в 10 раз.

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

Спасибо, будем работать.

Придумайте название для своего проекта и заведите тег. Я бы с удовольствием подписался, чтобы ничего не пропустить.

Да, так и сделаю ближайшее время в этом топике. Всех скастую.

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

просьба добавить меня в список кастуемых

Хорошо.

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

рынок очень справедлив: он не позволяет большинству зарабатывать

Какая забавная логика у спекулянта.

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

Ах если бы все так просто было, сколько бы было миллионеров на бирже. Всего-то 30к строк математики :) Тем не менее в выигрыше всего 5% от всего числа игроков :(

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

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