Форум » Синтаксис языка » Вопросы по Учебнику. » Ответить

Вопросы по Учебнику.

SK: С момента опубликования Учебника по программированию на MQL4 мне стали приходить письма от читателей с вопросами. Предлагаю всем заинтересованным начинающим программистам продолжить общение здесь. Я постараюсь ответить на ваши вопросы.

Ответов - 61, стр: 1 2 3 4 5 6 7 All

SK: Задать размерность при инициализации массива можно только целой константой. Изменить количество элементов массива можно только в первом измерении. Смотрите ArrayResize() в справке МЕ.

александр: здравствуйте сергей наконец то нашел ваш форум о котором вы говорили я вам писал не давно в асю есть вопросы по програмированию на языке МКЛ4

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


SK: Если у Вас есть вопросы по учебнику, то выкладывайте их здесь. Я постараюсь ответить так, чтобы было понятно.

Вадим: Вопрос по теме: Переменные GlobalVariables строка кода: string Quantity="GV_Quantity"; // Имя GV-переменной то есть мы тут создаем гл. переменную я так понимаю. Только какое имя у этой переменной Quantity или GV_Quantity. В дальнейшем в программе идет обращение к этой переменной как Quantity, то есть все таки имя у нее Quantity? А если нет, то допустим еще создать одну гл. переменную, то как к ней в дальнейшем обращаться? тоже Quantity? Почему у этой переменной тип string, там же вроде число должно быть. Сергей, можете поподробнее прокомментировать значение этой строки кода?

SK: Для того, чтобы правильно понять сущность GV, я бы порекомендовал ещё раз неторопясь внимательно прочесть раздел Переменные GlobalVariables, http://book.mql4.com/ru/variables/globals Вопрос по теме: Переменные GlobalVariables строка кода: string Quantity="GV_Quantity"; // Имя GV-переменной то есть мы тут создаем гл. переменную я так понимаю. Не правильно понимаете.Создание GV происходит в результате исполнения функции datetime GlobalVariableSet( string name, double value) Функции передаются два параметра - имя и значение GV. Только какое имя у этой переменной Quantity или GV_Quantity. Имя GV может обрабатываться программно (может быть подобрано в процессе исполнения программы; например, создаваемая GV может быть GGGV_Sell или GGGV_Buy в зависимости от того, какой ордер открылся). Это значит, что само имя переменной - это строка символов, т.е. строковое значение. Вот это строковое значение само может быть присвоено строковой переменной. Здесь строковая переменная - string Quantity, а её значение - "GV_Quantity". Всё это, вообще говоря, никак не относится к GV-переменной. Это - объявление строковой переменной и одновременно присвоение ей некоего значения. В сложной программе может быть несколько подобных строк, например: string Quantity="GV_Quantity"; // Имя GV-переменной ... вычисления ... Quantity="ALPHA"; // Имя GV-переменной ... вычисления ... Quantity="Betta"; // Имя GV-переменной ... вычисления ... А позднее, по логике программы, объявляется собственно GV-переменная. И на этот момент имя у неё будет такое, какое вычислено в предыдущем коде (в зависимости от чего-то там). Создание GV делается так: GlobalVariableSet(Quantity, 3.14); // имя GV задано значением переменной Здесь создана GV-переменная, которой присвоено значение 3.14. А имя у неё будет таким, какое значение (вычисленное незадолго до создания GV) у переменной Quantity. В простом случае можно явно назначить GV-переменной имя в виде строковой константы: GlobalVariableSet("ALPHA", 3.14); // имя GV задано строковой константой

BorodaN: Здравствуйте, Сергей! не нашел в учебнике, где-то написано, как работать с DLL ? Не могли бы указать где, либо квалифицированно разъяснить не сходя с этого места.

SK: В учебнике этот вопрос не рассматривается. Описание можно посмотреть в Хелпе МЕ: Справочник MQL4 - Основы языка - Препроцессор - Импорт функций. На моём сайте есть примеры использования ех4 (принцип тот же): http://autograf.dp.ua/Pages/2/26/267/2672.htm http://autograf.dp.ua/Pages/4/418.htm http://autograf.dp.ua/Pages/4/415.htm http://autograf.dp.ua/Pages/4/416.htm

Doberman: Здраствуйте. у меня следующий вопрос. можно ли связать мататрейдер с каки либо другим языком програмирования? Наример С#.

Scriptong: Наверное, имеется в виду возможность написания блока стратегии на С++, а на MQL4 - только осуществление торговых операций. Да, такое возможно и многими применяется. Блок стратегии пишется на C++, оформляется в виде dll и присоединяется к эксперту MQL4. Хотя никто не запрещает сделать полноценное приложение на C++, но связывать все равно придется через dll. Правда, существуют и другие способы связывания. Например, через файлы. Но это не очень эффективный способ, хоть и более простой в исполнении.



полная версия страницы