OrderSend для bars-1

 

Уважаемые мастера! Подскажите как открывать ордера по последнему сформированному бару.

Т.е. текущее положение Time[0] скачет то вверх то вниз. т.е. бар на этапе формирования.

Задача открывать ордера только когда бар полностью сформируется. Направьте на путь истинный ;)

 

видимо вопрос не совсем корректный. те. возможно ли получить Ask и Bid Для bars-1 ?

 

строка с вашего пример


ticket=WHCOrderSend(Symbol(),OP_BUY,lots,Ask,3,SL,TP,"Покупаем- хи-хи ",Magic,0,Green);


обычный ордер также по текущему Ask. но вопрос был другой. Возможно ли открыть ордер по уже сформированному бару. (не текущему, а предыдущему)


т.к. текущий "гуляет" вверх вниз (формирование свечи), а предыдущий полностью сформирован.


с Уважением, ufamag
 
ufamag >>:

строка с вашего пример


ticket=WHCOrderSend(Symbol(),OP_BUY,lots,Ask,3,SL,TP,"Покупаем- хи-хи ",Magic,0,Green);


обычный ордер также по текущему Ask. но вопрос был другой. Возможно ли открыть ордер по уже сформированному бару. (не текущему, а предыдущему)


т.к. текущий "гуляет" вверх вниз (формирование свечи), а предыдущий полностью сформирован.


с Уважением, ufamag

Можно открыться только на OPEN текущего бара. Что впринципе с большой вероятностью будет совпадать с закрытием свормировавшейся прошлой свечи, если еще в условие добавить Close[1] == Open[0].

 
HIDDEN >>:

Close[1] == Open[0].

Это условие невыполнимо.

 
TheXpert >>:

Это условие невыполнимо.

Бывает так что и выполнимо.


А вообще опять сутра писал, поэтому подключив 3-ю фазу к голове пишу вот так


Close[1] == Bid - для продажи

Close[1] == Ask - для покупки


Хотя возникает мысль что нужно еще вводить ряд ограничений, например по времени.

 
HIDDEN >>:

Бывает так что и выполнимо.

Но оооочень редко и оооочень сомнительно.

//+------------------------------------------------------------------+
//|                                                       Prices.mq4 |
//|                                       Copyright © 2009, TheXpert |
//|                                           theforexpert@gmail.com |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2009, TheXpert"
#property link      "theforexpert@gmail.com"

#property indicator_buffers 1
#property indicator_separate_window

#property indicator_color1 Red

#property indicator_maximum 1
#property indicator_minimum 0

double Hmmm[];

int init()
{
   SetIndexBuffer(0, Hmmm);
   SetIndexStyle(0, DRAW_HISTOGRAM);
}

int start()
{
   int ToCount = Bars - IndicatorCounted();
   
   for (int i = ToCount - 1; i >=0; i--)
   {
      Hmmm[i] = EMPTY_VALUE;
      if (Open[i] == Close[i + 1]) Hmmm[i] = 1;
   }
   
   return(0);
}
 
ufamag >>:

Уважаемые мастера! Подскажите как открывать ордера по последнему сформированному бару.

Т.е. текущее положение Time[0] скачет то вверх то вниз. т.е. бар на этапе формирования.

Задача открывать ордера только когда бар полностью сформируется. Направьте на путь истинный ;)

А чем не нравится вот эти две строки ?

(Так сказать, простенько и без излишеств...)

static int prevtime = 0;

int start()
  {

 if(Time[0] == prevtime)  return(0);//ждём появления нового бара
 prevtime = Time[0];//если появился новый бар, включаемся....
Причина обращения: