Issue #89: Changed function PositionOpen to use json request/response

This commit is contained in:
vdemydiuk
2018-02-19 15:54:03 +02:00
parent c9c188f697
commit d6640300f5
8 changed files with 141 additions and 50 deletions
+37 -37
View File
@@ -14,48 +14,48 @@ namespace MtApi5
return quote != null ? new Mt5Quote(quote.Instrument, quote.Bid, quote.Ask) : null;
}
public static bool ParseResult(this string inputString, char separator, out MqlTradeResult result)
{
Log.Debug($"ParseResult: inputString = {inputString}, separator = {separator}");
//public static bool ParseResult(this string inputString, char separator, out MqlTradeResult result)
//{
// Log.Debug($"ParseResult: inputString = {inputString}, separator = {separator}");
var retVal = false;
result = null;
// var retVal = false;
// result = null;
if (string.IsNullOrEmpty(inputString) == false)
{
var values = inputString.Split(separator);
if (values.Length == 10)
{
try
{
retVal = int.Parse(values[0]) != 0;
// if (string.IsNullOrEmpty(inputString) == false)
// {
// var values = inputString.Split(separator);
// if (values.Length == 10)
// {
// try
// {
// retVal = int.Parse(values[0]) != 0;
var retcode = uint.Parse(values[1]);
var deal = ulong.Parse(values[2]);
var order = ulong.Parse(values[3]);
var volume = double.Parse(values[4]);
var price = double.Parse(values[5]);
var bid = double.Parse(values[6]);
var ask = double.Parse(values[7]);
var comment = values[8];
var requestId = uint.Parse(values[9]);
// var retcode = uint.Parse(values[1]);
// var deal = ulong.Parse(values[2]);
// var order = ulong.Parse(values[3]);
// var volume = double.Parse(values[4]);
// var price = double.Parse(values[5]);
// var bid = double.Parse(values[6]);
// var ask = double.Parse(values[7]);
// var comment = values[8];
// var requestId = uint.Parse(values[9]);
result = new MqlTradeResult(retcode, deal, order, volume, price, bid, ask, comment, requestId);
}
catch (Exception ex)
{
Log.Error($"ParseResult: {ex.Message}");
retVal = false;
}
}
}
else
{
Log.Warn("ParseResult: input srting is null or empty!");
}
// result = new MqlTradeResult(retcode, deal, order, volume, price, bid, ask, comment, requestId);
// }
// catch (Exception ex)
// {
// Log.Error($"ParseResult: {ex.Message}");
// retVal = false;
// }
// }
// }
// else
// {
// Log.Warn("ParseResult: input srting is null or empty!");
// }
return retVal;
}
// return retVal;
//}
public static bool ParseResult(this string inputString, char separator, out MqlTradeCheckResult result)
{