Блог им. MoneyMan

Алго. Шашечки или ехать?

    • 04 октября 2024, 19:28
    • |
    • T-800
  • Еще
Прочитал пост нашего коллеги Yurikona, «На чем написаны ваши роботы?». Автор использует Делфи, у меня тоже Делфи 7, до этого была 6я версия, разницы не почувствовал. Мне сейчас 47, в прошлом месяце освоил С#, часть переписал, поддался нарративам молодежи, но не понял для чего. Риск только, если коннекторы перестанут работать.

Расскажу полезнаю фичу, которую я реализовал на Делфи. Я сделал язык программирования роботов, типа в Метастоке, когда нужно написать всего 4-6 строчек типа МА(20)>МА(200) и все это запихивается в обычный текстовый файл для тестера и робота. Т.е. любую систему я делаю за 3-5 минут, проверяю и выкидываю, если что не так. Там еще перебор правил входа/выхода и оптимизатор.

Нужно думать о функциональности, а не о модных трендах.
★1
17 комментариев
Нужно думать о функциональности, а не о модных трендах
не понимаю о чем энто вы?....
всегда думаю о деньгах… через энто и получается стратегия…
avatar
wistopus, о деньгах мы все думаем. Сколько времени тратите на разработку нового робота? Какая у вас технология?
avatar
T-800, 
Сколько времени тратите на разработку нового робота?
ни сколько...
у меня очень простая технология настолько простая, что даже стыдно говорить насколько она простая...
avatar
wistopus, Простота хуже воровства!
avatar
T-800, абсолютная правда. Я писал у себя в блоге osaengine.ru/blog/ и не раз про возможности ИИ. Языки уравнялись. И человеческие и машинные. ИИ их всех вывел на одинаковый уровень. Можно писать и на Дельфи и на Коболе. ИИ напишет и там и там код.

И для Квик второе дыхание. Луа стал популярнее МКЛ в одночасье )

C# это для программистов. Но не ясно зачем тут торговля. Можно делать сайты и получать деньги больше, чем за роботов. Куда больше. И заказов там объемнее.
avatar
когда нужно написать всего 4-6 строчек типа МА(20)>МА(200) и все это запихивается в обычный текстовый файл для тестера и робота

Хочется цитировать анекдот про нюансы.
Дмитрий Овчинников, нюансы тоже можно настроить) В МТ5 тоже наверное без некоторых ограничений не обходится?
avatar
T-800, 
в мт5 без многочисленных костылей делать нечего. из коробки как надо не работает.
Дмитрий Овчинников, а МТ4 стабильнее работала?
avatar
T-800, 
мт4 на бирже никогда не было, это только форекс, а там все работает в одни ворота ;)

Дмитрий Овчинников, ясно)
avatar
Всё будет хорошо, я думаю. Коннекторы к MOEX точно работать не перестанут, ибо там 2 человека на поддержке. А будет 3 с ноября. FixFastTwime сдастся и программист в поддержку уходит. 
А глобально, я не знаю как Вам угодить. Чувакам которые по 20 лет сами алго делают. Сами со своими «велосипедами». Дмитрий вон вообще умудрился со мной поссориться. Хотя что там на МТ5 делать, когда они бросили своих пользователей в РФ. Какая уже разница. Просто ушли и всё. Надо переходить хоть куда-то. Хоть в ТсЛаб, хоть в СтокШарп, хоть в OsEngine. Ну да ладно.

Спасибо что помойками обливать не стал. А то был на той неделе 60 летний алготрейдер. Не выдержал. Ибо сам тоже «с усами». И то не так, и это не то. 

Сравниваю давно наш проект с самим собой. Раз в квартал хороший прогресс фиксирую.

Ресурсов мало. OpenSource же. Но мы стараемся.
Алексей Ван , 
А глобально, я не знаю как Вам угодить.
Алексей а зачем? У Вас есть своя аудитория, всегда же так будет(в смысле не угодишь всем).
Чувакам которые по 20 лет сами алго делают. Сами со своими «велосипедами».


Есть очевидные плюсы:

1)знаешь как у себя всё работает и как всё устроено(не строишь гипотезы как реализовано то или иное не у тебя в коде) Простой пример — ответы биржи на ошибочные транзакции(что за чем придёт, почему иногда не придёт вовсе, иногда будет зависить от того что посылаешь и с какой частотой(например придёт ошибка 32 хотя сессия не идёт а если не будешь бить в свой ордер то придёт) и т.п. если есть код можно посмотреть и понять(в док-ции про это не пишут, надо либо опытом, либо стать тем кого не любят в техподдержке))


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


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


4)не забиваешь голову всякими «чужими парадигмами»(трейдинг сложная область и в ней нет каких то правильных или не правильных подходов/парадигм и т.п., поэтому нужно отталкиваться от того что показывает свой конкретный опыт) а если ничего не получается то и никакая парадигма(ни своя ни чужая) не поможет. Для примера в моей «парадигме или как бы это не называлось» нет стопов, профитов, сеток, мартингейлов/антимартингейлов(типа усредняться/добавляться), свечей, графиков, индикаторов(в том смысле как их принято использовать, если и использую их то только чтобы влиять на активность и т.п. но никак не для предсказания чего либо) только вероятности и др. моменты как в квантовой физике(отсутствует время и всё такое). Поэтому в моей парадигме не существует ответов на вопросы — какой стоп/профит ставить, сколько в сделке брать пунктов(все эти моменты что 1/3, 1/4.537(как наоптимизировал оптимизатор) и т.п.), что лучше усредняться или добавляться, сколько будет цена через икс времени и т.п.


5)то что сделано у себя, остаётся у себя а не транслируется в аудиторию, которая начинает это пользовать и если в этом и была какая то полезная вещь то полезность уходит так как доступна всем.


6)выбор языка программирования(у меня например с++) в зависимости от задач это может иметь значение. Например нужно торговать и мониторить систему и ботов, можно это сделать на питоне и на с++ на с++ визуально даже быстрей(несмотря на то что там основное время это запросы к системе вроде сколько кэша, свободного места на диске, размер лог файла(если вдруг что-то пошло не так он может увеличиваться на много мегабайт в минуту(пишется асинхронно если что(все вот эти вот I/O bound моменты))) и т.п.). ПлюсЫ на мой взгляд как бесплатный опцион, если делаешь не совсем эффективно то в некоторой степени они это компенсируют.


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


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


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

Надо переходить хоть куда-то. Хоть в ТсЛаб, хоть в СтокШарп, хоть в OsEngine.

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


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

avatar
__rtx, прямо в яблочно.

Коннекторы как QUIKSharp имеют будущее. А обвязки вокруг них уже бесполезные прослойки. ИИ обнуляет платформы для трейдинга, если они не имеют серверную часть у брокера. Я здесь и у себя в блоге osaengine.ru/blog пишу варианты. Я сам умею программировать, но стараюсь делать упор на зеро кодинг.

Зачем писать роботов в какой-то платформе, хоть и опен сорс, если можно ИИ запросить написать робота сразу под АПИ брокера. Графики на Пандасе. Настройки в json файл.

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

Программисты, делающие сейчас монстро-платформы, не зрят тренда куда всё движется.

Ну у них есть часть аудитории которая на мой взгляд никогда и никуда не денется. Какая то часть аудитории(трейдерской) очень ленива и никогда не будет писать код. Недавно коллега в другом разделе писал про данные(где взять) я написал что можно через чат гпт. В итоге мне самому пришлось вспомнить как работает iss.moex.com(больше 10 лет назад пользовался им), написал код который работает(чатом гпт), выложил его, подробно описал как запускать, в том числе и питон файлы. В итоге он написал, спасибо, но это для меня сложно.))) Сомневаюсь что он не осилил просто лень и всё такое.
avatar
Алексей Ван , 
МТ5 никуда не ушел, не стоит выдавать желаемое за действительность ;)

Когда уйдет, перейдем, что делать. Проблема только в том, что ВСЕ вышеназванные конкуренты существенно проигрывают МТ5, несмотря на всю своеобразность терминала и неадекватность разработчиков. 

теги блога T-800

....все тэги



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