текущий современный способ сделать робота без ежемесячных расходов?

Страницы: 1
RSS
текущий современный способ сделать робота без ежемесячных расходов?
 
Привет.
Хочу автоматическую торговую систему сделать (опять).
В прошлом писал под ASTS Bridge, Spectra, FAST и Plaza2 на C++, но все эти технологии полагаю в любом случае стоят каких-то денег у брокеров в настоящий момент, поэтому этот свой код использовать не могу.
Если хочется бесплатно, то только через Quik или может есть ещё варианты?
Для торговли через Quik смотреть в сторону C++ - Lua или что-то лучше есть?
 
Добавлю  Luajit и С  без плюсов.
 
 
API брокеров бесплатны, как я понимаю. Есть у тинька и финама, но у финама альфа версия и можно забыть про миллисекунды.
Для прототипов я использую sol2 либу для C++-Lua, но потом надо переписывать части на Lua C API (или sol::stack...) для скорости
 
Добавлю
---------------------
Если надо скорость, то используем Event  в колбеках и Wait в main.  Время реакции на колбек составляет не более  0.03 ms.
--------------------  
Если надо реализовать сложный алгоритм или обрабатывать сотни инструментов,
То использую дополнительные потоки в которых работает Luajit.
Luajit увеличивает скорость вычислений в 10 и более раз по сравнению с Lua5.4
Дополнительные потоки увеличивают скорость вычислений  пропорционально числу ядер
--------------------
Если надо еще круче, то делаем кластер, объединяя несколько компов или вешаем.
==================
Но есть задержка Интернет.  Ставим все в датацентр. Но это уже не бесплатно.
 
Пардон, опечатка
Если надо еще круче, то делаем кластер, объединяя несколько компов
или вешаем доп многоядерный сопроцессор (видеокарту) и используем CUDA
 
Цитата
funduk написал:
API брокеров бесплатны, как я понимаю. Есть у тинька и финама, но у финама альфа версия и можно забыть про миллисекунды.
У финама есть transaq connector https://www.finam.ru/howtotrade/soft/tconnector/
У алора есть Atentis https://www.alorbroker.ru/blog/atentis
 
Кажется в первую очередь выбор брокера - это стоимость его услуг, комиссий. А то какой бы ни был у него шлюз, расплачиваться придется потом.
Финам выглядит более сбалансированным, хотя стоимость сделки за контракт на срочном рынке у него уже 1 рубль, вместо 0.5 рублей. Кажется не много, ерунда. Но когда сделок под тысячу, уже не так смешно становится.
 
Хочется универсальный способ подходящий под любого брокера.
Задержка не имеет значения, т.к. при торговле через интернет ты в любом случае будешь последним.
 
Могу предложить полуфабрикат на 1С через QUIK
https://disk.yandex.ru/d/nm2ZTNl8MoOyXw
Осталось выучить 1С
 
Цитата
Oleg Vazhnev написал:
Хочется универсальный способ подходящий под любого брокера.
Задержка не имеет значения, т.к. при торговле через интернет ты в любом случае будешь последним.
тогда QUIK+Lua  и будет счастья  полные штаны.
 
Забыл самое важно сказать, что хочу на C++ писать, т.к. у меня уже много полезного кода на C++
 
Цитата
Oleg Vazhnev написал:
Забыл самое важно сказать, что хочу на C++ писать, т.к. у меня уже много полезного кода на C++
Ну так пишите) Lua C API и/или любой из мостов C++-Lua. Я использую sol3.
 
Если вдруг захочется потом продавать робота, то мне кажется, что продавать на C, Java и т.п. будет немного сложновато.
Мне кажется что, более или менее люди которые смогут купить робота так или иначе работают с 1С по своему основному месту работы
 
Цитата
Константин написал:
Если вдруг захочется потом продавать робота, то мне кажется, что продавать на C, Java и т.п. будет немного сложновато.
Мне кажется что, более или менее люди которые смогут купить робота так или иначе работают с 1С по своему основному месту работы
Т е  торгуют на деньги и со счетов фирмы?
 
Не в этом смысле. Люди уровня менеджеров среднего и высшего звена наверняка только имеют мысли о биржевой торговле или инвестировании. А по сложившейся практике все они так или иначе знакомы с продуктами 1С. будь то торговля или производство.  
 
1С как платформа для роботов - это из области использования сковородки для глажки одежды. Вот как система учета портфеля, сделок, может даже подачи транзакций через файлы и папку обмена Квик - в самый раз. Хотя и это создает ряд сложностей, т.к. это либо установка на конкретном рабочем месте, либо web клиент, что уже требует совсем других затрат на поддержание. Это не говоря уже о скорости работы 1С. Это даже хуже Питона.
 
Ну не знаю. У меня в день (за 10 часов) выставляется ~5000 заявок (каждые 6-8 секунд пересчитывает состояние какого либо инструмента снимает лимитную заявку и выставляет новую). Само собой сделок гораздо меньше в зависимости от того сошлись ли мы по цене с покупателем/продавцом. Лично мне чаще не надо. (QUIK справляется. 1С справляется. При этом 1С пересчитывает индикаторы используя как раз Python скрипты). Я так понимаю и QUIK и 1С могут гораздо больше. Рынок не совершает таких колебаний, чтобы чаще снимать/выставлять.
 
При этом 1С анализирует запросом не 1 инструмент, а весь список. Т.е. выставлять и снимать можно сразу 300 акций РФ за 1 цикл. Например каждую минуту. Просто нет в этом смысла.
 
Цитата
Константин написал:
Ну не знаю. У меня в день (за 10 часов) выставляется ~5000 заявок (каждые 6-8 секунд пересчитывает состояние какого либо инструмента снимает лимитную заявку и выставляет новую). Само собой сделок гораздо меньше в зависимости от того сошлись ли мы по цене с покупателем/продавцом. Лично мне чаще не надо. (QUIK справляется. 1С справляется. При этом 1С пересчитывает индикаторы используя как раз Python скрипты). Я так понимаю и QUIK и 1С могут гораздо больше. Рынок не совершает таких колебаний, чтобы чаще снимать/выставлять.
Делал краш-тест на демо сервере для оценки скорости и надежности работы на QUIK
в тесте на каждое изменение ТТП, которое приходило в колбеке Onparam выставлялась заявка
после ее регистрации она снималась. По инструменту активной всегда была лишь одна заявка.
-----------------
Итоги теста:
-------------
Всего инструментов примерно 230. За 4 часа теста выставлено и снято  более 200 тысяч заявок без сбоев и зависаний.
При этом использовался пул потоков, из которого вызывалось одновременно до 12 потоков
Делал максимум до 500 тысяч заявок пока меня разработчики не отключили от сервера.
Больше так не делаю.
-----------------
Можете сравнить с 1С.
 
В мои задачи не входило делать краш тестов. Поступал только из логики торговли. На бирже не происходит таких колебаний которые имели бы смысл так активно ее долбить. Возможно надо просто подождать немного дольше между временем постановки и снятия заявки. Думаю интервал ДЕНЬ самое то. Возможно я ошибаюсь.
 
Мне кажется если вкладывать в понятие "робот" какие то аналитические способности, то возможностей интеграций у 1С как платформы достаточно/предостаточно.
 
Цитата
Константин написал:
Мне кажется если вкладывать в понятие "робот" какие то аналитические способности, то возможностей интеграций у 1С как платформы достаточно/предостаточно.
Я привел Вам результаты теста так как Вы указали сколько Вы делаете операций.
--------------------
Причем далее Вы сами себе противоречите. То 5000 операций, то раз в день.
--------------
Вы уж будьте последовательны в своих рассуждениях.
--------------
Относительно аналитических возможностей.
У меня нет никаких ограничений.
Я могу использовать без 1С любые  языки программирования,
любые библиотеки и любые системы в том числе и ИИ.
---------------
Напишите конкретнее , какие новые аналитические возможности  даст 1С,
кроме обеспечения доступа к системе управления и бухгалтерии предприятия.
.
 
Помогите мне пожалуйста на LUA написать такой запрос:

Выставить на покупку заявки по текущей последней цене все инструменты (русские акции), для которых соблюдаются условия:
1 Текущая цена последняя> Цена последняя неделю назад и+
2 Цена последняя неделю назад > Цена последняя 2 недели назад и+
3 Цена последняя 2 недели назад >Цена последняя 3 недели назад и+
4 Цена последняя 3 недели назад>Цена последняя 4 недели назад и+
Инструменты (акции) при этом надо упорядочить по размаху цене (макс-мин) за период 1 месяц в порядке убывания
Это все единым запросом пожалуйста и выведите этот список при совершении покупки на экран
 
Забыл упомянуть в выше написанном. Акции должны выставляться на покупку пока не окончатся свободные финансы в наличии в порядке упорядочивания этого списка, при этом если уже есть в наличии более чем 2 лота, то инструмент пропустить и не покупать
 
Цитата
Константин написал:
Забыл упомянуть в выше написанном. Акции должны выставляться на покупку пока не окончатся свободные финансы в наличии в порядке упорядочивания этого списка, при этом если уже есть в наличии более чем 2 лота, то инструмент пропустить и не покупать
Ээто пишется в виде скрипта на луа,.
Прикольно, полагаю  Вы считаете, что  напишите это в виде одной строчки на  скриптовый язык 1С, который напоминает бейсик
и никогда не оптимизировался для компактных и быстрых приложений можт конкурировать с Луа, который вы очевидно не знаете. Верно?
В Квике подобно бейсику 1С был Qpiile в прошлом веке.
---------------------
Покажите на 1С свой запрос в виде одной строчки и дайте оценку времени исполнения.  
 
Да. LUA я не знаю. По 2 причинам:
1 По LUA есть всего 2 книжки по языку
2 на сайте hh.ru по нему всего 4 вакансии (без указания з/п)

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

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

Не думаю что люди которые работают на должностях типа "Менеджер по продажам", "Начальник отдела закупок/ продаж", "Зам директора по ....." начнут вдруг изучать LUA по 2 доступным книжкам.

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


Насколько я понимаю как только биржа добавит в свой API возможность выставлять заявки заявки и исполнять их, у LUA возникнут сложности с его потребностью. Как и у QUIK
 
Более или менее разнообразные системы прогнозирования описаны тут
https://habr.com/ru/articles/671142/
 
Цитата
Константин написал:
Насколько я понимаю как только биржа добавит в свой API возможность выставлять заявки заявки и исполнять их, у LUA возникнут сложности с его потребностью. Как и у QUIK
Данный API ничего не изменит, т.к. это средство для разработки. Чтобы его использовать нужен клиент, читай терминал, в том или ином виде. А самый знакомый и уже давно используемый - это Квик.
Вот если брокеры массово начнут писать свои терминалы, тогда возможно. Но это крайне маловерятно. По крайней мере для меня, терминал должен быть не как Web приложение (и даже не на C#), которые сейчас лепят везде, даже там где это бессмысленно.
 
Цитата
Константин написал:
Насколько я понимаю как только биржа добавит в свой API возможность выставлять заявки заявки и исполнять их, у LUA возникнут сложности с его потребностью. Как и у QUIK
У биржи уже давно есть API с возможностью выставлять и исполнять заявки
 
Цитата
Дмитрий написал:
Цитата
Константин написал:
Насколько я понимаю как только биржа добавит в свой API возможность выставлять заявки заявки и исполнять их, у LUA возникнут сложности с его потребностью. Как и у QUIK
У биржи уже давно есть API с возможностью выставлять и исполнять заявки
Я имел в виду что-то не дорогое типа
https://data.moex.com/products/algopack
 
Цитата
Константин написал:
Я имел в виду что-то не дорогое типа
https://data.moex.com/products/algopack
Это новая реализация, пока без денег. Потом, как обычно, будет за деньги.
Страницы: 1
Читают тему
Наверх