Индикатор или Эксперт - страница 2

 
Кстати, если не возражаете вопрос: чем отличаются эксперты от индикаторов, что побудило разделить эти две сущности?

Вот видите, оказывается, Вы не знаете разницы. И, похоже, еще не думали о контексте использования.

Ну вот, опять разработчики МТ проявили свою культуру ведения дискуссии.
Вместо ответа получаем вопрос, еще и на личности переходим.
И так большую часть времени.
О чем я думал, и что я знаю, мы здесь не обсуждаем, мы обсуждаем МТ4.
Спасибо за ответ, не заморачивайтесь объяснением своих решений и в дальнейшем.

Совет.
Опуститесь с небес, и задумайтесь, сколько времени вы бы ловили глюки если бы не обычные люди которые "живут" на этом форуме и бесплатно присылают вам свои замечания.
Так может все же стоит быть вежливее и внимательнее к ним.
 
Вероятно, Вы забыли свои слова (явно создающие негативную оценку нашего профессионализма):
Очень жаль, что авторы МТ опять "ломанулись" кодировать, а не занялись сначала проектированием.

На что был дан корректный ответ с просьбой спроектировать и обосновать свой взгляд.

Вместо ответа получаем вопрос, еще и на личности переходим.

Вообще-то, в отличие от Вас, мы много думаем над тем что делаем. И если сделали функциональное разделение на экспертов, индикаторы и скрипты - значит это нужно.

Опуститесь с небес, и задумайтесь, сколько времени вы бы ловили глюки если бы не обычные люди которые "живут" на этом форуме и бесплатно присылают вам свои замечания./

Мы это очень ценим и стараемся улучшить свои продукты. Без советов и пожеланий пользователей нам было бы труднее вести разработки. Кстати, мы открываем раздел багтрекинга и любой человек может послать запрос или баз напрямую в нашу базу групповой разработки - запрос будет запротоколирован, автоматически прикреплен на конкретного разработчика и будет виден в плане работ над конкретным модулем (терминал, компилятор, редактор и тд).

Так может все же стоит быть вежливее и внимательнее к ним.

Признаю. Стараемся всегда отвечать вежливо, но не всегда получается.
Постоянно работаем над улучшением сервиса.
Спасибо за критику.
 
Вероятно, Вы забыли свои слова (явно создающие негативную оценку нашего профессионализма):
Очень жаль, что авторы МТ опять "ломанулись" кодировать, а не занялись сначала проектированием.

На что был дан корректный ответ с просьбой спроектировать и обосновать свой взгляд.

Да нет, я не забыл свои слова и этот форум подтверждение моих слов.
И это не я должен что-то обосновывать, толку от моих обоснований никагого, это вы должны обосновывать свои решения, что бы тем, что их использует, было понятно, что и как происходит с МТ, и что от него ожидать.
Поэтому еще раз повторю вопрос:

Чем отличаются эксперты от индикаторов, что побудило разделить эти две сущности?


Расскажите, пожалуйста, форуму это раз и навсегда снимет вопросы такого рода.


Вместо ответа получаем вопрос, еще и на личности переходим.

Вообще-то, в отличие от Вас, мы много думаем над тем, что делаем. И если сделали функциональное разделение на экспертов, индикаторы и скрипты - значит это нужно.

Ну вот, опять.
"Вообще-то, в отличие от Вас, мы много думаем над тем, что делаем."
Это по Вашему и есть ответ? Да еще и вежливый?
Если вы много думаете, то почему в МТ столько просчетов и недостатков даже в самых элементарных вещах?
 
Присоединяюсь к goldenlion.
Вообще-то, в отличие от Вас, мы много думаем над тем что делаем. И если сделали функциональное разделение на экспертов, индикаторы и скрипты - значит это нужно.

И тоже хотел бы понять зачем это нужно.

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

И тоже хотел бы понять зачем это нужно.

Пока у меня сложилось такое впечатление, что так просто исторически сложилось.
И наверное было бы лучше не делать такого разделения, но в текущей архитектуре МТ этого не получится.

Полность согласен с обоими мыслями.
Потянули в МТ4 старое заблуждение.
 
мы это уже несколько раз обсуждали.
индикаторы считаются в общем интерфейсном потоке. индикаторы поддерживают до 8 индикаторных буферов, размер которых поддерживается автоматически. эти индикаторные буфера отрисовываются нашей стандартной функцией отображения индикатора.
эксперты (и скрипты тоже) считаются в отдельном потоке, асинхронно. поэтому эксперты могут работать сколь угодно долго, не задерживая основной интерфейсный поток. поэтому же эксперты, в отличие от индикаторов, имеют право торговать.
эксперты и индикаторы работают в разных контекстах. эксперты - это самостоятельная сущность и работают в контексте объекта под названием "чарт". индикаторы работают в контексте объекта под названием "подокно, принадлежащее графику, с выставленными координатными пределами". а вот пользовательские индикаторы (с них именно речь и началась) работают уже в контексте индикатора.
[добавление]то есть, пользовательский индикатор не является самостоятельной сущностью, а всего лишь движок индикатора[/добавление]
и как вам пригодятся эти знания?
 
мы это уже несколько раз обсуждали.
..........
и как вам пригодятся эти знания?


Спасибо за ответ.
Это очень важные знания, и они очень пригодятся тем кто пишет под МТ4.
Занесите, пожалуйста, ответ на этот вопрос в FAQ, я Вас уверяю большое количество людей скажут Вам спасибо.


а вот пользовательские индикаторы (с них именно речь и началась) работают уже в контексте индикатора.

??? Вы хотели написать в контексте эксперта?
Получается возможна ситуация когда обратившись из эксперта к пользовательскому индикатору мы можем вызвать задержку эксперта ( так как эксперт асинхронен и а индикатор в общем потоке )?
 
??? Вы хотели написать в контексте эксперта?
Получается возможна ситуация когда обратившись из эксперта к пользовательскому индикатору мы можем вызвать задержку эксперта ( так как эксперт асинхронен и а индикатор в общем потоке )?

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

Жаль, что такую информацию приходится добывать урывками
и с боем. Из 18 постов в теме только один, Ваш, относится к
сути дела. Да и то, предельно лаконичен.

Почему ничего этого нет в описании MQL ?
Разве этот язык не для того создан чтобы писать скрипты, индикаторы
и эксперты ? А как их можно писать не зная замыслов разработчиков
относительно этих сущностей и их использования ?

Слава, Ваш ответ меня устраивает, поскольку проясняет суть дела.
Но этого недостаточно, поскольку теперь возникает куча новых
вопросов. Например:
Ни буферы, ни средства их использования получается в экспертах
использовать нельзя. Чего еще нельзя делать в экспертах ?
Как сами разработчики представляют стратегию использования
индикаторов и экспертов ? И т.д.

Напишите один раз подробное пояснение и добавьте его в качестве
отдельной страницы на сайте в разделе MQL.
 
И отдельно IMHO по теме.
Получается, что эксперт ориентирован на работу с простыми числами,
т.е. значениями индикаторов для данного момента или может быть
также еще для 2-3 точек. Если я хочу чего-то большего, то должен
организовывать все сам, своими руками.

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

Эти возможности в известной мере есть в индикаторах, но они
не могут торговать !

Разработчики ! Вы оторвали глаза от головы, а голову от рук.
И призываете писать экономные программы. Как ?

У меня два индикатора, три буфера. Скомпоновать их вместе,
добавить торговлю и будет одна программа-эксперт. Но получается,
что это невозможно, я должен писать три программы, которые будут взаимодействовать на рынке. При этом еще и потеря качества:
сколько чисел мне нужно для анализа столько раз я должен обращаться
к индикаторам. А для анализа эти числа надо еще и организовать ...

Вношу простейшее предложение !
Введите одно простое #property которое будет различать в каком
потоке работает программа: в синхронном или асинхронном.
И это #property будет отличать индикаторов и экспертов. В остальном
же дайте экспертам возможности, которые есть у индикаторов.

Еще более простое предложение.
Если пришла новая котировка, то в индикаторе запускается функция
start() независимо от того, закончил он обработку предыдущей или нет.
Работа эксперта не прерывается, но если он не был готов в момент
прихода котировки, то поезд ушел без него. Котировка теряется.
А ведь до прихода следующей котировки может пройти и 1-2 минуты !

Можно просто выставлять флаг "пришла новая котировка".
Если индикатор или эксперт готов ее взять - возьмет сразу. Не готов -
возьмет, когда закончит обработку предыдущей. Не успеет - что ж,
пропустит одну (или 10). Пусть это будет проблема писателя-пользователя.
Короче - стек на одно значение. Тогда синхронная или асинхронная работа
будет определяться тем, насколько быстро работает программа пользователя.
Думаю, что все, кто пишет эти программы с удовольствием возьмут на себя
эту ответственность.
Причина обращения: