Предлагаю, обсудить не только данную функцию, но и все остальное связанное с торговой механикой-открытие, закрытие,модификация,удаление, различные механизмы трейлинг-стопа и т.д. И конечно реализовать все это с применением ООП, т.е. создать класс содержащий в себе различные методы для управления торговыми функциями. Что бы не казаться "пустословом", предлагаю свои наброски такого класса. Думаю тема будет полезна и интересна всем.

Файлы:
tm.mqh
19 kb
В функцию передается sy, а нормализация по _Digits.
Да, надо использовать SymbolInfoInteger(sy,SYMBOL_DIGITS).
Кроме того, надо проверять стоп-лоссс и тэйк профит на 0 и устанавливать
trReq.sl, trRec.tp в 0 если они равны 0, иначе получим Ask для Buy и Bid для Sell с ошибкой:Неверные стопы.
Kos:
Предлагаю, обсудить не только данную функцию, но и все остальное связанное с торговой механикой-открытие, закрытие,модификация,удаление, различные механизмы трейлинг-стопа и т.д. И конечно реализовать все это с применением ООП, т.е. создать класс содержащий в себе различные методы для управления торговыми функциями. Что бы не казаться "пустословом", предлагаю свои наброски такого класса. Думаю тема будет полезна и интересна всем.
А почему вместо false Вы используете NULL? Чем NULL лучше?
Предлагаю, обсудить не только данную функцию, но и все остальное связанное с торговой механикой-открытие, закрытие,модификация,удаление, различные механизмы трейлинг-стопа и т.д. И конечно реализовать все это с применением ООП, т.е. создать класс содержащий в себе различные методы для управления торговыми функциями. Что бы не казаться "пустословом", предлагаю свои наброски такого класса. Думаю тема будет полезна и интересна всем.
DC2008:
А почему вместо false Вы используете NULL? Чем NULL лучше?
А почему вместо false Вы используете NULL? Чем NULL лучше?
NULL не привязан к конкретному типу данных, поэтому в определенных случая его использовать гораздо удобней.
Кроме того, применение именно NULL в коде делает этот код гораздо более восприимчивым для человека.

Документация по MQL5: Основы языка / Типы данных
- www.mql5.com
Основы языка / Типы данных - Документация по MQL5
Kos:
Предлагаю ...
трудно мне пока с ООП, но вродебы CTradingManager::StopsIsInvalid в коде 2 раза повторется. Скрипт бы где показывалось как это все использовать (как это работает) легче было бы разобратьсяПредлагаю ...
Prival:
трудно мне пока с ООП, но вродебы CTradingManager::StopsIsInvalid в коде 2 раза повторется. Скрипт бы где показывалось как это все использовать (как это работает) легче было бы разобраться
трудно мне пока с ООП, но вродебы CTradingManager::StopsIsInvalid в коде 2 раза повторется. Скрипт бы где показывалось как это все использовать (как это работает) легче было бы разобраться
bool StopsIsInvalid(ENUM_POSITION_TYPE OPEN_POSITION,double Price,uchar OrderType=Loss); bool StopsIsInvalid(ENUM_ORDER_TYPE OPEN_ORDER,double Price,uchar OrderType=Loss);
Как я понял тут применялась перегрузка функций класса, для различной обработки позиций и ордеров.
Prival:
трудно мне пока с ООП, но вродебы CTradingManager::StopsIsInvalid в коде 2 раза повторется. Скрипт бы где показывалось как это все использовать (как это работает) легче было бы разобраться
Это перегрузка функций. Первая функция проверяет StopsLevel при модификации рыночных позиций, вторая при установке ордеров.
трудно мне пока с ООП, но вродебы CTradingManager::StopsIsInvalid в коде 2 раза повторется. Скрипт бы где показывалось как это все использовать (как это работает) легче было бы разобраться

Документация по MQL5: Основы языка / Функции / Перегрузка функций
- www.mql5.com
Основы языка / Функции / Перегрузка функций - Документация по MQL5

Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
В любом эксперте есть несколько обязательных функций, надежность работы которых очень важна. Я предлагаю разобрать одну из таких функций