Что нужно сделать, чтобы все наконец перешли на МТ5? (сбор мнений) - страница 35

 
Artyom Trishkin:

В какой области возможности МТ4 превосходят возможности МТ5 ?

Во всех.)) Уже приводил пример: моя старая машина превосходит все новые, в ней есть все тоже самое, и стоит как велосипед.) А коробка-автомат и задаром не нужна.

 
Makar Anoshin:

Как минимум не глючит на стареньких пк и ноутах при запуске. МТ5 в этом плане крайне неудобна... Я не говорю уже об оптимизации и работе с советниками и индикаторами. Там еще всё сложнее обстоит... Поэтому в этих условиях невольно выбираешь то, что проще... (МТ4)

А на это что скажете?

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Есть ли смысл переходить с МТ4 на МТ5? Почему Вы перешли на МТ5?

Renat Fatkhullin, 2019.02.08 23:07

Хочу вас приблизить к реальности с учетом обсуждений ветки Что нужно сделать, чтобы все наконец перешли на МТ5? (сбор мнений):

  1. MetaTrader 5 быстрее в торговых операциях

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

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

    В четверке это даже близко нельзя сделать.

  2. В MetaTrader 5 роботы работают до 20 раз быстрее

    Это из-за того, что в пятерке используется компилятор уровня С++, который делает экстремально эффективный код. У четверки используется старая система исполнения без оптимизации кода.

    БОльшая скорость означает уменьшение задержек и улучшение качества исполнения.

  3. В MetaTrader 5 можно заниматься обработкой гигантских объемов данных

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

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

    Вот простой код, запускаемый на реальном счете брокера Открытие и символе RTS Splice, который является склейкой все фьючерсных контрактов индекса RTS за много лет:
    void OnStart()
      {
       MqlTick ticks[];
       int     records=CopyTicks(Symbol(),ticks,COPY_TICKS_ALL,0,1000000000);
    //---
       Print(Symbol()," ticks ",records);   
      }
    
    он выдает 472 млн тиков:
    RTS Splice ticks 472 111 564
    
    Да, 472 миллиона тиков одним запросом. Делайте потом с ними что хотите.

    Это дает абсолютный контроль над данными. Можно и миллиарды тиков получить. Успевайте только пинать брокера, чтобы он заботился над историческими данными. Это ЕГО ПРЯМАЯ РАБОТА И ОБЯЗАННОСТЬ.

    Две строки кода и полные данные у вас в руках. Кто там рассказывает про сложность MQL5???

    В четверке этого нет в принципе.

  4. В MetaTrader 5 есть очень точный мультисимвольный тестер с миллисекундной точностью

    Это позволяет гонять очень сложные стратегии и иметь больше гарантий, что ваша стратегия не является самообманом.

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

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

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

    В четверке даже близко этого нет.

  5. В MetaTrader 5 тестере есть потрясающая функция учета задержек исполнения

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



    Достаточно даже добавить 50-100 мс задержки, чтобы в разы ухудшить множество стратегий.

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

    Достаточно поиграть со своей сетевой задержкой, увеличить ее в пару раз, чтобы протестировать робастость своего робота. Заодно и качество отработки реквот и отказов проверите.

    В четверке такое есть? Нет, конечно.

  6. 64 битная система пятерки позволяет оперировать огромным количеством чартов и глубокой историей

    Это очень важно, когда вы занимаетесь сложным анализом или сканингом множества символов и таймфреймов. Можно держать в памяти и оперировать тысячами чартов (символ + период) и быть уверенным, что они доступны мгновенно.

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

    Мое мнение, что объема данных в пятерке все равно недостаточно. Мы постоянно работаем над повышением эффективности и скорости доставки данных. Постоянно тюним производительность, чтобы огромные данные были всегда под рукой и быстро доступны из MQL5.

  7. Использование многопотокового тестера, расчетных и клауд серверов

    Главные затраты в разработке стратегий - это оптимизация стратегий. Именно в эту область мы вложились очень серьезно.

    Вы можете использовать все свои локальные ядра, построить расчетную ферму в своей локалке или подключить MQL5 Cloud Network. Это позволяет в десятки и сотни раз ускорить оптимизацию.


  8. В MetaTrader 5 есть стаканы и исполнение на множестве шлюзов

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

    ECN, агрегация ликвидности и движок матчинга позволяют эффективно реализовывать стратегии best price execution и поддерживать множество рынков с одного счета.

  9. В пятерке нет ограничения на объемы данных

    Вы можете запрашивать огромные объемы исторических данных чартов (лимит до 1970 года) и историю сделок.

    У вас миллион сделок в истории счета? Не проблема. Памяти просто добавьте.

  10. Качественно другая архитектора чартов и управление объектами

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

    Используйте окно как вы хотите с помощью графических объектов или канваса.

  11. Огромная стандартная библиотека

    Вот стандартная библиотека MQL5. Есть математика на уровне языка R, коллекции данных, OpenCL, графика и тд.

    Большинство трейдеров не в курсе, что мы реализовали в исходниках сотни математических и статистических функций из пакета R. Они позволяют делать множество сложных математических в разы быстрее (от 5 до 50 раз), чем это доступно в R.

    Да, программы в исходниках на MQL5 рвут по скорости C++ реализации R до 50 раз.

  12. Кастомные символы, кастомные стаканы, синтетические символы и простой импорт данных

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

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

  13. Ну и масса других многократно описанных фич



Надо понимать, что:

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

  • Да, это технологическая гонка. И в первую очередь для трейдеров

  • Языки MQL4 и MQL5 по сложности абсолютно одинаковы

    Реально смешно слушать заявления про простоту MQL4, когда там абсолютно одинаковая сложность. АБСОЛЮТНО ОДИНАКОВАЯ.

    Или надо признать, что пара дополнительных параметров - это вселенская проблема для программиста. Нет, конечно. Это красивая легенда для топящих за старое.

  • Много раз повторял и еще раз повторю - программы пишут профессиональные разработчики

    Меньше 2% пользователей пользуются редактором кода. Большая часть трейдеров качает готовое из маркета, а также из кодобазы без анализа кода.

    Рассказы про простой MQL4 исключительно смешные. Обсуждения OOP вообще за гранью, особенно с учетом того, что он давно есть в MQL4. Любой программист сейчас должен знать ООП по умолчанию.

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

    Я 28 лет потратил на ежедневное программирование и знаю, что мое утверждение является реальностью.

  • Достаточная часть наших технологических партнеров и сторонних разработчиков прямо заинтересованы в сохранении MetaTrader 4

    Потому что эта платформа имеет столько технологических недостатков, что они оседлали нишу дополнений/дыр и прямо кормятся на ней.

    Да, они тратят достаточное количество ресурсов на убеждение брокеров и трейдеров, что "MetaTrader 4 лучше". Потому что их бизнес разрушится. И тут они сидят под именами независимых трейдеров, работая в противовес.

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

    Для примера вспомните, какой крик уже 10 лет поднимают антивирусники, когда Microsoft делает свою платформу более безопасной и отбирает у них защитные функции. Прям праведный гнев и куча пиара.

  • Прогресс неостановим

 
Artyom Trishkin:

А на это что скажете?


Это все конечно хорошо, но на практике, увы...почему-то все работает медленнее от запуска, подгрузки котировок и до тщательного тестирования  MQL программ на исторических данных.

По какой-то немыслимой причине и вопреки написанным выше преимуществам, лично на моем компьютере и VPS сервере все запускается и тестируется быстрее в Мт4. А покупать специально для торговли на FOREX современный игровой компьютер, ну где же это удобно и практично?

 
Artyom Trishkin:

А на это что скажете?


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

всё таже проблема с отрисовкой отложенных ордеров, а если стратегия на них, то капут...

 
Renat Akhtyamov:

это зависит от стратегии

важна не только скорость, но и цена в момент приказа на открытие сделки

"умный" ДЦ ни когда не даст вам влезть впереди паровоза... 

 
Makar Anoshin:

Это все конечно хорошо, но на практике, увы...почему-то все работает медленнее от запуска, подгрузки котировок и до тщательного тестирования  MQL программ на исторических данных.

По какой-то немыслимой причине и вопреки написанным выше преимуществам, в МТ4 все запускается и тестируется быстрее(лично на моем компьютере и VPS). А покупать специально для торговли на FOREX современный игровой компьютер, ну где же это удобно и практично?

Я работаю на простом ноуте. Никаких игрушек не потянет в нормальном качестве. И памяти всего 5 Гб. И мне хватает для ежедневной работы над своими проектами в пятёрке. И вот как-то не тормозит, как вы утверждаете. Даже, делая индикатор, который берёт данные по всем символам обзора рынка и по всем таймфреймам каждого из символов, жду лишь при первом запуске. Секунд пять для подкачки отсутствующей истории по символам и таймфреймам. Далее всё работает быстро и без задержек.

И, скажу вам по секрету, если вы начнёте правильно писать программы на mql4, то кода будет практически не меньше, чем на mql5. Просто привыкли ребята, что получив данные, можно их сразу в расчёт пихать, забывая совершенно проверить: а что я там получил-то? И, если получил бяку, то нужно обработать такой результат, а не пихать его в расчёты. И вот именно от такого безалаберного подхода к программированию, потом по всем форумам просят - как сделать так, чтобы индикатор можно было обновлять постоянно, а то он фигню какую-то показывает со временем, и лишь обновление чарта вручную или перекомпиляция кода индикатора возвращают его показания в приемлемый вид. Встречали такие просьбы сделать такой костыль? Нет? А я вот много раз. Но стоит лишь взглянуть на код, добавить все необходимые проверки, как mql4-код чудесным образом становится по объёму равным mql5-коду, ну и работать начинает без сбоев и костылей с принудительным обновлением.

Так что в большинстве своём все эти стоны по поводу "жуткого mql5" - это лишь стоны непрограммистов, в свободное время слепивших из разрозненных кусков собранных по сети, свою поделочку. А как только таким отрубили возможность спокойно пихать в массы своё..., свои произведения, так они и заплакали - ай как всё сложноооо. Да не сложно. Те, кто изначально на четвёрке писал правильно, те вообще не заметили разницы. Лишь только дополнительные возможности.

Так что я - только за. Нечего наполнять пространство нерабочими кодами.

 
xxz:

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

всё таже проблема с отрисовкой отложенных ордеров, а если стратегия на них, то капут...

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

 
Artyom Trishkin:

Я работаю на простом ноуте. Никаких игрушек не потянет в нормальном качестве. И памяти всего 5 Гб. И мне хватает для ежедневной работы над своими проектами в пятёрке. И вот как-то не тормозит, как вы утверждаете. Даже, делая индикатор, который берёт данные по всем символам обзора рынка и по всем таймфреймам каждого из символов, жду лишь при первом запуске. Секунд пять для подкачки отсутствующей истории по символам и таймфреймам. Далее всё работает быстро и без задержек.

И, скажу вам по секрету, если вы начнёте правильно писать программы на mql4, то кода будет практически не меньше, чем на mql5. Просто привыкли ребята, что получив данные, можно их сразу в расчёт пихать, забывая совершенно проверить: а что я там получил-то? И, если получил бяку, то нужно обработать такой результат, а не пихать его в расчёты. И вот именно от такого безалаберного подхода к программированию, потом по всем форумам просят - как сделать так, чтобы индикатор можно было обновлять постоянно, а то он фигню какую-то показывает со временем, и лишь обновление чарта вручную или перекомпиляция кода индикатора возвращают его показания в приемлемый вид. Встречали такие просьбы сделать такой костыль? Нет? А я вот много раз. Но стоит лишь взглянуть на код, добавить все необходимые проверки, как mql4-код чудесным образом становится по объёму равным mql5-коду, ну и работать начинает без сбоев и костылей с принудительным обновлением.

Так что в большинстве своём все эти стоны по поводу "жуткого mql5" - это лишь стоны непрограммистов, в свободное время слепивших из разрозненных кусков собранных по сети, свою поделочку. А как только таким отрубили возможность спокойно пихать в массы своё..., свои произведения, так они и заплакали - ай как всё сложноооо. Да не сложно. Те, кто изначально на четвёрке писал правильно, те вообще не заметили разницы. Лишь только дополнительные возможности.

Так что я - только за. Нечего наполнять пространство нерабочими кодами.

 И вас совсем, совсем не напрягает отсутствие лаконичности в языке как в mql4 ?

DayOfWeek_p=DayOfWeek();

MqlDateTime str1;
TimeToStruct(TimeCurrent(),str1);
DayOfWeek_p=str1.day_of_week;
 
Artyom Trishkin:

...

Так что я - только за. Нечего наполнять пространство нерабочими кодами.


Именно!  Переделайте себя, - станьте профессиональным программистом!    Не можете стать профессионалом, - уходите вообще отсюда!))

ЗЫ. Я про дружелюбность к пользователям. Она зашкаливает.))

 
Реter Konow:


Именно!  Переделайте себя, - станьте профессиональным программистом!    Не можете стать профессионалом, - уходите вообще отсюда!))

Это вы мне? Спасибо, смешно.

Причина обращения: