Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 2487

 
Ivan Butko #:
По этой ссылке бесполезная чепуха

Вопрос был про индикаторы, в которых не вызывается хендл, нужно ли в них что-то в деинициализации прописывать

Бесполезная чепуха для вас это в документации. А там совет хорошего лекарства.

Интересно как вы в MQL5, работая с индикатором, обходитесь без хендла этого индикатора…

 
Alexey Viktorov #:

Бесполезная чепуха для вас это в документации. А там совет хорошего лекарства.

Интересно как вы в MQL5, работая с индикатором, обходитесь без хендла этого индикатора…

У вас мед образование? Не травите людей, это уголовно наказуемо. 




Как-как: запускаешь параболик, в нём никакх хендлов нет, только массивы и буферы. Устанавливаешь в него алерт. Затем, при обределённых обстоятельствах, запускается функция ChartIndicatorDelete(0,0,"     ");. Индикатор самоудаляется с графика. 

Вопрос (повторно): нужно ли в деинициализации что-то прописывать, чтобы полностью удалить расчётную часть, или она сама удаляется полностью (в отсутствии внутренних вызовов). 

Ещё проще: нужно ли что-то прописывать в деинициализации стандартного параболика/зигзага/фрактала/машек и тд, если установил Алерт/Пуш/Имейл/Саунд?



UPD

Вопрос возник из-за нестандартного индикатора, в котором вызывается параболик. Если установить алерт, а потом удалить этот самодельный индикатор функцией  ChartIndicatorDelete(0,0,"     ");, то он продолжает какого-то трезвонить Алерты. Он не удаляется чтоли? Зачем тогда ээта функция. 

Из слов Артёма я понял, что чтобы полностью "убить" эту трезвонку, нужно использовать ИндикаторРелиз
 

Доброго дня всем ) 

Учусь считывать тиковую историю. Этот код даёт историю отлично на мосбирже, и на российском форексе. А попробовал  Альпари и не могу понять: ошибки не даёт, просто считывает ноль тиков и всё. Помогите, пожалуйста, не могу понять что меняется от этого. 


    ulong  time1 = ulong ( D' 2024.05.10  10:00:00 ' )*1000 ;
    ulong  time2 = ulong ( D' 2024.11.10  23:55:00 ' )*1000 ;
                
    ticks = CopyTicksRange ( _Symbol , ticks_array , COPY_TICKS_ALL , time1 , time2 ) ;
                  
    //  СЧИТАНО/НЕТ
    if ( ticks == -1 )  {  Print ( "\n Ошибка чтения тиков: " + GetLastError()  ) ;  }
  else                  {  Print ( "\n Всего считано тиков в истории: " + ticks ) ;  }
 
Ivan Butko #:


UPD

Вопрос возник из-за нестандартного индикатора, в котором вызывается параболик. Если установить алерт, а потом удалить этот самодельный индикатор функцией  ChartIndicatorDelete(0,0,"     ");, то он продолжает какого-то трезвонить Алерты. Он не удаляется чтоли? Зачем тогда ээта функция. 

Из слов Артёма я понял, что чтобы полностью "убить" эту трезвонку, нужно использовать ИндикаторРелиз

это видимо фича последних релизов :-)

при отладке заметил - теперь индикатор после удаления ещё какое-то время живёт своей внутренней жизнью (на экран уже ничего не поступает, по печать, алерты и прочее живы) . Причём довольно долго, весьма заметное время

 

Всем привет! 

Подскажите плиз...

Допустим: Нарисовал трендовую линию (наклонную) через несколько экстремумов...например на 5-ти минутном тайм-фрейме. Хочу снять цену на этой линии на каждой пятиминутке (даже если эта линия не проходит через какие-то бары)... В общем, нужна цена каждой точки  трендовой линии...не только там где экстремумы.

 
Alexey Viktorov #:

А у вас где пропускает? 

)
У меня все коды работают согласно заложенной в них логике...
В том числе и благодаря вашим подсказкам....

Там при переборе вверх и возможном удалении позы - возможен пропуск.... )
 
Roman Shiredchenko #:
)
У меня все коды работают согласно заложенной в них логике...
В том числе и благодаря вашим подсказкам....

Там при переборе вверх и возможном удалении позы - возможен пропуск.... )

Вот ключевая фраза… «возможном удалении». А где в том коде закрытие позиции? Ну нет закрытия позиции или удаления отложки, так и не надо голову заморачивать… Ведь это пишете вы и контролируете вы…

Именно для таких случаев есть лекарство…

 
Maxim Kuznetsov #:

это видимо фича последних релизов :-)

при отладке заметил - теперь индикатор после удаления ещё какое-то время живёт своей внутренней жизнью (на экран уже ничего не поступает, по печать, алерты и прочее живы) . Причём довольно долго, весьма заметное время

Теперь понятней стало)

Раньше, помню, всё тоже самое делал, ничего не "заедало". Значит изменения
 
AlexProf #:

Всем привет! 

Подскажите плиз...

Допустим: Нарисовал трендовую линию (наклонную) через несколько экстремумов...например на 5-ти минутном тайм-фрейме. Хочу снять цену на этой линии на каждой пятиминутке (даже если эта линия не проходит через какие-то бары)... В общем, нужна цена каждой точки  трендовой линии...не только там где экстремумы.

ObjectGetValueByTime


 

Всем добрый день. У меня есть включаемый файл 34-LIBRARY OF FUNCTIONS AND VARIABLES.mqh

В нём у меня объявлена переменная в которой храниться значение стоп левела у брокера

Строка с переменной стоп левела.

   double stoplevel= MarketInfo(Symbol(), MODE_STOPLEVEL)*Point; // УРОВЕНЬ СТОП ЛЕВЕЛА У БРОКЕРА

и у меня есть второй включаемый файл

117-LIBRARY_STOP_LOSS_AND_TAKE_PROFIT.mqh

Мне нужно, чтобы переменную стоп левела было видно в файле 117, из файла 34. Пробовал в советнике подключить сначала 34-, а потом 117- скомпилировал и советник и включаемые файлы, но в файле 117- переменную стоп левела не видно.

Как сделать так, чтобы переменная стоп левела из файла 34, была видна во всём файле 117, и внутри функций файла 117, и при этом чтобы переменнаястоп левела в советниках где подключен файл 34, так же осталась видна?