Как проверить, выбран ли ордер - страница 5

 
borilunad:
Точно! Это о Вас и ещё есть: "у попа была собака..."

Все бы хорошо, только я создал эту ветку для обсуждения конкретной проблемы, а не функций Кима. Хотите поговорить о его функциях, создайте тему и говорите со своими единомышленниками.

 
borilunad:
... И где он раньше был?!
Отвлекался на всякую чушь: https://www.mql5.com/go?link=http://www.alpari.ru/ru/cnews/34227.html
 
Ant_TL:

Все бы хорошо, только я создал эту ветку для обсуждения конкретной проблемы, а не функций Кима. Хотите поговорить о его функциях, создайте тему и говорите со своими единомышленниками.

Нет никакой проблемы, если Вы программируете по логике. Зачем создавать ветку, если мнение других Вас не интересует. Обсуждать тут нЕчего! Многие новички давно уже усвоили то, что Вы не хотите понимать. Вы сами себе мешаете думать.
 
borilunad:
Нет никакой проблемы, если Вы программируете по логике. Зачем создавать ветку, если мнение других Вас не интересует. Обсуждать тут нЕчего! Многие новички давно уже усвоили то, что Вы не хотите понимать. Вы сами себе мешаете думать.

 Я несколько лет пишу сложные торговые системы на тысячи строк, а Вы утверждаете, что я не понимаю азбучных истин. Мне кажется, что скорее Вы не понимаете тему.

 
tara:
Отвлекался на всякую чушь: https://www.mql5.com/go?link=http://www.alpari.ru/ru/cnews/34227.html
Ну и впрям, нарочно не придумаешь! Как же он в своей ТС не выбирает тикет? Прямо чудеса в решете!
 
borilunad:
Ну и впрям, нарочно не придумаешь! Как же он в своей ТС не выбирает тикет? Прямо чудеса в решете!

Борис, сегодня Вы еще с FantasYGold поговорили:) Он годик назад прям здесь на спор депо раз в десять увеличил совсем быстро :)
 
borilunad:
Ну и впрям, нарочно не придумаешь! Как же он в своей ТС не выбирает тикет? Прямо чудеса в решете!

Ну допустим тикет выбран, что вы предлагаете дальше? Сохранять его в отдельную специальную переменную, чтобы знать в другой функции, что он был выбран последним и потом его восстановить?

Это А) избыточность данных и Б) ненужное усложнение кода, т.к. дописывать код придется каждый раз, когда где-либо выбирается тикет 

 
Ant_TL:

Ну допустим тикет выбран, что вы предлагаете дальше? Сохранять его в отдельную специальную переменную, чтобы знать в другой функции, что он был выбран последним и потом его восстановить?

Это А) избыточность данных и Б) ненужное усложнение кода, т.к. дописывать код придется каждый раз, когда где-либо выбирается тикет 

Я этого не предлагал Вам! Каждый раз необходимо перебирать и перепроверять позиции, т.к. ситуация меняется. Закрылась одна позиция, и нужно снова пересчитывать, не Вам, конечно, а программе.
 
borilunad:
Я этого не предлагал Вам! Каждый раз необходимо перебирать и перепроверять позиции, т.к. ситуация меняется. Закрылась одна позиция, и нужно снова пересчитывать, не Вам, конечно, а программе.

 Вы, наверное, думаете, что я пытаюсь сохранить значение тикета между различными запусками функции start (между разными тиками). Если так, то Вы не правы: я говорю о сохранении значения тикета внутри одного и того же тика. Перечитайте внимательно мои объяснения.

 
Ant_TL:

Как решить эту задачу без генерирования ошибки 4105 если текущий ордер не выбран?

если у вас открыта одна позиция 

//+------------------------------------------------------------------+
//|                                          танковый программер.mq4 |
//|                        Copyright 2012, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"
int ticket;
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----
    for (int i=0; i<OrdersTotal(); i++) 
        {
          if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) 
             {
              if (OrderSymbol()==Symbol()) 
                {
                   ticket = OrderTicket();
                }
             }
        }
     if(OrderSelect(ticket,SELECT_BY_TICKET)==true)
       {
        Alert(ticket);
       }
//----
   return(0);
 }
//+------------------------------------------------------------------+