Баг в функции OrderSend() ? - страница 4

 
hoz:
 Ну да, в визуале гоню и смотрю.. А что он может не верно показывать? Ведь если откатывать ТС на часах или на H4 на демо, это можно перезимовать несколько лет :) ..... :) Жесть то какая.

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

P.S. Тоже все идеи пишу в основном под Н1 на демо всёже быстрее в итоге, чем разгадывать загадки тестера ...

 
hoz:

 Уже сделал. Кроме того увеличил чутка переменную отступа от машки и пошло.... Видать на глаз не всегда всё можно понять.

Мне интересно, кроме производительности вынос переменной lastBarTime на глобальный уровень на что-то ещё влияет? Ведь  там тип static, а это значит, что переменная хранит своё значение на протяжении жизни программы...

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


Локальная переменная - переменная, объявленная внутри какой-либо функции. Областью видимости локальных переменных является тело функции, в которой эта переменная объявлена. Локальная переменная может быть проинициализирована константой или выражением, соответствующими ее типу.

Глобальная переменная - переменная, объявленная за пределами всех функций. Областью видимости глобальных переменных является вся программа. Глобальная переменная не локализована ни на каком уровне. Глобальная переменная может быть проинициализирована только соответствующей ее типу константой (но не выражением). Инициализация глобальных переменных производится однократно перед началом исполнения специальных функций.

Если управление в программе находится внутри какой-либо функции, то значения локальных переменных, объявленных в другой функции не доступны. Значение любой глобальной переменной доступно из любой специальной и пользовательской функции. 

 
Все проще. В MQL4 статик не работает.
 
tara:
Все проще. В MQL4 статик не работает.

 since when?
 
Извини, совсем не работает. From the C самого начала:(
 
tara:
Извини, совсем не работает. From the C самого начала:(
Есть еще программисты, которые могут это подтвердить? Одного голоса маловато будет.
 
tara:
Все проще. В MQL4 статик не работает.
 Сколько видел кодов, написанных профессионалами, и у них static присуствует частенько. А Ты Говоришь не работает. Комц верить теперь? :(
 
hoz:
 Сколько видел кодов, написанных профессионалами, и у них static присуствует частенько. А Ты Говоришь не работает. Комц верить теперь? :(
верить нельзя никому
 
tara:
Извини, совсем не работает. From the C самого начала:(

лично я ниразу не сталкивался с неработающим статиком.

 

вот пример эксперта, хотите проверяйте на графике:

//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
   static int cc=20;
   Print("cc = ",cc);
   cc++;
   
   return(0);
  }
 

static работает 100 %. Вот вам тест:

int start()
  {
   static int i=0;
   while(i<3) {Print("K=",test());i++;}
   return(0);
  }
int test()
 {
  static int k=0;
  k++;
  return(k);
 }

И результаты:

Static 

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