barudkinarseniy: Да считает, но только если ордера открыты в одну сторону например если бай то он считает только баевые, а когда поочередно открывается на бай потом на селл он замирает на количествах пунктов равному рассоянию между этими ордерами (для проверки я вывел этот profit функцией Comment на график)
Тогда нужен другой подход. Так как вы описали изначально -- считать не правильно.
Andrey F. Zelinsky: Тогда нужен другой подход. Так как вы описали изначально -- считать не правильно.
А нет ни какой стандартной функции или предопределенной переменной может какой нибудь которая равняется этому профиту, ведь когда просто открыты сделки, во вкладке терминал можно выбрать профит в пунктах, он же как то их расчитывает. Просто я еще осваиваю програмирование по этому вопрос возможно глупый))
barudkinarseniy: а когда поочередно открывается на бай потом на селл он замирает на количествах пунктов равному рассоянию между этими ордерами (для проверки я вывел этот profit функцией Comment на график)
А разве должно быть по-другому? Если прибыль Buy в пунктах растёт, знач прибыль Sell уменьшается, сумма Buy + Sell не меняется - это лок/замок. Если кол-во ордеров туда и сюда одинаково. Попробуйте открыть в одну сторону больше чем в другую - разомрёт
barudkinarseniy: А нет ни какой стандартной функции или предопределенной переменной может какой нибудь которая равняется этому профиту, ведь когда просто открыты сделки, во вкладке терминал можно выбрать профит в пунктах, он же как то их расчитывает. Просто я еще осваиваю програмирование по этому вопрос возможно глупый))
Поскольку вы только осваиваете программирование, то упростите задачу -- посчитайте профит не в пунктах, а в деньгах.
Будет почти тоже самое, только проще для понимания:
Alexander Puzanov: А разве должно быть по-другому? Если прибыль Buy в пунктах растёт, знач прибыль Sell уменьшается, сумма Buy + Sell не меняется - это лок/замок. Если кол-во ордеров туда и сюда одинаково. Попробуйте открыть в одну сторону больше чем в другую - разомрёт
Почему то я сразу не подумал, Спасибо)) И не могли бы вы мне помочь еще в одном деле))
и нет необходимости писать, что "ордер закрыт успешно", это и так понятно
лучше чтобы эта функция ClosePosFirstProfit() возвращала признак успешной отработки по всем ордерам
Я это сделал для тестера, прогоняю без визуализации и просматриваю журнал, а вот если советник уже запустить на реале хочу обработать ошибки например реквоты, а вообще какие еще часто могут возникать и какие действия выполнять при возникновении этих ошибок не знаю, и да было бы не плохо проверить остались ли открытые ордера(такая функция у меня имеется проверяет количество открытых именно рыночных ордеров) и в этом случае прогнать снова этот цикл несколько раз, но как правильно прописать это все
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
Да считает, но только если ордера открыты в одну сторону например если бай то он считает только баевые, а когда поочередно открывается на бай потом на селл он замирает на количествах пунктов равному рассоянию между этими ордерами (для проверки я вывел этот profit функцией Comment на график)
Тогда нужен другой подход. Так как вы описали изначально -- считать не правильно.
а когда поочередно открывается на бай потом на селл он замирает на количествах пунктов равному рассоянию между этими ордерами (для проверки я вывел этот profit функцией Comment на график)
А нет ни какой стандартной функции или предопределенной переменной может какой нибудь которая равняется этому профиту, ведь когда просто открыты сделки, во вкладке терминал можно выбрать профит в пунктах, он же как то их расчитывает. Просто я еще осваиваю програмирование по этому вопрос возможно глупый))
Поскольку вы только осваиваете программирование, то упростите задачу -- посчитайте профит не в пунктах, а в деньгах.
Будет почти тоже самое, только проще для понимания:
А разве должно быть по-другому? Если прибыль Buy в пунктах растёт, знач прибыль Sell уменьшается, сумма Buy + Sell не меняется - это лок/замок. Если кол-во ордеров туда и сюда одинаково. Попробуйте открыть в одну сторону больше чем в другую - разомрёт
Поскольку вы только осваиваете программирование, то упростите задачу -- посчитайте профит не в пунктах, а в деньгах.
Будет почти тоже самое, только проще для понимания:
Не могу правильно обработать ошибки подскажите пожалуйста как грамотно это сделать вот на этом примере
OrderClose() возвращает тип bool
и нет необходимости писать, что "ордер закрыт успешно", это и так понятно
лучше чтобы эта функция ClosePosFirstProfit() возвращала признак успешной отработки по всем ордерам
OrderClose() возвращает тип bool
и нет необходимости писать, что "ордер закрыт успешно", это и так понятно
лучше чтобы эта функция ClosePosFirstProfit() возвращала признак успешной отработки по всем ордерам