Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 98

 
Andrey Sokolov:
Когда  есть обе части кода, и на покупку и на продажу, то после срабатывания отложенного ордера его стоп почему-то корректируется при любом направлении движении цены. А когда есть часть кода только на покупку или на продажу то стоп корректируется как и задумано, только при удалении от него цены.

Так приведите код в порядок, там ошибок много. Например, при любом действии с ордером, его обязательно сперва надо выбрать функцией OrderSelect(), у вас это условие не везде выполняется. Потом, при модификации ордера те параметры, что остаются неизменными, следует передавать в оригинальном виде, а не обнулять.

То есть вместо OrderModify(ticket, price, sl, 00, Blue) надо OrderModify(ticket, price, sl, OrderTakeProfit()OrderExpiration(), Blue).

Нельзя надеяться на то, что тикет хранится в памяти вечно, это не так, особенно когда открывается несколько ордеров, а их тикеты пишутся в ту же переменную. А потом пытаться по неизвестно какому тикету модифицировать или удалять ордер.

 
Andrey Sokolov:
Когда  есть обе части кода, и на покупку и на продажу, то после срабатывания отложенного ордера его стоп почему-то корректируется при любом направлении движении цены. А когда есть часть кода только на покупку или на продажу то стоп корректируется как и задумано, только при удалении от него цены.
для начала сделайте разные переменные для тикетов бай и селл
 
Vitalie Postolache:

 Например, при любом действии с ордером, его обязательно сперва надо выбрать функцией OrderSelect(), у вас это условие не везде выполняется. 

Так он выбирается, функции в конце. Или что не так?
 
Vitalie Postolache:

 Потом, при модификации ордера те параметры, что остаются неизменными, следует передавать в оригинальном виде, а не обнулять.

То есть вместо OrderModify(ticket, price, sl, 00, Blue) надо OrderModify(ticket, price, sl, OrderTakeProfit()OrderExpiration(), Blue).

Там профит и время истечения отсутствуют, по этому нули. Так не верно?
 
Sergey Gritsay:
для начала сделайте разные переменные для тикетов бай и селл
Vitalie Postolache:

Нельзя надеяться на то, что тикет хранится в памяти вечно, это не так, особенно когда открывается несколько ордеров, а их тикеты пишутся в ту же переменную. А потом пытаться по неизвестно какому тикету модифицировать или удалять ордер.

Спасиб.

Проблема, действительно, была в этом. Но я так и делал еще до того как здесь спросить, видимо спать идти надо было.

 

здравствуйте,вопрос такой,писал советник по трайлингу( новичек в этом деле)

трал работает хорошо,но вот проблема есть просадка,что можно сделать чтобы как то уменьшить такую просадку

на скрине открылась сделка sell. 

 
Denizrip:

здравствуйте,вопрос такой,писал советник по трайлингу( новичек в этом деле)

трал работает хорошо,но вот проблема есть просадка,что можно сделать чтобы как то уменьшить такую просадку

на скрине открылась сделка sell. 

Открывать нужно было Buy вместо Sell, а по цене 1.0620 Sell, тогда не было-бы просадки
 
Denizrip:

здравствуйте,вопрос такой,писал советник по трайлингу( новичек в этом деле)

трал работает хорошо,но вот проблема есть просадка,что можно сделать чтобы как то уменьшить такую просадку

на скрине открылась сделка sell. 

Строить машину времени, срочно. Вернуться чуть раньше времени продажи, дать самому себе подзатыльник и вместо продажи - купить :)

А если серьёзно, то "цена ушла верх" гораздо раньше того времени, что обозначено стрелкой на картинке. Вот и надо было перевернуть позицию. а не ждать, пока цена ещё дальше вверх уйдёт.

Ну или усредняться там, где последняя стрелка, если депозита хватает. Это если стоплосс противен, а так - стоплосс рулит.

 
Denizrip:

здравствуйте,вопрос такой,писал советник по трайлингу( новичек в этом деле)

трал работает хорошо,но вот проблема есть просадка,что можно сделать чтобы как то уменьшить такую просадку

на скрине открылась сделка sell. 

2 варианта:

ставить стоп до того как он превратится в трал

или растить лося и наслаждаться моментом 

 

Vitaly Muzichenko:

....а кто-то для торговли, поэтому можно использовать не один цикл, а несколько. 

Спасибо.

Причина обращения: