Обсуждение документации MQL4 - страница 6

 

В том что нормальный учебник по MQL когда-нибудь появится в этом никто и не сомневается. Весь вопрос только во времени.
Любопытно в связи с этим узнать что будут делать те, кто без него учиться программировать не станет(не сможет)? Если к примеру разработчики сейчас засядут за учебничек и скажут что учебник появится в свет к примеру через 1-2 года, то что будут делать те, кто хочет этот учебник сейчас? Просто будут ждать 1-2 года, а по прошествию этого времени заведут ветку, аналогичную вот этой https://www.mql5.com/ru/forum/51086 ? ;o)
Интересуюсь просто из любопытства.

 
Думаю, что большинство уже пытается разобраться и так, но какая-то часть - будет ждать и только какая-то часть из той части - дождётся и не плюнет на всё это. А вообще, через 2 года будет MQL5. Зачем уж тогда учебник по MQL4?
 

Любопытно в связи с этим узнать что будут делать те, кто без него учиться программировать не станет(не сможет)?


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

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

Когда я впервые в жизни изучал Трубо Паскаль, мне хватило недели, чтобы освоить его в объеме, достаточном для чтения двух семестров лекций студентам, для которых специальность "Системное программирование" была непрофильной. При этом я еще умудрился написать собственную программу обработки строк примерно на 500-600 строк кода, которая переформатировала текстовый файл из одноколоночного в многоколоночный (согласитесь, задачка не для новичка). Я не строю пальцы, а просто говорю, сколько примерно времени требуется, чтобы начать писать что-то нормальное на MQL4. Язык С не сложнее (повторяю: именно С, а не С++).

Во втором варианте сами ничего не будут делать; тогда уж извините, сами и виноваты. Значит, либо мозгов маловато, либо настойчивости в достижении цели не хватает. Какие же это трейдеры-механизаторы?!
 

Есть ещё вариант – это дистанционное обучение. Например так:

  1. Кто-то из опытных программистов высылает простейшие примеры скриптов, индикаторов, советников с подробными комментариями буквально каждой строки.
  2. Учащийся, читая, анализирует, меняет параметры, задаёт вопросы.
  3. Программист отвечает на вопросы, даёт более сложные примеры с комментариями только новых функций.
  4. Учащийся снова прорабатывает материал и снова задаёт вопросы по этому материалу и просит рассказать о реализации какой-то идеи (использования средних, статистики, внешних индикаторов, пр.).
  5. Программист отвечает на вопросы и даёт набор функций, который способен реализовать решение некой задачи.
  6. Учащийся с блеском справляется с заданием, сердечно благодарит учителя и, поняв принцип и основы программирования, пускается в свободное плаванье, время от времени задавая вопросы на форуме, самостоятельно изучая статьи, хелпы, примеры и пр.
  7. Программист довольный успехами ученика идёт снимать гонорар с WebMoney и ждёт дальнейших предложений по обучению.

Такой вариант обучения был бы, по моему мнению, достаточно эффективным. За 5-10 сеансов общения при достаточной квалификации программиста и способностях учащегося можно выйти на уровень, после которого легко можно перейти на самосовершенствование. Что же касается заказа советников, то это, снова таки, по моему мнению, в большинстве случаев выброшенные деньги. Стратегию нужно совершенствовать (оттачивать). Какой шанс сразу попасть на «золотую жилу»? Да и Форекс меняется и к нему нужно приспосабливаться. Писать нужно только самому или войти в долгосрочные деловые отношения с программистом и работать командой. Что на это скажете? Особенно интересно готов ли кто-то из программистов взяться за обучение в принципе.

 
Помойму очень даже неплохая мысль, я думаю найдутся желающие как ученики так и преподаватели :-)
 
Я так понимаю, что:
  • наличие встроенной документации на MQL4 (в двух языках) в MetaEditor
  • развитие сайта сообщества программистов MQL4 на трех языках (русский, английский и китайский)
  • оплата нами статей независимых трейдеров по MQL4
  • организация Automated Trading Championship
  • ведение онлайн библиотеки Codebase с прямым доступом из MetaEditor
  • техсаппорт и постоянное консультирование разработчиками трейдеров в наших форумах
как раз и является:

Это подход советского программиста в духе: «Мы написали супер-гениальную и понятную систему, а вы, дурак, не можете разобраться.


Причем вежливый интерес разработчиков к прямым заявлениям вида:

изучать C++ я не хочу. Это никогда мне не пригодится, а времени на такое хобби у меня нет

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


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

Мне кажется что изначально никто из разработчиков и не подозревал что постигать основы программирования люди начнут с языка mql. Скорее всего предполагалось что программировать советников, скрипты и индикаторы, будут уже более или менее подготовленные программисты. А пользователи будут только пользоватся готовым:-)
Отсюда и сравнительно скромная документация. А если расчитывать на абсолютно незнакомых с программированием людей и писать для них учебник по программированию то получится весьма объемный труд. Потому что начать придется с основ - понимания что такое бит и байт . :-)

Немного истории


Первую версию MQL мы написали еще в 2001 году (6 лет назад) для торговой платформы MetaQuotes. Это был очень простой интерпретатор на основе стековой машинки, но уже тогда позволял реально автоматизировать торговлю. То есть, писать системы, которые реально управляли ордерами. Это был 2001 год, когда практически никто из публично доступных программ (ни Омега, ни Метасток) не имели никакой привязки к реальному управлению счетами (они управляли только виртуально и сильно отвлеченно от рынка).

Вторая версия MQL 2 вышла в 2002 году для платформы MetaTrader 3. Это был язык, сильно приближенный к Easy Language. К сожалению, этот путь был абсолютно тупиковым. Выяснилось, что:
  • никаких "легких языков" не бывает
  • непрофессиональный программист по определению никогда не напишет ничего приличного
  • профессиональный программист будет в шоке от такого "легкого", но непрофессионального языка и не пожелает тратить время на изучения нового языка
В результате мы сделали ставку на использование С-подобного языка MQL4 и написание хорошего компилятора, чтобы дать максимум возможностей тем программистам, кто знаком с С/C++/C#/Java. Язык получился очень быстрым, безопасным и на нем можно написать почти все что нужно (DLL помогают решить остальное).


Политика по отношению к языку MQL4


Лично я многократно объяснял на форуме http://www.metatrader4.com/ru/forum нашу политику по отношению к языку MQL4 и его явное позиционирование именно для программистов. То есть, от нас нет никаких заявлений "мы гарантируем - любой может взять и написать на MQL4 все что хочет". Программирование - это реально сложная область, которой нужно учиться.

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


Поддержка и документация


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

Renat! Мне очень жаль, что мы Вас обидели! Теперь мне ясно, что язык ориентирован исключительно на программистов с базовыми знаниями С++. В своих заявлениях я основывался на том, что С++ более сложный по сравнению с MQL4 язык, имеющий совершенно другие функции. Нелогично учить нечто более сложное, чтобы понять нечто простое, но в чём-то подобное. Если же Вы всё-таки настаиваете, то порекомендуйте, пожалуйста, какие именно разделы многочисленных учебников по С++ стоит изучить прежде, чем браться за MQL4. Зачем топать ногами и плеваться?

Но всё же Renat, очень интересно узнать Ваше мнение по высказанной выше идее дистанционного обучения. Это нереально без штудирования учебников С++, а только на примерах?
 
>>>>В своих заявлениях я основывался на том, что С++ более сложный по сравнению с MQL4 язык, имеющий совершенно другие функции. Нелогично >>>>учить нечто более сложное, чтобы понять нечто простое, но в чём-то подобное. Если же Вы всё-таки настаиваете, то порекомендуйте, пожалуйста, >>>>какие именно разделы многочисленных учебников по С++ стоит изучить прежде, чем браться за MQL4.

С таким подходом вы вряд ли когда-нибудь станете программистом! И дело совсем не в том кто и как возьмётся вас обучать, а также что именно вы для этого будете читать.
Насчёт предварительного чтения могу сказать сразу что никто вас читать весь С++ и нет заставляет. Вам чётко сказали, что MQL4 - это С-подобный язык. Вам достаточно читать программирование по С языку. С++ - это расширение возможностей языка С посредством введения классов, структур и т.д. и т.п., чего в MQL4 нет. В общем на пальцах это может выглядеть следующим образом:
1. Прийти в ближайший к вам книжный магазин
2. Найти на полке по программированию самую тонкую (<200страниц) и самую дешёвую книжку по языку С. Она возможно будет называться типа "Основы программирования на С", "Введение в программирование на С" или же просто "Программирование на С для чайников".
3. Прочитать её "по диагонали", извлекая из неё просто общее представление о том как описываются функции, операторы, какие типы данных вообще бывают и т.д., не слишком заостряясь на примерах применения языка С.
4. Начать просто тупо подряд читать справку из MetaEditor ( https://docs.mql4.com/ru/ ). После этого чтения вы поймёте, что MQL4 по своему смыслу это на наверное на 95% или больше язык С.
5. Далее начинаете внимательно читать статьи Rosh http://old.alpari.org/ru/experts/articles/ и пытаетесь понять что за чем следует при построении советников, индикаторов и скриптов.
6. Читаете (при первом прочтении можно и "по диагонали") статьи этого сайта просто с целью получения информации о том "где что лежит" и куда в случае надобности требуется обратиться для справки.
7. После всего этого вы начнёте программировать и станете задавать технические вопросы на этом форуме. Народ без проблем поможет. Тем более что вопросы у вас будут те же самые, которые возникали в своё время у всех остальных.
8. Далее начнёте уже ОСОЗНАННО искать свою торговую стратегию. Без программирования алгоритма поиск торговой стратегии обычно строится по принципу "мне показалось, что вот такие-то индикаторы являются прибыльными и я даже за целый месяц демо вручную сделал 99 успешных сделок из 100". Почитайте форумы этот и сопутствующий где практически ежедневно приходят люди, которые хотят чтобы им что-то там такое гениальное запрограммировали (иногда даже люди соглашаются за это гениальное просто заплатить деньги). Правда судя по отзывам бывалых программеров никаких гениальных вещей за деньги им ещё программировать не приходилось.

В общем примерный алгоритм становления вас программистом я обрисовал. Вы можете по своему усмотрению менять очерёдность этапов.
 
К стати про документацию, заметил некую странность при нажатии на F1 на свойстве OBJPROP_FIBOLEVELS в иструментарии происходит что то не то, а точней практически ничего не происходит. Если была выбрана вкладка Ошибки или любая другая отличная от Справки то закладка переключается на Справку, но отображает старую информацию о прошлом запросе, а про это свойство ни как не хочет рассказать. Лишь поиск в навигаторе привел к ответу. И по моему еще на какомто свойстве такое было, но не помню. Поправте пожалуйста.
Причина обращения: