расчет Мин/Мах цены от цены открытия до наст.момента (по времени, а не по барам) - страница 3
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Открытие ордера:
Далее в прцессе работы:
Насчет переменной Prefix. Чтобы у всех советников свой префикс был, и не путался с тестером, и чтобы тестировать можно было (здесь имя переменной gvp):
в ините:
В деините:
А какой смысл фиксить маскимум и миниму цены, если он выполняется только пока советник работает, с таким же успехом буде работать обыкновенный трейлинг. Суть задачи в том, чтобы знать исторический пик прибыли ордера. Один вариант - по минуткам.
А какой смысл фиксить маскимум и миниму цены, если он выполняется только пока советник работает, с таким же успехом буде работать обыкновенный трейлинг. Суть задачи в том, чтобы знать исторический пик прибыли ордера. Один вариант - по минуткам.
Огромное спасибо за Код- сидю, разбираюсь...... :-) После слива первого депо, понял, что программировать нужно самому, чтобы до конца знать возможности советника..... так, что я сейчас в поисках, ну хоть какой нибудь стратегии приносящей стабильную, пусть и небольшую прибыль При тестировании МТС на таймфреймах свыше 15-30 минут параметры начала трейлинга достаточно большие, свыше 10-15 пипсов, вот и возникла идея, чтобы ловить поменьше стопов (даже в ущерб основной прибыли) попробовать отловить и эту прибыль, а потом повторно открыться поновой если условие выставления сохраниться..... то есть в зоне запрета модификации ордеров, а можно только удалить и поставить по новой. Это чем то сродни пипсовке.... да и мне просто интересно, как мои идеи по построению алгоритма в этой задаче соответствуют "правильному" классическому решению.......
Всем больших профитов и удачи!
Integer, спасибо за код и за сэкономленное время: код и мне пригодится тоже. С вариантом if(StringFind(GlobalVariableName(i),gvp,0)==0) еще не встречался. Вопрос: в каком случае в деините if(StringFind(GlobalVariableName(i),gvp,0)!=0) ?
Integer, спасибо за код и за сэкономленное время: код и мне пригодится тоже. С вариантом if(StringFind(GlobalVariableName(i),gvp,0)==0) еще не встречался. Вопрос: в каком случае в деините if(StringFind(GlobalVariableName(i),gvp,0)!=0) ?
Выбираем глобальные переменные с именем начинающимся на gvp. Если позиция подстроки gvp в строке GlobalVariableName() равна 0, значит имя переменной начинается с gvp - значит наша переменая, удаляем ее. Удаление выполняется только при тестировании.
Выбираем глобальные переменные с именем начинающимся на gvp. Если позиция подстроки gvp в строке GlobalVariableName() равна 0, значит имя переменной начинается с gvp - значит наша переменая, удаляем ее. Удаление выполняется только при тестировании.
Понятно, а когда в isTesting() происходит инит и деинит? (вопрос из-за вопроса о необходимости предварительного освобождения памяти в ините)
И всё. Больше нет вопросов. :)
Понятно, а когда в isTesting() происходит инит и деинит? (вопрос из-за вопроса о необходимости предварительного освобождения памяти в ините)
И всё. Больше нет вопросов. :)
В isTesting() - никогда не происходит ни инит ни деинит. В mql4 нет никаких функций по работе с памятью.
Тогда зачем (?) в ините и деините такое условие: if(IsTesting()){
если в режиме тестирования (имелось ввиду не в функции isTesting(), а в режиме isTesting()==true) не происходит ни инита ни деинита.
Тогда зачем (?) в ините и деините такое условие: if(IsTesting()){
если в режиме тестирования (имелось ввиду не в функции isTesting(), а в режиме isTesting()==true) не происходит ни инита ни деинита.
Затем, чтобы работая на счете, при запуске и отключении эксперта, глабальные переменные сохранялись, а при тестировании удалялись, чтобы переменные оставшиеся от предудущего прогона в тестере не влияли на результаты следующего прогона. В тестере свой префикс у переменных - if(IsTesting())gvp=gvp+"t_";
Кажись расходимся в понимании. ))) Повторюсь:
..., а когда в isTesting()(т.е. в режиме тестирования) происходит инит и деинит? (вопрос из-за вопроса о необходимости предварительного освобождения памяти(т.е. удаления глоб.переменных) в ините)