From 74370f2daed710000edd591476b1077178d11dbf Mon Sep 17 00:00:00 2001 From: Hadi Khazaee Asl Date: Wed, 4 Feb 2026 19:01:36 +0330 Subject: [PATCH] last ... --- .../x-saherelm.x121.xsde.parser.class.mq5 | 158 ++++++++++++++++++ ...-saherelm.x121.xsde.poi.detector.class.mq5 | 115 +++++++++++++ .../x-saherelm.x121.xsde.poi.drawer.class.mq5 | 84 ++++++++++ .../x-saherelm.x121.xsde.signaller.class.mq5 | 21 +++ X121XSDE/Documents/.gitkeep | 0 .../Libraries/x-saherelm.x121.xsde.lib.mq5 | 28 ++++ 6 files changed, 406 insertions(+) create mode 100644 X121XSDE/Classes/x-saherelm.x121.xsde.parser.class.mq5 create mode 100644 X121XSDE/Classes/x-saherelm.x121.xsde.poi.detector.class.mq5 create mode 100644 X121XSDE/Classes/x-saherelm.x121.xsde.poi.drawer.class.mq5 create mode 100644 X121XSDE/Classes/x-saherelm.x121.xsde.signaller.class.mq5 create mode 100644 X121XSDE/Documents/.gitkeep create mode 100644 X121XSDE/Libraries/x-saherelm.x121.xsde.lib.mq5 diff --git a/X121XSDE/Classes/x-saherelm.x121.xsde.parser.class.mq5 b/X121XSDE/Classes/x-saherelm.x121.xsde.parser.class.mq5 new file mode 100644 index 00000000..3dfb744a --- /dev/null +++ b/X121XSDE/Classes/x-saherelm.x121.xsde.parser.class.mq5 @@ -0,0 +1,158 @@ +/////////////////////////////////////////////////////// +// +// SaherElm IT Center MQL5 Helper Parser Class Library +// ---------------------------------------------------- +// Name: XCX121XSDEHelperParser +// Description: provides all Indicator +// Helper Parse requirements ... +// +// +// Maintainer: +// ------------ +// Hadi Khazaee Asl (hadi_khazaee_asl@yahoo.com) +// +////////////////////////////////////////////////////// +// +// Global Properties ... +#property library +#property copyright "Copyright 2023, SaherElm IT Center" +#property link "https://www.saherelm.ir" +#property version "1.00" +#property strict + +// +// Imports ... +#include "../../Classes/x-saherelm.base.class.mq5" +#include "../Libraries/x-saherelm.x121.xsde.lib.mq5" + +// +// Definitions ... + +// +// Implementation ... + +class XCX121XSDEHelperParser : XCBase +{ + // + // Public ... + public: + // + string symbol; + ENUM_TIMEFRAMES period; + + // + // Constructor ... + XCX121XSDEHelperParser( + string _symbol = NULL, + ENUM_TIMEFRAMES _period = NULL // + ) + { + // + // Normalize ... + if (!IsXValid(_symbol)) + { + _symbol = _Symbol; + } + if (!IsXValid(_period)) + { + _period = _Period; + } + + // + symbol = _symbol; + period = _period; + } + + // + // Deconstructor ... + ~XCX121XSDEHelperParser() + { + } + + // + // Tools ... + + /** + * Validate ... + * + * @return ( bool ) + */ + bool IsValid() + { + // + bool result = false; + + // + result = + IsXValid(symbol) && + IsXValid(period); + + // + return result; + } + + // + // Retrieve Bars ... + int CountBars() + { + // + int result = + Bars( + symbol, + period + // + ); + + // + return result; + } + + /** + * Normalize Bar Index ... + * + * @param barIndex: int, Provided Bar Index ... + * + * @return ( int ) + */ + int NormalizeBarIndex(int barIndex = 0) + { + // + int result = -1; + + // + if (!IsValid()) + { + return result; + } + + // + int count = CountBars() - 1; + result = NormalizeInt(result, 0, count - 1); + + // + return result; + } + + double GetPoints() + { + return GetXPoints(symbol); + } + + // + // Parsers ... + // Indicators Base Conditions ... + + // + // Protected ... + protected: + // + + // + // Private ... + private: + // + + // +}; + +// diff --git a/X121XSDE/Classes/x-saherelm.x121.xsde.poi.detector.class.mq5 b/X121XSDE/Classes/x-saherelm.x121.xsde.poi.detector.class.mq5 new file mode 100644 index 00000000..b96f9f80 --- /dev/null +++ b/X121XSDE/Classes/x-saherelm.x121.xsde.poi.detector.class.mq5 @@ -0,0 +1,115 @@ +/////////////////////////////////////////////////////// +// +// SaherElm IT Center MQL5 Class +// ------------------------------------------------- +// Name: XCX121XSDEPoiDetector ... +// Description: X121XKI POI Detector Class ... +// +// +// Maintainer: +// ------------ +// Hadi Khazaee Asl (hadi_khazaee_asl@yahoo.com) +// +////////////////////////////////////////////////////// +// +// Global Properties ... +#property library +#property copyright "Copyright 2023, SaherElm IT Center" +#property link "https://saherelm.ir" +#property version "1.00" +#property description "SaherElm X121XSDE POI Detector Class" +#property strict + +// +// Imports ... +#include "../../Classes/x-saherelm.base.class.mq5" +#include "../../Classes/x-saherelm.x-bar.analyser.class.mq5" +#include "../../Classes/x-saherelm.x-market.pattern.class.mq5" +#include "../Libraries/x-saherelm.x121.xsde.lib.mq5" + +// +// Definitions ... + +// +// Implementation ... +class XCX121XKIPOIDetector : public XCMarketPatternDetector +{ + // + // Public ... + public: + // + // Props ... + + // + string symbol; + ENUM_TIMEFRAMES period; + + // + XCBarAnalyser *barAnalyser; // Bar Analyser ... + + // + // Constructor ... + XCX121XKIPOIDetector( + string _symbol = NULL, + ENUM_TIMEFRAMES _period = NULL // + ) : XCMarketPatternDetector() + { + // + barAnalyser = new XCBarAnalyser(); + + // + // Normalize ... + if (!IsXValid(_symbol)) + { + _symbol = _Symbol; + } + if (!IsXValid(_period)) + { + _period = _Period; + } + + // + symbol = _symbol; + period = _period; + } + + // + // Deconstructor ... + ~XCX121XKIPOIDetector() + { + Destroy(); + } + + // + // Actions and Tools ... + + // + // Others ... + + /** + * Destroy ... + */ + void Destroy() + { + // + delete barAnalyser; + ZeroMemory(barAnalyser); + } + + // + // Testers ... + + // + // Protected ... + protected: + // + // Props ... + + // + // Private ... + private: + // + // Props ... + + // +}; diff --git a/X121XSDE/Classes/x-saherelm.x121.xsde.poi.drawer.class.mq5 b/X121XSDE/Classes/x-saherelm.x121.xsde.poi.drawer.class.mq5 new file mode 100644 index 00000000..53989391 --- /dev/null +++ b/X121XSDE/Classes/x-saherelm.x121.xsde.poi.drawer.class.mq5 @@ -0,0 +1,84 @@ +/////////////////////////////////////////////////////// +// +// SaherElm IT Center MQL5 Class +// ------------------------------------------------- +// Name: XCX121XSDEPoiDrawer ... +// Description: X121XSDE POI Drawer Class ... +// +// +// Maintainer: +// ------------ +// Hadi Khazaee Asl (hadi_khazaee_asl@yahoo.com) +// +////////////////////////////////////////////////////// +// +// Global Properties ... +#property library +#property copyright "Copyright 2023, SaherElm IT Center" +#property link "https://saherelm.ir" +#property version "1.00" +#property description "SaherElm X121XSDE POI Drawer Class" +#property strict + +// +// Imports ... +#include "../../Classes/x-saherelm.x-poi.drawer.class.mq5" +#include "../Libraries/x-saherelm.x121.xsde.lib.mq5" + +// +// Implementation ... +class XCX121XSDEPOIDrawer : public XCPOIDrawer +{ + // + public: + // + // Props ... + + // + // Constructor ... + XCX121XSDEPOIDrawer() : XCPOIDrawer() + { + Default(); + } + + // + // Deconstructor ... + ~XCX121XSDEPOIDrawer() + { + } + + // + // Overrides ... + + /** + * Do additional Configurations for Child Classes ... + */ + void virtual Default() override + { + // + // Apply Default Props ... + + // + Prefix(NULL); + ChartIdentification(0); + SubWindowIdentification(0); + + // + defaultBullishStyle.width = 1; + defaultBullishStyle.clr = clrAqua; + defaultBullishStyle.style = STYLE_SOLID; + + // + defaultBearishStyle.width = 1; + defaultBearishStyle.clr = clrMagenta; + defaultBearishStyle.style = STYLE_SOLID; + + // + boxBullishStyle = defaultBullishStyle; + boxBearishStyle = defaultBearishStyle; + } + + // +}; + +// \ No newline at end of file diff --git a/X121XSDE/Classes/x-saherelm.x121.xsde.signaller.class.mq5 b/X121XSDE/Classes/x-saherelm.x121.xsde.signaller.class.mq5 new file mode 100644 index 00000000..2eda02d0 --- /dev/null +++ b/X121XSDE/Classes/x-saherelm.x121.xsde.signaller.class.mq5 @@ -0,0 +1,21 @@ +/////////////////////////////////////////////////////// +// +// SaherElm IT Center MQL5 Class +// ------------------------------------------------- +// Name: XCX121XKISignaller ... +// Description: X121XKI Signaller Class ... +// +// +// Maintainer: +// ------------ +// Hadi Khazaee Asl (hadi_khazaee_asl@yahoo.com) +// +////////////////////////////////////////////////////// +// +// Global Properties ... +#property library +#property copyright "Copyright 2023, SaherElm IT Center" +#property link "https://saherelm.ir" +#property version "1.00" +#property description "SaherElm X121XKI Signaller Class" +#property strict diff --git a/X121XSDE/Documents/.gitkeep b/X121XSDE/Documents/.gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/X121XSDE/Libraries/x-saherelm.x121.xsde.lib.mq5 b/X121XSDE/Libraries/x-saherelm.x121.xsde.lib.mq5 new file mode 100644 index 00000000..daafacc0 --- /dev/null +++ b/X121XSDE/Libraries/x-saherelm.x121.xsde.lib.mq5 @@ -0,0 +1,28 @@ +/////////////////////////////////////////////////////// +// +// SaherElm IT Center MQL5 Library +// ------------------------------------------------- +// Name: XCX121XSDEEALib ... +// Description: X121XSDE Library ... +// +// +// Maintainer: +// ------------ +// Hadi Khazaee Asl (hadi_khazaee_asl@yahoo.com) +// +////////////////////////////////////////////////////// +// +// Global Properties ... +#property library +#property copyright "Copyright 2023, SaherElm IT Center" +#property link "https://saherelm.ir" +#property version "1.00" +#property description "SaherElm X121XSDEEA Library" +#property strict + +// +// Imports ... +#include "../../Libraries/x-saherelm.common.lib.mq5" + +// +// Enums ...