Ошибки, баги, вопросы - страница 419

 
Im_hungry:

Доброй ночи, мне интересно допустим в этом коде

после проверки B>spred которая является "ЛОЖЬ" идет проверка остальных значений

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

Причем самый трудоемкий по расчетам ( proverka() - копирование значений буферов индюка )

я ставлю самым последним, только так, не идет проверка последнего. Вот интересно

а почему так ???

Или так не будет проверка последнего:

Попробуйте так

if((B >= spred) && (IND && proverka()))
{
//Processing...
}
 
Interesting:

Попробуйте так

Соори - это я недопроверил, работает по всякому,
 

Теперь интересует, почему в советнике индюк сжирает всю оперативку и более,

а отдельно работая от советника, нет, ВЫВОД понятен, что может

индюк не удаляется или еще что, но вызывается он на каждом новом баре,

и с каждым баром оперативки меньше и меньше (

 bytes not available

). Почему? Да доброй ночи !

 
Renat:
Приведите код, пожалуйста.
Ренат если вопрос ко мне, то я просто создал советник пустышку и запустил его. наверно это связано с UAC так как у меня все файлы складываются сюда C:\Users\user\AppData\Roaming\MetaQuotes\Terminal\88B20A762CA848D878988235C7B072A6 а визуализатор пытается из прямого каталога достать данные.
 
Im_hungry:

Теперь интересует, почему в советнике индюк сжирает всю оперативку и более,

а отдельно работая от советника, нет, ВЫВОД понятен, что может

индюк не удаляется или еще что, но вызывается он на каждом новом баре,

и с каждым баром оперативки меньше и меньше (

). Почему? Да доброй ночи !


Пример в студию плиз (хотя бы как набросок идеи), или разработчикам но уже все целиком. Кстати, а что значит "вызывается на каждом тике"?

По идеи вызываться должен один раз, в блоке инициализации. В случае попытки обойти ошибку инициализации можно еще в таймере или при новом тике (но только если handle инвалидный).

Во всех остальных местах разумно только получать определенную порцию данных (при контроле инвалидности handle конечно).

 
sergey1294:
Ренат если вопрос ко мне, то я просто создал советник пустышку и запустил его. наверно это связано с UAC так как у меня все файлы складываются сюда C:\Users\user\AppData\Roaming\MetaQuotes\Terminal\88B20A762CA848D878988235C7B072A6 а визуализатор пытается из прямого каталога достать данные.
Так давайте исключим UAC из вазможных вариантов при помощи портабельности... :)
 
Interesting:
Так давайте исключим UAC из вазможных вариантов при помощи портабельности... :)
Если я запущу сейчас терминал с этим ключем он все время потом будет запускаться с ним или каждый раз надо запускать терминал из командной строки?
 
Interesting:

Пример в студию плиз (хотя бы как набросок идеи), или разработчикам но уже все целиком. Кстати, а что значит "вызывается на каждом тике"?

По идеи вызываться должен один раз, в блоке инициализации. В случае попытки обойти ошибку инициализации можно еще в таймере или при новом тике (но только если handle инвалидный).

Во всех остальных местах разумно только получать определенную порцию данных (при контроле инвалидности handle конечно).

вот этим проверяется успели (удалось или нет ) скопировать буфера

bool proverka()
{
  ArraySetAsSeries(Buf,true);
  handle=iCustom(NULL,0,"V",Symbol_1,Symbol_2,Depth,ExpKoef,DateStart);
  ResetLastError();
  int copied=CopyBuffer(handle,0,1,1,Buf);
  if(copied<=0)
   {
    Sleep(50);
................

вот этим, вызываем индюк на новом баре

handle=iCustom(NULL,0,"V",Symbol_1,Symbol_2,Depth,ExpKoef,DateStart);
А без этого, получаем только нулевые значения !!!

А оперативка с каждым баром уменьшается, уменьшается...

Почему?

 
sergey1294:
Если я запущу сейчас терминал с этим ключем он все время потом будет запускаться с ним или каждый раз надо запускать терминал из командной строки?

Если создать батник и или поправить соответствующий ярлык то все время. Если же просто запустить из командной строки то разово.

На мой взгяд проще создать копию ярлыка с соответствующим названием и командной строкой.

 
Interesting:

Если создать батник и или поправить соответствующий ярлык то все время. Если и же просто запустить из командной строки то разово.

На мой взгяд проще создать копию ярлыка с соответствующим названием и командной строкой.

а как это сделать правильно
Причина обращения: