[ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда. - страница 1089

 
alexhammer:
Но если на первом тике ничего не произойдёт в силу каких-нибудь обстоятельств, то все остальные он проигнрирует. Есть ли такой вариант, чтобы он совершал вычисления до определённого момента, а потом уходил в режим ожидания следующей свечи?
 

alexhammer:

Я думаю dzhini хотел не совсем то, что Вы предлагаете. Вы предлагаете работу по ценам открытия, а ему нужно по тикам, но, чтобы внутри одного бара совершалось не более одной сделки.

 
dzhini:
Но если на первом тике ничего не произойдёт в силу каких-нибудь обстоятельств, то все остальные он проигнрирует. Есть ли такой вариант, чтобы он совершал вычисления до определённого момента, а потом уходил в режим ожидания следующей свечи?

Для этого нужно использовать функцию KimIV, а как её применить предлагаю подумать и решить самостоятельно.

//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru/                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 19.02.2008                                                     |
//|  Описание : Возвращает номер бара открытия последней позиции или -1.       |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   ("" или NULL - текущий символ)          |
//|    tf - таймфрейм                  (    0       - текущий таймфрейм)       |
//|    op - операция                   (   -1       - любая позиция)           |
//|    mn - MagicNumber                (   -1       - любой магик)             |
//+----------------------------------------------------------------------------+
int NumberOfBarOpenLastPos(string sy="0", int tf=0, int op=-1, int mn=-1) {
  datetime t;
  int      i, k=OrdersTotal();

  if (sy=="" || sy=="0") sy=Symbol();
  for (i=0; i<k; i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
      if (OrderSymbol()==sy) {
        if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
          if (op<0 || OrderType()==op) {
            if (mn<0 || OrderMagicNumber()==mn) {
              if (t<OrderOpenTime()) t=OrderOpenTime();
            }
          }
        }
      }
    }
  }
  return(iBarShift(sy, tf, t, True));
}
 
khorosh:

Для этого нужно использовать функцию KimIV, а как её применить предлагаю подумать и решить самостоятельно.

уххххххххххх, разберёмся ))) спасибо
 
khorosh:

Для этого нужно использовать функцию KimIV, а как её применить предлагаю подумать и решить самостоятельно.

Круть... заработало. СПАСИБО!!!
 
alexhammer:

Не хватает третьего варианта ( со временем)
 
VINAR:

Не хватает третьего варианта ( со временем)
будте добры в студию :)))
 

А из-за чего может возникать такая проблема:

Копирую весь код(копи-пэйст) работающего советника из одного файла в окно нового советника (другой файл) и он перестаёт работать? в режиме save as та же ситуация

 

привет всем

я новичок в программировании мтс

прописал советник вроде не плохой доходит 14 000 депозита

после чего начинает сливать

поминял параметр максимальной просадки на уровне 14 000 не сливает начинае сливать 22 000

Заранее спасибо

 
evgenii_7:

привет всем

я новичок в программировании мтс

прописал советник вроде не плохой доходит 14 000 депозита

после чего начинает сливать

поминял параметр максимальной просадки на уровне 14 000 не сливает начинае сливать 22 000

Заранее спасибо


      без своевременной оптимизации входных параметров все рано или позднее льют... ибо нет ничего "вечного", кроме истинных ценностей... :-))) рынок меняется время от времени...