Сергей < o-s-a.net >
Сергей < o-s-a.net > личный блог
10 декабря 2016, 10:28

Os.Engine - платформа для алготрейдинга

OS Engine платформа для алготрейдинга

Несколько лет, команда профессиональных программистов трудилась над созданием универсального МТС билдера, который бы смог удовлетворить потребности самого широкого круга пользователей. От создания неспешных роботов на индикаторах, до сложнейших межбиржевых арбитражеров способных в два клика строить свои индексы. И нам это удалось!

В ноябре 2016 года мы приняли решение сделать проект полностью открытым.


Качаем по ссылке:o-s-a.net/os-engine.html

Коротко о том, что там есть:
1. Мощнейший слой создания роботов, похожий на Велс/Тс Лаб. Который можно освоить в кратчайшие сроки. 


2. Около 30 встроенных роботов готовых к модернизации и торговли. Тренд, КонтрТренд, Арбитраж. 


3. Os.Robot:
a. Индекс Билдер подключенный к роботу. Позволяющий писать арбитражеров в 200 строк.
b. Подключения: Квик, СмартКом, Плаза 2, Interactiv Brokers, Финам(для получения данных)
c. МультиКоннект с одновременным подключением к нескольким источникам.
d. МультиИнструментные стратегии с одновременным доступом из робота к множеству инструментов и индексов. 


4. Os.Tester:
a. Свечи, Тики, Стаканы
b. Портфельное (множество ботов одновременно) тестирование.
c. МультиИнструментная эмуляция торгов. Синхронизация в миллисекундах. 


5. Os.Data:
a. Сохраняет: Свечи, Тики, Срезы стакана настраиваемой глубины
b. Сохраняет Свечи нестандартных ТФ. От 1 сек. 


6. Журнал, рассылка, многоуровневое логирование, скальперский стакан, алекрты и т.д. 


7. Настоящий Open Source 


Трейдерам

Наш проект создан программистами для пользователей, в первую очередь. А это значит что уровень входа в программирование роботов на Os.Engine невероятно низок! 
Мы создали удобный и мощный слой для создания роботов, который можно освоить за пару недель, даже если Вы вообще не программист.
Проект содержит несколько десятков встроенных роботов, которых можно запускать в бой и модернизировать.
Кроме того, сам терминал содержит порой очень нужный для трейдера функционал, такой как возможность привязывать сделки к наклонным каналам или автоматические профит и стоп ордера. 


Программистам

Открытый код. Мы сами начинали с закрытых библиотек и познали боль… Но больше никому не придётся страдать в ожидании обновлений и фиксов. Теперь всё в Ваших руках! 


Мы прекрасно понимаем что большой «текучке» в нашем деле (трейдинге) подвержены не только те кто торгует руками, но и те кто пишет роботов. Поэтому основное наше правило при написании кода: не усложнять. Наш код написан доступно, а все комментарии на русском! 


У нас есть открытый Плаза 2 коннектор, Чарт для прорисовки графика, подключение Финам и многое другое. Теперь это всё доступно для любого алготрейдера! Берите себе в проекты, создавайте новые терминалы и приводы! 


Дерзайте!

106 Комментариев
  • vito333
    10 декабря 2016, 10:29
    Ооооо! еще не смотрел, но вам почет и уважение!

    ps. посмотрел описание (отметил чудесный стиль :)) — аплодирую!

  • Dim
    10 декабря 2016, 10:37
    ОК! Респект! Молодцы! Готовлюсь к сотрудничеству.
    +1000
  • К.О'Тяра
    10 декабря 2016, 10:41
    что за язык? C#?
      • T-800
        10 декабря 2016, 12:16
        Сергей < o-s-a.net >, я не программист, но судя по этому видео http://o-s-a.net/os-engine.html
        чтобы создать робота в os.engine, нужно написать его языком программирования. а это сложнее, чем кубики соединять в тс-лабе.
        зная язык программирования можно писать роботов самостоятельно на Си. 
        так чем os.engine может упростить жизнь трейдеру?
          • T-800
            10 декабря 2016, 12:45
            Сергей < o-s-a.net >, теперь понятно.
            а эти 100 строк писать нужно все равно на С? (((
      • finstrateg
        10 декабря 2016, 19:40
        Сергей < o-s-a.net >, а описание функционала в текстовом виде есть?
  • Самокритичный трейдер
    10 декабря 2016, 10:44
    В MQL5 пишите?
  • Костромов Владимир
    10 декабря 2016, 11:01
    Если бы мог поставить плюс, то поставил бы.
    Отличное начинание.
  • Slepoy
    10 декабря 2016, 11:09

    Коннектор к МТ5 собираетесь пилить? Если вы хотите создать конкурента СтокШарпу, то вы должны быть на шаг впреди. У СтокШарпа как раз такого коннектора нет. И судя по всему, пока не найдётся энтузиаст с соточкой тыщ рублей, он и не появится stocksharp.ru/forum/5401/konnektor-na-mt5/

    • Сергей Гаврилов
      10 декабря 2016, 14:12
      Slepoy, нет.., надо сразу писать коннектор к коннектору к MT5… В смысле, что коннектор к MT — это как к корове седло…
      • Slepoy
        10 декабря 2016, 15:28
        Сергей Гаврилов, ну я бы коровой обозвал как раз Квик. А МТ5 — бешенным жеребёнком. МТ5 — это скорость сравнимая с Плаза 2. И в отличие от Плаза 2, платить за МТ5 не нужно.
        • Сергей Гаврилов
          10 декабря 2016, 15:32
          Slepoy, 1) МТ5 — это скорость сравнимая с Плаза 2 — чушь, 2) зачем к МТ коннектор, когда там свой полноценный язык MQL есть, свой тестер (до которого самописным тестерам как до луны), своя экосистема и прочая, прочая.
          • Slepoy
            10 декабря 2016, 16:53

            Сергей Гаврилов, 1) МТ5 — это скорость сравнимая с Плаза 2 — чушь. Серьёзно? Какие ваши доказательства? Ну кроме голословия. На колокейшене действительно Плазу 2 может обуть лишь Фаст + Твайм. Но при работе из дома: МТ5 Плазе 2 уступит чуток, ввиду прокладки в виде терминала и сервака. Тесты тут уже вкладывали. МТ5 рвал всех, включая ТСлаб на Плаза 2. Хоть ТСлаб и написан на C#, но это не особо важно. Даже если бы он был бы написан на С++, то МТ5 проиграл бы ему совсем чуток и то далеко не факт.

            • Сергей Гаврилов
              10 декабря 2016, 17:07
              Slepoy, 1) МТ5 — это скорость сравнимая с Плаза 2 — чушь. Серьёзно? Какие ваши доказательства?
              Плазы, квики, коннекторы — это не увлечение, а моя работа уже много лет… Это для сведения… Доказательство простое — в силу своей архитектуры, идеологии и механизма доступа клиента к рынку ни один терминал, который предоставляет брокер клиенту не может быть быстрее (или даже сравним) с DMA…
              • Slepoy
                10 декабря 2016, 17:17
                Сергей Гаврилов, я не говорил про быстрее. Под термином «сравним» -я имел ввиду приближается максимально близко, мол можно грубо сравнивать. Естественно метак не обгонит Плазу 2, ибо сам подключён через неё ))). Но Плаза 2 всего лишь протокол, всё равно придётся писать оболочку на каком-либо языке. Метак это фактически та оболочка. Тот же ТСлаб — это тоже простая оболочка. В настоящий момент, метак это бесплатное решение для «домушников», про колокеёшен я вообще молчу, там метак обосрётся при любом раскладе )))
                • Сергей Гаврилов
                  10 декабря 2016, 17:29
                  Slepoy, правильно плаза 2 — это протокол. Но Вам дают API к торговой системе… и в принципе, никаких оболочек можно и не писать… Лабайте сразу робота на языке, который Вы знаете… (конечно из тех, с которым API дружит).

                  • Slepoy
                    10 декабря 2016, 17:40
                    Сергей Гаврилов, в том то и проблемка, что чтобы подружить C# c Метаком надо коннектор. Я не хочу изучать их MQL5, я с горем пополам C# наполовину освоил. А твой начальник — Сухов(я тока что зашёл в твой профиль и узнал, что ты из СтокШарпа) не особо хочет сам пилить халявный коннектор. Вот мне и остаётся лишь стравливать СтокШарп с Os.Engine ))). Всё равно кто-нибудь первым запилит коннектор, а потом и второй подтянется — конкуренция сделает своё дело.
                    • Сергей Гаврилов
                      10 декабря 2016, 18:36
                      Slepoy, так в MT наверно и API нет, чтобы коннектор делать…
                      • Slepoy
                        10 декабря 2016, 19:13
                        Сергей Гаврилов, Смирнов же замутил как-то коннектор к ТайгерТрейд. Тока он сотку за исходники хочет. А Сухов платить не хочет, хочет чтобы заплатил кто-нибудь другой ))). Плюс, Сухов не особо верит в перспективы МТ5. Он верит в серверное API брокеров, т.е. минуя всякие прокладки в виде терминалов, ну как в США и у некоторых наших прямое подключение к: серверу квика, транзака, смарткома. 
                        • Сергей Гаврилов
                          10 декабря 2016, 19:42
                          Slepoy, не понятно о чем вы… Если есть API, то коннектор написать не долго… Если API нет, то возможно собственник MT не хочет давать внешний доступ к своей системе.... ТайгерТрейд — это какой-то очередной самописный терминал? Ну и на кой хрен к нему коннектор…
                          • Slepoy
                            10 декабря 2016, 21:15
                            Сергей Гаврилов, 

                            tigertradesoft.ru/

                            tigertradesoft.ru/threads/nastrojka-podkljuchenija-cherez-metatrader-5.49/

                            Метквотавцы не хотят давать доступ к своим серверам, а вот к доступ к терминалу дают без проблем. Как я понял, решений может быть несколько. Смирнов реализовал одно из них для ТайгерТрейда. Сухов основную проблему видит в том, как передавать сигналы из С# в C++. Получать данные из С++ в С# — типа просто, а вот обратно проблемка. В общем, Смирнов смог проблему решить. Сам СтокШарп парится с нуля не хочет, типа других дел навалом + это стоит денег: программистам же надо ЗП платить. Самое простое — это купить исходники у Смирнова и малость допились под СтокШарп, ну как делали ранее с коннектором ЛУА.

        • INTELLEKTTRADE
          10 декабря 2016, 15:33
          Slepoy, То есть стоит сразу на метак переходить не думая, если поддерживает брокер?
          • Сергей Гаврилов
            10 декабря 2016, 16:42
            INTELLEKTTRADE, тратить время на изучение «локального» MQL5 в качестве первого языка программирования, по моему, глупо…
            • Slepoy
              10 декабря 2016, 16:47
              Сергей Гаврилов, глупо? Да, ну? Ты когда писал коммент «2) зачем к МТ коннектор, когда там свой полноценный язык MQL есть, свой тестер (до которого самописным тестерам как до луны), своя экосистема и прочая, прочая.»  -чем думал? Ты противоерчий в своей логике не видишь? Ты уж определись что лучше: писать на C# + коннектор к МТ5, или изучать потенциально мёртвый язык MQL5(он умрёт как MQL4), или вообще ничего не делать.
              • Сергей Гаврилов
                10 декабря 2016, 16:56
                Slepoy, читай внимательней (ключевое слово «первый») и противоречия исчезнут. Чтобы было более понятно… MQL5 хороший самодостаточный язык… Я бы сказал больше, MQL5 — это продукт мирового уровня… Зачем же его портить доморощенными коннекторами…
                • Slepoy
                  10 декабря 2016, 17:02
                  Сергей Гаврилов, он умрёт. Человек потратит месяцы на его освоение, а потом метаквот запилят МТ6 и сменят язык. Придётся переучиватсья и переписывать всех ботов. Они уже так делали и сделают вновь. В этом и печалька.
                  • Сергей Гаврилов
                    10 декабря 2016, 17:11
                    Slepoy, ну не говорите ерунды… Разработать язык это годы труда и куча денег… Никто не будет ничего менять… И потом почему С (или с++) должен в ближайшее время умереть… Потом MQL5 — это единственная российская профессиональная экосистема… У нее куча сторонников. Число программистов, пишущих роботов на MQL в разы больше числа программистов пишущих на всех других языках вместе взятых…   
                    • Slepoy
                      10 декабря 2016, 17:22
                      Сергей Гаврилов, ты вообще историю метака не знаешь что-ли? Они уже делали язык MQL4 к МТ4. И где он теперь? Ну буквально неделю/две назад тут на смартлабе кто-то жаловался, что метаквот вроде как документацию к MQL4 выпилили с офицального сайта. MQL4 доживает последние деньки, и то лишь из-за форексного МТ4. MQL5 — ждёт таже судьба.
                      • Сергей Гаврилов
                        10 декабря 2016, 17:38
                        Slepoy, я знаю не только историю, но и сам MQL… И понимаю, почему им пришлось создавать MQL5… Если ты поймешь, в чем принципиальная разница между 4 и 5-й, то и выводов таких делать не будешь…
                        • Slepoy
                          10 декабря 2016, 17:46
                          Сергей Гаврилов, а важна ли разница? Тут важно то, что они подставили своих клиентов. Клиентам пришлось всё перепиливать. И не ты, не я, — не знаем, чего они выдумают в будущем. Может ты и будешь прав, и MQL5 будет жить вечно. А если нет? Стоит ли тратить время на его освоение? Стоит ли рисковать? Я не думаю. Лучше уж C# — этот язык точно переживёт любой MQL5.
                          • Сергей Гаврилов
                            10 декабря 2016, 17:53
                            Slepoy, конечно важна… mql5 поддерживает ООП, а значит событийную модель программирования… Без этого они бы не смогли полноценно перейти на фондовый рынок… Засада в том, что ООП сложнее обычного процедурного программирования, поэтому значительную часть любителей MQL отсекли… Тем не менее, я думаю там не дураки сидят, риски посчитали.... 
                        • Александр
                          10 декабря 2016, 18:26
                          Сергей Гаврилов, У них ни одна версия не совместима с предыдущей. Был терминал mt3 и там было превосходное апи для получения данных и торговли, свечки рисовались по бид/аск. В mt4 убрали, свечки сделали по бид. Приходит mt5 и mql5 и он тоже не совместим mql4? Это что издевательство? Зачем нам еще один вариант c++ — причем вариант урезанный?
                          Привязываться к поделию metaquotes, это ограничивать себя в выборе брокеров и инструментов. А нафига это делать?
                          Надоест Ренату пилить свой mql5, придумает какой нибудь mql6 на базе функциональных языков и будете вы в пролете.
                          А metaquotes такое уже проделала 2 раза, проделает и 3-й раз.
          • Slepoy
            10 декабря 2016, 16:59
            INTELLEKTTRADE, а почему бы нет. Там бешеная скорость. Квик нервно курит в сторонке. Все нервно курят в сторонке. Если твои ТС заточены на скорость, то это реально халява. Биржа своим VPN(при работе из дома) для Плазы 2 реально увеличила косты вдвое. Они и так платили нехило, а теперь будут ещё больше, кто-то вдвое, кто-то чуток поменьше воспользовавшись спец сервисами от финама и цериха. 
        • Андрей К
          11 декабря 2016, 21:47
          Slepoy, 
           МТ5 — это скорость сравнимая с Плаза 2.
          наверное надо сделать оговорку, смотря в каких масштабах мыслить =).
    • Александр
      10 декабря 2016, 18:28
      Slepoy, По-моему они просто не хотят сделать его. У них же есть луа коннектор, который обменивается по фиксу с роботом. Такую штуку можно сделать для mt5
      • Slepoy
        10 декабря 2016, 21:22
        Александр, согласен — желанием они не горят ))). По-большому счёту, всё упирается в бабло. Написать коннектор стоит денег и никто вкладываться особо не хочет. Как только появится халявное бабло — коннектор будет запилен. Либо, когда коннектор появитя у конкурентов и им полюбасу надо будет как-то бить эту карту. Я думаю, рано или поздно — коннектор будет.
  • INTELLEKTTRADE
    10 декабря 2016, 11:10
    УРА, ЛЕХА… ура… ждал этого очень.
  • INTELLEKTTRADE
    10 декабря 2016, 11:11
     Если хотите быть лучше — сделайте хороший форум с постоянным ответом на вопросы пользователей.
    • Алексей Ван <o-s-a.net>
      10 декабря 2016, 12:15
      INTELLEKTTRADE, спасибо)) не представляешь какой у нас праздник вчера был. Голова болит блин. С блек джеком...
      форум уже готов: http://o-s-a.net/forum
      Постарались быть как можно ближе к людям.
      я вообще раб сообщества теперь. Буду добавлять то что попросят. У нас есть голосовалка за следующий функционал и предлагать новый можно. Как сообщество скажет, то и будем добавлять. Вот здесь можно ставить плюсики за функционал, если зарегистрироваться: http://o-s-a.net/os-engine.html
      • INTELLEKTTRADE
        10 декабря 2016, 12:21
        Алексей Ван, Меня очень напрягает что ВЛ, что ТСлаб, у них мало подробных гайдов. Да… тслаб есть какие то гайды, но они 100500годовой давности, а версии программы меняются, есть множество деталей которые не освещены в гайдах, как работают отдельные индикаторы? Гайды по отдельным индикаторам, и стратегиям… + форум полумертвый, где в основном только энтузиасты и пользователи тусят. Разработчики обновляют софт и все… поддержка ниже плинтуса.
  • Антон Соколов
    10 декабря 2016, 11:17
    После такого, рядовому трейдеру в алго сегменте делать нечего.
  • AlexShul
    10 декабря 2016, 11:22
    Ага, оченно странно. С чего это у команды профессионалов такой альтруизм? Бесплатные сыры только в мышеловке ©
    There are no such things as free lunch ©

    • Алексей Ван <o-s-a.net>
      10 декабря 2016, 11:54
      AlexShul, мы хотим зарабатывать только с теми кто делает бизнес на околорынке. Для всех остальных — всё открыто и бесплатно.
      Подробно про нашу позицию, вот здесь http://o-s-a.net/articles/license.html
  • ves2010
    10 декабря 2016, 11:40
    1 а как разруливаются офсетные сделки… т.е когда один бот захочет продать а другой купить одновременно
    2 и как работать с большим объемом?? можно ли изменять объем позиции без закрытия?? т.е. докупать или допродавать?
    3 можно ли торговать одним ботом сразу 50-60 бумаг или 1 бот = 1 бумага?
    • Алексей Ван <o-s-a.net>
      10 декабря 2016, 11:52
      ves2010, 
      1 — стандартно никак. Но можно дописать в коде. Всё в ваших руках.
      2 — можно. Кроме BuyAtLimit/BuyAtMarket есть BuyAtLimitToPosition/BuyAtMarketToPosition из кода. Также руками можно добавиться/закрыться из интерфейса. При закрытии также можно часть объёма указать, а не весь.
      3 — можно подключать множество бумаг. Да. Это реализовано через подключение вкладок(пара строк кода) к боту. Также можно подрубить вместо инструмента индекс на формулах.
  • INTELLEKTTRADE
    10 декабря 2016, 11:49
    Есть несколько пунктов в лицензионном договоре которые я хотел бы обсудить. 1. почему при «некоммерческом» использовании программа все же для того, чтобы извлекать прибыль на рынке? Или тут имеется ввиду именно ее продажа, а не извлечения прибыли путем иных способов? 2. Что значит «в максимальной степени допустимой законодательством»
    • Алексей Ван <o-s-a.net>
      10 декабря 2016, 12:04
      INTELLEKTTRADE, 
      по первому. У нас не стандартная «Некоммерческая» лицензия — она мягче. Т.к. разрешает всё же один вид заработка — торговать на своём счёте. Всем остальным сюда: очень подробно про лицензии
      по второму. Юристы написали, значит так нужно. Не смогу оперативно ответить на вопрос. Переадресовал....

  • SAI
    10 декабря 2016, 11:59
    Под HFT код плазы явно не заточен, а так огромный решпект за такой смелый шаг!
  • R14
    10 декабря 2016, 13:13
    интересненько!
  • Игорь
    10 декабря 2016, 13:54

    Молодцы. Только почему бы на github не загрузить.

      • Александр Зайцев (ocepiruki)
        10 декабря 2016, 14:21
        Сергей < o-s-a.net >, и это неправильно. Программисты быстро бы прикрутили к вашему проекту еще с десяток коннекторов к различным биткоин-биржам, EXANTE и пр. А у самих у Вас руки никогда не дойдут.
        • Алексей Ван <o-s-a.net>
          11 декабря 2016, 08:45
          Александр Зайцев (ocepiruki), Сток Шарп около года писали на ГитХабе. За это время программисты прикрутили к нему примерно НОЛЬ коннекторов. 
          Если бы мы этого не знали — то конечно же мы выложились бы там. ГитХаб хорошая платформа — но она нам ничего не даст.
          • Александр Зайцев (ocepiruki)
            11 декабря 2016, 12:01
            Алексей Ван, S# плохой пример. Они запароли создание сообщества вокруг своего продукта. Наверняка, Вам известно немало обратных примеров когда проект успешно развивался благодаря добровольцам и другим заинтересованным, пусть эти проекты были и не в сфере трейдинга. И конечно, это труд развивать такое сообщество вокруг своего продукта. Но, я считаю, это того стоит. Рано или поздно Вы все-равно вынуждены будете выложить свой проект на GitHub, лучше сделать это сразу.
  • evgen000
    10 декабря 2016, 14:03
    Спасибо! Прочел так же вашу статью http://sib-algo.ru/must-read/классификация-трейдеров-2.html здорово!
  • Сергей Гаврилов
    10 декабря 2016, 14:35
    Как я понял для графиков используется Chart из WinForms, а сам проект на WPF… Зато бесплатно…
      • Сергей Гаврилов
        10 декабря 2016, 14:47
        Сергей < o-s-a.net >, DDD тоже бесплатно, зато в 10 раз быстрее… и танцев с хостами не надо…
        • Алексей Ван <o-s-a.net>
          11 декабря 2016, 08:42
          Сергей Гаврилов, У нас в интерфейсе ботов есть волшебная кнопка:

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

          • Сергей Гаврилов
            11 декабря 2016, 13:53
            Алексей Ван, при чем тут прорисовка интерфейса и тормоза самого  MSChart, или я чего то не понимаю? 
      • Сергей Грошев
        10 декабря 2016, 18:27
        Сергей < o-s-a.net >, SmartCom — только для получения данных? Торговать нельзя?
        • Алексей Ван <o-s-a.net>
          11 декабря 2016, 08:36
          Сергей Грошев, всё ок. Можно торговать через SmartCom
  • Friendly Deep Space
    10 декабря 2016, 15:09
    Если еще и блочный конструктор сделаете, то тогда количество пользователей резко прибавится. Потому что увы, не все трейдеры — программисты. А кто программист, уже наверняка давно пишет сам на С# или на MQL5. Говорить «все в ваших руках» это конечно хорошо, опенсорс тем более, но сами посудите, нужно знание языка.
    • T-800
      10 декабря 2016, 20:16
      qlewer, о чем и речь.
  • MS
    10 декабря 2016, 19:27
    Оочень тихий звук на первом видео.
  • Shader
    10 декабря 2016, 20:28
    o-s-a.net/training.html Отзывы — эпичнота-а! )))))) Просто пять баллов! ))))) Остаётся добавить других персонажей, типа Горчичникова, Мильонникова, Сахипзадова и прочих.
  • Суперхимик
    11 декабря 2016, 10:32
    Круто. Спасибо большое!
  • Павел Дуков
    11 декабря 2016, 16:13
    спасибо
  • grimm21
    11 декабря 2016, 16:34
    А штатными средствами Os.Data через коннектор Plaza II можно полный ордерлог сохранять или надо самому будет дописывать?
  • Feliks_Iron
    28 июля 2020, 15:25
    Пользуюсь движком четвёртый месяц — ошибок куча, интерфейс кривой, постоянно вылетают эксепшены. Плюс — при многонедельной отладке в боевом режиме роботов — держит соединение и при обрыве связи с биржей сам восстанавливает коннект. Из плюсов на этом всё) Из эпичного фэйла — не работают нормально стопы))) — Ими видимо никто не пользуется из пользователей))). Новый оптимизатор сделали — выдаёт кучу случайных цифр — пишу разработчику что есть ошибки — меня забанили))) Посмешище да и только))) И куча открытого бесплатного кода в котором так наворочен и запутан функционал что х*р разберёшься… Зато обучение продают как роботов на основе этого говн*кода писать))) Но в целом вещь рабочая, только результат работы не предсказуем)))

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн