diff --git a/Experts/x-test-strategies.ea.mq5 b/Experts/x-test-strategies.ea.mq5 index 5113220e..27ef6ca4 100644 --- a/Experts/x-test-strategies.ea.mq5 +++ b/Experts/x-test-strategies.ea.mq5 @@ -480,6 +480,12 @@ void OnSignalRecieved(XSignal &signal) // return; // } + // + if (signal.pushers < 2) + { + return; + } + // ENUM_X_SIGNAL_EXECUTION_RESULT state; bool isExecuted = eaTrader.ExecuteSignal( diff --git a/Libraries/x-saherelm.xtrade.lib.mq5 b/Libraries/x-saherelm.xtrade.lib.mq5 index edf4061f..e369a78b 100644 --- a/Libraries/x-saherelm.xtrade.lib.mq5 +++ b/Libraries/x-saherelm.xtrade.lib.mq5 @@ -737,6 +737,9 @@ struct XSignal // XSignal supports[]; // a Collecion of Support Signals ... + // + int pushers; // Signal Pushers ... + // // Constructor ... XSignal() @@ -1141,6 +1144,7 @@ struct XSignal // entry = 0; volume = 0; + pushers = 0; positionId = 0; // diff --git a/Strategies/x-saherelm.xchkm.strategy.mq5 b/Strategies/x-saherelm.xchkm.strategy.mq5 index 45e1261b..7fe9f787 100644 --- a/Strategies/x-saherelm.xchkm.strategy.mq5 +++ b/Strategies/x-saherelm.xchkm.strategy.mq5 @@ -1399,34 +1399,21 @@ public: } // - // Preparing Signal ... - if (pushers > 0) + // Prepare Signal ... + result = signal.Prepare( + mSymbol, + signallers[0], + mPeriod, + type, + mode, + entry, + mVolume, + sl, + tp // + ); + if (result) { - // - result = signal.Prepare( - mSymbol, - signallers[0], - mPeriod, - type, - mode, - entry, - mVolume, - sl, - tp // - ); - } - else - { - result = false; - } - - // - if (pushers > 1) - { - // - Print("======"); - Print("Pusher: ", pushers); - ArrayPrint(signallers); + signal.pushers = pushers; } //