Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 1121
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Потому что изначально много несоответствий текущим реальностям.
И вы под эти несоответствия пытаетесь находить оправдания.
Как раз наоборот, я писал что тик не равен пункту!
Это у вас пункт свой внутренний, придуманный.
Ввиду того что Point раньше соответствовал именно пункту, когда был только четырёх знак.
Но после ввода пятого разряда, у вас началось придумывание названий своими оправданиями.
Нет, не так. Вы предлагали показывать дистанцию не в пунктах, а в размерах тика.
Это глупость. Дистанция - это расстояние. А размер тика - это шаг, на который минимально за один раз движется цена.
Поэтому вы просите показывать не расстояние от точки А до точки Б, а количество шагов, за которые можно пройти это расстояние.
Говорю же - смешалось всё...
Ваша реальность какая-то куцая. Нет в ней половины общепринятых понятий. Есть что-то из своей головы.
Наверно потому, что нужно вернуть возвращаемое значение из функции.
Спасибо за ответ, но по прежнему проблема не решена... Мне нужно, чтобы параметр функции "str" возвращал в MQL свое измененное состояние
В MQL4 в это время:
Ну и сам вызов функции:
В результате получаю это:
т.е. параметром передается значение, но оно не корректное... Как мне решить этот вопрос? :)
Спасибо за ответ, но по прежнему проблема не решена... Мне нужно, чтобы параметр функции "str" возвращал в MQL свое измененное состояние
В MQL4 в это время:
Ну и сам вызов функции:
В результате получаю это:
т.е. параметром передается значение, но оно не корректное... Как мне решить этот вопрос? :)
При падении терминала, его придётся перезапускать. Индикатор придётся заново накидывать на график, либо запускать советник, использующий данные этого индикатора (тогда советник сам подгрузить этот индикатор при обращении к нему). При этом (да и даже при штатном перезапуске терминала с автоматической загрузкой установленных на графике программ), индикатор заново нарисует все свои линии - не нужно ничего никуда сохранять. Эти линии можно потом заново прочесть. Тем более, что их и так нужно считывать.
А чтобы советник мониторил только линии, созданные индикатором, достаточно посмотреть имена создаваемых им линий, и попробовать найти в именах повторяющиеся - одинаковые для всех линий - подстроки. Вот по этим подстрокам-то и искать нужные линии.
Всё просто - достаточно заглянуть в список объектов при запущенном индикаторе.
Мы вообще отходим от темы! Чем дальше дискутируем, тем сильнее не в тему! :)
Человеку всего-то требовалось получить СОБЫТИЕ, когда цена пересекает линию...
Дальше, я начал предполагать, почему мой пример "проблемный",.. Хотя по сути он решает ту задачу, которая в принципе была поставлена. Далее - уже фантазии автора, я помог чем смог))
Если не по теме,... и перегрузить терминал, то линии никуда не денутся, и есть вероятность того, что они останутся на своих местах. Если они будут переименованы, или меткой помечены - то с помощью обычной логики можно понять, что эти линии уже срабатывали когда-то, и их следует игнорировать. Но этой задачи то и не стояло)) К тому же, предположим, индикатор заново нарисует линии, а что с того? Как ты определишь, что часть из них уже сработала?))
Если на графике НЕТ НИЧЕГО, кроме линий, которые необходимо мониторить (как утверждал сам автор), то по идее их даже и фильтровать по имени нет никакой необходимости))
А так безусловно, можно по идее вообще и не рисовать никаких линий, а сохранять тогда уж все уровни в файл, и отмечать какие из них уже сработали. И перегружай хоть сколько терминал, ты будешь их помнить и без имен обьектов))
Ну где блин логика ребят.
По этому это грубая ошибка, а если намерено сделано так, то диверсия ))
Петька: а что такое логика, Василий Иванович?
В.И: ну это просто, вот смотри, у тебя спички есть?
Петька: да есть!
В.И. ну значит ты куришь, а если куришь, то и выпиваешь, а если выпиваешь, то и по девкам гуляешь, понятно?
Петька: ага, все просто!
Петька к проходившему мимо красноармейцу - спички есть?
Красноармеец: нет
Петька: ну значит ты "голубой"
ЛОГИКА, ну она такая вот странная, и под ЛОГИКУ, не нужно свои ожидания подстраивать
если разработчик заложился на новый тип данных ENUM_TIMEFRAMES , значит он заложился на дальнейшее использование этого типа в других участках программы - вот это логика
ЗЫ: можно конечно порассуждать, что МТ4 проектировали люди которые представляли, что нужно для трейдинга, а "другой терминал" писала группа инопланетян .... но мы выйдем за формат общения этого форума, поэтому про диверсии не стоит - что дали то и юзаем, что не хватает, то пишем сами, благо производительности терминала хватает с головой
кактотак
ЛОГИКА, ну она такая вот странная, и под ЛОГИКУ, не нужно свои ожидания подстраивать
если разработчик заложился на новый тип данных ENUM_TIMEFRAMES , значит он заложился на дальнейшее использование этого типа в других участках программы - вот это логика
ЗЫ: можно конечно порассуждать, что МТ4 проектировали люди которые представляли, что нужно для трейдинга, а "другой терминал" писала группа инопланетян .... но мы выйдем за формат общения этого форума, поэтому про диверсии не стоит - что дали то и юзаем, что не хватает, то пишем сами, благо производительности терминала хватает с головой
кактотак
хорошо хоть в синтаксисе логику не так часто ищут)))) Логика в быстродействии проглядывается в случае с таймфреймами, но могу ошибаться)
Петька: а что такое логика, Василий Иванович?
Я слышал другой вариант:
Анка селёдку ест? Значит она воду пьёт ...
Логический вывод, значит её ... можно.
НО, что если Bid по какой-то причине перескочил линию, и не был равен цене линии, тогда что?... Предусмотрите тогда хотя бы переменную, в которой храниться предыдущий тик, и если было пересечение нового тика вашей линии - то делайте какие-то действия... Но в этом случае не забудьте предусмотреть "допустимое" пересечение, так как если рынок откроется с Гэпом большим, или просто произойдет большой скачек цены, то вы махом откроетесь по множеству линий, и возможно не там, где хотите. Пусть при пересечении больше допустимого - выдается только сообщение,..
Спасибо за помощь, действие происходит при выставлении линий в ручную и пересечении этих линий, но линии индикатора почему-то советник не видит и не производит указанное мной действие. У всех линий индикатора есть в названии следующая фраза @Line (плюс нумерация "week-4", которая меняется) - может это как-то использовать?
Неправильно написал: название самих линий не изменяется, но у всех в названии есть общая фраза @Line
if(Bid == PriceLine)
это не пройдет
почитайте