Symbol() не соответствует символу графика - страница 3

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Andrey Khatimlianskii
56019
Andrey Khatimlianskii  
Mikhail Zaprudin:

Из-за большого количества экземпляров где-то происходило наложение по именам

Я вообще в эту сторону не думал, думал ресурс привязывается к графику и забыл что это не так

Добавил к имени ChartID()

Это происходит в момент старта терминала, у всех GetTickCount одинаковый.

А правку в канвасе (добавления ChartID) вроде уже сделали официально.

Mikhail Zaprudin
280
Mikhail Zaprudin  
Andrey Khatimlianskii:

Это происходит в момент старта терминала, у всех GetTickCount одинаковый.

А правку в канвасе (добавления ChartID) вроде уже сделали официально.

Ну MathRand должен был добавить уникальности, но имеет свойство повторяться

Определенно, ценный опыт получился )

Andrey Khatimlianskii
56019
Andrey Khatimlianskii  
Mikhail Zaprudin:

Ну MathRand должен был добавить уникальности, но имеет свойство повторяться

Определенно, ценный опыт получился )

MathRand не даст уникальности при одинаковой точке отсчета. Это просто последовательность чисел.

Igor Makanu
9539
Igor Makanu  

https://www.mql5.com/ru/code/11077

CHighQualityRand - генератор случайных чисел высокой степени точности.

проверял работу, но не до конца разбирался с ним https://www.mql5.com/ru/forum/324066#comment_13500222

ALGLIB - библиотека численного анализа
ALGLIB - библиотека численного анализа
  • www.mql5.com
Реальный автор: Для работы нужно распаковать архив в папку: каталог_данных_терминала. Коды библиотеки размещаются в папке: каталог_данных_терминала\Math\Alglib\ Примеры тестовых скриптов можно найти в папке: каталог_данных_терминала\MQL4\Scripts\Alglib\ ALGLIB - одна из самых больших и полных математических библиотек Вам необходимо произвести...
Andrey Khatimlianskii
56019
Andrey Khatimlianskii  
Igor Makanu:

https://www.mql5.com/ru/code/11077

CHighQualityRand - генератор случайных чисел высокой степени точности.

проверял работу, но не до конца разбирался с ним https://www.mql5.com/ru/forum/324066#comment_13500222

При чем здесь точность? У любой последовательности есть начало. Если 2 советника берут число из одного места в последовательности, это будет одинаковое число.

Igor Makanu
9539
Igor Makanu  
Andrey Khatimlianskii:

При чем здесь точность? У любой последовательности есть начало. Если 2 советника берут число из одного места в последовательности, это будет одинаковое число.

точность это бОльший период до попадания на одинаковые псевдослучайные значения, все равно это будет больше чем rand()

пакет алглиб полностью не разбирал, но должна быть там инициализация  CHighQualityRandStateShell каким значением, можно тем же магик-номером или ChartID() ,хотя  в теории можно конечно предположить, что где то будет повтор значений

Andrey Khatimlianskii
56019
Andrey Khatimlianskii  
Igor Makanu:

точность это бОльший период до попадания на одинаковые псевдослучайные значения, все равно это будет больше чем rand()

пакет алглиб полностью не разбирал, но должна быть там инициализация  CHighQualityRandStateShell каким значением, можно тем же магик-номером или ChartID() ,хотя  в теории можно конечно предположить, что где то будет повтор значений

Нет повтора. Есть первое значение, и оно совпадает. Для последовательности любой длины )

Именно об инициализации с использованием ChartID и шла речь, с ним проблем нет.

Алексей Тарабанов
9763
Алексей Тарабанов  
Igor Makanu:

Вы понимаете, что если внезапно перестала  работать   функция Symbol() - то все и у всех просто "рухнуло" ?

тут 2 варианта:

- ищите ошибку в коде у себя, рапринтуйте все что только можно

- Вы переключили счет или брокера, и не прекращали корректно работу своего кода, тогда будут непонятные и не воспроизводимые баги .... тут кстати, если у Вас глобально описаннеы переменные, то они инициализируются при запуске один раз, в случае переключения ТФ или символа или другого счета, нужно это обрабатывать в OnInit() / OnDeinit() иначе глобально описанные переменные не изменят свои значения

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

123
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий