Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 320

 
solnce600:

Мне нужно открыть ордер через 20 баров от текущего значения переменной Bars

Как это закодировать?

Спасибо.

Запоминать время текущего бара и следить, когда откроется двадцатый. То есть создаём переменную, обнуляем и на каждом новом баре делаем +1. Когда переменная больше 19 - открыть позицию.

Очередной путешественник во времени )))

 
evillive:

Запоминать время текущего бара и следить, когда откроется двадцатый.

То есть ориентироваться не на порядковые номера баров,а порядковые номера баров вычислять исходя из времени их открытия.

Если пятиминутка открылась в 00- 00 то двадцатая после нее свеча откроется в 1-40

Но возникает проблема.А если бара 1-00 не будет на графике - тогда бар 20 будет на самом деле баром 19.

А мне нужно,что бы все было точно.

 
solnce600:

То есть ориентироваться не на порядковые номера баров,а порядковые номера баров вычислять исходя из времени их открытия.

Если пятиминутка открылась в 00- 00 то двадцатая после нее свеча откроется в 1-40

Но возникает проблема.А если бара 1-00 не будет на графике - тогда бар 20 будет на самом деле баром 19.

А мне нужно,что бы все было точно.



Бара +20 ещё нет, он в будущем. Так что придётся выкручиваться как-то ещё.


А чтобы бара 1:00 не было на графике в рабочее время рынка и при том что рынок открылся в 00:00 - это как? Были прецеденты?

 
evillive:

Бара +20 ещё нет, он в будущем. Так что придётся выкручиваться как-то ещё.

Спасибо большое за ценную информацию.

Буду Вам очень признателен если посоветуете мне варианты выкручивания.

Бар 1-00 я взял просто для примера.Я не очень часто но видел,что некоторые бары могут отсутствовать,особенно на 5 минутках.

Спасибо.

 
Ну если не нравится счётчик баров, то можно задать время выставления ордера +/- 1 минута. Время нулевого бара - отправная точка. Вобще, в терминале для торговли отсчет ведётся по двум координатам - время и цена.
 
evillive:
Ну если не нравится счётчик баров, то можно задать время выставления ордера +/- 1 минута. Время нулевого бара - отправная точка. Вобще, в терминале для торговли отсчет ведётся по двум координатам - время и цена.
Спасибо.Буду думать над Вашими советами.
 
Кто знает? Как запрограммировать спред, который проставляем в тестере, т.к. проверяю с различными значениями? На Реале или Демо понятно, от MarketInfo()! А в тестере как?
  if(IsOptimization() || IsTesting() || IsVisualMode())
  {
    Spread = Х; //Какое выражение можно сделать, чтобы каждый раз не менять тут значение спреда?
    bid = NormalizeDouble(iClose(Symbol(),0,0),Digits);
    spr = NormalizeDouble(Spread*Point,Digits);
    ask = NormalizeDouble(iClose(Symbol(),0,0)+spr,Digits);
  }
  else
  {
    Spread = MarketInfo(Symbol(),MODE_SPREAD);
    spr = NormalizeDouble(Spread*Point,Digits);
    bid = MarketInfo(Symbol(),MODE_BID);
    ask = MarketInfo(Symbol(),MODE_ASK);
  }

Спасибо, Owner! Зачем текст засунул в SRC?! Растянул мой текст, что "ответить" не поймаешь! Потому отвечаю тут. Меня заклинило, что МаrketInfo() не работает в тестере, поэтому затупил. Конечно, если в тестере я проставляю спред, то его могу получить от разницы Аска-Бида, что сейчас поправлю в своём же коде! Попробовал, не получается! У нас известен только Бид, а как же узнать спред и аск? Как в случае с курицей и яйцом, что раньше?

 
borilunad: Кто знает? Как запрограммировать спред, который проставляем в тестере, т.к. проверяю с различными значениями? На Реале или Демо понятно, от MarketInfo()! А в тестере как? Спасибо!
 if(IsOptimization() || IsTesting() || IsVisualMode())
  { RefreshRates();
    Spread = ((Ask-Bid)/Point);  //int  
    Spread = NormalizeDouble((Ask-Bid),Digits); //double
  }
  else
  {
    Spread = ((Ask-Bid)/Point);  //int  
    Spread = NormalizeDouble((Ask-Bid),Digits); //double
  }              
  1. Можно еще кончено в FXT файл залезть
  2. или symbols.raw отредактировать spread-символ в этом файле :)
 
solnce600:

Мне нужно открыть ордер через 20 баров от текущего значения переменной Bars

Как это закодировать?

Спасибо.
По времени, по смещению баров, по луне, планетам солнечной системы, но не по Если 10 == 15, то открываемся.
 
solnce600:

Спасибо большое за ценную информацию.

Буду Вам очень признателен если посоветуете мне варианты выкручивания.

Отвёртка, гаечный ключ, штопор, нож, вилка...

А что выкручиваем-то?

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