Чемпионат Automated Trading Championship 2010 стартовал! - страница 2

 
Better:
OK, подождем ответа

 

Жалко что если даже наших советников перезапустят, то они уже потеряли ценное время. Это как пловец который зазевался на старте и теперь ему надо догонять остальных. Тут время - деньги.

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

 
Что-то не нахожу 'Поиск' на странице участников, как было в прежних чемпионатах.

 
Valmars:
Что-то не нахожу 'Поиск' на странице участников, как было в прежних чемпионатах.

Аналогично. К тому же, не вижу графики (Opera 9.64). Погляжу с утра на 10-й - может есть
 

У меня на прошлом чемпионате тоже выпало деление на ноль. После анализа случившегося получилось, что функция MarketInfo() возвращала нули. А в коде было деление на  Point (Также приходили нулевые значения по Ask и Bid). Хотя в ATC2007 такого ни разу не было, поэтому и проверок никаких не делал. Дисквалифицировали.

Теперь я проверяю все запрашиваемые данные на наличие и корректность, и не только те которые участвуют в делении.

А графиков я тоже не вижу.

Всем удачи!

 
gpwr:

 

Ну слава Богу что я не один. Я уже послал сообщение в сервисдеск и через мой чемпионатский Обсуждение. Но пока ответа не получил. 

Мда! Ужжжж! Слона то я и не заметил! Счас Метаквоты скажужть, шо, ребяты, проверку деления на нуль ставить нуно было! Ату таких участникоффф! Вот, блин, опять, похоже, старая пестня про MarketInfo() из МТ4. И здесь снова этот архаизм! Ну всё можно было учесть, но уж этот-то дубизм откуда?
 
GODZILLA:
Мда! Ужжжж! Слона то я и не заметил! Счас Метаквоты скажужть, шо, ребяты, проверку деления на нуль ставить нуно было! Ату таких участникоффф! Вот, блин, опять, похоже, старая пестня про MarketInfo() из МТ4. И здесь снова этот архаизм! Ну всё можно было учесть, но уж этот-то дубизм откуда?

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

Хотя лично я считаю что перепроверять нужно было...

 
Keon:

У меня на прошлом чемпионате тоже выпало деление на ноль. После анализа случившегося получилось, что функция MarketInfo() возвращала нули. А в коде было деление на  Point (Также приходили нулевые значения по Ask и Bid). Хотя в ATC2007 такого ни разу не было, поэтому и проверок никаких не делал. Дисквалифицировали.

Теперь я проверяю все запрашиваемые данные на наличие и корректность, и не только те которые участвуют в делении.

А графиков я тоже не вижу.

Всем удачи!


Про возврат MarketInfo() нулей было более, чем достаточно информации, а про этот прикол никаких официальных уточнений в справке! Логика исключительно на уровне интуиции! При таком интуитивном и дотошном подходе на всякий случай следует все всё подряд проверять, делать проверку проверок и надпроверочный вариант сверху!
 

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

Сие означает, что вся работа по "доводке" пошла прахом :(((

Т.о., выходит, что на чемпионате работает совсем не тот эксперт! *WALL*



 

Даже если сделать проверку на получаемый AccountInfoInteger(ACCOUNT_LEVERAGE) в OnInit(), то что делать если получен ноль? Перезагрузить советник? На чемпионате это могут делать только организаторы. Получается что надо ставить бесконечный цикл по проверке ненулевого LEVERAGE (другое нарушение правил чемпионата) или перемещать все установки глобальных констант из OnInit() в OnTick() и там дожидаться правильного ответа. Я почему-то думал что LEVERAGE это настолько постоянный и легко-доступный параметр, что ошибки при его получения не должно происходить. Это не бид или аск, которые могут быть временно недоступны.

 
gpwr:

Даже если сделать проверку на получаемый AccountInfoInteger(ACCOUNT_LEVERAGE) в OnInit(), то что делать если получен ноль? Перезагрузить советник? На чемпионате это могут делать только организаторы. Получается что надо ставить бесконечный цикл по проверке ненулевого LEVERAGE (другое нарушение правил чемпионата) или перемещать все установки глобальных констант из OnInit() в OnTick() и там дожидаться правильного ответа. Я почему-то думал что LEVERAGE это настолько постоянный и легко-доступный параметр, что ошибки при его получения не должно происходить. Это не бид или аск, которые могут быть временно недоступны.

На мой взгляд следует проверять результат ACCOUNT_LEVERAGE в блоке инициализации, незачем его постоянно перепроверять.

Вылезла ошибка при определении ACCOUNT_LEVERAGE, ставим 100. Вполне логично...

PS

другое дело чтобы сервер производил расчеты верно при этом, а то может и там проверки не стоит... :)

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