We Have Two Available Account Types.HEDGING ACCOUNTHedging in the sense of permitting the establishing of a market position or positions in some underlying financial security such that the position or positions effectively counter all or some of the exposure already existing due to a previous position or positions still active in the same financial security. Hedging in this context involves the opening of position(s) in a financial security to a side (e.g. SELL) opposite to that of existing positions (e.g. BUY).
GLOBAL ACCOUNTGlobal in the sense of globally acceptable for legal and regulatory purposes worldwide as it is the case that some jurisdictions prohibit the use of financial trading facilities allowing multiple positions to be taken on both sides of a speculative financial transaction.
How We Determine Account TypePROGRAMMATICALLYFollowing strategy initialisation, the strategy container will cause a call to be made to the
IStrategy.onAccount method. This call follows the initialisation call made to IStrategy.onStart and will expose the
IAccount interface to your strategy.
It is at this point that you have the opportunity to interrogate the account type by making a call to
IAccount.isGlobal() which will tell you whether you are currently operating under a GLOBAL account or not. Of course an answer in the Negative implies that the account in use is indeed a HEDGING account.
MANUALLYI'll repeat the solution provided by Support which specifically refers to identifying GLOBAL account status and is as follows:
Quote:
You can tell it by the platform GUI - that there are no TP/SL orders in the entry order panel.
Where We Find Fill InformationHEDGED ACCOUNT FILLSWhen an
Order is made in HEDGED mode, each successful Order leads to the establishing of a
Position in the underlying financial security.
Orders establish, modify (stop/loss) or close (opposite trade to the market partially or fully) Positions. A Position is considered closed when it's net exposure after honouring orders is 0.
When a FILL occurs in this mode, the strategy container will cause a call to
IStrategy.onMessage to occur which will expose the
IMessage where you can interrogate the
message type to determine things like 'ORDER_FILL_OK'.
At this point the Order persists in the FILLED state as a Position until some other action causes this to be otherwise and can be found in the list of active "orders" using
IEngine.getOrders.
In this mode, why would IEngine.getOrders() = 0 when the first Order should cause a Position to be opened in the FILLED state? 
(a position you can see in the trading terminal also - hence why Support needs to see your full strategy example INCLUDING ORDER GENERATION to see if for example you are generating orders that FILL but then immediately CLOSE )
GLOBAL ACCOUNT FILLSWhen an
Order is made in GLOBAL mode, each successful Order is merged into an existing
Position in the underlying financial security or where one does not already exist one is established.
Orders establish or add-to/subtract-from (via merging) Positions and there is no concept of 'close' which gets achieved by covering the existing position with enough Orders in the opposite direction to render the Position's total exposure 0.
When a FILL occurs in this mode, the strategy container will cause a call to IStrategy.onMessage to occur which will expose the
IMessage where you can interrogate the
message type to determine things like 'ORDER_FILL_OK'.
Beyond this point, the Order is merged out of existence into the existing Position for the underlying security so a live reference to it is effectively lost if you don't retain it within onMessage and despite being temporarily FILLED once merged into an existing Position, it cannot be retrieved through the active orders list by calling
IEngine.getOrders or by the historical lists as it never entered the CLOSED state but served to modify an existing Position (this existing position with not enter the CLOSED state either but will be merged out of existence by some subsequent Order).
In short, order management in the GLOBAL account case requires more work at your end in order to manage what you consider the "current state of positions" to be. In this mode, 100 Orders can contribute to the same 1 Position, all 100 Orders merged into the 1 Position. State management is the responsibility of your strategy therefore and begins with
maintaining a reference to the first Order establishing a Position in the underlying financial instrument.
In this mode, why would IEngine.getOrders() = 0 when the first Order should cause a Position to be opened in the FILLED state? 
(a position you can see in the trading terminal also - hence why Support needs to see your full strategy example INCLUDING ORDER GENERATION to see if for example you are generating orders that FILL but then immediately CLOSE )