Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Overview

This document applies to all releases of Eagle software V12 and above. Version-dependent functionality is noted with the initial release(s) it became available.

Future Contracts (Futures) are legal agreements to buy or sell a given asset at a predetermined price and time in the future. Some of the most well-known are based on commodities such as oil, gold, and corn, but they also extend to financial instruments like Treasury Notes, indexes, and currencies. Eagle supports these various flavors using a standardized modeled that provides familiarity and scalability. This document covers the details of Eagle Accounting, Data Management, and Performance.

Include Page
IE Formatting Notes
IE Formatting Notes

Example reference data screens, trade screens, and reports are attached:

  • View file
    nameFuture Contract Examples - With VM.xlsx

  • View file
    nameFuture Contract Examples - No VM.xlsx

On this page

Table of Contents
maxLevel1
indent2 px
exclude.*(Overview).*

Related content

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 No to bypass VM calculation.

Set Variation Margin to Yes to calculate VM.

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 of 0.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, Government Bond Futures and 650 for 20-year (older 20-year issuances used 500, 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 Future

    • No: 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 calculation3Yr & 10Yr AUDGOVTBND

    • US Treasury: for US Treasury Futures

    • 90-Day Australian Bank Bill: for Futures on Australian 3- and 10-year government bonds that price based on yield90-Day Australian Bank Bills that use yield-based pricing

    • See 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

: typically 6% (6.00

)

Payment Frequency (472)

: typically
  • Underlying Coupon Rate: typically 4% (4.00)

  • Payment Frequency: typically

    3-Year Australian Govt. Bond

    6.000000

    Semi-Annual (S)

    20Yr AUDGOVTBND (V17): for Futures on Australian 20-year government bonds that price based on yield

    5-Year Australian Govt. Bond

    2.000000

    Semi-Annual (S)

    10-Year Australian Govt. Bond

    6.000000

    Semi-Annual (S)

    20-Year Australian Govt. Bond

    4.000000

    Semi-Annual (S)

    AUD 90 Day Bank Bill: for Futures on Australian 90-day bank bills that price based on yield

  • US Treasury: for US Treasury futures

  • 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 = OPENFUTURE
    With VM = BUYFUT

    No VM = OPENFUTURE
    With VM = BUYFUT

    No VM = CLOSEFUTURE
    With VM = SELLFUT

    No VM = CLOSEFUTURE
    With VM = SELLFUT

    Long-Short Indicator (15)

    L (LONG)

    S (SHORT)

    L (LONG)

    S (SHORT)

    Net Futures Positions (632) = No

    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) = Yes

    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 treated

      • Capital: they do not generate any cash movement and instead are rolled into cost; Cost = (Contracts * Price per Contract) + Commission + Fees

      • Expense: 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 is Capital)

      • Capital: added to notional cost and reflected in CASH when the VM process is run for Trade Date; Notional Cost = (Contracts * Price) + Commission + Fees

      • Expense: 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
    Variation Margin Global Processing Notes
    Variation Margin Global Processing Notes

    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
    nameHow Variation Margin Moves.xlsx
     spreadsheet walks through an example.

    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
    nameStandard Life to Date vs US Treasury.xlsx
    spreadsheet highlights the difference between the two calculations.

    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

    20

    3-Year, 5-Year, 10-Year, &

    3

    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
    nameAustralian Government 3-yr 10-yr 20-yr Bond Future VM CalcsCalculations.xlsx
    spreadsheet contains rounding conventions and can be used to validate your results for all tenors.

    Expand
    titleClick here for calculation details...
    • ASX Treasury Bond Futures: the pricing formula is simplified because there is always an exact number of half years to maturity, and hence no requirement to calculate accrued interest

    • The formula for the value (P) of a 10 Year Bond Future on ASX is written as:

      • 103-Year, 5-Year & 3, and 10-Year:       P =  1000 * ((( C * ( 1 - Vn)) / i + 100 * Vn)

      • 20-Year:                      P P =  650 * ((( C * ( 1 - Vn)) / i + 100 * Vn) --> Note: older 20-year issuances used 500 instead of 650, but these were delisted in August 2018

      • Where:

        • i = yield % pa divided by 200 ('pa' indicates an annual percentage yield)

        • V = 1/(1+i)

        • n = number of coupon payments (40 for 20-Year, 20 for 10-Year, 6 for 3-Year)

        • C = coupon rate/2

    • Thus, to value a 6% coupon 10-Year Treasury Bond Future which is trading at a price of 95.500 (i.e. a yield of 4.50% pa), the inputs would be:

      • i = 0.02250000

      • V = 0.97799511

      • n = 20

      • C = 3

    • When these inputs are included in the formula, the above contract value will be $111,972.78

    • VM = Pt - Pt-1

    Please refer to the
    View file
    nameAustralian Government 3-yr 10-yr 20-yr Bond Future VM Calcs.xlsx
    spreadsheet for rounding conventions used by this type of Future.
    • 972.78

    • VM = Pt - Pt-1

    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
    titleClick here for calculation details...
    • For ASX 90 Day Bank Bill Futures, where the contract value is always $1,000,000 and the term to maturity is exactly 90 days, the bank bill formula can be rewritten as:

      • P = (1,000,000 × 365) / (365 + (Yield × 90 / 100))

      • Where

      • P = value of contract

      • Yield = the futures price minus 100

    • Therefore, if a Bank Bill Future was trading at 95.00 (i.e. a yield of 5%), the value would be:

      • P = (1,000,000 × 365) / (365 + (5.00 × 90 / 100)) = $987,821.38

      • VM = Pt - Pt-1

    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
    nameSwedish Government Bond Futures Yield Conversion.xlsx
    spreadsheet contains a calculator based on the NASDAQ OMX Stockholm Fixed Income Derivatives documentation.

    • 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
    Derivatives Accounting Reports Processing Notes
    Derivatives Accounting Reports Processing Notes

    Insurance Reporting

    Include Page
    Derivatives Insurance Reporting Processing Notes
    Derivatives Insurance Reporting Processing Notes

    Data Management Reporting

    Include Page
    General Reporting (Eagle OLAP) Processing Notes
    General Reporting (Eagle OLAP) Processing Notes

    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
    COST_LOT_CLOSE_EVT_ID = NULL

    PERFORMANCE_FLOW_DESC = Positive

    Long Close

    CLOSEFUTURE

    COST_LOT_OPEN_EVT_ID = NULL
    COST_LOT_CLOSE_EVT_ID <> NULL

    PERFORMANCE_FLOW_DESC = Negative

    Short Open

    CLOSEFUTURE

    COST_LOT_OPEN_EVT_ID <> NULL
    COST_LOT_CLOSE_EVT_ID = NULL

    PERFORMANCE_FLOW_DESC = Positive

    Short Close

    OPENFUTURE

    COST_LOT_OPEN_EVT_ID = NULL
    COST_LOT_CLOSE_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
      nameEGIE_014 Futures Enrichment RuleNotional Exposure.egl

    • View file
      nameEGIE_014 Futures Enrichment Notional Exposure - Inventory.xlsx

    • View file
      nameEGIE_012 AUD Futures Enrichment RuleAustralian Government Bond Futures Notional Exposure.egl

    • View file
      nameEGIE_012 AUD Futures Enrichment 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

    View file
    nameFUT_SMF.csv

    Trade Open

    eagle_default_in_csv_trades OR
    eagle_default_in_csv_all

    View file
    nameFUT_TC.csv

    Partial/Full Close

    eagle_default_in_csv_trades OR
    eagle_default_in_csv_all

    View file
    nameFUT_PartialClose.csv

    No VM

    SMF Setup

    eagle_default_in_csv_smf

    View file
    nameFUT_SMF_no_VM.csv

    Trade Open

    eagle_default_in_csv_trades OR
    eagle_default_in_csv_all

    View file
    nameFUT_TC_no_VM.csv

    Partial/Full Close

    eagle_default_in_csv_trades OR
    eagle_default_in_csv_all

    View file
    nameFUT_PartialClose_no_VM.csv