Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Вы не с того начали обучение. Вы всё понимаете что написано в коде? Все операторы, ключевые слова?
Контрольный вопрос по коду:
Что означают данные строки?
Это были мои комментарии скрипта:
/* Движемся дальше. После отправки запросов на торговый сервер нам необходимо узнать о том, что был
установлен отложенный ордер или нет. Для это применим функцию OrderSend, которая предназначена для
совершения торговых операций через отправку запросов на торговый сервер. Если отправить запрос
не удалось !OrderSend (восклицательный знак перед любой функцией означает отрицательный результат её
выполнения), то тогда выводим сообщение с кодом ошибки в заданном формате: "OrderSend error %d"
и GetLastError(). Давайте разберемся, что такое "OrderSend error %d" и что такое GetLastError().
Обратите внимание на то, что "OrderSend error %d" взят в двойные кавычки. Это означает, что будет
выведен текст с дословным переводом "Ошибка отправки заказа %d". Теперь давайте поймём, что означает
%d. В Справочнике MQL5 в разделе PrintFormat находим: "Если за строкой формата следуют еще параметры,
то эта строка должна содержать спецификации формата, определяющие формат вывода этих параметров.
Спецификация формата всегда начинается с символа знака процента (%)". А что такое d? В том же разделе
чуть ниже находим: "Тип d - указывает минимальное число выводимых цифр. Если количество цифр в
соответствующем параметре меньше указанной точности, то выводимое значение дополняется слева нулями.
Выводимое значение не обрезается, если количество выводимых цифр больше указанной точности". С этим
разобрались, осталось понять, что такое GetLastError(). Снова ищем в справочнике: "GetLastError()
возвращает содержимое системной переменной _LastError, т.е. той переменной, в которой хранится
значение последней ошибки, произошедшей во время исполнения mql5-программы".*/
С уважением, Владимир.
Значит, пока не разобрался в данном вопросе и есть над чем работать.
С уважением, Владимир.
Повторюсь, начинайте с описания, что делает Ваш код. Данный скрипт выставляет СЛ и ТП на выставленные позиции. Т.к. мы не знаем есть ли они, предполагаем что позиции есть, и есть обе (счет хедж). Условие выставление стопов сделаем всегда истинным.... Как то так. Идею кода до конца прорабатывайте. ))))
И старайтесь понимать каждую строчку кода. С самого начала.
Это условие там вообще не нужно. Какую роль оно играет? Сможете обьяснить?
Хотел задать скрытое условие на установку отложенных ордеров Buy Stop и Sell Stop.
С уважением, Владимир.
Проверил ещё несколько раз - компилятор ничего не выдает.
С уважением, Владимир.
А почему он должен что-то выдавать? Вы не знаете макросов, не умеете с ними работать, зато используйте. И ожидаете от них какой-то ошибки или хотя бы предупреждения. Если бы Вы хоть раз запустили Ваш скрипт на демке и погоняли бы его во всех режимах, увидели бы что скрипт не работает. Но Вы зачем-то идете дальше. Добавляете стоп-лосс, тейкпрофит, а на берегу уже кричат: "Стоп машина!"
Повторюсь, начинайте с описания, что делает Ваш код. Данный скрипт выставляет СЛ и ТП на выставленные позиции. Т.к. мы не знаем есть ли они, предполагаем что позиции есть, и есть обе (счет хедж). Условие выставление стопов сделаем всегда истинным.... Как то так. Идею кода до конца прорабатывайте. ))))
И старайтесь понимать каждую строчку кода. С самого начала.
Спасибо за подсказку на счёт, того что нужно сначала проверить - существуют ли открытые позиции.
С уважением, Владимир.
Хотел задать скрытоеусловие на установку отложенных ордеров Buy Stop и Sell Stop.
С уважением, Владимир.
Скажите, написать макрос для этого, это единственный способ задать такое условие? Условия как понимаю, задаются только макросами? Или можно как-то иначе? А если можно иначе, зачем был выбран макрос? Наверное какая-то необходимость была? Но какая?
Спасибо за подсказку на счёт, того что нужно сначала проверить - существуют ли открытые позиции.
С уважением, Владимир.
Скажите, написать макрос для этого, это единственный способ задать такое условие? Условия как понимаю, задаются только макросами? Или можно как-то иначе? А если можно иначе, зачем был выбран макрос? Наверное какая-то необходимость была? Но какая?
Нет, необходимости особой не было, просто когда изучал модификаторы, то нашёл #define и решил попробовать его в скрипте.
С увжением, Владимир.
Хотел задать скрытое условие на установку отложенных ордеров Buy Stop и Sell Stop.
С уважением, Владимир.
... Если бы Вы хоть раз запустили Ваш скрипт на демке и погоняли бы его во всех режимах, увидели бы что скрипт не работает. Но Вы зачем-то идете дальше. Добавляете стоп-лосс, тейкпрофит, а на берегу уже кричат: "Стоп машина!"
Василий, скрипт не однократно запускал, все режимы работают, а именно: выставляются два отложенных ордера Buy Stop и Sell Stop на указанном мною расстоянии. Стоп лосс и тейк профит также устанавливаются на нужном расстоянии. Ордера срабатывают. Скрин прилагаю.
С уважением, Владимир.