Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 432

 
borilunad:
В поиске Функция OrderDelete()
В функции orderdelete нельзя прописать цену при достижении которой удалится отложенный ордер. По сути это простое ручное удаление всех отложенных ордеров. В терминале metatrader при открытии отложенного ордера можно указать время, при наступлении которого, если отложенный ордер не сработал, он автоматически удаляется. А существует ли такая функция, которая позволяла бы удалить конкретный отложенный ордер при достижении конкретного ценового уровня. Пример: я выставляю buy-stop на пробитии максимума 4 часовой свечи, но если цена пробивает минимум этой же свечи мне необходимо удалить этот ордер. Как это можно сделать автоматически, написав конкретную котировку минимума свечи в какой- либо функции (скрипте), дабы не присутствовать постоянно у терминала. Заранее спасибо)
 
Можно
Yerik888:
В функции orderdelete нельзя прописать цену при достижении которой удалится отложенный ордер. По сути это простое ручное удаление всех отложенных ордеров. В терминале metatrader при открытии отложенного ордера можно указать время, при наступлении которого, если отложенный ордер не сработал, он автоматически удаляется. А существует ли такая функция, которая позволяла бы удалить конкретный отложенный ордер при достижении конкретного ценового уровня. Пример: я выставляю buy-stop на пробитии максимума 4 часовой свечи, но если цена пробивает минимум этой же свечи мне необходимо удалить этот ордер. Как это можно сделать автоматически, написав конкретную котировку минимума свечи в какой- либо функции (скрипте), дабы не присутствовать постоянно у терминала. Заранее спасибо)

Ну это конечно нужно набросать небольшой советник.

Уровни проще обозначить нарисовав пару линий на графике с заранее определенным именем. Соответственно при касании ценой одной из линий будут удаляться ненужные отложенники.

Сама задачка тянет на небольшой заказ в разделе работа.

 
vadynik:
Вопрос по функции Sleep() сова не засыпает почему то, я так понимаю, что принт просыпаемся я должен увидеть через час, условие выполняется, а принты идут без разрыва

будете спать пока из убытка не вылезете
 

Мда, в тестере не работает Sleep на демо все норм

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

 
vadynik:

Мда, в тестере не работает Sleep на демо все норм

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

На этот счет есть статья Особенности и ограничения тестирования торговых стратегий в MetaTrader 4

А если нужно заснуть на N тестовых/эмулируемых секунд - используйте TimeCurrent().

 
Mr.Profit:

На этот счет есть статья Особенности и ограничения тестирования торговых стратегий в MetaTrader 4

А если нужно заснуть на N тестовых/эмулируемых секунд - используйте TimeCurrent().


Да я почитал уже, можно TimeCurrent() * на нужное мне время, будет ли это работать?
 
vadynik:

Да я почитал уже, можно TimeCurrent() * на нужное мне время, будет ли это работать?


Можно так:

- когда советник решает заснуть, он присваивает datetime myStartSleepTime = TimeCurrent();

- после этого проверять if (TimeCurrent() > (myStartSleepTime + sleepTimeInSec)) {заканчиваем спать}

 
Mr.Profit:


Можно так:

- когда советник решает заснуть, он присваивает datetime myStartSleepTime = TimeCurrent();

- после этого проверять if (TimeCurrent() > (myStartSleepTime + sleepTimeInSec)) {заканчиваем спать}


Не получается у меня победить тестер,только могу остановить его хД, а спать никак не могу заставить)
 
vadynik:

Не получается у меня победить тестер,только могу остановить его хД, а спать никак не могу заставить)

В смысле - заставить тестер заснуть? Не, так нельзя - тестер (сам по себе) будет работать, пока не закончит.

Имелось в виду, что для тестера можно съэмулировать Sleep(), т.е. когда советник останавливается и ничего не делает какое-то время. При тестировании это значит, что тестер будет работать все время, просто советник для эмулируемого временного интервала Ч1-Ч2 не будет ничего делать.

 
Mr.Profit:

В смысле - заставить тестер заснуть? Не, так нельзя - тестер (сам по себе) будет работать, пока не закончит.

Имелось в виду, что для тестера можно съэмулировать Sleep(), т.е. когда советник останавливается и ничего не делает какое-то время. При тестировании это значит, что тестер будет работать все время, просто советник для эмулируемого временного интервала Ч1-Ч2 не будет ничего делать.


Ну да, имелось в виду сова не спит, бдит когда не надо) Такая важная функция, а тестер ее игнорит
Причина обращения: