Dukascopy Support Board http://www.dukascopy.com/swiss/english/forex/jforex/forum/ |
|
причины ошибки "Cannot compare the object" при запуске теста в Visual JForex http://www.dukascopy.com/swiss/english/forex/jforex/forum/viewtopic.php?f=175&t=56824 |
Page 1 of 1 |
Author: | valador [ Thu 15 Nov, 2018, 17:46 ] |
Post subject: | причины ошибки "Cannot compare the object" при запуске теста в Visual JForex |
При запуске теста своего советника прямо в редакторе Visual JForex выдается окошечко с датой и текстом "Cannot compare the object". Таким образом тест не удается сделать. Какие могут быть причины этому в принципе? Ни где не смог найти обсуждение этой темы. |
Author: | valador [ Thu 15 Nov, 2018, 19:31 ] |
Post subject: | Re: причины ошибки "Cannot compare the object" при запуске теста в Visual JForex |
После написания вопроса продолжил поиск причины ошибки. Во-первых, сразу не догадался осуществить перевод сообщения на русский, сбило с толку то, что обычно ошибки сопровождаются номерами строк, или ссылкой на какой-то объект, а здесь просто текст с датой. Переводчик перевел данный текст так: "Не может сравнить объект". Получается, что тестер ругается на какое-то условие, но при этом советник уже проверялся на демо счете, открывал сделки и ошибок не было. Тогда я не торопясь, блок за блоком начиная с первого стал отключать и включать связи. Сначала к точке "On-Candle" я оставил подключенным 1 блок, потом 2 и т.д. Ошибки не было. И на N-адцатом блоке ошибка снова появилась. И это действительно было условие. А в условии оказались переменные, у которых не были заданы начальные значения! То есть язык Java, и соответственно Visual JForex позволяют создавать переменные и не задавать им начальные значения, оставляя за программистом ответственность определить этим переменным значения в ходе каких-либо вычислений. Но тестер получается с такими переменными по факту работать не может, даже если эти переменные были инициализированы в вычислительном блоке перед сравнением в условном блоке. Поэтому проблема была устранена простым заданием начальных значений тем переменным, у которых этих значений не было. Надеюсь это будет полезно посетителям данного форума. Буду признателен, если сюда будут добавлены другие причины ошибки "Cannot compare the object", если таковые есть. |
Page 1 of 1 |