Giveup
The Giveup feature sends post-trade information to a third party or as a drop copy. The target can be an MT4 or MT5 connector (coverage booking), an XTrader or PrimeXM FIX API connector (the trades appear on that connection), or a dedicated give-up connector (GIVEUP_* types, such as the Drop Copy FIX API).
video=895843581

Giveup has the following attributes and can be accessed via pending config or real-time config:
| attributes | required | default settings | attribute type | description |
|---|---|---|---|---|
| id | Y | – | INT | The ID of the rule; generated. |
| connectors | Y | – | VARCHAR | The name(s) of one or several connectors acting as the source. • A wildcard (*) can be used to specify all connectors. |
| target | Y | – | VARCHAR | The exact name of the target connector: an MT4, MT5, XTrader or PrimeXM FIX API connector, or a dedicated give-up/drop-copy connector (GIVEUP_* types). The events a target receives depend on its type; some activity targets also receive order-open and other lifecycle notifications, not only completed trades. |
| accounts | Y | – | VARCHAR | The name(s) of one or several connector accounts (all belonging to the connector specified under connectors) acting as the source. If a specific account name is used, then it is highly advisable to specify only one connector. • If all accounts available (under one or more connectors) need to be specified, then the wildcard (*) should be used. |
| securities | Y | * | VARCHAR | The name(s) of the securities acting as the source. |
| symbols | Y | * | VARCHAR | The name(s) of the symbols acting as the source. |
| subID1 | Y | * | VARCHAR | The subID1 value acting as the source. |
| subID2 | Y | * | VARCHAR | The subID2 value acting as the source. |
| subID3 | Y | * | VARCHAR | The subID3 value acting as the source (MT4 Login if the source is an MT4 connector). |
| providers | Y | * | VARCHAR | The name(s) of the execution providers to match for leg/deal reporting, separate from the target connector. In the case of B-book execution, the targeted provider is considered to be the one whose price quote was used. |
| mode | Y | any | VARCHAR | The execution mode of the source trade. The available modes are: • any : Applies to both A-book and B-book trades. • a_only : Only considers A-book trades • b_only : Only considers B-book trades • stopout_any, stopout_a_only, stopout_b_only : The same selection, restricted to stopout activity. The ordinary modes also include stopout activity. Provider and A/B restrictions depend on the notification type: order-open, order-close and MT4 close-by notifications do not apply those restrictions. Leg/deal reporting can match actual execution-provider and A/B classification. Target adapter support determines the available notifications. |
| values | Y | – | VARCHAR | Destination-specific positional arguments that configure how the trade is booked or reported on the target. Commas separate the positions, and semicolons separate argument groups that each produce an output. The layout depends on the target connector type and must not be interchanged between MT4, MT5 and dedicated give-up adapters; see the layouts below the table. Empty trailing positions are dropped and commas cannot be escaped. The MT4 coverage method ( FIFO, DISTINCT or SIMPLE) is not a position of this field: it is configured as a Coverage parameter on the MT4 connector’s ConnectorConfigSetting. In the XCore Portal it is set in the rule’s coverage column. |
| priority | Y | 1 | TINYINT | Numeric priority from 0 to 255. Highest matching priority wins separately for each source connector and target. All enabled matching rules tied at that priority can apply; lower-priority rules do not also apply. Equal-priority overlaps and multiple values groups can produce multiple outputs. |
| enable | Y | – | TINYINT | Enables/Disables output from this rule. A disabled matching higher-priority rule can suppress lower-priority rules, but enabled matching rules at the same priority can still apply. Disabling is not equivalent to deleting a rule or restoring a generic default. |
| description | N | n/a | VARCHAR | Free text. |
The name selectors (connectors, accounts, securities, symbols, subID1–subID3, providers) are ordered, comma-separated, case-sensitive patterns: * matches any text, a leading ! excludes a match, and the first matching token decides, so !ABC,* excludes ABC while *,!ABC admits it. No other pattern syntax is supported. Connector, account, security, symbol and provider patterns must match configured names; subIDs are matched against the order tags.
Target values by connector type
MT5 target – SERVER,LOGIN,INSTRUMENT,PRICE,SCALING[,MARKUP[,BOOKING_TYPE]]
| Position | Meaning |
|---|---|
| SERVER | Compatibility position; the MT5 booking path uses server 0 regardless of this value. |
| LOGIN | Numeric target login, or n/a to take the originating order’s subID3 as the login (subID3 must then be a plain numeric login). |
| INSTRUMENT | Target instrument pattern. #S# is the internal symbol, #I# the originating instrument, #1# and #2# the base and quote currency; for example #S#.cd appends .cd to the internal symbol. |
| PRICE | 0 books the client price including markups and TradeLock; any other value books the raw execution price. |
| SCALING | Quantity multiplier. A negative value reverses the side; 0 behaves as 1. |
| MARKUP | Optional additional price adjustment in units of ten times the symbol price_unit. A positive markup lowers sells and raises buys. Missing or invalid input gives zero. |
| BOOKING_TYPE | 1 books each execution leg, 2 books each deal; missing or other values book the completed order. |
MT4 target – SERVER,LOGIN,INSTRUMENT,PRICE,SCALING[,POST[,SYN[,MARKUP]]]; at least five positions are required. SERVER selects the coverage server (an integer from 0 to 99). Numeric logins must be declared in a Coverage parameter of the target connector. LOGIN=n/a can use the originating login for FIFO or SIMPLE coverage of generic XCore order-close events; DISTINCT and POST coverage require a numeric login. INSTRUMENT and SCALING follow the MT5 meanings above. PRICE=0 uses the client price; PRICE=1 uses the raw execution price. PRICE=2 has a separate MT4 group-markup meaning on the MT4 OrderDone path, while generic XCore order-close coverage treats nonzero PRICE values as raw. POST changes the booking trigger, SYN is reserved, and MARKUP is the optional eighth argument. See the MT4 coverage guide for event-specific behavior and the full layout.
GIVEUP_SPECTRUM target – ACCOUNT,SPONSOR,SIDE[,PRICE]. SIDE=1 keeps the trade direction and any other value reverses it. PRICE 1 (the default) reports the markup-adjusted price and any other value the raw price. ACCOUNT and SPONSOR accept the #conn#, #conn_id#, #acc#, #acc_id# and #sub1#–#sub3# substitutions.
GIVEUP_TRAIANA target – EXECUTING_FIRM,CONTRA_FIRM,SPONSORING_FIRM,SIDE[,PRICE]. SIDE=0 keeps the trade direction (the opposite convention from Spectrum). PRICE defaults to the raw price; 1 reports the markup-adjusted price. Firm values of n/a fall back to adapter or provider defaults.
GIVEUP_ACTIVITY targets receive activity notifications (requests, openings and later trade events); the values field has no verified effect for them.
MT4 Coverage Account, being the most common, consists of one or more standard MT4 accounts enabling the PrimeXM Bridge to efficiently book trades. Since such coverage accounts are common MT4 accounts, they support all MT4 functionality such as P/L, Margin, Stopout, and so on. Trades can be booked from different connectors or connector accounts into one or multiple MT4 Coverage Accounts. Additionally, Coverage Accounts could be configured at the Provider level to give an overview of a Broker’s exposure with the provider.