Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Выведите размер массива data
Нет, все же есть значение (после остановки оптимизации) Пока копировал файл - перезаписался уже значениями из новой оптимизации - счетчиком Было в нем значение индюка
Текст по кол-ву элементов
CopyBuffer_size=0
542511296
Bid в тестере не работает.
Не понимаю.
Не понимаю.
Замените Bid и Ask на адекватные функции.
Итак, пришло время подвести некоторый итог.
Один локальный агент нормально работает (одно ядро) Работает и обычное тестирование (одно ядро) При оптимизации остальные никак не хотят отрабатывать значения индюков, менять массивы после copybuffer (ну не получилось) и тп Дело не в коде - ничего в нем сверхестественного нет, к тому же все работает на одном ядре оптимизации и на одиночном прогоне тестера. Недавно я сталкивался с проблемой отказа мультивалютника тестироваться с любой парой кроме той, на которой запущен и мы проверяли мои руки - место их роста, степень кривизны, но спасибо разработчикам - в след билде пофиксили баг и все заработало как надо. Не знаю с чем связана текущая проблема, но считаю, что если хотя бы один агент работает как надо, у других нет оснований не работать, ссылаясь на то, что нет данных индюков.
Мне кажется, что все же дело в некоторой рассинхронности обработки данных на стартовом этапе оптимизации, но я не уверен, что прав Либо тик идет один в тестер и многие локальные агенты не успевают (да фиг знает:)) Либо, если на каждом агенте свой тик и свой тайминг, то я просто не знаю что думать.
Надеюсь, что кто-то из уважаемого сообщества сможет помочь мне без отсылок к документации, проверки рук и прочего:) Но я конечно же думаю, что все же сам где-то ошибся и проблема имеет локальный характер - посмотрим:)
Я сделал вывод в OnTester результатов и получил таки то, что должно было быть (файл прикладываю)
CopyBuffer_size=10
CopyBuffer=1.164538511298427
Запись одним своим присутствием в файле свидетельствует о том, что тестер агента дошел до конца, а не отвалился сразу на отсутствии data[0] в массиве - в данном случае записи в файл бы не было
Работает одно ядро как надо:)
Код:
UPD Пишу я это подробно для того, чтобы в дальнейшем тот, кто столкнется с проблемой подобного рода, смог бы оперативно получить решение или понять что его нет (в чем я сомневаюсь:)) Всем причастным спасибо на этом промежуточном этапе Уверен, что разберемся:)В файл можно писать, в общую папку.
Для оптимизатора отсутствие FILE_SHARE_ критично.
Я писал, в старте, что данные индюков (их параметры) грузятся из БД Быть может в этом проблема еще кроется? Может мыть в оптимизаторе при массовом обращении (более одного:))) к БД происходит сбой (пишет и читает перед запуском)?
Оставлю здесь картинку (отваливающиеся ядра) Обратил внимание, что отваливаются рандомно и при этом 05 и 07 раньше всех "занялись делом", потом 01 Может все же БД "виновата"
Картинка и последовательность включения агентов в работу навели на правильную мыль
ПРИЧИНА:
перед стартом советник обращается к БД - UPDATE и вот это и было причиной. Перезаписывались названия инструментов в зависимости от брокера в onStart, которые потом забирались для построения индюков Проблема в том, что запись тормозила процесс следующих за записываемым агентом и они, похоже, тупо не могли забрать данные из БД для построения индюков, поскольку пролетали с записью первичных параметров (файл БД был открыт предыдущим агентом и не успевал закрыться до вызова следующего).
РЕШЕНИЕ
Отключил запись в БД при оптимизации
@Artem Mordvinkin, в коде есть чтение из файлов?
А Ваше сообщение я пропустил Сергей и Вы были очень правы в определении вектора
И закончилось бы все на пару часов раньше