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

 
Andrey Sokolov:
А dBid и dPoint отдельно прописывать нужно? 
это просто Bid, и просто Point. Пора это уже давно понимать, что у кого-то они вынесены отдельно, у кого-то переопределены, а у кого-то записаны прямо, но смысл во всех один. Пишите как вам удобно.
 
Господа.Я в программировании совсем новичок.Почитал уроки для чайников.Есть алгоритм,но не могу правильно прописать.Помогите пожалуйста!
Вообщем мысль такая,что я обращаюсь к массиву данных последних 86 свечек,кроме 0.и каждая белая свечка это 1,каждая черная свечка это 0.если цена закрытия 1 свечки ровна цене открытия 1 свечки,тогда  смотрим на цену закрытия 2 свечки и если она выше цены открытия 1 свечки ,то ставим 0.если цена закрытия 2 свечки ровна цене открытия 1 свечки,тогда по этому же принципу сравнивается цена открытия 2 свечи с ценой закрытия 2 свечи.
Цикл проходит каждые 15 мин или 60
 
Вечером приложу что я написал.правда точно не учел,что есть код onTime вроде,который повторяет операцию через заданный период.а у меня вышло как каждый тик.но все равно выдает ошибки
 

Здравствуйте.

Подскажите как правильно рассчитать дату будущей свечи.

Допустим сегодня 30 апреля.

Если (сег. вск) {дата след. свечи 1 мая};

Если (сег. пн)  {дата след. свечи 1 мая};

...

...

Если (сег. пятница)  {дата след. свечи 3 мая};

Если (сег. суббота) {дата след. свечи 2 мая};

 
Sergey:

Здравствуйте.

Подскажите как правильно рассчитать дату будущей свечи.

Допустим сегодня 30 апреля.

Если (сег. вск) {дата след. свечи 1 мая};

Если (сег. пн)  {дата след. свечи 1 мая};

...

...

Если (сег. пятница)  {дата след. свечи 3 мая};

Если (сег. суббота) {дата след. свечи 2 мая};


К текущей дате прибавляете нужное количество секунд, а если точнее то так примерно, текущее время +(24*60*60). Как узнать какой сегодня день недели надеюсь знаете.
 
Sergey Gritsay:

К текущей дате прибавляете нужное количество секунд, а если точнее то так примерно, текущее время +(24*60*60). Как узнать какой сегодня день недели надеюсь знаете.

да, спасибо!
 

Здравствуйте.

Подскажите, пожалуйста, как найти красную горизонтальную линию, имя которой неизвестно.

Когда есть имя, делаю так

   bool CL_R;
   color _Color=ObjectGet("hline", OBJPROP_COLOR);
   if(_Color==clrRed) CL_R =true;

А как без имени?

 
mila.com:

Здравствуйте.

Подскажите, пожалуйста, как найти красную горизонтальную линию, имя которой неизвестно.

Когда есть имя, делаю так

А как без имени?

Так попробуйте (абстрактный пример):

   for(uint i=0; i<ObjectsTotal(0,WRONG_VALUE,OBJ_HLINE); i++){
      string line_name=ObjectName(0,i,WRONG_VALUE,OBJ_HLINE);
      color  line_color=(color)ObjectGetInteger(0,name,OBJPROP_COLOR);
      Print("Линия с именем ",name," имеет цвет ",line_color);
      if(line_color==clrRed){
         Print("Найдена линия красного цвета с именем ",name);
         }
      }
 
Artyom Trishkin:

Так попробуйте (абстрактный пример):

Спасибо, Артём.

Всегда, оперативно выручаете )

 
Привет. Подскажите как сделать общее количество ордеров на паре. В данный момент считается отдельно бай и селл.
int fMarketOrdersOpen(int type)
   { int c=0,aBuyCount=0,aSellCount=0;
      for(int i=0;i<OrdersTotal();i++)
      {if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
      {if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic_N)
      {switch (OrderType())
      {case OP_BUY:
       aBuyCount++;
       break;
       case OP_SELL:
       aSellCount++;
       break;}}} else{
            return(-1);}}
if(type==OP_BUY)c=aBuyCount+1; else if(type==OP_SELL)c=aSellCount+1;   
   return(c);
}
Причина обращения: