Alım-satım robotlarını ücretsiz olarak nasıl indirebileceğinizi izleyin
Bizi Telegram üzerinde bulun!
Fan sayfamıza katılın
Kodu ilginç mi buldunuz?
Öyleyse bir link gönderin -
başkalarının da faydalanmasını sağlayın
Kodu beğendiniz mi? MetaTrader 5 terminalinde deneyin
Görüntülemeler:
242
Derecelendirme:
(37)
Yayınlandı:
Güncellendi:
xmlparser-doc.zip (36.87 KB)
xmlparserdll.zip (235.42 KB)
\MQL5\Include\ \MQL5\Scripts\
MQL5 Freelance Bu koda dayalı bir robota veya göstergeye mi ihtiyacınız var? Freelance üzerinden sipariş edin Freelance'e git

CXmlElement sınıfı, XML ile çalışmak için aşağıdaki olanakları sunar:

  • XML belgesinden (veya tek bir öğeden) DOM modeli (nesne ağacı) oluşturmak;
  • öznitelikleri, iç içe geçmiş öğeleri ve metni okumak, değiştirmek, oluşturmak ve silmek;
  • nesne modelini XML olarak kaydetmek.
Sınıf arayüzü

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

Öğelerin özniteliklerine erişmek için basit bir CXmlAttribute sınıfı kullanılır:

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

Aşağıda, XML'i ayrıştıran ve DOM ağacındaki bilgileri görüntüleyen bir komut dosyası örneği verilmiştir:

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("Kök öğesi:"+xmldoc.Name);
      Print("  Özellikler: "+string(ArraySize(xmldoc.Attributes)));
      Print("  İç içe geçmiş öğeler: "+string(ArraySize(xmldoc.Elements)));
      Print("  İlk iç içe geçmiş öğe:"+xmldoc.Elements[0].Name);
      Print("    Onun ilk özelliği: "+xmldoc.Elements[0].Attributes[0].Name+"="+xmldoc.Elements[0].Attributes[0].Value);
      Print("    Metni şöyle: "+xmldoc.Elements[0].Text);
      Print("XML="+xmldoc.GetXml());
     }
   else
      Print(res);
  }

İşte sonuç:


Ek bilgi:

  • Mevcut sürüm, DOM'a yalnızca öğeleri, bunların özniteliklerini ve metinlerini yükler. Diğer tüm bilgi türleri (yorumlar, açıklamalar, ...) göz ardı edilir. Bunun sonucunda kodlama ve sürüm bilgileri kaybolur ve XML her zaman doğru şekilde kaydedilmeyebilir.
  • Kaydedilirken, <"&'> gibi hizmet karakterleri, standarda uygun olarak &lt; ve &gt; gibi karakterlere dönüştürülür.
  • Bu ayrıştırıcı, bu tür belgelerle tam anlamıyla çalışmaktan ziyade, daha çok XML'i ayrıştırmak için tasarlanmıştır.

Dosya konumu:

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

MetaQuotes Ltd tarafından Rusçadan çevrilmiştir.
Orijinal kod: https://www.mql5.com/ru/code/97

iBBFill iBBFill

Bollinger şeritleri kaplanmış (dolgulu) durumdadır.

iMovment iMovment

Movment göstergesi, hareketin yönüne ve büyüklüğüne bağlı olarak farklı renk ve tonlarda çubuklar gösterir.

SignalAI - Indicator SignalAI - Indicator

Bu Gösterge Alış veya Satış Sinyalini gösterir

Custom MA Cross with RSI Indicator for MT5 Custom MA Cross with RSI Indicator for MT5

MT5 için RSI Göstergeli Özel MA Çapraz, yatırımcıların trend değişikliklerini belirlemelerine ve momentum kullanarak girişleri filtrelemelerine yardımcı olmak için tasarlanmış çok yönlü bir ticaret aracıdır. Bu gösterge, iki hareketli ortalamayı (MA) Göreceli Güç Endeksi (RSI) ile birleştirerek net alım ve satım sinyalleri sunar.