It's Dukascopy and I think they work only with orders.
But "that depends" should be clearly stated, such that a Broker plugin is fully compliant to the specification.
BrokerBuy2 is in general very unclear to me.
For example, if there is no connection to the broker for 30sec then there is also no order fill.
Should the plugin then return 0 or -2, because both conditions would be satisfied?
And what about the NFA closing way, when the order was rejected.
Then 0 and 1 would be candidates for the result.

In general it would be helpful if the documentation is very strict here, i.e. a boolean matrix with possible return codes, like this:

Order fully filled | Order partially filled(30sec) | Order not filled(30s) | No BrokerConnecition(30s) | NFA-Account =
1 0 0 0 0 Expected Result: TradeId
1 0 0 0 1 Expected Result: 1
0 1 0 0 0 Expected Result: ????
0 1 0 0 1 Expected Result: ????(maybe 1)
0 0 1 0 0 Expected Result: 0
0 0 1 0 1 Expected Result: ????(maybe 1)
0 0 1 1 0 Expected Result: 0 or -2
0 0 1 1 1 Expected Result: 0,-2 or 1