mtapi.be.mt4net
4.1440.0
dotnet add package mtapi.be.mt4net --version 4.1440.0
NuGet\Install-Package mtapi.be.mt4net -Version 4.1440.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="mtapi.be.mt4net" Version="4.1440.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="mtapi.be.mt4net" Version="4.1440.0" />
<PackageReference Include="mtapi.be.mt4net" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add mtapi.be.mt4net --version 4.1440.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: mtapi.be.mt4net, 4.1440.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package mtapi.be.mt4net@4.1440.0
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=mtapi.be.mt4net&version=4.1440.0
#tool nuget:?package=mtapi.be.mt4net&version=4.1440.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Flowchart: Connecting via host and port, and handling server command queue
[Start]
|
V
[QuoteConnector.Run(msTimeout, host, port)]
|
|-> Validate host (no local IP if disallowed)
|
V
[Is already connected?]
| Yes
+--> [Return (Already connected)]
|
| No
V
[Start ConnectThread]
|
V
[ConnectThread.ConnectToAccount()]
|
V
[Connection.ConnectAndLogin()]
|
V
[Open Socket (Proxy or Direct)]
|
V
[LoginServer()]
|
+--> [Send Login Request]
+--> [Process Server Authentication (Keys, hashes)]
+--> [Login Identification]
+--> [Terminal Identification]
|
V
[Connection Established]
|
V
[LoadAccount()]
|
+--> If DataCenter = false:
| - ReceiveServersList()
| - Load & save server list
| - Receive Symbols
| - Receive Groups
| - Receive Mail History
| - Receive Orders History
| - Create Transaction Keys
|
+--> ReceiveAccount()
+--> Load Account Details
+--> UpdateSymbolsMargin()
+--> Read & Update Orders
|
V
[Start QuoteCmdHandler]
|
V
[QuoteCmdHandler.run() Loop]
|
+--> Periodically send Ping()
|
+--> Wait for commands from server:
|
+--> 0x97: Update Quotes
|
+--> 0x98: Receive News
|
+--> 0x99: Receive Mail
|
+--> 0x9A: Symbol Updates (Disconnect if required)
|
+--> 0x9B: Orders Update
|
+--> 0x9C: Historical Quotes
|
+--> 0x9D: News Update Notification
|
+--> 0xAB: ConGroup Update (Margin & Symbols recalculation)
|
+--> 0xBE/0xD1: Order Notifications
|
+--> 0x0D: Server-Initiated Disconnect
|
+--> 0x02: Server Ping
|
+--> Default: Unknown command (Raise exception, disconnect)
|
V
[Client-side Disconnect Requested or Exception Occurs]
|
V
[Close Connection & Stop Threads]
|
V
[End]
Flow chart: Connection by server name
|
V
[QuoteClient.Connect()]
|
V
[Check if already connected?]
|
+-- Yes --> [Already Connected, End]
|
No
|
V
[Is Host specified?]
|
+-- Yes --> [QuoteConnector.Run(ConnectTimeout, Host, Port)]
| |
| +--> [Connection Successful?] -- Yes --> [Proceed to ConnectThread]
| |
| No (Store Exception, proceed)
|
No
|
V
[Is ServerName specified?]
|
+-- No --> [Exception: "Host or ServerName not set"]
|
Yes
|
V
[Broker.SearchHistory has recent entry? (within 4 hrs)]
|
+-- Yes --> [Use cached brokers]
|
No
|
V
[Broker.SearchAsync(ServerName)]
|
+--> [Successful within 10s?] -- Yes --> [Cache brokers & proceed]
| |
| No
| |
| V
| [Broker.SearchMQ(ServerName)]
| |
| +--> [Success?] -- Yes --> [Cache brokers & proceed]
| |
| No
| |
| V
| [Exception: "Server not found"]
|
V
[Iterate through retrieved Brokers & Addresses]
|
V
[Attempt QuoteConnector.Run() for each address]
|
+--> [Success?] -- Yes --> [Connected]
| |
| No (store exceptions)
|
V
[All addresses failed?]
|
+--> [Check if Try Cluster Members is allowed (Exception code?)]
|
+--> [Yes, Load LatestSrv cluster members]
| |
| V
| [Iterate servers and attempt QuoteConnector.Run()]
| |
| +--> [Success?] -- Yes --> [Connected]
| |
| No (store exception)
|
+--> [No or All failed]
|
V
[Still Not Connected?]
|
+--> [Throw Stored Exception / ConnectException]
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETStandard 2.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.