Что бы я хотел от "терминала" как профессональный программист. Еще одна тема с пожеланиями к MQL5. - страница 9

 
Mathemat писал(а) >>

Должен, должен быть - просто ради искусства. Бывают такие ситуации, когда goto - единственная возможность закодировать кратко и изящно.

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

 
Korey писал(а) >>

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. Это не до конца понятно.

 
Rosh писал(а) >>

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, и проставляю цветные метки и разной формы, пример на рисунке:

 
Night_Sun писал(а) >>

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

Я этим пользуюсь в ручную, копируя скрин-шот советника в Paint, и проставляю цветные метки и разной формы, пример на рисунке:

Тогда NotePad++ тебе поможет. И копировать не надо. И связанные скобки подсвечиваются http://notepad-plus.sourceforge.net/ru/site.htm