Что бы я хотел от "терминала" как профессональный программист. Еще одна тема с пожеланиями к MQL5. - страница 9
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Должен, должен быть - просто ради искусства. Бывают такие ситуации, когда goto - единственная возможность закодировать кратко и изящно.
Согласен. Иногда он очень нужен. Но если перейти на обработку событий то необходимость может и исчезнуть.
to Dedushka
1. смотрю на Вашу аватару, - вижу грудь как у моряка, + ник "Дедушка", - ага значит судовой механик., конкретно глав мех пошел в биржевую торговлю.
2. уровень "ругани" на форуме приемлимый, торговля это самость, без самости в торговле никак)))
т.е. ругаются здесь часто и по очень незначительным поводам.
3. хотели Вы лично ругаться или же нет, но в самую ругань попали, тем более что MQL-4 как язык и как среда еще тот = )))
так уж получилось что вы присоединяетесь к устыжающим за "оператор из четырех букв".
а есть еще устыжение за непонимание глубокой мысли первых лиц - Творцов MQL)))
- если Вы помните какой формы были перфo-отверстия в перфоносителях, то скоро поймете цену MQL и МТ-4.
4. от goto отрывают как от сиськи с помощью перчика и в виде устыжения в неблагоумности, т.е. якобы умственной убогости, и срамности.
в доказательство почитайте и эту ветку))
= отобрали у программистов оператор goto, якобы пусть они теперь по-скачут.
5.
Однако по теме:
срамное слово goto можно не употреблять, но сам по себе СРАМ и его срамное слово оператор goto - БЫТЬ ДОЛЖЕН
Уважаемый,
1. Аватара старая, еще с форума Альпари. А море тут у меня рядом, из офиса видно. :-)
2. Тему просмотрел, действительно кое-кого хлебом не корми, дай лишь поспорить.
3. Перфокарты и ленты помню, да что там, я даже работающую ламповую ЭВМ застал. :-)
4,5. Фактически GOTO (jump) - это и есть основа любого программного управления. А вся проблема в бессистемном его использовании.
Адекватный программер не будет на этом зацикливаться, и спокойно напишет оператор GOTO там, где это надо. А если его нет в языке - тоже не беда.
Но лучше пусть будет, кушать не просит, а иногда может и понадобится. А отморозки что с ним, что без него все равно такое могут наколбасить, что "мама, не горюй".
Однако, по теме:
не буду касаться процедурных возможностей языка, а вот при работе с множеством ордеров (таблицы по сути) интересно было бы вот что-то такое встроенное:
DELETE *
FROM Trade
WHERE (OrderType = OP_BUYLIMIT);
или
SELECT *
FROM History
WHERE ((OrderMagicNumber=2135) AND
(OrderOpenTime > #1/1/2009#));
Учитывая, что структуры в MQL5 обещают, можно было бы в стандартный буфер поиметь искомое подмножество ордеров, а там уж и обрабатывать их процедурно.
Я просто вспомнил, как в ранних бэйсиках матрицы перемножали (цикл в цикле в цикле и т.д.), лениво лопатить самому весь History построчно.
мне как-то все равно будет goto или нет, потому что это несущественно, а добавлять его наверное не будут, а то форум зачахнет..
а остальное и так понятно - кто может зарабатывать, тому что есть, за глаза хватает, кому впаривать хочется, конечно, юишных фенечек хочется побольше,
аналитикам - мощностей хочется и возможности раширения и совместной работы МТ с чем угодно..
Профессиональная раработка должна отличаться от студенческой поделухи, а ниже перечисленное сближает MQL4 с этим:
1. Документ "Технический анализ в MQL4" дает описания индикаторов, который нет в разделе "Индикаторы" терминала, например, ZZ.
2. Документ "Технический анализ в MQL4" при описании индикаторов делает ссылки на Code Base, в которых, якобы, имеется исходник - это не правда. Если Bolindger Bands в разделе "Индикаторы", то он же в разделе "Пользовательские индикаторы" (а не Вands) и параметры в них должны быть одинаковы, а не int вместо double.
3. Code Base содержит большое количество кода, написанное малограмотными людьми, а зачастую без отладки или с ошибками, но при этом частенько указан автором MetaQuotes. Code Base должна быть должна быть поделена на части:
код (быть может написан не MetaQuotes), за который отвечает (консультирует и устраняет ошибки) MetaQuotes;
написанный код третьими лицами, но с комментарием (Модератором) MetaQuotes;
все остальное.
Во всяком случае, по отношениям к статьям MetaQuotes более щепетильна, чем к Code Base?, которая в нынешнем виде представляет собой кучу мусора.
4. Все индикаторы из раздела "Индикаторы" должны гарантированно иметь алгоритмы, которые были предложены соответствующими авторами. Если этот алгоритм отличается, то необходимаы соответствующие пояснения и неуместно называть индикатор громким именем.
5. Очень желательно, чтобы алгоритмы индикаторов совпадали с какой-либо более старой и распространенной системой. Особое место среди систем анализа занимает Метасток, так как при ее разработке принимали участие разработчики соответствующих индикаторов.
6. Количество индикаторов, разработанных MetaQuotes должно быть расширено до приличного уровня и с учетом предыдущего замечания соответствовать количеству и перечню Метастока.
7. Для каждого индикатора долна быть написана соответствующая "функция", которая бы не пересчитывала весь, либо какую-то часть графика, а только его необходимую часть. Это должно серьезно упростить тестирование по времени.
8. Все индикаторы и функции должны иметь открытый код.
9. Кроме Советников и Скриптов необходим еще Explorer (аналог в Метастоке), который бы позволял в режиме тестера анализировать некоторый набор валютных пар и таймфреймов с целью выбора пары на предстоящий сеанс торговли.
1. Сейчас трудно сказать, почему ZigZag не вошел в список стандартныхтехнических индикаторов, встроенных в терминал. Возможно из-за многообразия толкований. Зато сейчас мы имеем много разных зигзагов, которые Вы можете использовать в терминале или написать свой на MQL4.
2. Есть такое дело - параметр deviation в пользовательском и в стандартном индикаторе Bollinger Bands имеют разный тип. В MetaTrader 5 это исправлено. За исключением этого момента,определенно все индикаторы представлены своими исходниками на MQL4.
3. Индикаторв в Code base от имени MetaQuotes должны отлажены и без ошибки. Если Вы нашли ошибку, то сообщите о ней, пожалуйста.
4. Трудно гарантироватьь полную уникальность алгоритма, большинство индикаторов очень похожи.
5. Алгоритмы написаны людьми, ничто не стоит на месте, и большинство алгоритмов в свое время сверялось с Metastock'ом.
6. Это не является первостепенной задачей, компания MetaQuotes Software corp. предоставила возможность писать свои собственные индикаторы практически любого уровня сложности на языке MQL4. На наш взгляд, это важнее чем встроить в терминал несколько сот индикаторов.
7. Так оно и есть в MQL4, Вы самостоятельно в коде польностью контролируете процесс расчета индикатора.
8. В Code base публикуются только открытые коды, и это позволяет загружать из прямо из MetaEditor.
9. Это не до конца понятно.
1. Сейчас трудно сказать, почему ZigZag не вошел в список стандартныхтехнических индикаторов, встроенных в терминал. Возможно из-за многообразия толкований. Зато сейчас мы имеем много разных зигзагов, которые Вы можете использовать в терминале или написать свой на MQL4.
2. Есть такое дело - параметр deviation в пользовательском и в стандартном индикаторе Bollinger Bands имеют разный тип. В MetaTrader 5 это исправлено. За исключением этого момента,определенно все индикаторы представлены своими исходниками на MQL4.
3. Индикаторв в Code base от имени MetaQuotes должны отлажены и без ошибки. Если Вы нашли ошибку, то сообщите о ней, пожалуйста.
4. Трудно гарантироватьь полную уникальность алгоритма, большинство индикаторов очень похожи.
5. Алгоритмы написаны людьми, ничто не стоит на месте, и большинство алгоритмов в свое время сверялось с Metastock'ом.
6. Это не является первостепенной задачей, компания MetaQuotes Software corp. предоставила возможность писать свои собственные индикаторы практически любого уровня сложности на языке MQL4. На наш взгляд, это важнее чем встроить в терминал несколько сот индикаторов.
7. Так оно и есть в MQL4, Вы самостоятельно в коде польностью контролируете процесс расчета индикатора.
8. В Code base публикуются только открытые коды, и это позволяет загружать из прямо из MetaEditor.
9. Это не до конца понятно.
Принять Ваш ответ не могу, так как он больше похож на ответ большого чиновника докучливому гражданину, хотя я ничего не требую и не прошу - просто работаю на общее благо. По пунктам.
1. ZZ имеется в Метасток и его алгоритм отличается в лучшую сторону (по-моему мнению). Остальное разнообразие хорошо, когда имеется эталон. Кроме ZZ я не нашел ADX, а имеющиеся опять разнообразные ADX имеют другие алгоритмы и соответственно, другие графики, например ADX_Rosh.
2. Приведенная ссылка - это только пример. И это различие не единственное. Например, все пользовательские индикаторы не имеют параметра “applied_price”, хотя по описанию он имеется в тех индикаторах, в которых ему положено быть.
К этому Accelerator не имеет параметра периода. Как я понимаю этого никто не выверял и мой тезис, MQ не предоставил исходники доказывается именно этим.
3. Не уведил Вашего мнения по этому пункту.
4. Профессиональная разработка отличается от студенческой, что авторские алгоритмы мировой известности гарантируются - не могу принять Ваше объяснение.
5. Ели был взят Метасток в качестве основы - то о каком прогрессе идет речь? В Метастоке алгоритмы индикаторов не меняются.
6. Очень жаль, может быть не был понят. Я не веду речь о разработке нескольких сотен индикаторов. Метасток имеет их в пределах сотни, но важно другое - это функционально полный набор индикаторов для построения торговых систем. Там имеется более обоснованная классификация индикатора, идущая от характеристик рынка. Например, индикторы волантильности. А что выявляет осциллятор, это что за характеристика рынка? В качестве индикаторов приведена торговая система Вильямса. Это замечательно, но это отдельный раздел и к индикаторам не должен иметь оношения, т.к. это торговая система (в Метасток это отдельный подраздел), которых может быть много.
7. Ничего в коде индикатора я не контролирую. Чтобы получить значения индикатора 0, 1, 2 необходимо три раза вызвать, т.к. буфер индикатора мне не доступен. Отражает эту трудность форум с его рекомендациями о переносе текста индикатора в текст советника.
8. Код индикатора невозможно включить по .mqh, необходимы дополнительные усилия, а главное квалификация.
9. Речь идет о режиме тестера, который бы сводил воедино результаты тестирование нескольких валютных пар и/или советников - это имеется в Метастоке.
За девятью пунктами опять теряется моя главная мыслю: часть Code Вase, на которой стоит штамп "Метаквоутс", должна быть выполнена на профессиональном уровне. И если мы Code Base называем "открытым кодом", то этот код должен быть написан профессионалом и профессионально оформлен.
Индикатор с открытым кодом должен иметь описание по типу "Описания языка" и "Технический анализ", но это должно соответствовать именно тому коду, на который делается ссылка.
Кроме этого исходый текст самого индикатора должен содержать:
- описание входных параметров
- описание выходных параметров
- подробный комментарий алгоритма
- быть может комментарий каких-либо других частей программы
- оформление буферов индикаторов мо максимуму возможностей Mq4.
- обязательна проверка входных параметров индикатора на допустимость (вообще не могу припомнить)
- решение проблем потери точности при сравнении близких величин
Кроме желания улучшения метатрейдера за приведенным текстом не стоит.
Если возможно, для удобства разработки советников и подсчета в них круглых скобок, в МЕ-5 добавить такую функцию, чтоб можно было ставить метки различных цветов, как на рисунке.
Я этим пользуюсь в ручную, копируя скрин-шот советника в Paint, и проставляю цветные метки и разной формы, пример на рисунке:
Если возможно, для удобства разработки советников и подсчета в них круглых скобок, в МЕ-5 добавить такую функцию, чтоб можно было ставить метки различных цветов, как на рисунке.
Я этим пользуюсь в ручную, копируя скрин-шот советника в Paint, и проставляю цветные метки и разной формы, пример на рисунке:
Тогда NotePad++ тебе поможет. И копировать не надо. И связанные скобки подсвечиваются http://notepad-plus.sourceforge.net/ru/site.htm