Added fucntion OrderCloseAll into mt5 api

This commit is contained in:
Vyacheslav Demidyuk
2014-11-21 12:37:20 +02:00
parent fe4f0af9de
commit 772b27551c
7 changed files with 51 additions and 43 deletions
+9
View File
@@ -466,6 +466,15 @@ namespace MtApi5
return sendCommand<string>(Mt5CommandType.HistoryDealGetString, commandParameters);
}
///<summary>
///Close all open positions.
///</summary>
///<param name="ticket">OrderCloseAll</param>
public bool OrderCloseAll()
{
return sendCommand<bool>(Mt5CommandType.OrderCloseAll, null);
}
#endregion
#region Account Information functions
+2 -1
View File
@@ -99,6 +99,7 @@ namespace MtApi5
SymbolInfoSessionTrade = 59,
MarketBookAdd = 60,
MarketBookRelease = 61,
MarketBookGet = 62
MarketBookGet = 62,
OrderCloseAll = 63
}
}
+2 -2
View File
@@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.7.0")]
[assembly: AssemblyFileVersion("1.0.7.0")]
[assembly: AssemblyVersion("1.0.8.0")]
[assembly: AssemblyFileVersion("1.0.8.0")]
+8 -33
View File
@@ -13,12 +13,6 @@
"SccProvider" = "8:"
"Hierarchy"
{
"Entry"
{
"MsmKey" = "8:_0A948AEB88E843A79E449F2694CEAC4A"
"OwnerKey" = "8:_8B9C059CECE541EF9F06C906252E106A"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
"MsmKey" = "8:_26066077D06445DAA7176D267C4A5A5C"
@@ -52,13 +46,13 @@
"Entry"
{
"MsmKey" = "8:_C28BD2D9EC05E0CCB849ABEEA4360539"
"OwnerKey" = "8:_A1E29B278F4C4BCAA1195F775A473B52"
"OwnerKey" = "8:_8B9C059CECE541EF9F06C906252E106A"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
"MsmKey" = "8:_C28BD2D9EC05E0CCB849ABEEA4360539"
"OwnerKey" = "8:_8B9C059CECE541EF9F06C906252E106A"
"OwnerKey" = "8:_A1E29B278F4C4BCAA1195F775A473B52"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
@@ -70,7 +64,7 @@
"Entry"
{
"MsmKey" = "8:_UNDEFINED"
"OwnerKey" = "8:_A1E29B278F4C4BCAA1195F775A473B52"
"OwnerKey" = "8:_C28BD2D9EC05E0CCB849ABEEA4360539"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
@@ -82,7 +76,7 @@
"Entry"
{
"MsmKey" = "8:_UNDEFINED"
"OwnerKey" = "8:_C28BD2D9EC05E0CCB849ABEEA4360539"
"OwnerKey" = "8:_A1E29B278F4C4BCAA1195F775A473B52"
"MsmSig" = "8:_UNDEFINED"
}
}
@@ -217,11 +211,6 @@
"AssemblyAsmDisplayName" = "8:MTApiService, Version=1.0.13.0, Culture=neutral, PublicKeyToken=704b91b7000ff499, processorArchitecture=MSIL"
"ScatterAssemblies"
{
"_C28BD2D9EC05E0CCB849ABEEA4360539"
{
"Name" = "8:MTApiService.dll"
"Attributes" = "3:512"
}
}
"SourcePath" = "8:MTApiService.dll"
"TargetName" = "8:"
@@ -352,15 +341,15 @@
{
"Name" = "8:Microsoft Visual Studio"
"ProductName" = "8:MtApi5"
"ProductCode" = "8:{564F64AB-717A-46FC-AE3A-51139ADF5EE0}"
"PackageCode" = "8:{BEF87E05-9C6D-4CEB-9D91-FBFFA4AE28C1}"
"ProductCode" = "8:{02DC498A-5F06-4134-BD32-C5D677B8017A}"
"PackageCode" = "8:{23755B17-D96D-4C2C-A6BD-D3E136A8992E}"
"UpgradeCode" = "8:{5673F99F-74B5-4D75-9648-3250C9B492FB}"
"AspNetVersion" = "8:4.0.30319.0"
"RestartWWWService" = "11:FALSE"
"RemovePreviousVersions" = "11:TRUE"
"DetectNewerInstalledVersion" = "11:TRUE"
"InstallAllUsers" = "11:FALSE"
"ProductVersion" = "8:1.0.7"
"ProductVersion" = "8:1.0.8"
"Manufacturer" = "8:DW"
"ARPHELPTELEPHONE" = "8:"
"ARPHELPLINK" = "8:"
@@ -1047,20 +1036,6 @@
}
"MergeModule"
{
"{CEE29DC0-9FBA-4B99-8D47-5BC643D9B626}:_0A948AEB88E843A79E449F2694CEAC4A"
{
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:TRUE"
"SourcePath" = "8:Microsoft_VC100_CRT_x64.msm"
"Properties"
{
}
"LanguageId" = "3:0"
"Exclude" = "11:FALSE"
"Folder" = "8:"
"Feature" = "8:"
"IsolateTo" = "8:"
}
}
"ProjectOutput"
{
@@ -1094,7 +1069,7 @@
}
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_8B9C059CECE541EF9F06C906252E106A"
{
"SourcePath" = "8:..\\x64\\Release\\MT5Connector.dll"
"SourcePath" = "8:..\\Release\\MT5Connector.dll"
"TargetName" = "8:"
"Tag" = "8:"
"Folder" = "8:_6185AD4113574BCA9BE89DF5A396A60C"
+7 -7
View File
@@ -28,13 +28,13 @@
"Entry"
{
"MsmKey" = "8:_1894B11511EC28CA06BF342E1D467761"
"OwnerKey" = "8:_BC617CC9A43A49E8B6CDC49115E4A3BC"
"OwnerKey" = "8:_67B77AB154964269BD0C77F69052517C"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
"MsmKey" = "8:_1894B11511EC28CA06BF342E1D467761"
"OwnerKey" = "8:_67B77AB154964269BD0C77F69052517C"
"OwnerKey" = "8:_BC617CC9A43A49E8B6CDC49115E4A3BC"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
@@ -64,7 +64,7 @@
"Entry"
{
"MsmKey" = "8:_UNDEFINED"
"OwnerKey" = "8:_1894B11511EC28CA06BF342E1D467761"
"OwnerKey" = "8:_67B77AB154964269BD0C77F69052517C"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
@@ -76,7 +76,7 @@
"Entry"
{
"MsmKey" = "8:_UNDEFINED"
"OwnerKey" = "8:_67B77AB154964269BD0C77F69052517C"
"OwnerKey" = "8:_1894B11511EC28CA06BF342E1D467761"
"MsmSig" = "8:_UNDEFINED"
}
}
@@ -341,15 +341,15 @@
{
"Name" = "8:Microsoft Visual Studio"
"ProductName" = "8:MtApi5"
"ProductCode" = "8:{B374AA70-7936-4A44-AF48-ADF152634A97}"
"PackageCode" = "8:{8BA7181F-7E81-4114-B5AA-F0806596313B}"
"ProductCode" = "8:{4B2B9BEE-9FB1-4E27-9B5F-0C7DAE61A624}"
"PackageCode" = "8:{743CA117-4184-4A9C-B0F9-298A4D6925DB}"
"UpgradeCode" = "8:{0D37B66D-F57F-4AF8-9AF5-B0EB060D60BE}"
"AspNetVersion" = "8:4.0.30319.0"
"RestartWWWService" = "11:FALSE"
"RemovePreviousVersions" = "11:TRUE"
"DetectNewerInstalledVersion" = "11:TRUE"
"InstallAllUsers" = "11:FALSE"
"ProductVersion" = "8:1.0.7"
"ProductVersion" = "8:1.0.8"
"Manufacturer" = "8:DW"
"ARPHELPTELEPHONE" = "8:"
"ARPHELPLINK" = "8:"
BIN
View File
Binary file not shown.
+23
View File
@@ -2,6 +2,7 @@
#property link ""
#include <Trade\SymbolInfo.mqh>
#include <trade/trade.mqh>
#import "MT5Connector.dll"
bool initExpert(int expertHandle, string connectionProfile, string symbol, double bid, double ask, string& err);
@@ -1590,6 +1591,17 @@ int executeCommand()
}
}
break;
case 63: //OrderCloseAll
{
bool retVal;
retVal = OrderCloseAll();
sendBooleanResponse(ExpertHandle, retVal);
}
break;
default:
Print("Unknown command type = ", commandType);
@@ -1704,4 +1716,15 @@ string ResultToString(bool retVal, datetime from, datetime to)
, (int)to);
return strResult;
}
bool OrderCloseAll()
{
CTrade trade;
int i = PositionsTotal()-1;
while (i >= 0)
{
if (trade.PositionClose(PositionGetSymbol(i))) i--;
}
return true;
}