MtApi (MT5): Disabled backtesting in mql expert

This commit is contained in:
vdemydiuk
2016-10-10 13:37:47 +03:00
parent 22f7915a4a
commit b4b8e7eaf0
3 changed files with 40 additions and 16 deletions
+22 -1
View File
@@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.Linq;
using MTApiService;
using System.Collections;
using System.ServiceModel;
namespace MtApi5
{
@@ -617,7 +618,11 @@ namespace MtApi5
{
var commandParameters = new ArrayList { indicator_handle, buffer_num, start_pos, count };
buffer = SendCommand<double[]>(Mt5CommandType.CopyBuffer, commandParameters);
<<<<<<< Updated upstream
return buffer?.Length ?? 0;
=======
return buffer != null ? buffer.Length : 0;
>>>>>>> Stashed changes
}
///<summary>
@@ -632,7 +637,11 @@ namespace MtApi5
{
var commandParameters = new ArrayList { indicator_handle, buffer_num, Mt5TimeConverter.ConvertToMtTime(start_time), count };
buffer = SendCommand<double[]>(Mt5CommandType.CopyBuffer1, commandParameters);
<<<<<<< Updated upstream
return buffer?.Length ?? 0;
=======
return buffer != null ? buffer.Length : 0;
>>>>>>> Stashed changes
}
///<summary>
@@ -647,7 +656,11 @@ namespace MtApi5
{
var commandParameters = new ArrayList { indicator_handle, buffer_num, Mt5TimeConverter.ConvertToMtTime(start_time), Mt5TimeConverter.ConvertToMtTime(stop_time) };
buffer = SendCommand<double[]>(Mt5CommandType.CopyBuffer1, commandParameters);
<<<<<<< Updated upstream
return buffer?.Length ?? 0;
=======
return buffer != null ? buffer.Length : 0;
>>>>>>> Stashed changes
}
///<summary>
@@ -1462,7 +1475,15 @@ namespace MtApi5
private T SendCommand<T>(Mt5CommandType commandType, ArrayList commandParameters)
{
var response = _client.SendCommand((int)commandType, commandParameters);
MtResponse response;
try
{
response = _client.SendCommand((int)commandType, commandParameters);
}
catch (CommunicationException ex)
{
throw new Exception(ex.Message, ex);
}
if (response is MtResponseDouble)
return (T)Convert.ChangeType(((MtResponseDouble)response).Value, typeof(T));
BIN
View File
Binary file not shown.
+18 -15
View File
@@ -143,21 +143,24 @@ int init()
PrintFormat("Expert Handle = %d", ExpertHandle);
//--- Backtesting mode
if (IsTesting())
{
Print("Waiting on remote client...");
//wait for command (BacktestingReady) from remote side to be ready for work
while(!IsRemoteReadyForTesting)
{
executeCommand();
//This section uses a while loop to simulate Sleep() during Backtest.
unsigned int viSleepUntilTick = GetTickCount() + 100; //100 milliseconds
while(GetTickCount() < viSleepUntilTick)
{
//Do absolutely nothing. Just loop until the desired tick is reached.
}
}
if (false)
{
if (IsTesting())
{
Print("Waiting on remote client...");
//wait for command (BacktestingReady) from remote side to be ready for work
while(!IsRemoteReadyForTesting)
{
executeCommand();
//This section uses a while loop to simulate Sleep() during Backtest.
unsigned int viSleepUntilTick = GetTickCount() + 100; //100 milliseconds
while(GetTickCount() < viSleepUntilTick)
{
//Do absolutely nothing. Just loop until the desired tick is reached.
}
}
}
}
//---