The market order has specific cycle in VertexFX Bridge application, that should be implemnted in your LP class as follows:
1- You have to override theNewMarketOrder function, which should return either a success or fail result.
if Succeded then
Return New TransResult(True)
In this case the Bridge will wait for step 2 or else,
Return New TransResult(False, "FAILING MESSAGE")
And in this case the cycle has finished.
2. When you receive server response for the order, you have to call:
MyBase.OrderState.MarketOrderIDReceived(OrderId, BOOrderID)
MyBase.OrderState.MarketOrderFailed(OrderId, "FAILING REASON")
In the case of receiving order ID. In this case, the Bridge will wait for step 3 or else,
In the case if order execution failed and the cycle has finished.
3. When you receive order acceptance message, you have to call:
MyBase.OrderState.MarketOrderAccepted(OrderId, FilledPrice)
Or to call:
MyBase.OrderState.MarketOrderRejected(OrderId, "REJECTION REASON")
When receiving order rejection message. Then the cycle has finished.
See Also