Mira cómo descargar robots gratis
¡Búscanos en Twitter!
Pon "Me gusta" y sigue las noticias
¿Es interesante este script?
Deje un enlace a él, ¡qué los demás también lo valoren!
¿Le ha gustado el script?
Evalúe su trabajo en el terminal MetaTrader 5
Librerías

XmlParser - librería para MetaTrader 5

Visualizaciones:
1063
Ranking:
(36)
Publicado:
2014.01.14 15:03
Actualizado:
2016.11.22 07:33
xmlparserdll.zip (235.42 KB)
\MQL5\Include\
xmlparser.mqh (6.12 KB) ver
\MQL5\Scripts\
¿Necesita un robot o indicador basado en este código? Solicítelo en la bolsa freelance Pasar a la bolsa

La clase CXmlElement class ofrece las siguientes posibilidades de trabajo con documentos XML:

  • Le permite crear el modelo DOM (árbol de objectos) del documento XML (o de un único elemento);
  • Le permite leer, modificar, crear y eliminar los elementos anidados y texto;
  • Le permite guardar el modelo de objetos a XML.

Interfaz de la clase:

class CXmlElement
{
public:
  string        Name;
  CXmlElement   *Elements[];
  CXmlAttribute *Attributes[];
  string        Text;
  ...  
  string SetXml (string xml);
  string GetXml ();
};

Para acceder a los atributos de la clase se usa una clase sencilla CXmlAttribute:

class CXmlAttribute 
{
public:
  string Name;
  string Value;
};

He aquí un ejemplo simple de script, que analiza XML e imprime información del árbol DOM:

//+------------------------------------------------------------------+
//|                                              XmlParserScript.mq5 |
//|                        Copyright 2009, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//|                                                   yu-sha@ukr.net |
//+------------------------------------------------------------------+
#include <XmlParser.mqh>
//+------------------------------------------------------------------+
//| Comienzo del script                                              |
//+------------------------------------------------------------------+
void OnStart()
  {
   CXmlElement xmldoc;
   string xml="<!--Comment--><ROOT><ITEM  Attr1=\"HELLOW\">Terminal &quot;MT5&quot;</ITEM></ROOT>";
   Print("XML="+xml);
   string res=xmldoc.SetXml(xml);
   if(res=="")
     {
      Print("El elemento Raíz: "+xmldoc.Name);
      Print("  Número de Atributos: "+string(ArraySize(xmldoc.Attributes)));
      Print("  Elementos Anidados: "+string(ArraySize(xmldoc.Elements)));
      Print("  Primer elemento anidado:"+xmldoc.Elements[0].Name);
      Print("    Su primer atributo: "+xmldoc.Elements[0].Attributes[0].Name+"="+xmldoc.Elements[0].Attributes[0].Value);
      Print("    Su texto: "+xmldoc.Elements[0].Text);
      Print("XML="+xmldoc.GetXml());
     }
   else
      Print(res);
  }
//+------------------------------------------------------------------+

Aquí está el resultado de la ejecución del script:


Información adicional:

  • La versión actual carga en el DOM sólo los elementos, sus atributos y texto. Todos los otros tipos de información (comentarios, descripciones, ...) son ignorados. Como consecuencia - tal vez la pérdida de información sobre la página de códigos, la versión, o un documento XML se puede guardar de forma incorrecta.
  • Al guardar se convierten los símbolos especiales como <"&'> en secuencias como &lt:, &gt;, ... según el estándar.
  • Este analizador está destinado para analizar documentos XML principalmente, en lugar de trabajar plenamente con documentos XML.

Ubicación de archivos:

  • terminal_data_folder\MQL5\Libraries\xmlparser.dll
  • terminal_data_folder\MQL5\Include\xmlparser.mqh
  • terminal_data_folder\MQL5\Scripts\xmlparserscript.mq5

Traducción del ruso realizada por MetaQuotes Ltd
Artículo original: https://www.mql5.com/ru/code/97

ZeroLag MACD ZeroLag MACD

El indicador ZeroLag MACD muestra el histograma coloreado en la barra anterior.

Líneas de Matemáticas de Murrey (soporte y resistencia) Líneas de Matemáticas de Murrey (soporte y resistencia)

El indicador dibuja las Líneas de Matemáticas de Murrey para toda la historia disponible, no se utiliza ningún objeto.

iBBFill iBBFill

El indicador dibuja las Bandas de Bollinger ®, rellenas de diferentes colores dependiendo de la dirección de la tendencia.

iMovment iMovment

El indicador de dibuja las velas con diferentes colores dependiendo de la dirección de la tendencia y el movimiento del precio.