After a brief foray into MB Trading's API, I've returned to using MetaTrader as the exclusive interfacing and execution technology.
There are several reasons for this. MB Trading's API "consumes" a login, and clients (by default) get only 1 login. This means that their Desktop software cannot be used concurrently with an API client running.
If the client logs in with their desktop, then the automated API client software is forcibly disconnected which is a big reliability concern. Would have been much better if the second login was booted, but it actually disconnects the login which is already connected !
So, in the default situation with a single login, the API client cannot safely be used, when there is the possibility (as there always would be) that the Desktop might log in concurrently.
Only Forex traders are entitled to a free secondary login ID. This fact is not widely known, and that helps the situation slightly. All other account types, such as Futures and Equities accounts have a $25 fee monthly for the privilege of having a secondary login. If I were working in Futures or Equities, that would be a total show-stopper right off the bat.
This means that an API client must replicate most of the key functionality of their Desktop offering, and that was simply too much work for very little gain. The performance gain was negligible, and the hassle factor was really a show-stopper for me.
MB Trading should really automatically grant FREE additional login id's for API clients, and make sure that these will never interfere with a normal Desktop client login with their platform. Otherwise, API client development is just at risk, and can't be made reliable if there's any risk that a Desktop login might be attempted in the same account (as there usually is).
So, I've returned to using MetaTrader Expert Advisors in order to do socket communication with my client software. Nearly anything can be programmed in an EA or in a couple of EA's and I am sorry that I even took the detour into MB Trading's API technology.
Live and learn. I did pick up C# along the way, and that's a very useful thing to learn for a Java programmer, I guess, as it's so similar.
So, although MB Trading's MetaTrader is a poor implementation, because of its slow fills, this is not something which is a major consideration, when weighted against the benefits of using MetaTrader.
It must be said that MB Trading has good pricing, so I guess it's too much to expect fills much under 1 second execution time.
Also, by using MetaTrader I am not locked into any broker's proprietary API and that's the real benefit.
So, as they say, the Devil is always in the details.
Brent.
There are several reasons for this. MB Trading's API "consumes" a login, and clients (by default) get only 1 login. This means that their Desktop software cannot be used concurrently with an API client running.
If the client logs in with their desktop, then the automated API client software is forcibly disconnected which is a big reliability concern. Would have been much better if the second login was booted, but it actually disconnects the login which is already connected !
So, in the default situation with a single login, the API client cannot safely be used, when there is the possibility (as there always would be) that the Desktop might log in concurrently.
Only Forex traders are entitled to a free secondary login ID. This fact is not widely known, and that helps the situation slightly. All other account types, such as Futures and Equities accounts have a $25 fee monthly for the privilege of having a secondary login. If I were working in Futures or Equities, that would be a total show-stopper right off the bat.
This means that an API client must replicate most of the key functionality of their Desktop offering, and that was simply too much work for very little gain. The performance gain was negligible, and the hassle factor was really a show-stopper for me.
MB Trading should really automatically grant FREE additional login id's for API clients, and make sure that these will never interfere with a normal Desktop client login with their platform. Otherwise, API client development is just at risk, and can't be made reliable if there's any risk that a Desktop login might be attempted in the same account (as there usually is).
So, I've returned to using MetaTrader Expert Advisors in order to do socket communication with my client software. Nearly anything can be programmed in an EA or in a couple of EA's and I am sorry that I even took the detour into MB Trading's API technology.
Live and learn. I did pick up C# along the way, and that's a very useful thing to learn for a Java programmer, I guess, as it's so similar.
So, although MB Trading's MetaTrader is a poor implementation, because of its slow fills, this is not something which is a major consideration, when weighted against the benefits of using MetaTrader.
It must be said that MB Trading has good pricing, so I guess it's too much to expect fills much under 1 second execution time.
Also, by using MetaTrader I am not locked into any broker's proprietary API and that's the real benefit.
So, as they say, the Devil is always in the details.
Brent.