/////////////////////////////////////////////////////// // // SaherElm IT Center MQL5 Class Library // ---------------------------------------------- // Name: XSCBaseHelper // Description: provides all Base Indicator // Helper 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 // // START Definitions ... // // // END Definitions ... // // // START Import and Inclused requirements ... // // // Includes ... #include "../Libraries/x-saherelm.common.lib.mq5" // // END Import and Inclused requirements ... // // // START Overrides ... // // // END Overrides ... // // // a Class for Handle base requirements ... // for indicators ... class XSCBaseHelper { // // Public ... public: // // Constructor ... void XSCBaseHelper( string symbol, // Trading Symbol ENUM_TIMEFRAMES period // Trading Time Frame ) { // mSymbol = symbol; mPeriod = period; // LoopBack(52); } // // Deconstructor ... void ~XSCBaseHelper() { IndicatorRelease(mHandler); } // // START Properties ... // // // Loopback Bars ... void LoopBack(int value) { mLoopbackBars = value; } int Loopback() { return mLoopbackBars; } // // Symbol ... string GetSymbol() { return mSymbol; } // // Period ... ENUM_TIMEFRAMES GetPeriod() { return mPeriod; } // // Tag ... string GetTag() { return mTag; } // // Retrieve Bars ... int GetBars() { // int result = Bars( mSymbol, mPeriod); // return result; } // int GetCalculatedBars() { return BarsCalculated(mHandler); } // // END Properties ... // // // START Provided Functions ... // // // Prepare Tag ... virtual void PrepareTag() {} // // Reading Buffers based on Given Bar Index ... virtual void Calculate( int barIndex // Given Bar Index ); // // Retrieve MAx Required Length for Calculations ... virtual int GetMaxLength(); // // END Provided Functions ... // // // Protected ... protected: // string GetTagPrefix() { // string result = "(" + mSymbol + ")(" + ToString(mPeriod) + ")"; // return result; } // // Symbol ... string mSymbol; // // Period ... ENUM_TIMEFRAMES mPeriod; // // Indicator Handler ... int mHandler; // // Number Of Items Read Per Tick ... int mLoopbackBars; // // Tag Identifier ... string mTag; // // Private ... private: // }; // // START Usefull Functions ... // // // END Usefull Functions ... //