[АРХИВ] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 3. - страница 534

 
Andreyu:

Кто знает как сделать так что бы в тестере стратегий был виден стандартный индикатор?

при запуске советника - поставьте его на паузу в режиме визуализации - нанесите на окно индикатор -сохраните шаблон с названием советника - при следующем запуске все заработает
 
Как запомнить текущее положение цены? Вновь полученная цена сравнивается с запомненной.
Пытался сделать так:
double g_price_now=0.0000; // объявляем глобальную переменную int start() { double price_now; // объявляем локальную переменную if (NormalizeDouble(g_price_now,4) == 0.0000) { // если переменная g_price_now изменилась, значит она уже содержит цену Bid GlobalVariableSet("g_price_now",Bid); //Устанавливает новое значение глобальной переменной price_now = GlobalVariableGet("g_price_now"); // Возвращаем значение существующей глобальной переменной и запоминаем текущее положение цены } else { price_now = g_price_now; } Comment(price_now, " | ", Bid); return(0); }
Но получается, что price_now всегда равно Bid
 
tara 26.01.2012 22:16 | банправка | удалить
И не попадет, поскольку g_price_now объявлена, как глобальная (не GV, а просто глобальная), а Вы ее отождествили с терминальной, то бишь GV.
ответить

avatar
1723
tara 26.01.2012 22:21 | банправка | удалить

Короче, Вам нужно применить static (если работать корректно) и понять, почему это так.

ЗЫ понадобится помощь - обращайтесь здесь-же. Я смотрю, Вы склонны вникать :)


 
bukmeker 26.01.2012 21:26 | бан

как-то так. вроде работает.



price_now = somefunc();

Comment(price_now, " | ", Bid);

double somefunc()
{
static double price_now1=0.0000;

if (price_now1 == 0.0000) {
price_now1 = Bid;
}

return(price_now1);
}



Кстати, большое спасибо за направление.

 

Огромное спасибо!!! Я новичок в MQL4, и вот такая мелочь ввела меня в ступор =) Еще раз спасибо!!!
 

В операторе switch выражение должно быть только типа integer? Неожиданно! А строку никак не передать?

string symbol;

switch(symbol){
      case "EURUSD" : колдуем; break;
      case "GBPUSD" : колдуем; break;
      case "EURGBP" : колдуем; break;
   }
 

1. Как узнать какой сейчас период(таймфрейм)? совсем запарился...

2. Как нарисовать в своем индюке линию или отрезок своей длины?

 
DOCTORS:

1. Как узнать какой сейчас период(таймфрейм)? совсем запарился...

2. Как нарисовать в своем индюке линию или отрезок своей длины?

1. https://docs.mql4.com/ru/windows/Period

2. https://docs.mql4.com/ru/objects

 
DOCTORS:

1. Как узнать какой сейчас период(таймфрейм)? совсем запарился...

int tf = Period();

DOCTORS:


2. Как нарисовать в своем индюке линию или отрезок своей длины?

Вопрос не совсем понятный
 

Спасибо огромное!

По 2-у, а не подскажите- можно ли с помощью SetIndexStyle() создать линию нужной длины?

UDP Вопрос снят, да через объекты.

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