CustomSymbolDelete

Remove o símbolo personalizado com o nome especificado.

bool  CustomSymbolDelete(
   const string     symbol_name          // nome do símbolo personalizado
   );

Parâmetros

symbol

[in]  Nome do símbolo personalizado. Não deve corresponder ao nome do símbolo existente.

Valor de retorno

true, em caso de sucesso, caso contrário, false. Para obter informações sobre o erro, você deve chamar a função GetLastError().

Observação

O símbolo personalizado que aparece na observação do mercado (Market Watch) ou que abre o gráfico não pode ser excluído.

 

Exemplo:

//+------------------------------------------------------------------+
//|                                           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"     // nome do símbolo personalizado
#define   CUSTOM_SYMBOL_PATH     "Forex"           // nome do grupo onde o símbolo será criado
#define   CUSTOM_SYMBOL_ORIGIN   Symbol()          // nome do símbolo usado como base para a criação do símbolo personalizado
 
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- se não for possível criar o símbolo personalizado, informamos no log
   if(!CustomSymbolCreate(CUSTOM_SYMBOL_NAMECUSTOM_SYMBOL_PATHCUSTOM_SYMBOL_ORIGIN))
     {
      Print("CustomSymbolCreate() failed. Error "GetLastError());
      return;
     }
 
//--- verificamos a existência do símbolo criado e imprimimos no log o resultado
   bool customfalse;
   bool exist = SymbolExist(CUSTOM_SYMBOL_NAMEcustom);
   PrintFormat("Custom symbol '%s' exists: %s"CUSTOM_SYMBOL_NAME, (string)exist);
   
//--- aguardamos dois segundos e excluímos o símbolo criado com uma mensagem sobre o resultado no log
   Sleep(2000);
   ResetLastError();
   bool deleted = CustomSymbolDelete(CUSTOM_SYMBOL_NAME);
   Print(deleted ? StringFormat("Custom symbol '%s' removed"CUSTOM_SYMBOL_NAME) : StringFormat("CustomSymbolDelete() failed. Error ",GetLastError()));
 
//--- verificamos a existência do símbolo criado e imprimimos no log o resultado
   exist = SymbolExist(CUSTOM_SYMBOL_NAMEcustom);
   PrintFormat("Custom symbol '%s' exists: %s"CUSTOM_SYMBOL_NAME, (string)exist);
   /*
   resultado:
   Custom symbol 'EURUSD.Cexiststrue
   Custom symbol 'EURUSD.Cremoved
   Custom symbol 'EURUSD.Cexistsfalse
   */
  }

 

Veja também

SymbolName, SymbolSelect, CustomSymbolCreate