Удаление трендовых линий

 
void Obj_Del_TL(string nm=""){
int lTip;
int obj_total=ObjectsTotal();
for(int i=obj_total;i>=0;i--){
string name=ObjectName(i);
lTip=ObjectType(name);
if (nm==name&&lTip==2){
bool tic=ObjectDelete(name);
if(!tic)
{
Print("Delete TrendLine error #",GetLastError());
return(0);}
}//if (nm==name&&lTip==2)
}//for(int i=obj_total;i>=0;i--)
//----
return(0);
}//void Obj_Del_TL(string nm="")

Данная функция работает, удаляет линии, но в журнале появляется запись об ошибке: object name passed to ObjectType function cannot be an uninitialized or empty string

В чем ошибка и как ее исправить?

 
не проще ли заместо вызова этой функции просто удалить объект по имени.
ObjectDelete(name);
 
NicE:
void Obj_Del_TL(string nm=""){
int lTip;
int obj_total=ObjectsTotal();
for(int i=obj_total;i>=0;i--){
string name=ObjectName(i);
lTip=ObjectType(name);
if (nm==name&&lTip==2){
bool tic=ObjectDelete(name);
if(!tic)
{
Print("Delete TrendLine error #",GetLastError());
return(0);}
}//if (nm==name&&lTip==2)
}//for(int i=obj_total;i>=0;i--)
//----
return(0);
}//void Obj_Del_TL(string nm="")

Данная функция работает, удаляет линии, но в журнале появляется запись об ошибке: object name passed to ObjectType function cannot be an uninitialized or empty string

В чем ошибка и как ее исправить?


int obj_total=ObjectsTotal();
for(int i=obj_total-1;i>=0;i--){

Удачи.
 
VladislavVG:

Удачи.
Спасибо, и мне тоже очень помог Ваш ответ!