Приход нового поколения торговых программ. Каким должен стать интерфейс советников? - страница 13

 
Yury Kulikov:

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

А что может помочь? Возможно, более глубокая интеграция, или ограничение проекта до "пульта дистанционного управления".

Я вовсе не говорил, что эти задачи не реализуемы в моем интерфейсе.) Я имел ввиду, что технологии основанные на ООП не могут быть интегрированы в мой код, из за несовместимости подходов. Мне придется реализовывать эти задачи самому, после того, как будет закончена реализация базовых (самых приоритетных) вещей.
 

вашу энергию, да в мирные цели :-)

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

вкратце, как цепляется альтернативный GUI к MT:

- пишется DLL, которая:

- при первом обращении создаёт отдельный тред и инициализует граф.подсистему

- для каждого обратившегося делает две очереди сообщений - от MT к GUI и наоборот

- пишется MQ4/5 класс который в основном обрабатывает/фильтрует сообщения в этих очередях и перекидывает их туда/сюда с ChаrtEvent

- опционально API для расшаривания структур и синхронизации массивов

таким образом можно прицепить фактически любую современную систему:

- можно дотнет с его winforms и прочими Shаrp (где-то на ресурсе была статья как цеплять менеджед-код и делать dll на С#)

- gtk и дизайнить в glade https://glade.gnome.org/

- Qt c его дизайнером https://www.qt.io/ui/

- с некоторыми ограничениями можно даже http сервер запустить :-)

Получается "правильная" архитектура - развезистый GUI живёт в отдельном треде и не тормозит работу советников/индикаторов. GUI проектируется и рисуются "специально-обученными людьми" :-) Советник/индикатор при этом является практически "моделью" (как в MVC и подобных).

Glade - A User Interface Designer
  • glade.gnome.org
Glade is a RAD tool to enable quick & easy development of user interfaces for the GTK+ toolkit and the GNOME desktop environment. The user interfaces designed in Glade are saved as XML, and by using the GtkBuilder GTK+ object these can be loaded by applications dynamically as needed. By using GtkBuilder, Glade XML files can be used in...
 
Реter Konow:
Я вовсе не говорил, что эти задачи не реализуемы в моем интерфейсе.) Я имел ввиду, что технологии основанные на ООП не могут быть интегрированы в мой код, из за несовместимости подходов. Мне придется реализовывать эти задачи самому, после того, как будет закончена реализация базовых (самых приоритетных) вещей.

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

 
Maxim Kuznetsov:

вашу энергию, да в мирные цели :-)


Мои цели исключительно мирные.)

Ваше предложение интересно. Предлагаю Вам попробывать это реализовать.

Лично для меня совершенно очевидно: предпочтение чужих решений своим это выбор против себя.

На МТ есть свой язык. Объясните, зачем он нужен, если есть С++ и С#? Зачем его создавали?

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

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

Если бы я разрабатывал Ваш вариант, я бы не смог его распостранить в сообществе, где как известно DLL можно использовать в основном для себя. И какой бы прок от этого решения был бы другим? 

Ваше решение возможно, но оно не может быть широко распостронено.

 
Yury Kulikov:

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

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

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

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

Спасибо.

 
Реter Konow:

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

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

Добрый день всем.

Очень хорошо написано про новый уровень алгоритмической торговли. Факт - современный интерфейс для торговли вещь очень нужная.  Как создавать - отдельный вопрос. У нас, например, живая статистика вынесена на сайт. Но это возможно, если робот привязан к внешнему ресурсу и реализовывать UI там. Мы не стали пробовать на базе МТ упираться в инфографику и сделали ее там, где это удобно. Тем более рядовой трейдер умеет пользоваться браузером, а любой новый интерфейс нужно еще изучить и привыкнуть к нему. Для пользователей индивидуальная статистика на подходе, скоро еще много чего будет. 

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

 
Реter Konow:
Здорово! Мне бы тоже этого хотелось. Правда, исскуственный интеллект мог бы стать жадным и брать процент прибыли себе в карман, или разорить владельца на почве личной неприязни.))
Достаточно большой кнопки "получить бабло" на экране, и чтобы сразу зелень из DVD выезжала ))
 
Algorithmfx Algorithmfx:

Добрый день всем.

Очень хорошо написано про новый уровень алгоритмической торговли. Факт - современный интерфейс для торговли вещь очень нужная.  Как создавать - отдельный вопрос. У нас, например, живая статистика вынесена на сайт. Но это возможно, если робот привязан к внешнему ресурсу и реализовывать UI там. Мы не стали пробовать на базе МТ упираться в инфографику и сделали ее там, где это удобно. Тем более рядовой трейдер умеет пользоваться браузером, а любой новый интерфейс нужно еще изучить и привыкнуть к нему. Для пользователей индивидуальная статистика на подходе, скоро еще много чего будет. 

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

Добрый день.

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

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

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

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

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

 
Alexey Volchanskiy:
Достаточно большой кнопки "получить бабло" на экране, и чтобы сразу зелень из DVD выезжала ))
У нас здесь уже была дискуссия по поводу такой кнопки. Тема очень популярная и требует специальной ветки.))
Причина обращения: