[АРХИВ]Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 5. - страница 312
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Здравствуйте гуру программирования
Подскажите пожалуйста, как нарисовать прямоугольник с заливкой в цвет фона, в левом верхнем углу с небольшим отступом ( для эстетичности) поверх графика и под текстом выводимым экспертом?
Заранее спасибо
это тоже самое.. Расписывать тоже, только для другой ситуации.
Дык а это разве не оно?
Артём, не сочти за труд, писни кодом, а? Или дай мне вон ту штуку, что у тебя в руке, я закончу эти мучения...
Есть вопрос по работе тестера: После того, как прошел тест, меняешь параметры (даты, валютную пару, таймфрейм), запускаешь заново тест - он идет, а по его завершению абсолютно не меняется информация во вкладках типа "график" и "отчет"-все остается с предыдущего теста. Сохраненный отчет тоже оказывается старый. С чем связано, и как это решить? Может быть, есть какая-нибудь функция сброса результатов?
Выкурил мануал, статьи, провел поиск по форуму - упоминания подобной проблемы не встречал..
Не должно такого быть, может быть у Вас галочка "Оптимизация" стоит?.
Не должно такого быть, может быть у Вас галочка "Оптимизация" стоит?.
О, похоже в этом дело: при запуске нового теста не обращал внимание на то, что включена оптимизация, думал - не критично. Немного странное решение интерфейса...
Но теперь все работает, большее спасибо!
В логику сильно не вникал, но, что-то мне подсказывает, что есть лишние вычисления. Год-полтора назад я решал однотипную задачу со сбором котировок и формированием М1 свечей с чёткой нарезкой по началу астрономической минуты.
Если будет интересно, можете глянуть несколько моментов чисто по оптимизации Вашего кода (файл). Правда, если серъёзно говорить об оптимизации, нужно замерять время исполнения кода. ;)
Сейчас пробую по-другому полностью с нуля.
Вопрос к Вадиму по маппингу. Итак. Начал всё с чистого листа. Берём изначальный тиковый ТФ owner'а:
Там логика в принципе-то простая-простейшая: Ловим бид-аск, формируем RateInfo, тоько время заносим в Volume, а Time моделируем. Теперь не разбираясь, как моделируется Time, убираем моделирование полностью, делаем по стандартному TOLHCV, а перед этим ставим "если прошло больше 0 секунд с последнего вызова start()". Если прошло меньше в другой ветке того же условия редактируем High-Low и делаем инкремент Volume. То есть по-сути то же самое что и выкладывал, только с полностью убранным циклом, т.е. получаем секундный ТФ "с дырами" (с пропусками секунд):
Также полностью оставил градацию на бычьи-медвежьи. Стоит игра свеч? Проверяем, ставим GetTickCount() с принтованием на этот вариант и изначальный от owner'а, запускаем их одновременно на одном графике, смотрим лог:
что и ожидалось. Тиковый - оригинальный, секундный с пропусками - модифицированный. Теперь формируем вспомогательный массив перед time=TimeCurrent():
Это в коде секундного тф. У советника, который будет висеть на самом секундном тф, значения TOLHCV x секунд назад тогда можно будет получить как ind[GlobalVariableGet("final")]-ind[GlobalVariableGet("final")-x]+1, если конечно этот массив как-то передать. Итак, пользуемся маппингом:
Пишем тестовый скрипт, который будет висеть на секундах и прочитает значения TOLHCV икс секунд назад (а не свечей):
Запускаем секундный таймфрейм. При инициализации выводится окно
В логе 58.572 раза
а при деинициализации выводит окно
В методе "MT4::Memory::SearchIndexOrHandle()" не установлен параметр для поиска в области памяти терминала.
Ну деинициализация это потом, ставлю скрипт - алерт ни разу. Закомменчиваю MemoryCreate и MemoryCloseHandle, ничего не выводит (скрипт алерт выводит), в логе
- и всё. Значит, логически рассуждая, я использую вызовы не в том порядке, или неправильно объявляю, или не то объявляю. Ось WinXP. Вадим, хотя бы подскажите, в каком направлении двигаться.