add XTargetManager Class and use it in XBacktesterEA Class ...
also i have to implement it's usage on XCExpert Class ... extends XTarget approaches and add support to Distances ...
This commit is contained in:
@@ -814,6 +814,23 @@ class XCTrade : public XCBase
|
||||
);
|
||||
}
|
||||
|
||||
//
|
||||
// Add New Signal Executed Event Handler ...
|
||||
void AddOnSignalExecutedEventHandler(TOnSignal handler)
|
||||
{
|
||||
//
|
||||
if (handler == NULL)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
//
|
||||
Add(
|
||||
handler,
|
||||
mOnSignalExecutedEventHandlers //
|
||||
);
|
||||
}
|
||||
|
||||
//
|
||||
// Functions ...
|
||||
|
||||
@@ -1355,11 +1372,10 @@ class XCTrade : public XCBase
|
||||
mSignal.positionId = ticket;
|
||||
|
||||
//
|
||||
// Handle Store XPositionInfo ...
|
||||
// Notify Signal Execution ...
|
||||
if (mSignal.mode == X_ORDER_MODE_MARKET)
|
||||
{
|
||||
//
|
||||
// TODO: Implement this ...
|
||||
NotifySignalExecuted(mSignal);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3568,6 +3584,33 @@ class XCTrade : public XCBase
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
void NotifySignalExecuted(XSignal &signal)
|
||||
{
|
||||
//
|
||||
bool has = signal.IsValid() &&
|
||||
signal.IsExecuted();
|
||||
if (!has)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
//
|
||||
int count = ArraySize(mOnSignalExecutedEventHandlers);
|
||||
if (count <= 0)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
//
|
||||
for (int i = 0; i < count; i++)
|
||||
{
|
||||
//
|
||||
TOnSignal iHandler = mOnSignalExecutedEventHandlers[i];
|
||||
iHandler(signal);
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Tools ...
|
||||
|
||||
@@ -3728,6 +3771,10 @@ class XCTrade : public XCBase
|
||||
// Trade State Changed Event Handlers ...
|
||||
TOnTradeStateChanged mTradeStateChangedEventHandlers[];
|
||||
|
||||
//
|
||||
// Signal Executed Event Handlers ...
|
||||
TOnSignal mOnSignalExecutedEventHandlers[];
|
||||
|
||||
//
|
||||
TOnModify mOnModifyEventHandlers[];
|
||||
TOnForceClose mOnForceCloseEventHandlers[];
|
||||
|
||||
Reference in New Issue
Block a user