Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Добавляй наш канал в Twitter'e и следи за новостями!
prt
364
prt 2013.09.21 18:03 

Здравствуйте. нужен совет.

Имеется цикл проверки наличия открытого ордера задача которого не продолжать программу при его наличии... ордер сенд присваивает значения тикета

Если ордера нету продолжаем... проверку if

int suma_pos = 0;
   
   for (int pos=0; pos<OrdersTotal(); pos ++)
      OrderSelect (pos, SELECT_BY_POS, MODE_TRADES);
         if (OrderSymbol()==Symbol()&&OrderMagicNumber()==Magic){
            suma_pos ++; Print ("suma_pos = ", suma_pos);
            return;}
            
   
            
   if(suma_pos==0 продолжаем проверку для открытия
Sergey Dzyublik
4621
Sergey Dzyublik 2013.09.21 18:48  

уважаемый начните изучать документацию и учебник

сложно понять что вы конкретно хотите

как-то так должно быть, если нужно без отложенных вставте еще конструкцию &&((OrderType()== OP_BUY)||(OrderType()== OP_Sell))

for (int pos=0; pos<=OrdersTotal()-1; pos ++) 
{
 if(OrderSelect (pos, SELECT_BY_POS)==true)
  {if (OrderSymbol()==Symbol()&&OrderMagicNumber()==Magic &&OrderCloseTime()==0) // если у Вас есть отложенные ордера и открытие
  return;}
 else
  Print("OrderSelect() вернул ошибку - ",GetLastError());
}            
 //продолжаем 
ktest0
631
ktest0 2013.09.21 19:10  
ALXIMIKS:

уважаемый начните изучать документацию и учебник

сложно понять что вы конкретно хотите

...


Зачем такая агрессия? Заметил вы очень склонны к грубости... Вам здесь должны или нижайше просят лично вашей помощи?

Переспросите и помогите, если желаете, а если что-то "не по вашему" - не нужно лаять на людей....

Artyom Trishkin
69040
Artyom Trishkin 2013.09.21 19:15  
ktest0:


Зачем такая агрессия? Заметил вы очень склонны к грубости... Вам здесь должны или нижайше просят лично вашей помощи?

Переспросите и помогите, если желаете, а если что-то "не по вашему" - не нужно лаять на людей....

+
Artyom Trishkin
69040
Artyom Trishkin 2013.09.21 19:18  
Profit777:

Здравствуйте. нужен совет.

Имеется цикл проверки наличия открытого ордера задача которого не продолжать программу при его наличии... ордер сенд присваивает значения тикета

Если ордера нету продолжаем... проверку if

Наличие ордера какого типа вам нужно определить? А вообще-то можно в функции пройтись в цикле по всем открытым ордерам/позициям и при встрече первой соответствующей критерию отбора вернуть true. После всего цикла возвращается false
Vladimir Perervenko
2233
Vladimir Perervenko 2013.11.28 08:30  

Более простой путь-> Скачайте библиотеки Кима (KimIV), если нужно доработайте и не теряйте время на изобретение велосипеда. Если только не стоит задача досконально изучить язык.

Удачи

/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий