- Create a Data Collector Class;
- Add Support for Save Logs in Alert Class; - Add Propper inputs for Handle Saving Logs in EA and Expert Class; - remove x-trade.manager Class Data Collector and use General Developed Data Collector; - Add Support for Reading Fles in Data Collector Class for Support Configuration Parsing; - Remove XCBaseAlert class and add Support for get XCAlert instance reference pointer as Dependency Injection in all used classed and Refactor all Changes; - Apply Fix some UnImplemented Event Handlers on Ea Expert Class of XCATBEA and also change Event Handler Binding to Collection Based Model; - Test all Functionalities ... - Apply Some Fixes on Prevent Double Saing Same Log Messages ...
This commit is contained in:
@@ -22,10 +22,10 @@
|
||||
//
|
||||
// Imports ...
|
||||
#include "../../Classes/x-saherelm.x-alert.class.mq5"
|
||||
#include "../../Classes/x-saherelm.x-data.collector.class.mq5"
|
||||
#include "../../Classes/x-saherelm.x-poi.drawer.class.mq5"
|
||||
#include "../../Classes/x-saherelm.x-trade.class.mq5"
|
||||
#include "../../Libraries/x-saherelm.x-poi.lib.mq5"
|
||||
#include "../Classes/xcatbea.x-data.collector.class.mq5"
|
||||
#include "../Libraries/xcatbea.lib.mq5"
|
||||
#include "../Libraries/xcatbea.signaller.lib.mq5"
|
||||
|
||||
@@ -1594,27 +1594,29 @@ struct XCATBEATrade
|
||||
|
||||
//
|
||||
// Implementations ...
|
||||
class XCXCATBEATradeManager : public XCBaseAlert
|
||||
class XCXCATBEATradeManager : public XCBase
|
||||
{
|
||||
//
|
||||
// Public ...
|
||||
public:
|
||||
//
|
||||
// Props ...
|
||||
XCAlert *alert;
|
||||
XCTrade *trader;
|
||||
bool drawSignal;
|
||||
XCPOIDrawer *drawer;
|
||||
XTimeTracker timeTracker;
|
||||
XCXCATBEADataCollector *collector;
|
||||
XCDataCollector *collector;
|
||||
|
||||
//
|
||||
// Constructors ...
|
||||
XCXCATBEATradeManager(
|
||||
XCTrade *&_trader,
|
||||
string _path = NULL // Base Path
|
||||
XCAlert *_alert,
|
||||
XCTrade *_trader //
|
||||
)
|
||||
{
|
||||
//
|
||||
alert = _alert;
|
||||
trader = _trader;
|
||||
drawSignal = true;
|
||||
drawer = new XCPOIDrawer();
|
||||
@@ -1644,15 +1646,12 @@ class XCXCATBEATradeManager : public XCBaseAlert
|
||||
SaveTrades(false);
|
||||
|
||||
//
|
||||
// Normalizing Collector Path ...
|
||||
if (!IsValid(_path))
|
||||
{
|
||||
_path = "X121XCATBEATradeManager" + "\\" + trader.mAccount.GetCompany();
|
||||
}
|
||||
|
||||
collector = new XCDataCollector();
|
||||
|
||||
//
|
||||
collector = new XCXCATBEADataCollector();
|
||||
collector.Path(_path);
|
||||
// Setting Collector Path ...
|
||||
string mPath = alert.GetPrefix() + "\\" + trader.mAccount.GetCompany();
|
||||
collector.Path(mPath);
|
||||
}
|
||||
|
||||
//
|
||||
@@ -1666,8 +1665,15 @@ class XCXCATBEATradeManager : public XCBaseAlert
|
||||
timeTracker.Clean();
|
||||
|
||||
//
|
||||
ZeroMemory(alert);
|
||||
ZeroMemory(trader);
|
||||
|
||||
//
|
||||
delete drawer;
|
||||
ZeroMemory(drawer);
|
||||
|
||||
//
|
||||
delete collector;
|
||||
ZeroMemory(collector);
|
||||
}
|
||||
|
||||
@@ -2283,7 +2289,7 @@ class XCXCATBEATradeManager : public XCBaseAlert
|
||||
{
|
||||
//
|
||||
string message = signal.GetMessage("Provided");
|
||||
SendAlert(message);
|
||||
alert.SendAlert(message);
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2474,7 +2480,7 @@ class XCXCATBEATradeManager : public XCBaseAlert
|
||||
}
|
||||
|
||||
//
|
||||
SendAlert(message);
|
||||
alert.SendAlert(message);
|
||||
}
|
||||
|
||||
//
|
||||
@@ -3183,10 +3189,10 @@ class XCXCATBEATradeManager : public XCBaseAlert
|
||||
//
|
||||
string message =
|
||||
(IsValid(prefix)
|
||||
? prefix + "\n"
|
||||
? prefix + " | "
|
||||
: "") +
|
||||
"Account Balance: " + ToString(balance) + currency;
|
||||
SendAlert(message);
|
||||
alert.SendAlert(message);
|
||||
}
|
||||
|
||||
//
|
||||
@@ -3199,7 +3205,7 @@ class XCXCATBEATradeManager : public XCBaseAlert
|
||||
}
|
||||
|
||||
//
|
||||
SendAlert(message);
|
||||
alert.SendAlert(message);
|
||||
}
|
||||
|
||||
//
|
||||
@@ -3595,7 +3601,7 @@ class XCXCATBEATradeManager : public XCBaseAlert
|
||||
{
|
||||
//
|
||||
string message = iInfo.GetRestrictionDescription(restrictionsPeriod);
|
||||
SendAlert(message);
|
||||
alert.SendAlert(message);
|
||||
}
|
||||
SaveRestrictions(iInfo);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user