Entity Setup
Before any trades can be booked, the target entity must be set up appropriately. Refer to Futures Entity Setup Processing Notes for additional information.
Reference Data
Storage & Configuration
Each Future security master file (SMF) is represented by a single row in Data Management. While almost all futures trade with VM in the market, for operational reasons Eagle can be configured to calculate VM automatically, or not. This determination should be made based on your answers to the questions below.
Question | Answer = No | Answer = Yes |
---|---|---|
Is cash managed internally? | Set Variation Margin (4533) to | Set Variation Margin to |
Should VM be reflected in investable cash on a daily basis? | ||
Can VM be reconciled with custodian? | ||
Can prices be accessed on a daily basis? |
Market Data
Future prices are quoted based on multiples of Tick Size. For example, if Tick Size = 0.25 prices will always end with .00, .25, .5, or .75. For Eagle Accounting to calculate the correct VM based on these market prices it is vital that Contract Size (19) and Price Multiplier (18) be populated correctly on the security master file (SMF). Bloomberg reference data for Futures includes two other fields that work in tandem with Tick Size: Contract Size and Value of 1.0 pt. Value of 1.0 pt = Contract Size * Tick Size.
For most Futures in Eagle, set Contract Size = Value of 1.0 pt and Price Multiplier =
1.00
Swedish Government Bond Futures have a standard Contract Size of
1,000,000
and should use a Price Multiplier of0.01
to accommodate the converted par-based prices (see the Valuation section for more details on price conversion)
When foreign Futures are settled in a base currency (often referred to as single-currency margining), the clearing broker may use FX rates that differ from an entity's FX rate source. This can cause breaks between your clearing broker's VM statement and the amount calculated in Eagle Accounting. Alternate rates can be supported using the Broker Currency and Broker Rates functionality, without affecting the FX rates used for other processing. This must be configured prior to processing VM. Refer to Clearing Broker FX Rates Processing Notes for more information.
Security Data
Futures can be set up and maintained using Issue Viewer, Security Reference Manager (SRM), or Reference Data Center (RDC).
Issue Name (961)
Primary Asset ID (14) & Type (1432)
Price Multiplier (18): typically
1.00
Contract Size (19): populate with "Value of 1.0 pt" from Bloomberg
Typically
1,000
for 3-year, 5-year, and 10-year Australian Government Bond Futures and650
for 20-year (older 20-year issuances used500
, but these were delisted in August 2018)
Issue Country (1418)
Asset Currency (85)
Settlement Currency (63): this can be used to control the currency in which VM will settle for all funds that hold the Future
This is especially common for Futures denominated in non-deliverable currencies
If a Future needs to settle in an alternate currency for specific funds only, see Clearing Broker FX Rates Processing Notes
Primary Exchange (17): set to
LME
for LME Futures (see the LME Futures section for details)Expiration Date (38)
Point Size (8501): represents the monetary value of one (1) point move in a Futures price; the Bloomberg name for this field is Value of 1.0 pt
Point Size is for reference/reporting purposes only and does not factor into valuation or VM calculations; ensure Price Multiplier and Contract Size are populated correctly
Variation Margin (4533)
Yes
: VM will be calculated and settled to cash, resulting in a MV of zero on the FutureNo
: Eagle Accounting will not calculate VM, resulting in a MV on the Future equal to its URGL
Variation Margin Rule (2289): required for all Futures because it dictates the URGL/market value calculation when Variation Margin =
No
(see the Valuation section for details)Standard Life to Date
: most US and foreign Futures use this calculationUS Treasury
: for US Treasury Futures90-Day Australian Bank Bill
: for Futures on 90-Day Australian Bank Bills that use yield-based pricingSee table below for rules and associated defaults for Futures on Australian Government Bonds that use yield-based pricing
Variation Margin Rule (2289) | Underlying Coupon Rate (4349) | Payment Frequency (472) |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
LME Futures
The LME offers Futures for various precious metals, which require the following configurations.
Variation Margin (4533): must be set to
No
Prompt Date (2302): settlement date of net cash (required in lieu of Expiration Date)
Last Trade Date (5076): last date trades can be entered
Trade Processing
Trades are entered using the Book Trade module once entity and reference data have been configured. Enter the appropriate entity, security identifier, and trade (35)/settle (37) dates and click Submit to query for the security. When you right-click the security, the options for opening and closing it will depend on whether the entity-level Net Futures Positions field is set to Yes
or No
.
Any commission or other fees paid can be entered on the trade
If the future is set up with Variation Margin =
No
, Future Expense/Capitalize Flag (10705) must be populated
The same Future cannot be traded with a different Clearing Broker (1237) in a given fund
An error will be displayed if attempted: Future trade clearing broker must be same as previous trades
Once a Future position has been established with a particular Clearing Broker, it can only be changed if the existing position is reduced to zero
A Non-Financial Trade Data Modification transaction can only be used if VM has not yet been run for the position
Open & Close
The fields below are used for both opens and closes.
Contracts (40): number of contracts
Price per Contract (45): used to calculate (notional) cost used for VM or unrealized gain/loss calculations
Commission Per Contract (971): this is multiplied by Contracts to calculate Commission Amount Local (47), which is factored into the net amount
This field is only available when Variation Margin =
Yes
Commission (47) is entered directly when Variation Margin =
No
Other Fee (3752): added to the total net amount
Tax Amount (46), SEC Fee (48), & Stamp Duty Tax (51): added to the total net amount
These fields are only available when Variation Margin =
No
Lot Selection Method (27): defaults to the entity-level value, or the value from the Mixed Cost Basis Rule if applicable, but can be overridden
Broker (88)
Clearing Broker (1237): required if Future is set up with Variation Margin =
Yes
Field | Open > Long | Open > Short | Close > Long | Close > Short |
---|---|---|---|---|
Event Type (55) | No VM = | No VM = | No VM = | No VM = |
Long-Short Indicator (15) | L (LONG) | S (SHORT) | L (LONG) | S (SHORT) |
Net Futures Positions (632) = | Creates a long position (long with positive quantity). | Creates a short position (short with positive quantity). | Closes (partially or fully) a previously established long position. | Closes (partially or fully) a previously established short position. |
Net Futures Positions (632) = | Creates a long position (long with positive quantity) or closes a previously established short position (long with negative quantity). | N/A | Creates a short position (long with negative quantity) or closes a previously established long position (long with positive quantity) | N/A |
Commission/Fees
Any commission and fees involved in the trade can be entered in the panel. There are slightly different treatments for Futures with Variation Margin = No
vs. Yes
.
Variation Margin =
No
: Future Expense/Capitalize Flag on the trade screen determines how commission and fees are treatedCapital
: they do not generate any cash movement and instead are rolled into cost; Cost = (Contracts * Price per Contract) + Commission + FeesExpense
: they generate a cash disbursement and are excluded from cost; Cost = Contracts * Price per Contract
Variation Margin =
Yes
: Futures & Options with Margin Transaction Fees Flag on the entity setup determines how commission and fees are treated (the default election isCapital
)Capital
: added to notional cost and reflected in CASH when the VM process is run for Trade Date; Notional Cost = (Contracts * Price) + Commission + FeesExpense
: expensed and excluded from notional cost and included in the VM amount when it is run for Trade Date; Notional Cost = Contracts * Price
LME Futures
There is no option for directly closing LME Future positions. Instead, they can be effectively closed out by booking offsetting positions based on whether the initial trade was long or short.
Initial Margin
Eagle does not calculate initial margin due to the large variance in requirements and calculation formulae between different brokers. Initial margin is typically calculated by another system and maintained in Eagle using Miscellaneous Income or Expense transactions against specific entities and securities.
Conversions
The CONVERSION
event is not supported for Futures. Conversions should be booked similar to other open trades.
Cancel & Rebook
Faulty Futures transactions can be cancelled and rebooked using the Cancel & Rebook Trade module. Margin calculation and approval must be run once the trade has been rebooked.
Accounting
Once a Future trade is booked, it will be picked up in Eagle’s global workflow. VM (if applicable) is calculated as part of the earnings process, the associated VM payable or receivable is generated through the approval process, Accounting valuation is calculated when posting unrealized gain/loss for futures with Variation Margin = No
, Data Management valuation is calculated in the STAR to PACE push, and VM is closed out to cash during cash settlement.
Include Page | ||||
---|---|---|---|---|
|
Valuation
Variation Margin = No
When Variation Margin = No
, the Future is valued at its unrealized gain/loss using the formula below and does not impact cash.
Market Value = URGL = Notional Market Value - Notional Cost
= # of Contracts * Contract Size * (Current Price - Trade Price) * Price Multiplier
Variation Margin = Yes
When Variation Margin = Yes
, VM is calculated based on the security's Variation Margin Rule and moved to cash. The security always has a market value of zero. Each day’s VM is captured in Market Value Income after calculation and approval, but before cash settlement, as the security’s true value is equal to its day-over-day price change. Market Value Income is cleared out once VM settles to cash.
For all securities, daily VM = Notional Market Value - Notional Cost. Variation Margin Rule controls how these values are calculated.
Each day's Notional Market Value becomes the next day's Notional Cost
Notional Market Value: always calculated using end-of-day prices
If VM is run for a Variation Margin Date (461) when prices have not been loaded, a Notional Market Value of zero is used
Notional Cost
On T: calculated using trade price
On T+: equal to prior day's Notional Market Value (cost on T+1 = MV on T)
Beginning in V15 R2, Notional Cost is stored on the cost object in Cost Amortized ID Local (2689), Cost Amortized ID Base (2690), Current Cost Local (128), and Current Cost Base (129)
For foreign Futures, base VM delta values are calculated by comparing the day-over-day change in life-to-date (LTD) values
VM LTD local is converted to base each day using the prevailing FX rate
Each day's VM delta base = current day VM LTD base - prior day VM LTD base
Converting each day's VM delta local to base produces different results
The VM process steps are illustrated below, and the attached
View file | ||
---|---|---|
|
Step 1: Calculation | Step 2: Approval | Step 3: Settlement |
---|---|---|
Payable/Receivable = 0 | Payable/Receivable = VM | Payable/Receivable = 0 |
Market Value Income = 0 | Market Value Income = VM | Market Value Income = 0 |
Cash Position = No Impact | Cash Position = No Impact | Cash Position = VM |
Standard Life To Date
This calculation is used by the vast majority of Futures.
Notional Market Value/Cost = # of Contracts * Contract Size * Price * Price Multiplier
US Treasury Future Calculations
US Treasury securities differ slightly in their VM calculation by rounding at the individual contract level rather than the total position level. The attached
View file | ||
---|---|---|
|
The VM formula for US Treasury securities is:
VM = (Notional Market Value of 1 Contract - Notional Cost of 1 Contract) * Number of Contracts
Notional Market Value/Cost = Contract Size * Price * Price Multiplier, rounded to two decimal places
Australian Government 3-Year, 5-Year, 10-Year, & 20-Year Bond Future Calculations
Australian Government Bond Futures use yield-based pricing in the market. Below is an excerpt from the Australian Futures Exchange on notional and VM calculations. The attached
View file | ||
---|---|---|
|
Expand | ||
---|---|---|
| ||
|
Australian Government 90-Day Bank Bill Future Calculations
Australian Government Bond Futures use yield-based pricing in the market. Below is an excerpt from the Australian Futures Exchange on the notional and VM calculations.
Expand | ||
---|---|---|
| ||
|
Swedish Government Future Calculations
Futures linked to Swedish Government Bonds are quoted in yield. For Eagle Accounting to correctly value these contracts, yields must be converted to a par-based prices. The attached
View file | ||
---|---|---|
|
This spreadsheet also contains the VM calculation, which follows the same logic as US Treasuries listed above
Variation Margin Rule should be set to
US Treasury
Reporting
STAR to PACE (S2P)
Almost all reports in Eagle Accounting leverage data from Data Management, which is populated by the S2P process. This will be scheduled as part of the daily workflow, but can also be triggered manually as described in the Accounting section.
The S2P process creates a single row for each Future in the POSITION, POSITION_DETAIL, TRADE, and CASH_ACTIVITY tables. The MARKET_VALUE_INCOME column captures the VM amount. Notional market value and notional cost are stored on the position.
Accounting Reports
Include Page | ||||
---|---|---|---|---|
|
Insurance Reporting
Include Page | ||||
---|---|---|---|---|
|
Data Management Reporting
Include Page | ||||
---|---|---|---|---|
|
Identify Trade Types with Netting
When the entity-level Net Futures Positions field is set to Yes
, short trades do not have dedicated Event Types. This can make it difficult to identify the original purpose of each trade. In V17 R2.33 and above, you can infer this based on the information described below.
Trade Type | Event Type | Accounting (ESTAR_TRADED_CASH_ACTIVITY) | Data Management (CASH_ACTIVITY) |
---|---|---|---|
Long Open | OPENFUTURE | COST_LOT_OPEN_EVT_ID <> NULL | PERFORMANCE_FLOW_DESC = Positive |
Long Close | CLOSEFUTURE | COST_LOT_OPEN_EVT_ID = NULL | PERFORMANCE_FLOW_DESC = Negative |
Short Open | CLOSEFUTURE | COST_LOT_OPEN_EVT_ID <> NULL | PERFORMANCE_FLOW_DESC = Positive |
Short Close | OPENFUTURE | COST_LOT_OPEN_EVT_ID = NULL | PERFORMANCE_FLOW_DESC = Negative |
Performance
The performance toolkit calculates market value-based performance for Futures using data supplied by the S2P process. However, this can be misleading because traditional market values do not capture a Future’s true exposure. Exposure-based analyses, which can be implemented using Eagle Enrichment, calculate more meaningful returns. The documentation and .egl files are linked below. Additional details are available in Exposure Reporting Best Practices and the Eagle Enrichment User Guide 2015.
View file name UNKNOWN_ATTACHMENTEGIE_014 Futures Notional Exposure.egl View file name UNKNOWN_ATTACHMENTEGIE_014 Futures Notional Exposure - Inventory.xlsx View file name UNKNOWN_ATTACHMENTEGIE_012 Australian Government Bond Futures Notional Exposure.egl View file name UNKNOWN_ATTACHMENTEGIE_012 Australian Government Bond Futures Notional Exposure - Inventory.xlsx
Automation
Future SMFs and trades can be loaded through the standard Message Center streams. The SMF must be loaded prior to the trade (trades do not spawn SMFs). Refer to https://eagledocs.atlassian.net/wiki/spaces/GENERICINTER for more information.
Example Messages
Variation Margin | Transaction Type | Default Message Center Stream | Sample Files | ||||
---|---|---|---|---|---|---|---|
With VM | SMF Setup | eagle_default_in_csv_smf |
| ||||
Trade Open | eagle_default_in_csv_trades OR |
| |||||
Partial/Full Close | eagle_default_in_csv_trades OR |
| |||||
No VM | SMF Setup | eagle_default_in_csv_smf |
| ||||
Trade Open | eagle_default_in_csv_trades OR |
| |||||
Partial/Full Close | eagle_default_in_csv_trades OR |
|