Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 894
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Хотел написать простенький скрипт для создания на чарте отрезка (трендовой линии) с началом в месте, куда скрипт брошен (с этим никаких проблем) и окончанием в точке с координатами, где будет сделан левый клик мышкой... Вот тут то и споткнулся... В индикаторе или эксперте отловить это событие элементарно, А КАК ЭТО СДЕЛАТЬ В СКРИПТЕ??? Подскажите, кто знает, пожалуйста!
Хотел написать простенький скрипт для создания на чарте отрезка (трендовой линии) с началом в месте, куда скрипт брошен (с этим никаких проблем) и окончанием в точке с координатами, где будет сделан левый клик мышкой... Вот тут то и споткнулся... В индикаторе или эксперте отловить это событие элементарно, А КАК ЭТО СДЕЛАТЬ В СКРИПТЕ??? Подскажите, кто знает, пожалуйста!
Зациклив скрипт.
Пробовал, допустим, цикл в OnStart крутится сам по себе, а OnChartEvent в это время уже не работает...
Есть практически работающий пример того, чтобы скрипт не завершал работу, пока не дождется события клика мышки?
Пробовал, допустим, цикл в OnStart крутится сам по себе, а OnChartEvent в это время уже не работает...
Есть практически работающий пример того, чтобы скрипт не завершал работу, пока не дождется события клика мышки?
А если зациклить через пользовательскую функцию, возврат которой зависит от OnChartEvent
Это экспромт. Не уверен что получится, но если-бы мне пришлось это делать, я пробовал-бы именно такое решение.
зы. Видимо поспешил с мнением. В скрптах кажется недоступно событие OnChartEventА если зациклить через пользовательскую функцию, возврат которой зависит от OnChartEvent
Это экспромт. Не уверен что получится, но если-бы мне пришлось это делать, я пробовал-бы именно такое решение.
И как это будет выглядеть??))
Я почему-то подозреваю, что при организации любого цикла в скрипте, обработка событий уже не происходит... Если она вообще производится при выполнении скриптов - уже сомневаюсь в этом...
Неужели такая простая задача не имеет решения, во всяком случае, "без танцев с бубнами"???
И как это будет выглядеть??))
Я почему-то подозреваю, что при организации любого цикла в скрипте, обработка событий уже не происходит... Если она вообще производится при выполнении скриптов - уже сомневаюсь в этом...
Неужели такая простая задача не имеет решения, во всяком случае, "без танцев с бубнами"???
Ну цикл через пользовательскую функцию, это просто. Через цикл while вызывается эта функция и в зависимости от возвращённого значения повтор или break
А вот наличие OnChartEvent в скриптах... сомнительно.
Видимо надо понимать что возможно в скриптах, а что сувать туда себе дороже. Мне кажется результат может быть непредсказуем и зависит от пользователя, а не программиста. Представь что будет если в таком скрипте не нажать крыску...цикл не завершится. А дальше что может сделать пользователь??? Как обезьяна с гранатой.
Ну цикл через пользовательскую функцию, это просто. Через цикл while вызывается эта функция и в зависимости от возвращённого значения повтор или break
А вот наличие OnChartEvent в скриптах... сомнительно.
Видимо надо понимать что возможно в скриптах, а что сувать туда себе дороже. Мне кажется результат может быть непредсказуем и зависит от пользователя, а не программиста. Представь что будет если в таком скрипте не нажать крыску...цикл не завершится. А дальше что может сделать пользователь??? Как обезьяна с гранатой.
Какой-то бред насчёт обезьяны с гранатой...))) Скрипт перетягивается на график МЫШКОЙ, затем вполне естественный клик в нужном месте графика (предполагается, что удалось неким образом организовать ожидание и перехват события...), создается графический обект, скрипт завершает работу. Для "забывчивых" можно завершить ожидание по истечении некоторого времени. Даже "зависший" кривой скрипт удаляется с графика нажатием правой кнопки мыши, "Удалить скрипт".
Вопрос - почему обработка событий нажатия кнопки или т.п. в скрипте невозможна? Что тут запретного?
Какой-то бред насчёт обезьяны с гранатой...))) Скрипт перетягивается на график МЫШКОЙ, затем вполне естественный клик в нужном месте графика (предполагается, что удалось неким образом организовать ожидание и перехват события...), создается графический обект, скрипт завершает работу. Для "забывчивых" можно завершить ожидание по истечении некоторого времени. Даже "зависший" кривой скрипт удаляется с графика нажатием правой кнопки мыши, "Удалить скрипт".
Вопрос - почему обработка событий нажатия кнопки или т.п. в скрипте невозможна? Что тут запретного?
Ты не поверишь. Есть у меня один знакомый которому я говорю -"Закрой терминал"... Что ты думаешь он делает? СВОРАЧИВАЕТ... Это я и называю "Обезьяна с гранатой". Никогда не угадаешь куда она её бросит. Так-же никогда не угадаешь что такой юзер сделает с твоей программой.
Ну, а почему обработка события невозможна, это вопрос к MQ.
Попробуй решить это через советник в котором по завершении выполнения нужного действия советник удаляется с графика функцией ExpertRemove()
Попробуй решить это через советник ...
Натолкнулся на неприятную особенность работы оптимизатора в тестере стратегий.
Вот код:
input int value=1;
int OnInit()
{
if (value == 3) return (INIT_FAILED);
return(INIT_SUCCEEDED);
}
Запускаем в тестере на оптимизацию параметр value от 1 до 10. Результат - после 3 проходки все наборы параметров некорректны, хотя по логике дожна быть некорректной только третья проходка.
Прикладываю картинку того же кода, только с возвращаемым параметром INIT_PARAMETERS_INCORRECT
Документация говорит:
INIT_FAILED
Неудачная инициализация, тестирование нет смысла продолжать из-за неустранимых ошибок. Например, не удалось создать индикатор, необходимый для работы эксперта.
Возврат этого значения означает то же самое, что и возврат значения, отличного от нуля – инициализация эксперта в тестере прошла неудачно. Тестирование для данного набора параметров эксперта не будет выполняться, агент свободен для получения нового задания.
Дальше - больше. Если сделать вывод результатов в файл, то видно что после третьей проходки функция OnInit() вообще не запускается.
Кто-нибудь сталкивался с подобным? Как решить проблему?
P. S. Тестировал на MT4 билд 765