OnDeinit в индикаторах

 

Почему после открытия графика, в индикаторах которые прикреплены к графику, не срабатывает деинит?

Это ведь логично! 

 

подробнее можно, а то только догадки что вы имели в виду (про drag and drop с обзора рынка на график с индкатором???) 

 

Например индикатор рисует зоны потдержки и сопротивления за 3 последних дня. В деините соотвественно удаление зон.  Вечером ПК выключаю, с утра включаю и вуаля, 4 зоны на экране(3 предыдущих и одна новая).

Прошу чтобы деинит срабатывал перед инитом, ну и после открепления индикатора. 

 
интересно, как индикатор будет определять, то что нужно удалять, если удаляемое не в деините определяется ?
 
eevviill:


Прошу чтобы деинит срабатывал перед инитом, ну и после открепления индикатора. 

Так вызовите его там самостоятельно - в чем проблема ?

void OnDeinit(const  int reazon)
{
// .........................
}
int OnInit(void)
  {
   string short_name;
// -------
    OnDeinit(0);
// -------
// .............................
//--- initialization done
   return(INIT_SUCCEEDED);
  }
 
eevviill:

Например индикатор рисует зоны потдержки и сопротивления за 3 последних дня. В деините соотвественно удаление зон.  Вечером ПК выключаю, с утра включаю и вуаля, 4 зоны на экране(3 предыдущих и одна новая).

Прошу чтобы деинит срабатывал перед инитом, ну и после открепления индикатора. 

в 670 билде - баг с причиной деинициализации при закрытии терминала (возвращает 4 - чарт закрыт, а должен 9 - терминал закрыт) 

Написал - исправили, 711 билде все работает нормально.

 
это ещё один баг, который живёт годами, из билда в билд. я уже привык, делаю как написано выше деинициализацию во время инициализации.
 
eevviill:

Например индикатор рисует зоны потдержки и сопротивления за 3 последних дня. В деините соотвественно удаление зон.  Вечером ПК выключаю, с утра включаю и вуаля, 4 зоны на экране(3 предыдущих и одна новая).

Прошу чтобы деинит срабатывал перед инитом, ну и после открепления индикатора. 

а терминал как закрывается ? из того, что написано - Вечером ПК выключаю, - можно решить, что запускается какой-нибудь shutdown и терминал убивается как процесс при выключении ПК..

если терминал закрыть, то OnDeinit замечательно отрабатывает и удаляет объекты ( 711 билд)..

 

Не, не удаляет. Терминал нормально выключаю.

Если Деинит в Инит засунуть, то тоже не работает.

Помогло только пользовательская функция удаления объектов. 

 
Пересчитай сколько всего объектов на чарте, может другими график забит? На выполнение деинициализации отводится ограниченное время и, возможно, не успевает перебрать все объекты.
 
Парни, если вам необходим чистый зкран перед выводом построений индикатора/советника/скрипта, то извольте его очистить.