fix x786 ...
This commit is contained in:
@@ -1390,6 +1390,63 @@ public:
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
int ExecuteSpecifiedSignals(
|
||||
XSignal &signals[], // Collection of Signal for Execution
|
||||
XSignal ¬Executeds[], // Not Executed Signal
|
||||
ENUM_X_SIGNAL_EXECUTION_RESULT &states[], // Signal Execution Result
|
||||
ENUM_ORDER_TYPE_TIME lifetime = ORDER_TIME_GTC, // Order LifeTime
|
||||
datetime expiration = NULL, // order expiration time
|
||||
bool checkPolicies = true // Check Account Policies
|
||||
)
|
||||
{
|
||||
//
|
||||
int result = 0;
|
||||
|
||||
//
|
||||
Clean(states);
|
||||
Clean(notExecuteds);
|
||||
|
||||
//
|
||||
int signalsCount = ArraySize(signals);
|
||||
if (signalsCount <= 0)
|
||||
{
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
ArrayResize(states, signalsCount);
|
||||
ArrayInitialize(states, X_SIGNAL_EXECUTION_UNKNOWN);
|
||||
for (int i = 0; i < signalsCount; i++)
|
||||
{
|
||||
//
|
||||
bool isExecuted = ExecuteSignal(
|
||||
signals[i],
|
||||
states[i],
|
||||
lifetime,
|
||||
expiration
|
||||
//
|
||||
);
|
||||
|
||||
//
|
||||
if (isExecuted)
|
||||
{
|
||||
result++;
|
||||
}
|
||||
else
|
||||
{
|
||||
//
|
||||
AddRef(
|
||||
signals[i],
|
||||
notExecuteds //
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// Regular Trade Actions ...
|
||||
|
||||
|
||||
Reference in New Issue
Block a user