Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Вот видите, оказывается, Вы не знаете разницы. И, похоже, еще не думали о контексте использования.
Ну вот, опять разработчики МТ проявили свою культуру ведения дискуссии.
Вместо ответа получаем вопрос, еще и на личности переходим.
И так большую часть времени.
О чем я думал, и что я знаю, мы здесь не обсуждаем, мы обсуждаем МТ4.
Спасибо за ответ, не заморачивайтесь объяснением своих решений и в дальнейшем.
Совет.
Опуститесь с небес, и задумайтесь, сколько времени вы бы ловили глюки если бы не обычные люди которые "живут" на этом форуме и бесплатно присылают вам свои замечания.
Так может все же стоит быть вежливее и внимательнее к ним.
На что был дан корректный ответ с просьбой спроектировать и обосновать свой взгляд.
Вообще-то, в отличие от Вас, мы много думаем над тем что делаем. И если сделали функциональное разделение на экспертов, индикаторы и скрипты - значит это нужно.
Мы это очень ценим и стараемся улучшить свои продукты. Без советов и пожеланий пользователей нам было бы труднее вести разработки. Кстати, мы открываем раздел багтрекинга и любой человек может послать запрос или баз напрямую в нашу базу групповой разработки - запрос будет запротоколирован, автоматически прикреплен на конкретного разработчика и будет виден в плане работ над конкретным модулем (терминал, компилятор, редактор и тд).
Признаю. Стараемся всегда отвечать вежливо, но не всегда получается.
Постоянно работаем над улучшением сервиса.
Спасибо за критику.
На что был дан корректный ответ с просьбой спроектировать и обосновать свой взгляд.
Да нет, я не забыл свои слова и этот форум подтверждение моих слов.
И это не я должен что-то обосновывать, толку от моих обоснований никагого, это вы должны обосновывать свои решения, что бы тем, что их использует, было понятно, что и как происходит с МТ, и что от него ожидать.
Поэтому еще раз повторю вопрос:
Чем отличаются эксперты от индикаторов, что побудило разделить эти две сущности?
Расскажите, пожалуйста, форуму это раз и навсегда снимет вопросы такого рода.
Вообще-то, в отличие от Вас, мы много думаем над тем, что делаем. И если сделали функциональное разделение на экспертов, индикаторы и скрипты - значит это нужно.
Ну вот, опять.
"Вообще-то, в отличие от Вас, мы много думаем над тем, что делаем."
Это по Вашему и есть ответ? Да еще и вежливый?
Если вы много думаете, то почему в МТ столько просчетов и недостатков даже в самых элементарных вещах?
И тоже хотел бы понять зачем это нужно.
Пока у меня сложилось такое впечатление, что так просто исторически сложилось.
И наверное было бы лучше не делать такого разделения, но в текущей архитектуре МТ этого не получится.
И тоже хотел бы понять зачем это нужно.
Пока у меня сложилось такое впечатление, что так просто исторически сложилось.
И наверное было бы лучше не делать такого разделения, но в текущей архитектуре МТ этого не получится.
Полность согласен с обоими мыслями.
Потянули в МТ4 старое заблуждение.
индикаторы считаются в общем интерфейсном потоке. индикаторы поддерживают до 8 индикаторных буферов, размер которых поддерживается автоматически. эти индикаторные буфера отрисовываются нашей стандартной функцией отображения индикатора.
эксперты (и скрипты тоже) считаются в отдельном потоке, асинхронно. поэтому эксперты могут работать сколь угодно долго, не задерживая основной интерфейсный поток. поэтому же эксперты, в отличие от индикаторов, имеют право торговать.
эксперты и индикаторы работают в разных контекстах. эксперты - это самостоятельная сущность и работают в контексте объекта под названием "чарт". индикаторы работают в контексте объекта под названием "подокно, принадлежащее графику, с выставленными координатными пределами". а вот пользовательские индикаторы (с них именно речь и началась) работают уже в контексте индикатора.
[добавление]то есть, пользовательский индикатор не является самостоятельной сущностью, а всего лишь движок индикатора[/добавление]
и как вам пригодятся эти знания?
..........
и как вам пригодятся эти знания?
Спасибо за ответ.
Это очень важные знания, и они очень пригодятся тем кто пишет под МТ4.
Занесите, пожалуйста, ответ на этот вопрос в FAQ, я Вас уверяю большое количество людей скажут Вам спасибо.
а вот пользовательские индикаторы (с них именно речь и началась) работают уже в контексте индикатора.
??? Вы хотели написать в контексте эксперта?
Получается возможна ситуация когда обратившись из эксперта к пользовательскому индикатору мы можем вызвать задержку эксперта ( так как эксперт асинхронен и а индикатор в общем потоке )?
Получается возможна ситуация когда обратившись из эксперта к пользовательскому индикатору мы можем вызвать задержку эксперта ( так как эксперт асинхронен и а индикатор в общем потоке )?
я сделал дополнение в своём предыдущем посте. программа пользовательского индикатора является движком индикатора.
конечно вызовет задержку эксперта. однако, индикаторы, которые вызывает эксперт, работают не в интерфейсном потоке, а в потоке эксперта (в этом отношении индикаторы несамостоятельны).
Спасибо за ответ, наконец услышал что-то по делу.
Информация очень существенная ! Из нее следует, что в эксперте
практически ничем нельзя пользоваться из того, что делает
индикатор полезным. Все надо делать своими руками.
Жаль, что такую информацию приходится добывать урывками
и с боем. Из 18 постов в теме только один, Ваш, относится к
сути дела. Да и то, предельно лаконичен.
Почему ничего этого нет в описании MQL ?
Разве этот язык не для того создан чтобы писать скрипты, индикаторы
и эксперты ? А как их можно писать не зная замыслов разработчиков
относительно этих сущностей и их использования ?
Слава, Ваш ответ меня устраивает, поскольку проясняет суть дела.
Но этого недостаточно, поскольку теперь возникает куча новых
вопросов. Например:
Ни буферы, ни средства их использования получается в экспертах
использовать нельзя. Чего еще нельзя делать в экспертах ?
Как сами разработчики представляют стратегию использования
индикаторов и экспертов ? И т.д.
Напишите один раз подробное пояснение и добавьте его в качестве
отдельной страницы на сайте в разделе MQL.
Получается, что эксперт ориентирован на работу с простыми числами,
т.е. значениями индикаторов для данного момента или может быть
также еще для 2-3 точек. Если я хочу чего-то большего, то должен
организовывать все сам, своими руками.
Человек торгует глядя не только на числа, но еще и на график,
т.е. распознавая графические образы. Чтобы программа хоть в
какой-то мере могла делать то же самое, она должна иметь
развитые возможности для работы с массивами, поскольку
все образы в машине представляются наборами чисел.
Эти возможности в известной мере есть в индикаторах, но они
не могут торговать !
Разработчики ! Вы оторвали глаза от головы, а голову от рук.
И призываете писать экономные программы. Как ?
У меня два индикатора, три буфера. Скомпоновать их вместе,
добавить торговлю и будет одна программа-эксперт. Но получается,
что это невозможно, я должен писать три программы, которые будут взаимодействовать на рынке. При этом еще и потеря качества:
сколько чисел мне нужно для анализа столько раз я должен обращаться
к индикаторам. А для анализа эти числа надо еще и организовать ...
Вношу простейшее предложение !
Введите одно простое #property которое будет различать в каком
потоке работает программа: в синхронном или асинхронном.
И это #property будет отличать индикаторов и экспертов. В остальном
же дайте экспертам возможности, которые есть у индикаторов.
Еще более простое предложение.
Если пришла новая котировка, то в индикаторе запускается функция
start() независимо от того, закончил он обработку предыдущей или нет.
Работа эксперта не прерывается, но если он не был готов в момент
прихода котировки, то поезд ушел без него. Котировка теряется.
А ведь до прихода следующей котировки может пройти и 1-2 минуты !
Можно просто выставлять флаг "пришла новая котировка".
Если индикатор или эксперт готов ее взять - возьмет сразу. Не готов -
возьмет, когда закончит обработку предыдущей. Не успеет - что ж,
пропустит одну (или 10). Пусть это будет проблема писателя-пользователя.
Короче - стек на одно значение. Тогда синхронная или асинхронная работа
будет определяться тем, насколько быстро работает программа пользователя.
Думаю, что все, кто пишет эти программы с удовольствием возьмут на себя
эту ответственность.