Frequently Asked Questions (F.A.Q.)
-
How is a pending order processed by the MT4-Bridge system?
The order follows the following route: Client - MT4 - Bridge - Bank - Bridge - MT4 - Client
-
When we run several bridges (UBS, Barclays, Deutsche) on the same server in the future, from network traffic point of view, are there any problems?
In our stress testing of the bridges we have run them in excess of 10,000 trades/hour, and the load it placed on the system was very small. Given modern PCs and a high quality network connection a single bridge should never exceed 5% of your network resources. However it seams that the MetaTrader 4 API will not allow 2 bridges to run on the same session of the Windows Operating System because of communication conflict.
-
Is there any way to download the MetaTrader windows such as Log, MT4 Rate Feed, MT4 Server, etc. to our local PC for review?
-
The Bridge window needs to be on the same computer where the bridge works. You can install the bridge on your local PC of course but it will be slower. However, you can copy the files to your local PC or you can keep a remote connection open (using a program such as Radmin) and it will work as if it was on your local PC.
-
-
Where is the "Log" saved?
XP or Server2003: [X]:\Program Files\Boston Technologies\Bridge[Bank]\logs
Vista: [X]:\Admin\AppData\Local\VirtualStore\Program Files\Boston Technologies\Bridge[Bank]\logs
-
Where are the Trading records saved?
These are saved in the Database.
For a bridge with an H2 database please download the H2 console from internet. When the bridge is stopped please launch the console and point it to (UBS example) :/DB/UbsData
For the MYSQL version the list of trades can be obtained from the MYSQL window.
-
When are these trade updated in the database?
In real time, each time a new action is taken by the bridge.
-
Regarding Rates: What does "age" mean?
Age is the time elapsed since the last price update.
-
Regarding the Trades Tab: Is it possible to change the "USD Profit" field to "JPY Profit?"
Certainly! There is now a menu that allows us to modify the symbol.
-
Where can I find the "volume" of each order that is sent to the bank?
This is found in the trades tab.
-
Does the bridge respond back to client immediately after it receives an order from client and then that it requests the order from the bank?
No. The bridge, when receiving a request from the client, first asks the bank, and then gives the answer from the bank to the client. This way if the bank rejects the deal, the customer is immediately notified of the rejection.
-
Is there any relation between MT4 order ID and Bridge Traders order ID? For example, an MT4 order (Deal ID) of 3333 compared to the Bridge Traders order of
BT|201|33|USDJPY|B|O.
Unfortunately MT4 will not give the trade unique number to the public in most cases. In general, the number it gives at first, in this case 33, is a "session" ID, which means that each time you restart MT4 it restarts the numbering with 1. We have now implemented a system that upon the opening of the trade searches using multiple criteria a list of candidates and is trying to "find the book number". This feature is used to avoid duplicates and is important without being critical. Is this procedure called Matching fails then we will continue using the provisory session ID and in most cases no harm is done.
-
Can you give me an example of when "Profit" would be a negative value?
The bank sends a quote of 1.3450/1.3452 EURUSD.
MT4 is set up with spread 1 on EURUSD, therefore the client in MT4 sees: EURUSD 1.34505/1.34515.
Customer buys 1 lot in MT4: (Order is buy 100 000 EURUSD at 1.34515.)
When the order reaches the bank, it is executed as 100 000 EURUSD at 1.34520.
DIFFERENCE: 1.34515-1.34520=-0.00005 pips. Volume 100 000, difference: -5 EUR , in USD it is 1.34*5=-6.7$
-
Do Instant, Market, and Limit orders get processed differently by the bridge? What happens when quotes are different?
The bridge processes those orders in the following manner:
For Instant orders:
- Client 747 places and instant order to buy 1 Lot of EURUSD at 1.4500.
- The order goes to the MT4 server which routes it to the bridge.
- The bridge (dealer 22 for example) attaches the last quote received from UBS to the order. The last quote received from UBS wasn't 1.4500 but 1.4499 for example.
- When UBS receives the trade, it executes it at 1.4498 and tells the bridge: "Execution price 1.4498."
- The bridge tells MT4: "Order opened, Execution price 1.4498."
- MT4, because this was an INSTANT order, tells to 747: Order open and it was opened at 1.4500.
- The remaining .0002 goes to the broker's funds (the number is noted in the profit column in the bridge).
For Market orders:
- Client 747 places a MARKET order to buy 1 lot of EURUSD at 1.4500.
- Order is processed just as the Instant order except the last line (see below)
- Because this was a market order, MT4 tells 747: Order open and it was opened at 1.4498.
For Limit orders:
- Client 747 places a buy limit order on an instant symbol to buy 1 lot of EURUSD at 1.4495.
- The order goes to the MT4 server which routes it to the bridge.
- The bridge (dealer 22 for example) confirms that the order was received and tells MT4: "Allow the customer to have this buy limit order."
- MT4 tells the client: "Ok, I allow you to have this pending order."
- When the price in MT4 reaches 1.4495, MT4 tells the bridge: "Hey, something changed, you need to ask me what changed."
- Bridge then asks MT4 the list of all the pending orders and compares them to the last prices.
- The bridge finds out the order for customer 747 needs to be activated.
- The bridge sends a "fill or kill" order to UBS for 1 lot of EURUSD at the last quote of 1.4494.
- When UBS receives the trade, it executes at 1.4493 and tells the bridge, "Execution price 1.4493."
- The bridge tells MT4, "Order opened with execution price of 1.4493."
Please note:
Regardless of whether it is an instant or market order, if the customer places a pending order at a given price, the opening price could be slightly different.
What do we need to integrate a bank with our bridge technology?
-
-Contact information for the customer's project manager. The customer's project manager will have full access to the bridge and should be authorized to answer in the customer's name our questions regarding the bridge architecture that will impact the customer's business. For example, adding multiple bands, which types of orders to use, etc.
-Contact information for a bank project manager and/or a bank technical person. The technical contact on the bank side should be able to answer all our technical and API questions addressed to the bank.
-The BANK API documentation and library (which can usually be obtained from the bank technical contact). Usually this is part of a software development kid (SDK). Usage examples of the API's would also help.
-The credentials and the appropriate connection rights (firewall configuration, etc.) for a bank demo account we will use for testing purposes during development and later during maintenance and support. This also should be obtainable from the bank technical contact. We will use our own MetaTrader 4 to develop the bridge.
-