Ошибки, баги, вопросы - страница 1494
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
В MQL4++ без extern не могу обойтись, когда нужно поменять входные параметры программно.
Вам абсолютно ничего не мешает работать с обычными переменными. Для интерактивных индикаторов вообще не нужны по сути внешние const параметры, контролируемые не вашей же интерактивностью.
Вы просто ленитесь и требуете нерациональное излишество, которым сами же не будете пользоваться так как имеется уже рабочая альтернатива.
Что Вы посоветуете владельцам нескольких мониторов? Каким образом можно организовать эффективную работу с терминалом?
Все вкладки и служебные окна (тулбокс, тестер, обзор рынка, навигатор, окно данных, тулбары) вынести на отдельный монитор.
В окне терминала оставить только графики. Окно терминала растянуть на оставшиеся несколько мониторов, которые имеют одинаковые характеристики по размерам и разрешению
Вы бы лучше не требовали с таким видом объяснения почему нет этого события в МТ.
А писали бы в Сервисдеск с подробным пояснением как оно по вашему должно работать и зачем оно может быть нужно 99% трейдерам.
Вам абсолютно ничего не мешает работать с обычными переменными. Для интерактивных индикаторов вообще не нужны по сути внешние const параметры, контролируемые не вашей же интерактивностью.
Вы просто ленитесь и требуете нерациональное излишество, которым сами же не будете пользоваться так как имеется уже рабочая альтернатива.
Не понимаю столь агрессивного восприятия спокойных рассуждений. Вам что-то нехорошее показалось... Этого нет, все хорошо, успокойтесь. Вы же не Р...
По-моему тут можно использовать OnTimer(), каждые Х миллисекунд вызывать событие.
Этому решению уже давно придумано более точечный вариант - ставить индикаторы на нужные символы и отправлять пользовательское событие в эксперт.
В курсе, поэтому сразу и написал:
zaskok3:
Зачем-то предлагаются костыльные решения через таймер или еще большее извращение - OnChartEvent.
Slawa, мне не совсем понятна Ваша логика:
Slawa:
Каковы аргументы желающих тиков от чужих символов? "Я не хочу крутить таймер для отслеживания нужных символов, потому что могу опоздать к раздаче". А так как событие тика чужого символа (особенно если мониторится несколько символов) может быть задержано в очереди собственной же обработкой другого события, то тут с гораздо большей вероятностью будет опоздание к раздаче.
Поверьте, мы действительно обсуждали события о чужих тиках. Поэтому и пришли к выводу: "гораздо лучше использовать таймер"
Тогда с какой целью есть OnTick, если достаточно таймера и для своих тиков? У меня логика, возможно, работает неправильно. Но рассуждаю следующем образом: раз есть OnTick - должен быть и OnMarketWatch. Раз OnMarketWatch можно реализовать через OnTimer, то тоже самое можно сделать и с OnTick. Значит существование OnTick имеет те же обоснования, что и существование OnMarketWatch. Но один есть, а другого - нет.
OnTick-очередь обнуляется для тиков, которые были во время выполнения текущего OnTick (в советниках так). О каком переполнении очереди идет - не ясно. На выходных вхолостую гонять таймер - не разумно. В советниках же OnTick не срабатывает на каждом тике. Именно по этой причине нельзя собрать тики без пропусков в советнике. Очередь обнуляется, и это нормально. Никаких переполнений.
zaskok3:
Slawa, мне не совсем понятна Ваша логика:
Тогда с какой целью есть OnTick, если достаточно таймера и для своих тиков? У меня логика, возможно, работает неправильно. Но рассуждаю следующем образом: раз есть OnTick - должен быть и OnMarketWatch. Раз OnMarketWatch можно реализовать через OnTimer, то тоже самое можно сделать и с OnTick. Значит существование OnTick имеет те же обоснования, что и существование OnMarketWatch. Но один есть, а другого - нет.
OnTick-очередь обнуляется для тиков, которые были во время выполнения текущего OnTick (в советниках так). О каком переполнении очереди идет - не ясно. На выходных вхолостую гонять таймер - не разумно. В советниках же OnTick не срабатывает на каждом тике. Именно по этой причине нельзя собрать тики без пропусков в советнике. Очередь обнуляется, и это нормально. Никаких переполнений.
OnTick плавно перешёл из четвёрочной функции start
OnTick покрывает 99% потребностей и позволяет писать простые программы.
О переполнении очереди не идёт речи. Речь идёт о её разбухании - события не теряются.
Нет отдельных очередей для отдельных событий (OnTick-очередь). Очередь одна общая для всех событий одного эксперта.
Но очередь пополняется событиями вполне интеллектуально - если в очереди есть необработанное событие NewTick, то в неё не добавляются другие события NewTick. Если в очереди есть необработанное событие Timer, то другие события Timer в очередь не добавляются. И т.п.
Про разумность-неразумность таймера. На самом деле таймер не забирает так много ресурсов, как Вы думаете. В клиентском терминале, кстати работают одновременно несколько таймеров для собственных нужд терминала. Работают постоянно, загрузка процессора 0
OnTick покрывает 99% потребностей и позволяет писать простые программы.
В 99% если в исходнике OnTick переобозвать на OnTimer, сделав инициализацию таймера еще (одна строчка), то результат не изменится - будет работать, как раньше и программа будет все так же простой.
OnTick плавно перешёл из четвёрочной функции start
А вот это да. Большинству привычнее. В этом основная причина.
Спасибо, что уделили столько внимания на разъяснения. Есть просьба добавить в кодобазу исходник реализации искусственной OnMarketWatch через таймер. В моей реализации мне приходится помнить предыдущие тики всех символов и на каждом шаге таймера сравнивать с текущими значениями. В случае различий, генерировать событие для вызова OnMarketWatch. И именно это действие и видится неразумным. Т.е. вхолостую OnTimer гонять на выходных не получается. Приходится все время сравнивать. Возможно, есть решение получше. Поэтому прошу Ваш вариант показать. Как бы Вы сделали.
А велосипеды с OnChartEvent попрежнему считаю извратом. Т.к. это требует открытия такого количества чартов, сколько символов в Обзоре рынка.
В теории, если я правильно понимаю, в случае если подписчик сигнала увеличивает плечё на счёте от 1:200 до 1:500 - это должно привести минимум к повышению открываемых объёмов в два раза. верно ?
И та же самая ситуация с нагрузкой депозита При её увеличении должны возрастать объёмы.
Один из моих подписчиков пишет мне, что он увеличил плечё от 1:200 до 1:500 и нагрузку с 50 % до 90 %. Но после этого объём открываемых объёмов не изменился ни в какую сторону. При этом баланс его счёта должен был более, чем позволить это
Может я что -то не так понимаю в системе копирования ?
...
Хватит задавать вопросы от имени мнимых (или вымышленных) подписчиков. Если у подписчика есть вопрос - пусть сам задаёт. В противном случае расценю как рекламу сигнала.
Боюсь вы меня не правильно поняли .Мой сигнал давно в рекламе не нуждается. Я стремлюсь сам разобраться в технических аспектах сервиса, которым пользуюсь. Тем не менее обращаются в первую очередь ко мне.
Это баг или мое слабое понимание языка: