diff --git a/MtApi5/MqlTradeRequest.cs b/MtApi5/MqlTradeRequest.cs index 1279ea24..7ce45cb5 100755 --- a/MtApi5/MqlTradeRequest.cs +++ b/MtApi5/MqlTradeRequest.cs @@ -21,5 +21,10 @@ namespace MtApi5 public string Comment { get; set; } // Order comment public ulong Position { get; set; } // Position ticket public ulong PositionBy { get; set; } // The ticket of an opposite position + + public override string ToString() + { + return $"{Symbol}|{Volume}|{Price}|{Volume}|{Action}"; + } } } diff --git a/MtApi5/MtApi5.csproj b/MtApi5/MtApi5.csproj index 2a79057d..dfd855fd 100755 --- a/MtApi5/MtApi5.csproj +++ b/MtApi5/MtApi5.csproj @@ -68,6 +68,7 @@ + diff --git a/MtApi5/MtApi5Client.cs b/MtApi5/MtApi5Client.cs index f87194cd..015c8876 100755 --- a/MtApi5/MtApi5Client.cs +++ b/MtApi5/MtApi5Client.cs @@ -108,8 +108,11 @@ namespace MtApi5 /// public bool OrderSend(MqlTradeRequest request, out MqlTradeResult result) { + Log.Debug($"OrderSend: request = {request}"); + if (request == null) { + Log.Warn("OrderSend: request is not defined!"); result = null; return false; } @@ -118,6 +121,8 @@ namespace MtApi5 var strResult = SendCommand(Mt5CommandType.OrderSend, commandParameters); + Log.Debug($"OrderSend: strResult = {strResult}"); + return strResult.ParseResult(ParamSeparator, out result); } diff --git a/MtApi5/Requests/OrderSendRequest.cs b/MtApi5/Requests/OrderSendRequest.cs new file mode 100644 index 00000000..94743258 --- /dev/null +++ b/MtApi5/Requests/OrderSendRequest.cs @@ -0,0 +1,9 @@ +namespace MtApi5.Requests +{ + internal class OrderSendRequest: RequestBase + { + public override RequestType RequestType => RequestType.OrderSend; + + public MqlTradeRequest TradeRequest { get; set; } + } +} diff --git a/MtApi5/Requests/RequestType.cs b/MtApi5/Requests/RequestType.cs index 887c88ae..e7f2517c 100755 --- a/MtApi5/Requests/RequestType.cs +++ b/MtApi5/Requests/RequestType.cs @@ -1,9 +1,13 @@ -namespace MtApi5.Requests +using System.Diagnostics.CodeAnalysis; + +namespace MtApi5.Requests { + [SuppressMessage("ReSharper", "InconsistentNaming")] internal enum RequestType { Unknown = 0, CopyTicks = 1, - iCustom = 2 + iCustom = 2, + OrderSend = 3 } } \ No newline at end of file