Ошибка номер 6 - страница 15

 
Хмм.... Оказывается в моих советниах не было проверки на вохможность торговли
   if (!IsTradeAllowed()) {Print(TimeToStr(CurTime())," торговые операции недоступны");return;}


Видимо, хотел, да забыл вставить.
Только в одном была, так что надо все заново проверять.

 
эксперты торговать не могут, а вручную всё ок?
у нас в данный момент запущено несколько терминалов. открыты счета по 50 миллионов. скрипты торгуют в режиме нон-стоп. никаких проблем. причём, наш родной сервер находится на другом континенте, а не в соседней комнате.

да, именно так.
у меня счёт на 1 млн, 8 экспертов.
За вчера - 78 попыток, из них 73 ошибки (2 №4108, 1 №128, остальные №6)
За сегодня - 112 попыток, из них 100 ошибок - все №6.

могу выслать Trade_log, если надо...
 
у нас в данный момент запущено несколько терминалов. открыты счета по 50 миллионов. скрипты торгуют в режиме нон-стоп. никаких проблем. причём, наш родной сервер находится на другом континенте, а не в соседней комнате.

Попробуйте производить торговые операции с большими перерывами (раз в час или дольше), а в остальное время эксперт не должен ничего делать.
 
что примечательно, что соединение действительно есть:
+--------------------Expert-Information----------------------------+
+ ExpertName = *****
+ ChartSymbol = USDCHF
+ ChartPeriod = M15
+------------------------------------------------------------------+

+--------------------Error-Information-----------------------------+
+ LocalTime = 2005.09.23 11:58:40
+ Function = TrailingStop
+ GetLastError = 6
+ ErrorDescription = no connection with trade server
+ Action = Эксперты не будут торговать 5 минут...
+------------------------------------------------------------------+

+--------------------Market-Information----------------------------+
+ Bid = 1.2828
+ Ask = 1.2833
+ Spread = 0.0005
+ StopLevel = 0.0006
+------------------------------------------------------------------+

+-------------------LastBar-Information----------------------------+
+ Time [0] = 2005.09.23 10:45
+ Open [0] = 1.2815
+ High [0] = 1.2828
+ Low [0] = 1.2815
+ Close[0] = 1.2828
+------------------------------------------------------------------+

+--------------------Server-Information----------------------------+
+ ServerAddress = Alpari-Demo
+ ServerTime = 2005.09.23 10:58:44
+------------------------------------------------------------------+

+--------------------Account-Information---------------------------+
+ AccountNumber = 63310
+ AccountName = komposter
+ AccountEquity = 976116.89
+ AccountFreeMargin = 974215.13
+ AccountMargin = 1901.76
+
+ AccountBalance = 974896.11
+ AccountProfit = 1220.78
+ AccountCredit = 0.00
+ AccountCurrency = USD
+ AccountLeverage = 100
+------------------------------------------------------------------+
 
Хмм.... Оказывается в моих советниах не было проверки на вохможность торговли
   if (!IsTradeAllowed()) {Print(TimeToStr(CurTime())," торговые операции недоступны");return;}


Видимо, хотел, да забыл вставить.
Только в одном была, так что надо все заново проверять.



А кстати, у меня такой фичи тоже нету. Может в этом и кроется тайна?
 
А, тьфу... это просто проверка галки "разрешить торговать"!!!! :)))))))))
 
А кстати, у меня такой фичи тоже нету. Может в этом и кроется тайна?

нет, тайна не в этом определённо =)

у меня перед каждой операцией:
- проверка IsConnected
- проверка IsTradeAllowed
- если торгует другой эксперт, ждём (семафор)
- выдерживаем обязательную паузу 60 сек (по необходимости. т.е. если давно никто не торговал, то паузы нет)
- обновляем все цены (за время пауз могли измениться)
- и только потом пытаемся торговать.

Если возникает ошибка №6, следующая пауза - 300 секунд, т.е. 5 минут.


НИЧЕГО НЕ ПОМОГАЕТ.
 
А, тьфу... это просто проверка галки "разрешить торговать"!!!! :)))))))))

нет, не только - это ещё и проверка - не торгует ли другой эксперт ;)
 
А кстати, у меня такой фичи тоже нету. Может в этом и кроется тайна?

нет, тайна не в этом определённо =)

у меня перед каждой операцией:
- проверка IsConnected
- проверка IsTradeAllowed
- если торгует другой эксперт, ждём (семафор)
- выдерживаем обязательную паузу 60 сек (по необходимости. т.е. если давно никто не торговал, то паузы нет)
- обновляем все цены (за время пауз могли измениться)
- и только потом пытаемся торговать.

Если возникает ошибка №6, следующая пауза - 300 секунд, т.е. 5 минут.

Понятно... :( Жаль, так сильно работа тормозится из-за этого...


НИЧЕГО НЕ ПОМОГАЕТ.
 
Очень похоже, что какой-то ПРОЦЕСС засыпает или при кратковременном обрыве связи выставляется флаг и не очищается больше, т.к. после возникновения ошибки ордера больше не выставляются. Помогает только перезапуск терминала.