Что означает запись в журнале - страница 2

 
ща эксперта привяжу - посмотрю, что получится )

у меня, кстати, недавно выскакивал unknown command - помню, кто-то писАл, а в архиве не нашёл...
никто не помнит чем закончилось?
 
Я писал :) Ничем не закончилось. Добавлением семафоров и таймаутов проблема была загнана почти в ноль, но как ты понимаешь, если это "почти" не закроет тебе сделку на реале, мало не покажется.

Ошибки вылезают разных типов, основные это "неправильная цена", "6", "1". Но есть и другие :)

Если посмотреть мои логи, кстати, видно, что иногда цикл из 5 попыток прорывается, и приводит к успеху. Пример:
Attempting to close short position, ticket: 1775545
Order with this ticket still present, trying again
Order with this ticket still present, trying again
No more orders with this ticket No, sell closed

Две попытки (вместо 5, как было бы в случае неудачи во всех попытках), и ордер закрыт.
 

У меня тоже сейчас висит 8 советников, все на М5.
С 00:00 до 12:00
сделок - 141
ошибок - 3 ("1", и две "6").


Кстати, пинг ведь не дает сообщения об ошибке. Так что, в принципе, о том, что эксперт пытался что-то сделать, ты мог и не узнать.
 
unknown command - я приводил, после этого было еще несколько раз, причину выяснить не смог, смотреть можно здесь - http://forum.alpari-idc.ru/viewtopic.php?t=45230&start=30
, я продублировал и на этом форуме, но где не помню

Читал ли кто-нибудь мое сообщение на этих двух форумах - сие мне неизвестно ...
 
Кстати, пинг ведь не дает сообщения об ошибке. Так что, в принципе, о том, что эксперт пытался что-то сделать, ты мог и не узнать.
в логах ничего про пинг нет.
 
Кстати, пинг ведь не дает сообщения об ошибке. Так что, в принципе, о том, что эксперт пытался что-то сделать, ты мог и не узнать.
в логах ничего про пинг нет.


В том-то и дело. Как вариант: пинг не прошел, эксперт работает как ни в чем не бывало, поскольку с сервером связи нет, коды ошибок с сервера не возвращаются, позиции считаются успешно открытыми - закрытыми... Просто пугаю :)

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

Открытие - дело другое. Тут тикет не проверишь :(
 
В том-то и дело. Как вариант: пинг не прошел, эксперт работает как ни в чем не бывало, поскольку с сервером связи нет, коды ошибок с сервера не возвращаются, позиции считаются успешно открытыми - закрытыми... Просто пугаю :)

Многие ошибки возвращает сам терминал - ему и связь не нужна ;) попробуй в офлайне принудительно открыть или закрыть позицию =)))

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

А я проверяю так:
	bool orderclose = OrderClose( _OrderTicket, _Volume, _ClosePrice, _Slippage, _Color );
	_GetLastError = GetLastError();
//---- Если есть ошибка,
	if ( !orderclose || _GetLastError > 0 )
	{


пока ситуаций с псевдо-закрытыми позициями не наблюдалось ;)



зы. По поводу твоего кода.
Я ещё когда пост написАл, скопировал, настроил, подключил свою библиотеку и запустил на 8-ми графиках М5. Потом ушел, а когда вернулся, обнаружил, что ничего не происходит - не торгуют эксперты (((
Сейчас запущу твой вариант, а завтра покопаюсь - почему не работал мой ;)

 
Возможно, дело в пинге, у меня нет циклов для повторной попытки выставления ордеров, может надо в этом месте Refresh вызывать и подсовывать более свежие цены.
Как по мне, лучше использовать заведомо свежие цены всегда, т.е. MarketInfo( Symbol(), MODE_BID ) и MODE_ASK
 

зы. По поводу твоего кода.
Я ещё когда пост написАл, скопировал, настроил, подключил свою библиотеку и запустил на 8-ми графиках М5. Потом ушел, а когда вернулся, обнаружил, что ничего не происходит - не торгуют эксперты (((
Сейчас запущу твой вариант, а завтра покопаюсь - почему не работал мой ;)


Да и как ему работать на пятиминутках, когда в нем четко прописана настройка на часовки, например:
if(Symbol() == "EURUSD" && Period() == 60)

:))

Ждать, увы, придется долго. Этот конкретный эксперт дает сбои где-то раз в неделю - собственно, он и торгует нечасто. Можно убрать ==60, и запустить его на М5, но тогда он гарантированно будет сливать.
 
про М5 это я напутал =) на часовки я их прикрепил, всё равно не рботает..

А вот сейчас, твой код прицепил, начался новый час - в логе только несколько ошибок, ни одной позиции не открыто...
2005.09.07 01:01:53 quark_test_expert: wrong delimiter for FileOpen as BIN function
2005.09.07 01:01:11 quark_test_expert: wrong delimiter for FileOpen as BIN function
2005.09.07 01:00:21 quark_test_expert: wrong delimiter for FileOpen as BIN function
2005.09.07 01:00:14 quark_test_expert: wrong delimiter for FileOpen as BIN function
2005.09.07 00:59:55 quark_test_expert: wrong delimiter for FileOpen as BIN function
2005.09.07 00:59:55 quark_test_expert: wrong delimiter for FileOpen as BIN function
Причина обращения: