Смотри, как бесплатно скачать роботов
Ищи нас в Facebook!
Ставь лайки и следи за новостями
Ставь лайки и следи за новостями
Интересный скрипт?
Поставь на него ссылку - пусть другие тоже оценят
Поставь на него ссылку - пусть другие тоже оценят
Понравился скрипт?
Оцени его работу в терминале MetaTrader 5
Оцени его работу в терминале MetaTrader 5
XmlParser - библиотека для MetaTrader 5
- Просмотров:
- 2441
- Рейтинг:
- Опубликован:
- 2010.04.12 13:18
- Обновлен:
- 2011.09.30 11:42
- Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу
Класс CXmlElement предоставляет следующие возможности для работы с XML:
- создавать DOM-модель (дерево объектов) из XML-документа (или отдельного элемента);
- читать, изменять, создавать, удалять атрибуты, вложенные элементы и текст;
- сохранять объектную модель в XML.
class CXmlElement { public: string Name; CXmlElement *Elements[]; CXmlAttribute *Attributes[]; string Text; ... string SetXml (string xml); string GetXml (); };
Для доступа к атрибутам элементов используется простой класс CXmlAttribute:
class CXmlAttribute { public: string Name; string Value; };
Ниже приведен пример скрипта, который выполняет парсинг XML и печатает информацию из дерева DOM:
void OnStart() { CXmlElement xmldoc; string xml="<!--Comment--><ROOT><ITEM Attr1=\"HELLOW\">Terminal "MT5"</ITEM></ROOT>"; Print("XML="+xml); string res=xmldoc.SetXml(xml); if(res=="") { Print("Корневой элемент: "+xmldoc.Name); Print(" Атрибутов: "+string(ArraySize(xmldoc.Attributes))); Print(" Вложенных элементов: "+string(ArraySize(xmldoc.Elements))); Print(" Первый вложенный элемент:"+xmldoc.Elements[0].Name); Print(" Его первый атрибут: "+xmldoc.Elements[0].Attributes[0].Name+"="+xmldoc.Elements[0].Attributes[0].Value); Print(" Его текст: "+xmldoc.Elements[0].Text); Print("XML="+xmldoc.GetXml()); } else Print(res); }
Вот результат:
Дополнительная информация:
- Текущая версия загружает в DOM только элементы, их атрибуты и текст. Все прочие виды информации (комментарии, описания, ...) игнорируются. Как следствие этого - теряется информация о кодировке, версии и не всегда корректно будет сохранен XML.
- При сохранении выполняется преобразование служебных символов <"&'> в сущности <:, >, ... в соответствии со стандартом.
- Данный парсер предназначен в большей мере для разбора XML, нежели для полноценной работы с такими документами.
Расположение файлов:
- Каталог_данных_терминала\MQL5\Libraries\xmlparser.dll
- Каталог_данных_терминала\MQL5\Include\xmlparser.mqh
- Каталог_данных_терминала\MQL5\Scripts\xmlparserscript.mq5
iBBFill
Закрашенные (залитые) полосы Боллинджера.
iMovmentИндикатор Movment выводит бары разного цвета и оттенка в зависимости от направления и величины движения.
ZeroLag MACD
ZeroLag MACD с раскраской баров гистограммы относительно предыдущего бара.
Математические линии Мюррея (поддержка и сопротивление)Индикатор строит математические линии Мюррея (Murrey Math Lines) на всей доступной истории без использования объектов.