Вопрос OrderModify() - страница 5

 

Функция OrderSelect() остается нетронутой. Правильно?

// order pool example

if(OrderSelect(0,SELECT_BY_POS,MODE_TRADES)){

Используемое условие - это то, что я ищу в списке торговых функций.

Функция OrderSymbol(), похоже, является единственной информацией о тикете, которая может быть использована для указания, какой тикет находится на паре USDJPY. Это условие используется в вашем примере?

Спасибо

 
WhooDoo22:

Функция OrderSelect() остается нетронутой. Правильно?

Используемое условие - это то, что я ищу в списке торговых функций.


Функция OrderSymbol(), похоже, является единственной информацией о тикете, которая может быть использована для указания, какой тикет находится на паре USDJPY. Это условие используется в вашем примере?

Если бы это работало, я бы поступил именно так.

Спасибо

Я могу показать вам свой код. ... или вы можете написать свой собственный код, протестировать его, исправить его, протестировать его, исправить его, и т.д. и когда закончите, выложите его. Что вы хотите?

Прежде чем искать функции, объясните, как вы собираетесь выполнить требование... . простым и понятным языком, без каких-либо конкретных упоминаний о кодировании функций.
 

Я могу показать вам свой код. ... или вы можете написать свой собственный код, протестировать его, исправить его, протестировать его, исправить его, и т.д. и когда закончите, выложите его. Что вы хотите?

RE: Я хочу понять условие, используемое для выделения номера тикета на USDJPY из трех ордеров на трех отдельных валютных парах. Я бы предпочел сделать то, что проще для нас обоих, так много всего нужно сделать :)

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

RE: Я объясню в коде, наиболее прямой способ выразить короткое, кодированное выполнение этой конкретной логики.

// this code does not include error corrections. Strictly code to execute closing of an order on USDJPY.

   double bid_ask;

   if(OrderSelect(0,SELECT_BY_POS,MODE_TRADES))          {
   if(OrdersTotal()>0)                                   {
   if(OrderSymbol()=="USDJPY")                           {
   if((OrderType()==OP_BUY)||(OrderType()==OP_SELL))     {
   if(OrderType()==OP_BUY)                               {bid_ask=Bid;}
   if(OrderType()==OP_SELL)                              {bid_ask=Ask;}
   
     {OrderClose(OrderTicket(),OrderLots(),bid_ask,2,CLR_NONE);}}}}}

Спасибо.

 
WhooDoo22:

Я могу показать вам свой код. ... или вы можете написать свой собственный код, протестировать его, исправить его, протестировать его, исправить его, и т.д. и когда закончите, выложите его. Что вы хотите?

RE: Я хочу понять условие, используемое для выделения номера тикета на USDJPY из трех ордеров на трех отдельных валютных парах. Я бы предпочел сделать то, что проще для нас обоих, так много всего нужно сделать :)

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

RE: Я объясню в коде, наиболее прямой способ выразить короткое, кодированное выполнение этой конкретной логики.

Вы тестировали свой код? Он работает? Где находится TP и SL? Где печатается номер тикета, что происходит, если ордер в позиции 0 не является ордером USDJPY?

Помните этот пост?

RaptorUK:


Мне уже пора спать... вот подсказка для начала, у вас несколько ордеров,поэтому вам нужно просмотреть их все, чтобы найти нужный... а может и несколько, охватите столько вариантов, сколько сможете увидеть.

 
WhooDoo22:
Бедняга, это должно быть похоже на Coding-Boot-Camp 8)))
 

Саймон,

Вы тестировали свой код?

RE: Я не могу запустить тесты для этого кода в терминале mt4, так как начался период перерыва в торговле до воскресного открытия, поэтому я буду работать над разделами второго тома в это время. Я обязательно отвечу на ваши сообщения.

Спасибо.

 
ubzen:
Бедняга, это должно быть похоже на Coding-Boot-Camp 8)))
Знаете поговорку... "No pain, No gain" :-)
 

Можно сделать и наоборот: "Нет выгоды - нет боли". ;) Выбор состоит в том, чтобы обменять боль на выгоду или обменять отсутствие выгоды на отсутствие боли. В любом случае вы что-то получите.

 

Саймон,

Хорошо, это работает, если я помещаю скрипт на график usdjpy (неважно, если есть несколько билетов, открытых на разных валютных парах) Фокус в том, что я не могу поместить скрипт на другой график, кроме графика usdjpy, чтобы закрыть ордер. В настоящее время я работаю над скриптом, который я могу разместить на любом графике для закрытия ордера usdjpy.

   double bid_ask;

   if(OrderSelect(OrderTicket(),SELECT_BY_POS,MODE_TRADES))     { // was 0
   if(OrdersTotal()>0)                                   {
   if(OrderSymbol()=="USDJPY")                           {
   if((OrderType()==OP_BUY)||(OrderType()==OP_SELL))     {
   if(OrderType()==OP_BUY)                               {bid_ask=Bid;}
   if(OrderType()==OP_SELL)                              {bid_ask=Ask;}
   
     {
      OrderClose(OrderTicket(),OrderLots(),bid_ask,2,CLR_NONE);
     }
     }}}}

Пожалуйста, опубликуйте свой ответ для этого обновленного скрипта.

Я решил так много проблем (включая эту) за несколько глотков "заваренного" напитка. ;) Я внимательно слежу за тем, что пишу, чтобы не нарушить правила форума MQL4. Я серьезно отношусь к правилам. phi.nuts :)

Спасибо

Файлы:
 
WhooDoo22:

Саймон,

Хорошо, это работает, если я помещаю скрипт на график usdjpy (не важно, если есть несколько билетов, открытых на разных валютных парах) Фокус в том, что я не могу поместить скрипт на другой график, кроме графика usdjpy, чтобы закрыть ордер. В настоящее время я работаю над скриптом, который я могу разместить на любом графике для закрытия ордера usdjpy.

Пожалуйста, опубликуйте свой ответ для этого обновленного сценария.

Я решил так много проблем (включая эту) за несколько глотков "заваренного" напитка. ;) Я внимательно слежу за тем, что пишу, чтобы не нарушить правила форума MQL4. Я серьезно отношусь к правилам. phi.nuts :)

Спасибо

2 проблемы, которые я вижу сразу, не пробуя ваш код, означают, что то, что вы сделали, не соответствует требованию. . .

"где размещается TP и SL? где печатается номер билета,...."