last works ...
This commit is contained in:
@@ -113,6 +113,9 @@ class XCXOM1EAExpert : public XCBase
|
||||
//
|
||||
// Tools / Actions / Handlers ...
|
||||
|
||||
//
|
||||
TCanAnalyse canAnalyseEventHandler;
|
||||
|
||||
//
|
||||
// Signal Event Handlers ...
|
||||
|
||||
@@ -587,6 +590,10 @@ class XCXOM1EAExpert : public XCBase
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Attach Can Analyse Event Handler ...
|
||||
iDZoneSignaller.canAnalyseEventListener = canAnalyseEventHandler;
|
||||
|
||||
//
|
||||
// Register Signaller ...
|
||||
Add(
|
||||
@@ -635,7 +642,17 @@ class XCXOM1EAExpert : public XCBase
|
||||
eaTimeTracker.Clean();
|
||||
|
||||
//
|
||||
Clean(eaSignallers);
|
||||
SpecifiedClean(eaSignallers);
|
||||
SpecifiedClean(mOnSignalEventHandlers);
|
||||
SpecifiedClean(mOnModifyEventHandlers);
|
||||
SpecifiedClean(mStopLossEventHandlers);
|
||||
SpecifiedClean(mTakeProfitEventHandlers);
|
||||
SpecifiedClean(mOnForceCloseEventHandlers);
|
||||
SpecifiedClean(mDealsChangedEventHandlers);
|
||||
SpecifiedClean(mOrdersChangedEventHandlers);
|
||||
SpecifiedClean(mOnPartialCloseEventHandlers);
|
||||
SpecifiedClean(mPositionsChangedEventHandlers);
|
||||
SpecifiedClean(mTradeStateChangedEventHandlers);
|
||||
|
||||
//
|
||||
string message = "DeInitialized Successfully ...";
|
||||
@@ -707,6 +724,21 @@ class XCXOM1EAExpert : public XCBase
|
||||
eaTradeManager.HandleSignal(signal);
|
||||
}
|
||||
|
||||
//
|
||||
// Check Can Analyse ...
|
||||
bool HandleCanAnalyseEventTriggered(
|
||||
string symbol,
|
||||
ENUM_TIMEFRAMES period,
|
||||
datetime time //
|
||||
)
|
||||
{
|
||||
return eaTradeManager.CanAnalyse(
|
||||
symbol,
|
||||
period,
|
||||
time //
|
||||
);
|
||||
}
|
||||
|
||||
//
|
||||
// Trade Event Handlers ...
|
||||
|
||||
|
||||
@@ -70,13 +70,14 @@ class XCXOM1SignallerBase
|
||||
public:
|
||||
//
|
||||
// Props ...
|
||||
string name; // Name ...
|
||||
string symbol; // Symbol ...
|
||||
XOM1Zone zones[]; // Detected Zones ...
|
||||
XOM1Inputs inputs; // Indicator Inputs ...
|
||||
ENUM_TIMEFRAMES period; // Period ...
|
||||
XOM1SignallerConfig config; // Configuration ...
|
||||
XCXOM1POIDrawer drawer; // POI Drawer ...
|
||||
string name; // Name ...
|
||||
string symbol; // Symbol ...
|
||||
XOM1Zone zones[]; // Detected Zones ...
|
||||
XOM1Inputs inputs; // Indicator Inputs ...
|
||||
ENUM_TIMEFRAMES period; // Period ...
|
||||
XCXOM1POIDrawer drawer; // POI Drawer ...
|
||||
XOM1SignallerConfig config; // Configuration ...
|
||||
TCanAnalyse canAnalyseEventListener; // CanAnalyse Event Listener ...
|
||||
|
||||
//
|
||||
// Constructor ...
|
||||
@@ -222,6 +223,14 @@ class XCXOM1SignallerBase
|
||||
return;
|
||||
}
|
||||
|
||||
//
|
||||
// Check Process Permissions ...
|
||||
has = CanAnalyse(symbol, period, cBarTime);
|
||||
if (!has)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
//
|
||||
// Check if new Bar, Reset Processed Ticks Count ...
|
||||
isNewBar = cBarTime > mLastCheckedBarTime;
|
||||
@@ -571,6 +580,35 @@ class XCXOM1SignallerBase
|
||||
int mProcessedTicksCount; // Prcoessed Ticks Count ...
|
||||
datetime mLastCheckedBarTime; // Last Checked Bar Time ...
|
||||
|
||||
//
|
||||
bool CanAnalyse(
|
||||
string _symbol,
|
||||
ENUM_TIMEFRAMES _period,
|
||||
datetime time //
|
||||
)
|
||||
{
|
||||
//
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
if (canAnalyseEventListener != NULL)
|
||||
{
|
||||
//
|
||||
result = canAnalyseEventListener(
|
||||
_symbol,
|
||||
_period,
|
||||
time //
|
||||
);
|
||||
}
|
||||
else
|
||||
{
|
||||
result = true;
|
||||
}
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle New Bar's Process ...
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user