Ошибки, баги, вопросы - страница 3135

 
Vitaly Muzichenko #:

Так не бывает.
Правильно написанная программа будет работает корректно.

какое значение должно быть в SymbolInfoDouble(euSY07,SYMBOL_BID,euSY07b) если значение по каким то причинам не пришло?

 
Yury Lemeshev #:

какое значение должно быть в SymbolInfoDouble(euSY07,SYMBOL_BID,euSY07b) если значение по каким то причинам не пришло?

Оно не может не придти, некоторое решение Я выложил ранее

Тестер, 25 пар


 
Yury Lemeshev #:

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

 
Vitaly Muzichenko #:

Оно не может не придти, некоторое решение Я выложил ранее

Тестер, 25 пар


Это понятно, у меня все отображается. Все котировки идут. Ошибка возникает один раз за 50 сделок, где так. Каждый раз в новых местах. Она абсолютно хаотична. Если была ошибка кода я ее бы мог поймать, остановить разобрать. Но я ее не могу поймать, только по комментариям к ордерам и по логам до открытия. Не соответствие я нашел когда был удивлен почему реальная торговля лучше чем на тестере, потом визуально в тестере увидел без основательное открытие ордера, начал ковырять. и все упирается в то что сначала идут котировки по определеному символу верные, а в какой то непредсказуемый момент не верные котировки, но верные для другого символа.

 
Yury Lemeshev #:

Это понятно, у меня все отображается. Все котировки идут. Ошибка возникает один раз за 50 сделок, где так. Каждый раз в новых местах. Она абсолютно хаотична. Если была ошибка кода я ее бы мог поймать, остановить разобрать. Но я ее не могу поймать, только по комментариям к ордерам и по логам до открытия. Не соответствие я нашел когда был удивлен почему реальная торговля лучше чем на тестере, потом визуально в тестере увидел без основательное открытие ордера, начал ковырять. и все упирается в то что сначала идут котировки по определеному символу верные, а в какой то непредсказуемый момент не верные котировки, но верные для другого символа.

Возможно, не совсем верно написан перебор и обнуление. Я не сталкивался с неверными ценами, при этом, в коде всё печатается и в журнале ничего подобного не видел.

 
Yury Lemeshev #:

Это понятно, у меня все отображается. Все котировки идут. Ошибка возникает один раз за 50 сделок, где так. Каждый раз в новых местах. Она абсолютно хаотична. Если была ошибка кода я ее бы мог поймать, остановить разобрать. Но я ее не могу поймать, только по комментариям к ордерам и по логам до открытия. Не соответствие я нашел когда был удивлен почему реальная торговля лучше чем на тестере, потом визуально в тестере увидел без основательное открытие ордера, начал ковырять. и все упирается в то что сначала идут котировки по определеному символу верные, а в какой то непредсказуемый момент не верные котировки, но верные для другого символа.

Тормозите начало обработки нового тика до завершения обработки предыдущего. Железо у Вас не справляется. 

 
Yury Lemeshev #:

Это понятно, у меня все отображается. Все котировки идут. Ошибка возникает один раз за 50 сделок, где так. Каждый раз в новых местах. Она абсолютно хаотична. Если была ошибка кода я ее бы мог поймать, остановить разобрать. Но я ее не могу поймать, только по комментариям к ордерам и по логам до открытия. Не соответствие я нашел когда был удивлен почему реальная торговля лучше чем на тестере, потом визуально в тестере увидел без основательное открытие ордера, начал ковырять. и все упирается в то что сначала идут котировки по определеному символу верные, а в какой то непредсказуемый момент не верные котировки, но верные для другого символа.

А проверка наличия синхронизации даёт нули

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Ошибки, баги, вопросы

Yury Lemeshev, 2022.01.02 08:38

   if(SymbolIsSynchronized(euSY01)==true && SymbolInfoDouble(euSY01,SYMBOL_BID,euSY01b)==true && SymbolInfoDouble(euSY01,SYMBOL_ASK,euSY01a)==true && euSY01b>0 && euSY01a>0)

Если делать так, а в коде 7 таких строк для семи пар, то в обзоре рынка будут котировки только по одной валюте.


как подобное вообще возможно? 

проверили синхронизацию. true, значит входим. false - ничего не делаем. и в чём может быть проблема?

 
Алексей Тарабанов #:

Тормозите начало обработки нового тика до завершения обработки предыдущего. Железо у Вас не справляется. 

Так хорошо, а как?

 
Mihail Matkovskij #:

А проверка наличия синхронизации даёт нули

как подобное вообще возможно? 

проверили синхронизацию. true, значит входим. false - ничего не делаем. и в чём может быть проблема?

При использовании проверки синхронизации она действует только на первую строку с первым символом, и в итоге остальные 6 не идут даже

 
Yury Lemeshev #:

Так хорошо, а как?

Просто не принимайте на вход новый тик, пока не обработан предыдущий. Будут пропуски, но не будет ошибок. 

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