Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1281
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
При пробое трендовой линии и закрытии бара выше/ниже онной, открывается позиция с нулевыми СЛ и ТП. Сразу же после открытия, устанавливается нужные ТП и СЛ (позиция модифицируется). Почему модифицируется не последняя позиция, а предыдущая, при этом нарушая условие:
Теперь понятно? Даже если в условие ввести время открытие позиции, ни чего не меняется. Ограничения по количеству позиций нет.
У Вы уверены, что в момент модификации новая позиция уже есть? (отослать торговый приказ - это ещё не гарантия, что позиция есть).
Когда входите в условие (SL == 0.0 и TP == 0.0) распечатайте тикет позиции.
У Вы уверены, что в момент модификации новая позиция уже есть? (отослать торговый приказ - это ещё не гарантия, что позиция есть).
Когда входите в условие (SL == 0.0 и TP == 0.0) распечатайте тикет позиции.
Да, вторая позиция уже есть. Я журнал читаю. Метод Sell произведен успешно, код 10009. (Тикет #3). А потом следует модификация, только позиции с тикетом #2, которая тоже выполнена успешно (модификация, хотя, подчеркиваю, по условиям происходить не должна, СЛ уже не равен 0!).
Уже писал, пробовал и по времени открытия, и по тикету, ни фига, модифицирует предыдущую позицию. Например:
Да, вторая позиция уже есть. Я журнал читаю. Метод Sell произведен успешно, код 10009. (Тикет #3). А потом следует модификация, только позиции с тикетом #2, которая тоже выполнена успешно.
Уже писал, пробовал и по времени открытия, и по тикету, ни фига, модифицирует предыдущую позицию. Например:
То есть: Вы не проверяете результат появление позиции и Вы не желаете даже распечатать тикет. В таком случае прикрепите полный код (прикрепите при помощи кнопки
)
То есть: Вы не проверяете результат появление позиции и Вы не желаете даже распечатать тикет. В таком случае прикрепите полный код (прикрепите при помощи кнопки )
Вы не желаете даже распечатать тикет - это не понял. Вот выписка журнала.
2021.02.01 12:54:55.338 2018.01.02 17:00:00 market sell 0.01 EURUSD (1.20384 / 1.20402)
2021.02.01 12:54:55.338 2018.01.02 17:00:00 deal #2 sell 0.01 EURUSD at 1.20384 done (based on order #2)
2021.02.01 12:54:55.338 2018.01.02 17:00:00 deal performed [#2 sell 0.01 EURUSD at 1.20384]
2021.02.01 12:54:55.338 2018.01.02 17:00:00 order performed sell 0.01 at 1.20384 [#2 sell 0.01 EURUSD at 1.20384]
2021.02.01 12:54:55.344 2018.01.02 17:00:00 CTrade::OrderSend: market sell 0.01 EURUSD [done at 1.20384]
2021.02.01 12:54:55.344 2018.01.02 17:00:00 Метод Sell() виконаний успішно. Код повернення = 10009 (done at 1.20384)
2021.02.01 12:54:55.344 2018.01.02 17:00:00 position modified [#2 sell 0.01 EURUSD 1.20384 sl: 1.20813 tp: 1.20013]
2021.02.01 12:54:55.346 2018.01.02 17:00:00 CTrade::OrderSend: modify position #2 EURUSD (sl: 1.20813, tp: 1.20013) [done]
2021.02.01 12:54:55.346 2018.01.02 17:00:00 Метод PositionModify() виконаний успішно. Код повернення = 10009 (done)
============================================================================================================== разделил, появление второй позиции
2021.02.01 12:55:48.819 2018.01.03 09:00:00 market sell 0.01 EURUSD (1.20442 / 1.20460)
2021.02.01 12:55:48.819 2018.01.03 09:00:00 deal #3 sell 0.01 EURUSD at 1.20442 done (based on order #3)
2021.02.01 12:55:48.819 2018.01.03 09:00:00 deal performed [#3 sell 0.01 EURUSD at 1.20442]
2021.02.01 12:55:48.819 2018.01.03 09:00:00 order performed sell 0.01 at 1.20442 [#3 sell 0.01 EURUSD at 1.20442]
2021.02.01 12:55:48.821 2018.01.03 09:00:00 CTrade::OrderSend: market sell 0.01 EURUSD [done at 1.20442]
2021.02.01 12:55:48.821 2018.01.03 09:00:00 Метод Sell() виконаний успішно. Код повернення = 10009 (done at 1.20442)
====================================================================================================================== после успешно открытой позиции, модификация, но предыдущего ордера
2021.02.01 12:55:48.821 2018.01.03 09:00:00 position modified [#2 sell 0.01 EURUSD 1.20384 sl: 1.20663 tp: 1.20154]
2021.02.01 12:55:48.823 2018.01.03 09:00:00 CTrade::OrderSend: modify position #2 EURUSD (sl: 1.20663, tp: 1.20154) [done]
2021.02.01 12:55:48.823 2018.01.03 09:00:00 Метод PositionModify() виконаний успішно. Код повернення = 10009 (done)
Я выложил полный код модификации позиции на Sell, с вариантами.
Если нет полного кода - я ни смогу помочь Вам. Пожалуйста прикрепите полный код (прикрепите при помощи кнопки
)
И возвращаясь к рисованию трендовой линии. Если нужен код.
И возвращаясь к рисованию трендовой линии. Если нужен код.
Читайте документацию!!!
Примечание
Для трендовой линии можно указать режим продолжения ее отображения вправо и/или влево (свойства OBJPROP_RAY_RIGHT и OBJPROP_RAY_LEFT соответственно).
По умолчанию эти свойства установлены в false.
И вопрос: Зачем удалять объект и создавать его заново? Разве не проще создать только в том случае если такой объект на графике не найден? И даже если надо поменять координаты привязки, нет необходимости удалять объект и снова его создавать.
Прошу в третий и последний раз: прикрепите полный код.
Читайте документацию!!!
По умолчанию эти свойства установлены в false.
И вопрос: Зачем удалять объект и создавать его заново? Разве не проще создать только в том случае если такой объект на графике не найден? И даже если надо поменять координаты привязки, нет необходимости удалять объект и снова его создавать.
Спасибо, сейчас посмотрю. И спасибо за ценные замечания. Я не программист, так для себя, часто использую уже чьи то наработки.