CustomSymbolDelete

Удаляет пользовательский символ с указанным именем.

bool  CustomSymbolDelete(
   const string     symbol_name          // имя пользовательского символа
   );

Параметры

symbol

[in]  Имя пользовательского символа. Не должно совпадать с именем уже существующего символа.

Возвращаемое значение

true – в случае успеха, иначе false. Чтобы получить информацию об ошибке, необходимо вызвать функцию GetLastError().

Примечание

Пользовательский символ, отображаемый в обзоре рынка (Market Watch) или по которому открыт график, не может быть удалён.

 

Пример:

//+------------------------------------------------------------------+
//|                                           CustomSymbolDelete.mq5 |
//|                                  Copyright 2024, MetaQuotes Ltd. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2024, MetaQuotes Ltd."
#property link      "https://www.mql5.com"
#property version   "1.00"
 
#define   CUSTOM_SYMBOL_NAME     Symbol()+".C"  // наименование пользовательского символа
#define   CUSTOM_SYMBOL_PATH     "Forex"        // название группы, в которой будет создан символ
#define   CUSTOM_SYMBOL_ORIGIN   Symbol()       // наименование символа, на основе которого будет создан пользовательский
 
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- если пользовательский символ создать не удалось - сообщим об этом в журнале
   if(!CustomSymbolCreate(CUSTOM_SYMBOL_NAMECUSTOM_SYMBOL_PATHCUSTOM_SYMBOL_ORIGIN))
     {
      Print("CustomSymbolCreate() failed. Error "GetLastError());
      return;
     }
 
//--- проверим существование созданного символа и распечатаем в журнале результат
   bool customfalse;
   bool exist = SymbolExist(CUSTOM_SYMBOL_NAMEcustom);
   PrintFormat("Custom symbol '%s' exists: %s"CUSTOM_SYMBOL_NAME, (string)exist);
   
//--- подождем две секунды и удалим созданный символ с сообщением о результате в журнал
   Sleep(2000);
   ResetLastError();
   bool deleted = CustomSymbolDelete(CUSTOM_SYMBOL_NAME);
   Print(deleted ? StringFormat("Custom symbol '%s' removed"CUSTOM_SYMBOL_NAME) : StringFormat("CustomSymbolDelete() failed. Error ",GetLastError()));
 
//--- проверим существование созданного символа и распечатаем в журнале результат
   exist = SymbolExist(CUSTOM_SYMBOL_NAMEcustom);
   PrintFormat("Custom symbol '%s' exists: %s"CUSTOM_SYMBOL_NAME, (string)exist);
   /*
   результат:
   Custom symbol 'EURUSD.Cexiststrue
   Custom symbol 'EURUSD.Cremoved
   Custom symbol 'EURUSD.Cexistsfalse
   */
  }

 

Смотри также

SymbolName, SymbolSelect, CustomSymbolCreate