ФОРТС. Вопросы по исполнению - страница 47

 
Sergey Chalyshev:

Удалять надо с последнего, иначе будут ошибки. 

Удалять - да, но мы же не знаем, что внутри функции RemoveOldOrder.
 

Ребята, Вы ПОРАЖАЕТЕ меня!

Если сделан OrderSelect(по билету), то он АКТИВНЫЙ, если _Symbol совпадает с символом ордера,

то НИКАКИХ ошибок быть не МОЖЕТ! 

Удалится ордер с выбранным билетом, по выбранному символу

P/S Если принципиально, то ордер удаляется так:

//+------------------------------------------------------------------+
//| Expert remove old order function                                 |
//+------------------------------------------------------------------+
void RemoveOldOrder( const string symbol, const ulong ord_ticket )
{
  MqlTradeRequest request = {0};
  MqlTradeResult  result  = {0};
  
  request.action = TRADE_ACTION_REMOVE;
  request.order  = ord_ticket;
  request.symbol = symbol; 
  
   if ( OrderSend( request, result ) )
   {
     if ( result.retcode == TRADE_RETCODE_PLACED )
     { 
        SetTransCount( true );
     }
  }
  else
  {
    CheckError( result.retcode, "RemoveOldOrder: Удаление старого ордера не выполнено! Причина: ", ORD_NO_STATUS, ord_ticket );
  }
}
 
Михаил:

Ребята, Вы ПОРАЖАЕТЕ меня!

Если сделан OrderSelect(по билету), то он АКТИВНЫЙ, если _Symbol совпадает с символом ордера,

то НИКАКИХ ошибок быть не МОЖЕТ! 

Михаил, вам намекают, что при прямом переборе, после успешного удаления ордера с индексом i вы пропустите ордер с индексом i+1, потому что он займет место удаленного, а ваш цикл пойдет дальше.

Но это действительно не должно приводить к ошибке удаления ордера после успешного выбора по тикету. 

 

А... понятно. Спасибо.

 
Михаил:

А... понятно. Спасибо.

Только, при выборе int orders_total = OrdersTotal();

Список не обновляется, до следующего выбора  orders_total = OrdersTotal(); 

 

 А вот результат:

  Миша, ты даже не человек, а просто МОНСТР какой-то в человеческой плоти! :)  Такой код сотворил. Хакер просто.

  Чувствую, что скоро ты ЕНТОТ Фортс взлАмаешь, легКо! :)  

 
Михаил:

Привет!

А сделайте пожалуйста следующее:

1. В командной строке набери netstat -ab

2. Посмотрите IP адрес, который стоит справа от [terminal64] 

3. В командной строке наберите tracert [этот IP адрес] без квадратных скобок

4. Результат Tracert выложите здесь, пожалуйста.

Сдаётся мне, что ПРОБЛЕМА была не только в кабельном провайдере Открывашки.... 

Да пожалуйста :)



 

 
Adept:

Да пожалуйста :)



 

Спасибо, Adept!

Совершенно разные кабельные провайдеры у БКС и Открывашки, а результат один 7-8 ms у меня и у Adept(a),

а сколько было у меня и у него все видели... 

 

Значит MQ "ручку" приложили...

Не красиво получается..... :( 

В БКС-то с сетью ничего не делали

 
Хаслят)
 
Ром:
Хаслят)

Яха?

/*Шучу. Так-то понимаю, что вы рэп имели в виду. )*/

 
Михаил:

Спасибо, Adept!

Совершенно разные кабельные провайдеры у БКС и Открывашки, а результат один 7-8 ms у меня и у Adept(a),

а сколько было у меня и у него все видели... 

 

Значит MQ "ручку" приложили...

Не красиво получается..... :( 

В БКС-то с сетью ничего не делали! 

 

  Эх, Миша, всё бы тебе заговоры искать! Прям маньяк какой-то.  :)))

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