CustomSymbolDelete

Elimina el símbolo personalizado con el nombre indicado.

bool  CustomSymbolDelete(
   const string     symbol_name          // nombre del símbolo personalizado
   );

Parámetros

symbol

[in]  Nombre del símbolo personalizado. No deberá coincidir con el nombre de un símbolo ya existente.

Valor devuelto

true — en caso de éxito, de lo contrario, false. Para obtener la información sobre el error, hay que llamar la función GetLastError().

Nota

Un símbolo representado en la Observación de Mercado (Market Watch) o del que haya un gráfico abierto, no podrá ser eliminado.

 

Ejemplo:

//+------------------------------------------------------------------+
//|                                           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"  // nombre del símbolo personalizado
#define   CUSTOM_SYMBOL_PATH     "Forex"        // nombre del grupo en el que se creará el símbolo
#define   CUSTOM_SYMBOL_ORIGIN   Symbol()       // nombre del símbolo a partir del cual se creará el símbolo personalizado
 
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- si no se ha podido crear el símbolo personalizado, informaremos de ello en el registro
   if(!CustomSymbolCreate(CUSTOM_SYMBOL_NAMECUSTOM_SYMBOL_PATHCUSTOM_SYMBOL_ORIGIN))
     {
      Print("CustomSymbolCreate() failed. Error "GetLastError());
      return;
     }
 
//--- comprobamos la existencia del símbolo creado e imprimimos el resultado en el registro
   bool customfalse;
   bool exist = SymbolExist(CUSTOM_SYMBOL_NAMEcustom);
   PrintFormat("Custom symbol '%s' exists: %s"CUSTOM_SYMBOL_NAME, (string)exist);
   
//--- esperamos dos segundos y borramos el símbolo creado con un mensaje sobre el resultado en el registro
   Sleep(2000);
   ResetLastError();
   bool deleted = CustomSymbolDelete(CUSTOM_SYMBOL_NAME);
   Print(deleted ? StringFormat("Custom symbol '%s' removed"CUSTOM_SYMBOL_NAME) : StringFormat("CustomSymbolDelete() failed. Error ",GetLastError()));
 
//--- comprobamos la existencia del símbolo creado e imprimimos el resultado en el registro
   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
   */
  }

 

Vea también

SymbolName, SymbolSelect, CustomSymbolCreate