Потерянные котировки от сервера. Очень прошу помочь разобраться!

 

Здравствуйте, уважаемые программисты! Столкнулся со следующей проблемой. Неоднократно визуально наблюдал на минутном графике как в нулевом баре без движения цены вдруг отрисовывается новый уровень High или Low. Close стоит на месте а на графике просто появляется новый "хвостик" у нулевого бара. Решил проверить и написал вот такой код.

double MaxClose, MinClose;
int bart, errorH, bareH, errorL, bareL, errorh, bareh, errorl, barel, se;

int start()
{
double close=NormalizeDouble(iClose(NULL,1,0)/Point,0);
while(GetLastError()==4066){Alert("CLOSE");RefreshRates(); close=NormalizeDouble(iClose(NULL,1,0)/Point,0);}

double open=NormalizeDouble(iOpen(NULL,1,0)/Point,0);
while(GetLastError()==4066){Alert("OPEN");RefreshRates(); open=NormalizeDouble(iOpen(NULL,1,0)/Point,0);}

double high=NormalizeDouble(iHigh(NULL,1,0)/Point,0);
while(GetLastError()==4066){Alert("HIGH");RefreshRates(); high=NormalizeDouble(iHigh(NULL,1,0)/Point,0);}

double low=NormalizeDouble(iLow(NULL,1,0)/Point,0);
while(GetLastError()==4066){Alert("LOW");RefreshRates(); low=NormalizeDouble(iLow(NULL,1,0)/Point,0);}

if(bart<iBars(NULL,1)){bart=iBars(NULL,1); MaxClose=0; MinClose=99999999;}
MaxClose=MathMax(MaxClose,close);
MinClose=MathMin(MinClose,close);
if(high>MaxClose && bareH<iBars(0,1)) {Alert("HIGH ERROR! Time=",TimeToStr(TimeCurrent())," High=",high*0.01," MaxClose=",MaxClose*0.01); bareh=iBars(0,1); errorH=errorH+1;}
if(low<MinClose && bareL<iBars(0,1)) {Alert("LOW ERROR! Time=",TimeToStr(TimeCurrent())," Low=",low*0.01," MinClose=",MinClose*0.01); barel=iBars(0,1); errorL=errorL+1;}

return(0);
}

В результате постоянные сообщения о том что максимум или минимум нулевого бара сформированный движением Close не совпадает с High или Low отображённых на графике. Очень прошу помочь и разъяснить в чём может быть причина? Зараннее прошу прощения за возможные ошибки кода и повторы темы (перерыл форум но не нашёл подобных вопросов).

С искренним уважением. Дмитрий.

Файлы:
 
это еще один вечный глюк МТ. перерисоваться может не только нулевой бар, а и любой другой )
 
majestic:
это еще один вечный глюк МТ. перерисоваться может не только нулевой бар, а и любой другой )


То есть MT всегда за брокера, что бы по этому поводу не утверждали разработчики. Запарился и снял видео как "появляются" новые свечки. В архиве пара примеров с реального счёта. Ну и нужно понимать, что если на примере отрисовалась свечка в один пипс, то также может отрисоваться и в 10 пипсов свеча. А вот как с этим бороться кто-то знает? Что мешает разработчикам отмечать эти фантомные тики другим цветом и так чтобы это было вшито в терминал намертво и можно было апелировать к таким ошибкам, ну и отстраивать работу с брокером как-то более адекватно. За кого вы уважаемые разработчики?
Файлы:
desktop.zip  336 kb
 
Dmirtiy:


То есть MT всегда за брокера, что бы по этому поводу не утверждали разработчики. Запарился и снял видео как "появляются" новые свечки. В архиве пара примеров с реального счёта. Ну и нужно понимать, что если на примере отрисовалась свечка в один пипс, то также может отрисоваться и в 10 пипсов свеча. А вот как с этим бороться кто-то знает? Что мешает разработчикам отмечать эти фантомные тики другим цветом и так чтобы это было вшито в терминал намертво и можно было апелировать к таким ошибкам, ну и отстраивать работу с брокером как-то более адекватно. За кого вы уважаемые разработчики?

На представленных роликах видно, что сообщения Alert() появляются в момент возникновения новой свечи на минутном графике. По поводу политики котирования нужно обращаться непосредственно к брокеру.

Вы хотите "отстраивать работу с брокером", мы же не занимаемся подобными вопросами.

 
Dmirtiy:


То есть MT всегда за брокера, что бы по этому поводу не утверждали разработчики. Запарился и снял видео как "появляются" новые свечки. В архиве пара примеров с реального счёта. Ну и нужно понимать, что если на примере отрисовалась свечка в один пипс, то также может отрисоваться и в 10 пипсов свеча. А вот как с этим бороться кто-то знает? Что мешает разработчикам отмечать эти фантомные тики другим цветом и так чтобы это было вшито в терминал намертво и можно было апелировать к таким ошибкам, ну и отстраивать работу с брокером как-то более адекватно. За кого вы уважаемые разработчики?


Доброго времени суток!

К сожалению это политика многих д.ц. на сегодня. Менять историю задним числом или перерисовывать несколько последних баров - это данность. Не знаю зачем это делается, но встречается довольно часто (раз в месяц стабильно). Просто нам про это никогда не один д.ц. ничего объяснят не станет. В лучшем случае придет сообщение типа: "Извините, но произошел сбой сервера и по инструментам **.**.**.**. были выброшены неверные котировки. В период с ==.==.== по ==.==.==. Компания --.--.-- приносит свои извинения. Все сделки за данный период были отменены. Все счета вернулись в состояние на *.*.* число. Обычно на предыдущий торговый день." И всё - за последствия они вроде как не отвечают. А разработчики здесь ни причем - котировки предоставляет д.ц.

P.S. Чтоб у вас все было и вам за это ничего не было.

 
А если торговать не через д.ц. а через Банк, они тоже так поступают?
 
dmitriy086:
А если торговать не через д.ц. а через Банк, они тоже так поступают?

Доброго времени суток!
А вы и торгуете через банк (всегда). Т.к. у любого Д.Ц. есть банк-конртрагент, который обеспечиает маржу (залоговые средства) и достаточный пакет контр-сделок. Вы продаете кто-то покупает и наоборот - все через банк т.к. Д.Ц. своих средств на бирже не имеет. Разве, что открыть счет через брокерскую контору или торговать на правах банка т.е. пойти туда работать 'трейдером на побегушках' и работать на банк за зарплату.

P.S. Чтоб у вас все было и вам за это ничего не было.

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