[АРХИВ]Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 5. - страница 86
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Перевидите переменную которую нужно отобразить в принт или каммент в string DoubleToStr( double value, int digits) и выставляйте нужную точность.
https://docs.mql4.com/ru/convert/DoubleToStr
https://docs.mql4.com/ru/common/comment
Ок, спасибо. Тоже думал делать так, либо строчить через ObjecCreate()..
подскажите, пожалуйста, функцию, которая считает количество убыточных ордеро (от последнего) до последнего тейк профита...
спасибо!
а сколько раз нужно вызывать OrderSelect перед тем как пользоваться OrderProfit(), OrderType() и тд ? достаточно ли одного раза внутри Start или же каждый раз перед использованием OrderProfit, OrderType и тд...нужно вызывать OrderSelect ??
и нужно ли вызывать OrderSelect непосредственно перед OrderProfit или можно где угодно вначале, лишь бы было ??
Я вопрос писал, видать никто не заметил. Не хотел такой длинный вопрос сюда писать, чтоб не путать всех. Просьба обратить внимание...
https://www.mql5.com/ru/forum/142983
Попробуй так:
Потому что нет гарантии что Ваши ордера открылись точно по одной цене и точно в одно время.
Я вопрос писал, видать никто не заметил. Не хотел такой длинный вопрос сюда писать, чтоб не путать всех. Просьба обратить внимание...
https://www.mql5.com/ru/forum/142983
Я уже в той ветке вам расписал приблизительный алгоритм (тут его слегка подкорректировал для большего понимания учёта некоторых нюансов) и не нужно городить огород:
Алгоритм прост как бублик.
При частичном закрытии не меняется Magic. Тикет меняется, а магик - нет.
Есть открытая поза, есть уровни, на которых эта поза должна частями закрываться.
Допустим Level1, Level2 и Level3.
Если поза Buy в профите и Bid >= Level1 && Bid< Level2 ---> закрываем первую часть позиции (лотом, меньшим, чем лот этой позиции, при условии, что оставшийся лот не будет меньше минимального лота), далее:
Если Bid >= Level2 && Bid< Level3 ---> закрываем вторую часть позиции (лотом, меньшим, чем лот этой позиции, при условии, что оставшийся лот не будет меньше минимального лота), далее:
Если Bid >= Level3 && Bid<Level4 ---> закрываем третью часть позиции (лотом, меньшим, чем лот этой позиции, при условии, что оставшийся лот не будет меньше минимального лота), далее:
1. Если при частичном закрытии на уровне Bid>=LevelX лот стал меньше минимального ---> закрываем всю позицию
2. Если после третьего закрытия на уровне Bid>=Level3 ещё осталась позиция, либо сопровождаем оставшуюся позу тралом после преодоления Level4, либо закрываем её всю сразу.
Это всё.
Для Sell смотрим по Ask: Ask<=Level1 && Ask>Level2 ... и т.д. ...
Делаем цикл по всем нашим позам, выбираем каждую по индексу, высчитываем для выбранной позиции её уровни и закрываемые лоты и получаем удовольствие от работающего алгоритма ... :)
При этом не нужно в памяти (в переменных) эксперта хратить значения этих уровней, что очень удобно - если эксперт по какой-либо причине завершит работу, то после возобновления он не потеряет данные об уровнях - он их для каждой позиции будет на лету пересчитывать.
И ещё: после частичного закрытия не забывайте подтягивать защитный стоп. После закрытия на уровне1 - стоп в безубыток, после закрытия на уровне2 - стоп на уровень1, после закрытия на уровне 3 - стоп на уровень2 и т.д. ...
Всем привет! Есть ли у кого пример эксперта с применением пользовательского индикатора?
А в чём проблема?
Читал статью о переносе пользовательского индикатора в код эксперта и запутался, стоит ли это делать? или достаточно только какие то определённые параметры индикатора в коде указать?
Читал статью о переносе пользовательского индикатора в код эксперта и запутался, стоит ли это делать? или достаточно только какие то определённые параметры индикатора в коде указать?
Не могли бы Вы разрешить одну загадку: Почему, когда вставил в условия эту функцию || isCloseLastPosByTake() == True || эксперт в тестере начал очень тормозить, в раз 10!? Это одно из 4-х взаимоисключающих условий, потому не могу употребить цепочку с if, как при суммированных условиях, для более быстрой работы кода. Что бы Вы могли мне посоветовать? Заранее благодарен Вам за совет!