О MQL4

 
Я программист с десятилетним стажем, занявшись Форексом, мне стало непонятно почему за основу языка для программирования стратегия на бирже был выбран С. Ведь мало того, что в нем используется устаревший структурный подход, так ведь он был разработан для системного программирования. И, по моему мнению, MQL4 не очень удобен для тех целей, для которых он разрабатывался. Мне кажется, что для основы языка более подходит один из такие языков как JavaScript, Java, C# или Visual Basic.

Господа, каковы ваши мнения?
 
Полностью поддерживаю!
Использование С ведет к появлению кучи ошибок у трейдеров, которые как правило не являются системными программистами. И кроме того, значительно усложняет написание индикаторов и стратегий, а также их дальнейшее понимание.
 
поддерживаю тоже!
 
2Avg
Не думаю что для программиста с десятилетним стажем MQL4 представляет большую сложность.
мне стало непонятно почему за основу языка для программирования стратегия на бирже был выбран С

Я думаю что данное утверждение абсолютно некорректно поскольку С не является ни в коем случае основой языка для программирования стратегий на бирже. Есть огромное множество других програмных продуктов где в основу положены другие языки. Но раз уж вы здесь, на этом форуме значит вы либо уже сделали свой выбор (в. т. ч и в пользу MQL4) либо находитесь на этапе выбора и сравниваете все +/- различных платформ.
Но и в том и в другом случае я думаю что торг здесь неуместен.
 
IMHO, все равно, что брать за основу для процедурного языка. С был выбран, думаю, потому, что сам MQL является подмножеством С, а МТ4 написан, скорее всего, на VC++ 6.0. Транслятор для С-подобного языка на самом С получается в написании и отладке несколько проще, чем для чего-либо еще. По поводу C#, равно как и .NET-продукции, опять же IMHO: лично я (и не только я) далеко не в телячьем восторге от этого софта, и дело здесь не в конкретной реализации среды разработки, а в проблемах обратной совместимости, т.е. в мелкомягкой политике, жестко привязывающей разработчика и юзера именно к последней по времени продукции данной конторы. Пример: "среда выполнения .NET" ("... до основанья, а затем ..."). Кто писал под нее, тот понимает, о чем это я. И это еще не самое скверное, что мелкомягкие нам готовят. Хуже всего будет тогда, когда надо будет здравствовать каждый мелкомягкий чих звонкой монетой, иначе ничего работать не будет. Смею надеяться, что MQ хотя бы в ближайшее время не слезет с VC++ 6.0, иначе всем нам круто придется.
 
Товарищи!

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

Язык, елки-палки, прежде всего для общения и взаимопонимания, а не для шифровок и скороговорок. Пусть медленнее, да красноречивее...

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

Санта Лючия! Аве Мария! Парацельс!

Да посмотреть хотя бы на замороченные операции присваивания:

Assigning the y value to the x variable y = x;
Adding x to the y variable y += x;
Subtracting x from the y variable y -= x;
Multiplying the y variable by x y *= x;
Dividing the y variable by x y /= x;
Module x value of y y %= x;
Logical shift of y representation to the right by x bit y >>= x;
Logical shift of y representation to the left by x bit y <<= x;
Bitwise operation AND y &= x;
Bitwise operation OR y |= x;
Bitwise operation exclusive OR y ^= x;

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

И если программист с десятилетним стажем такое сказал, то я тоже набрался смелости (пардон, может наглости? ;)) публично высказать свое фи! Теперь хоть буду знать, что это язык "С", а то думал, азбука Морзе, модифицированная с фигурными скобками :)
 
А вообще, прекрасная Маркиза, все хорошо, все хорошо!

Спасибо коллективу МетаКвоутс за головоломку! Очень остроумно и оригинально! :)
 
Спасибо коллективу МетаКвоутс за головоломку! Очень остроумно и оригинально! :)

Здесь, как в TV-ящике: не нравится -- не смотри, т.е. не нравится МТ -- снеси его ко всем чертям и не употребляй. А злобствовать ни к чему, ибо сказано: "Гнев -- оружие бессильных".
 
to bsl

Не думаю что для программиста с десятилетним стажем MQL4 представляет большую сложность.


Любой опытный профессионал, даже с 50 летним стажем, выбирает для работы инструмент более совершенный и новый. Для меня MQL4 не представляет большой сложности, но, уже привыкши к нормальному объектно-ориентированному программированию несколько сложно возвращаться на ступень назад. А MT4 я использую, потому что он намного удобней других терминалов именно в ручной торговле и хотелось, чтобы он был удобней и в автомате.

Вот вы, как трейдер, не хотели бы рисовать графики вручную, а? Ведь раньше так делали, и получалось довольно успешно.

to alexjou

По поводу C#, равно как и .NET-продукции, опять же IMHO: лично я (и не только я) далеко не в телячьем восторге от этого софта, и дело здесь не в конкретной реализации среды разработки, а в проблемах обратной совместимости, т.е. в мелкомягкой политике, жестко привязывающей разработчика и юзера именно к последней по времени продукции данной конторы


Ну, насчет совместимости, то C# имеет как обратную так и прямую. На нем можно писать WIN32 DLL, ActiveX. И еще вопрос. А проги, которые ты пишешь на VS6 MFC еще где-то особо запускаются кроме Винды? И кроме C# я предлагал еще кучу языков, например JavaScript. Очень хорошо бы подходил. Простой и в тоже время очень мощный язык.

Насчет гнева: А это не гнев, кстати. Это попытка улучшить понравившийся нам продукт.
 
Насчет гнева: А это не гнев, кстати. Это попытка улучшить понравившийся нам продукт.

Угу. Я тоже спотыкаюсь на этом месте.
Почему-то любая критика воспринимается как личное оскорбление. Приходится всякий раз оговариваться, но и это не всегда помогает. Увы.
 
Господа, поищите по нашему форуму (архивы с 2001 года), пожалуйста, обсуждения языков программирования для торговых терминалов.

Было достаточно постов, в которых мы четко объясняли свою позицию, рассказывали как и почему мы пришли к компилятору MQL4, основанному на языке С. Если я не ошибаюсь, то с 2001 года нами была предложена первая версия языка MQL для непрограммистов, синтаксисом сильно похожего на EasyLanguage. Потом был MQL2, а затем был выпущен мощнейший по возможностям MQL4. Видимо, были серьезные причины сделать так, а не иначе?

Нужно именно самостоятельно поискать по архивам, но не требовать "объясните еще раз здесь и сейчас", так как объяснения давались многократно.
Причина обращения: