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

 
Galim_V:

Приветствую! Не могу понять, почему в такой конструкции выбор по SELECT_BY_TICKET не работает, в отличии от SELECT_BY_POS.

В 4ке при при успешном открытии ордера возвращается тикет, а не результат, как в 5ке. Запоминайте его сразу после открытия ордера, и Магик нужен только для страховки. А не работает, потому что у Вас номера по порядку, а таких тикетов нет. Поэтому ошибка такого ордера нет.

 
Andrey Sokolov:
MakarFXMihail Matkovskij
спасиб. Но вопрос немного не об этом. А о том как советником отрисовать данные из массивов, как-то как из индикаторных буферов, чтоб не объектами, если это возможно.

Индикатор этим и отличается от советника, что у него есть индикаторные буферы, которые легче и дешевле рисуют чем в советнике. видимо только канвас родной или Семко в помощь.

 
Valeriy Yastremskiy:

Индикатор этим и отличается от советника, что у него есть индикаторные буферы, которые легче и дешевле рисуют чем в советнике. видимо только канвас родной или Семко в помощь.

Спасиб.
Индикатор этим и отличается от советника, что у него есть индикаторные буферы, которые легче и дешевле рисуют чем в советнике.  - да, Кэп.
Семко   - это что?

 
Andrey Sokolov:

Спасиб.
Индикатор этим и отличается от советника, что у него есть индикаторные буферы, которые легче и дешевле рисуют чем в советнике.  - да, Кэп.
Семко   - это что?

Николай, у него в кодобазе облеченный и улучшенный канвас. И вообще он по нему крут.

И эти буферы кстати сами по себе налагают кучу ограничений, поэтому ордера в индюках не выставляются.)
Nikolai Semko
Nikolai Semko
  • 2021.08.10
  • www.mql5.com
Профиль трейдера
 
Valeriy Yastremskiy:

Николай, у него в кодобазе облеченный и улучшенный канвас. И вообще он по нему крут.

И эти буферы кстати сами по себе налагают кучу ограничений, поэтому ордера в индюках не выставляются.)

Индикаторы одного чарта работают все в одном потоке. Поэтому, в них нельзя вызывать MessageBox и производить торговые операции. Узнать информацию о сделках и ордерах вроде можно, если мне не изменяет память... Но торговать нельзя. Только в экспертах и скриптах. На каждого эксперта выделяется свой поток.

 
Подскажите как ИЛИ   || клавиатурой набирать))) до сих пор копипастом переношу)))
 
Valeriy Yastremskiy:
Подскажите как ИЛИ   || клавиатурой набирать))) до сих пор копипастом переношу)))

 
MakarFX:

Спасибо))) Шифт Слеш))) Лень все таки не всегда панацея)))

 
Valeriy Yastremskiy:

В 4ке при при успешном открытии ордера возвращается тикет, а не результат, как в 5ке. Запоминайте его сразу после открытия ордера, и Магик нужен только для страховки. А не работает, потому что у Вас номера по порядку, а таких тикетов нет. Поэтому ошибка такого ордера нет.

Спасибо, но я так и не понял, что мне с этим делать. Исходник компилируется. Если есть время, ткни пальцем.

Файлы:
08pw65u5_04.mq4  26 kb
 
Galim_V:

Спасибо, но я так и не понял, что мне с этим делать. Исходник компилируется. Если есть время, ткни пальцем.

Логика хромает, все есть, и массивы под тикеты и типы ордеров. Только он не заполняется при открытии ордеров почему то, а в функции ТикетЛимит вообще обнуляет массив. На первый наискосок взгляд.

 if(ParSar>MaxClose&&chekt==1){
    ticket=_OrderSend(NULL,OP_BUYSTOP,0.01,MaxClose+(spread*Point()),0);
Увеличить последний индекс массива _тикет на 1.
Здесь запомнить тикет в массив _тикет и тип ордера тоже и запомнить последний индекс массива!!!
  }
    }
    if(MinClose!=0){
   if(ParSar<MinClose&&chekt==1){
    _price= NormalizeDouble( MinClose-(spread*Point()),Digits);
    ticket=_OrderSend(NULL,OP_SELLSTOP,0.01,_price,0);
Увеличить последний индекс массива _тикет на 1.
Здесь запомнить тикет в массив _тикет и тип ордера тоже и запомнить последний индекс массива!!!

А потом в Ордер селект подставлять значение массива _тикет) Цикл по индексу массива _тикет от 1 до последнего индекса.




Причина обращения: