Справка по языку MQL5 - страница 39

 
Исправлены указанные опечатки и файл справки заново выложен в первом сообщении ветки.
 
papaklass писал(а) >>

Как я понимаю, нужно просто создать библиотеку функций один раз. Включит эту библиотеку в эксперта (#include). Свои индикаторы перевести в функции библиотеки. Назначить каждой функции горячие клавиши вызова. Теперь эксперты будут реагировать на события. Используй событие - нажатие клавиши.

Нажал cntrM и на графике скользящая средняя (например), нажал cntrL и на графике вся статистика по открытым в данный момент позициям и т.д. Разве так не удобней, чем было раньше?

Насколько я понял, как раз, нет.

1) Засунуть-то библиотеку (с кодом индикатора) в эксперт нет никакой сложности. Но полученная в результате компиляции прикл. программа будет экспертом, а не индикатором, т.е. рисовать индикаторные линии не будет. Во всяком случае, я понял так. А для рисования объектами (трендовыми линиями, стрелками, веерами и пр.) будут использоваться только эксперты, а индикаторам это запрещено.

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

В МТ4 индикаторы не имеют право торговать, но умеют управлять графикой и отображать собственные инд. линии. На мой взгляд, это решение правильно с организационной точки зрения. Любой пользователь точно знает, что набросив на график ИНДИКАТОР, он ничего не испортит в торговле.

 
papaklass писал(а) >>

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

Выяснить что действитель удобно, а что нет. Ведь совершенно понятно, что если разработчики ошиблись со своей концепцией, то их новый продукт не будет иметь коммерческого успеха, что равносильно провалу их концепции. Вот тогда они снова сядут за переделку своего продукта и учтут пожелания пользователей. Никто не заставляет нас переходить на mql5. Если мы (пользователи, ДЦ) решим что удобнее работать на старой платформе, то и будем работать по старинке. ДЦ откажутся от новой платформы. Резюме: Нас разработчики попросили исправить ошибки в справке, давайте поможем им в этом. А когда выйдет терминал, компилятор, редактор тогда и обсудим и архитектуру и что либо еще на конкретных примерах.

Если мы (пользователи, ДЦ) решим ... (= улыбнуло

А если компания x занимается разроботкой торговых платформ, то как бы пользователь это и есть ДЦ, и q5 это и есть новый заказ-продукт

для пользователя =) а не для "комерческий успех", это так если в корень смотреть...

поэтому q5 равносильно равен быстрой смерти "Никто не заставляет нас переходить на " любимому q4. I LOVE MQ4!

и ессено только после достаточного осмотра можно будет конкретно говоритЬ о новом заказе... думаю перспективы ого го ( кроме сишной логики грфики и скорости ? :)

но баксик упадет архитектуру поменют, а ля кухни-депозиты от 1,10 0 0 0 и тоннны вместе взятых гуру аналитоков с ОрАнжевым форексом упадут в пучину истории 09 года...

и только тогда, что то будут делать для " трейдеров то есть ползоватлей (= " но до такого светлого будущего еще чуть-чуть дожить нужно

а пока встречаем очЕНЬ интересный ("долгожданный") пользовательский продукт ;)

 

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

наверняка этот вопрос волнует не только меня...

'UltraEdit. wordfile.txt 4 mql '

'Ключевые слова и символы MQL4'

и по MQL4... может все-таки возможно каким-либо образом вытащить этот список из справки по MQL4?

 
Глоссарий встроенных функций MQL5 в справке запланирован.
 

В справочнике MQL5 встречается нарушение логики изложения. Нет сквозной связанности различных частей справочника. Отсутствуют некоторые определения. Иногда дается описание элементов языка С++, при этом непонятно, как связано описание С++ с MQL5.

---------------

Ниже проиллюстрирую сказанное.

---------------

<Цитата>:

Зарезервированные слова

......

Прочие

<Цитаты>:

Структуры и классы

............

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

#pragma pack(1)

------------------

#pragma pack(1) - относится к языку С++ или в MQL5 также это применяется?

Если применяется, то почему нет в зарезервированных словах.

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

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

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

А потом на форуме можно от авторов прочитать упреки, что ребята, не ленитесь... А на самом деле авторы поленились дать определения понятий...

Предложение: В языке C++ такое указание делается компилятору с помощью инструкции

вызвало этот комментарий. Это предложение как-то странно связано с предыдущими словами. Логика непонятна. Читаешь и спотыкаешься.

----------------

Далее

<Цитата>:

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

---------------

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

И так далее и тому подобное. Здесь приведены первые попавшиеся примеры с провалами логики. Таких примеров много...

Чем подробнее будет описание, тем меньше потом на форуме будет вопросов.

----------------

Далее

<Цитата>:

Таки(о)е описания(е) выровненных структур необходимо только для передачи в импортированные dll-функции.

----------------

..........................................................................................................................................................................

 

Синтаксис

Синтаксически язык программирования торговых стратегий MQL5 очень похож на язык программирования С++, за исключением некоторых возможностей:

· отстутствует адресная арифметика;
· отсутствует оператор goto;
· нельзя объявить анонимное перечисление;
· конструкторы классов и структур не могут иметь параметров;
· нет множественного наследования.

Не все отличия перечислены здесь. Можно ошибочно подумать, что все остальное, кроме здесь перечисленного, в MQl5 реализовано также как в С++.

Например, среди зарезервированных слов не нашел friend... А значит возможности, связанные с этим словом, также отсутствуют в MQL5.

 

nen писал(а) >>

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

#pragma pack(1)

------------------

#pragma pack(1) - относится к языку С++ или в MQL5 также это применяется?

Если применяется, то почему нет в зарезервированных словах.

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

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

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

А потом на форуме можно от авторов прочитать упреки, что ребята, не ленитесь... А на самом деле авторы поленились дать определения понятий...

Предложение: В языке C++ такое указание делается компилятору с помощью инструкции

вызвало этот комментарий. Это предложение как-то странно связано с предыдущими словами. Логика непонятна. Читаешь и спотыкаешься.

Очевидно, в MQL5 применяются исключительно упакованные структуры. Поэтому, при вызове внешних функций (WinAPI, DLLs), MQL5 структура "дополняется" лишними с точки зрения программной логики элементами. Выравниваются физические размеры структур, использующиеся при передаче параметров.

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

 

Есть ли возможность добавить в ENUM_ORDER_PROPERTY параметр для возвращения

функцией OrderGetDouble(); точной величины залоговых средств (маржи) ?

 
У Roch-а новая праздничная аватарка, видимо таки скоро :о)
Причина обращения: