Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 1948
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
2) Если у массива обратная индексация, то по идее новые ячейки должны появляться в начале массива - чего не наблюдается
а почему новые ячейки должны появляться в начале массива? - если не ошибаюсь, то в справке должно быть написано, что при применении ArraySetAsSeries() физически массив не перераспределяется в памяти, просто будет использована обратная индексация при обращению к элементам массива
ЗЫ: пример у Вас сложный, вот набросал:
2022.04.18 21:31:59.223 tst EURUSD,H1: arr2 = 5 , 4 , 3 , 2 , 1 , 0 , 0 , 0 , 0 , 0 ,
2022.04.18 21:31:59.223 tst EURUSD,H1: arr1 = 1 , 2 , 3 , 4 , 5 , 0 , 0 , 0 , 0 , 0 ,
2022.04.18 21:31:59.223 tst EURUSD,H1: Resize : 10 , 10
2022.04.18 21:31:59.223 tst EURUSD,H1: Start size : 5 , 5
У меня выскакивает ошибка 'iClose' - ambiguous call to overloaded function.
А вообще цель выбирать ТФ.
Хотел, по привычке из МТ4, выбирать так
Но обломился.(
Подскажите. как работает в МТ5
У меня выскакивает ошибка 'iClose' - ambiguous call to overloaded function.
А вообще цель выбирать ТФ.
Хотел, по привычке из МТ4, выбирать так
Но обломился.(
периоды в мт5
if(Period()==1) return "M1";
if(Period()==2) return "M2";
if(Period()==3) return "M3";
if(Period()==4) return "M4";
if(Period()==5) return "M5";
if(Period()==6) return "M6";
if(Period()==10) return "M10";
if(Period()==12) return "M12";
if(Period()==15) return "M15";
if(Period()==20) return "M20";
if(Period()==30) return "M30";
if(Period()==16385) return "H1";
if(Period()==16386) return "H2";
if(Period()==16387) return "H3";
if(Period()==16388) return "H4";
if(Period()==16390) return "H6";
if(Period()==16392) return "H8";
if(Period()==16396) return "H12";
if(Period()==16408) return "Daily";
if(Period()==32769) return "Weekly";
if(Period()==49153) return "Monthly";
периоды в мт5
if(Period()==1) return "M1";
if(Period()==2) return "M2";
if(Period()==3) return "M3";
if(Period()==4) return "M4";
if(Period()==5) return "M5";
if(Period()==6) return "M6";
if(Period()==10) return "M10";
if(Period()==12) return "M12";
if(Period()==15) return "M15";
if(Period()==20) return "M20";
if(Period()==30) return "M30";
if(Period()==16385) return "H1";
if(Period()==16386) return "H2";
if(Period()==16387) return "H3";
if(Period()==16388) return "H4";
if(Period()==16390) return "H6";
if(Period()==16392) return "H8";
if(Period()==16396) return "H12";
if(Period()==16408) return "Daily";
if(Period()==32769) return "Weekly";
if(Period()==49153) return "Monthly";
Спасибо!
Спасибо!
А чем вам не нравится ENUM_TIMEFRAMES?
И в input переменные можно в виде перечисления ставить и выбирать как угодно… Зачем такие танцы с бубном¿ Да и в mql4 уже давно доступно это перечисление…
А чем вам не нравится ENUM_TIMEFRAMES?
И в input переменные можно в виде перечисления ставить и выбирать как угодно… Зачем такие танцы с бубном¿ Да и в mql4 уже давно доступно это перечисление…
+
А чем вам не нравится ENUM_TIMEFRAMES?
И в input переменные можно в виде перечисления ставить и выбирать как угодно… Зачем такие танцы с бубном¿ Да и в mql4 уже давно доступно это перечисление…
Спасибо! Не знал.
Коллеги подскажите алгоритм можно оптимальный для нахождения цены выставленного ранее ближайшего к текущей цене лимитного ордера - соответственно к аск ближайшего сверху селл лимита, к бид -
ближайшего снизу бай - лимита.
Вот ф-ия считаю кол-во, но нужна ЦЕНА ранее выставленного лимитника, чтобы ф-ия возвращала...
Пока делаю через мин зн ие по цене для селл лимит и макс зн ие для бай лимит....
Коллеги подскажите алгоритм можно оптимальный для нахождения цены выставленного ранее ближайшего к текущей цене лимитного ордера - соответственно к аск ближайшего сверху селл лимита, к бид -
ближайшего снизу бай - лимита.
Вот ф-ия считаю кол-во, но нужна ЦЕНА ранее выставленного лимитника, чтобы ф-ия возвращала...
Пока делаю через мин зн ие по цене для селл лимит и макс зн ие для бай лимит....
запоминать в свою структуру или массив нужные цены с тикетами и еще может что нужно, время например, и сразу сортировать после добавления по цене. По ресурсам, если ищите не часто, то одинаково или немного дороже, а если часто, то лучше запоминать. Ну и если конечно у Вас не 100500 ордеров) Тогда тоже накладно может быть. В общем сортировка в структуре или многомерном массиве задача решена только для первого индекса к сожалению.
Иногда пользую несколько одномерных массивов с одинаковыми индексами, тикеты, время, цены. И поиск по индексу нужного свойства. Получаем индекс например меньшего времени или большей цены и получаем тикет нужного ордера. Костыль конечно, но работает понятно.
Вопрос возник, не нашел в поиске. Можно ли включить алготорговлю из советника. Получить свойства терминала, включено или нет вижу.
И можно ли в одном терминале запустить один советник с разрешенной алготорговлей, а другой нет.