last works on Position Drawer Class and Implement it on EA Backtester Expert Class ...
required to Test it's work ...
This commit is contained in:
@@ -24,6 +24,7 @@
|
||||
#include "../Classes/x-saherelm.x-alert.class.mq5"
|
||||
#include "../Classes/x-saherelm.x-chart.helper.class.mq5"
|
||||
#include "../Classes/x-saherelm.x-guard.class.mq5"
|
||||
#include "../Classes/x-saherelm.x-position.drawer.class.mq5"
|
||||
#include "../Classes/x-saherelm.x-target.class.mq5"
|
||||
#include "../Classes/x-saherelm.x-trade.class.mq5"
|
||||
#include "../Classes/x-saherelm.x-volume.class.mq5"
|
||||
@@ -82,9 +83,10 @@ class XCBackTesterEA : public XCBase
|
||||
double volume; // Default volume Per Trade ...
|
||||
|
||||
//
|
||||
XCAlert *eaAlert; // EA Scope Alert Handler ...
|
||||
XCTrade *eaTrader; // EA Scope Trade Handler ...
|
||||
XCTarget *eaTarget; // EA Scope Target Manager ...
|
||||
XCAlert *eaAlert; // EA Scope Alert Handler ...
|
||||
XCTrade *eaTrader; // EA Scope Trade Handler ...
|
||||
XCTarget *eaTarget; // EA Scope Target Manager ...
|
||||
XCPositionDrawer *eaPositionDrawer; // EA Scope Position Drawer ...
|
||||
|
||||
//
|
||||
XCChartHelper *eaChartHelper; // Chart Helper Class ...
|
||||
@@ -295,6 +297,10 @@ class XCBackTesterEA : public XCBase
|
||||
// Init Target Managers ...
|
||||
eaTarget = new XCTarget(eaTrader, eaAlert);
|
||||
|
||||
//
|
||||
// Init Position Drawer ...
|
||||
eaPositionDrawer = new XCPositionDrawer(eaTrader);
|
||||
|
||||
//
|
||||
// Initial GUI ...
|
||||
result = InitGUI();
|
||||
@@ -321,6 +327,11 @@ class XCBackTesterEA : public XCBase
|
||||
delete eaTarget;
|
||||
ZeroMemory(eaTarget);
|
||||
|
||||
//
|
||||
eaPositionDrawer.Destroy();
|
||||
delete eaPositionDrawer;
|
||||
ZeroMemory(eaPositionDrawer);
|
||||
|
||||
//
|
||||
delete eaTrader;
|
||||
ZeroMemory(eaTrader);
|
||||
@@ -359,6 +370,10 @@ class XCBackTesterEA : public XCBase
|
||||
//
|
||||
// Managing Targets ...
|
||||
eaTarget.Manage();
|
||||
|
||||
//
|
||||
// Manage Positions Drawings ...
|
||||
eaPositionDrawer.Update();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -430,6 +445,9 @@ class XCBackTesterEA : public XCBase
|
||||
|
||||
//
|
||||
eaTarget.HandleOnStopLossTriggered(deal);
|
||||
|
||||
//
|
||||
eaPositionDrawer.HandleStopLossTriggered(deal);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -445,6 +463,9 @@ class XCBackTesterEA : public XCBase
|
||||
|
||||
//
|
||||
eaTarget.HandleOnTakeProfitTriggered(deal);
|
||||
|
||||
//
|
||||
eaPositionDrawer.HandleOnTakeProfitTriggered(deal);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -470,6 +491,13 @@ class XCBackTesterEA : public XCBase
|
||||
position,
|
||||
comment //
|
||||
);
|
||||
|
||||
//
|
||||
eaPositionDrawer.HandleOnPositionForceClosed(
|
||||
ticket,
|
||||
position,
|
||||
comment //
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -572,7 +600,11 @@ class XCBackTesterEA : public XCBase
|
||||
*/
|
||||
void HandleOnSignalExecuted(XSignal &signal)
|
||||
{
|
||||
//
|
||||
eaTarget.AddExecutedSignal(signal);
|
||||
|
||||
//
|
||||
eaPositionDrawer.AddExecutedSignal(signal);
|
||||
}
|
||||
|
||||
//
|
||||
|
||||
Reference in New Issue
Block a user