Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 31 Next »

Overview

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

A Cryptocurrency (Crypto) is a digital currency that use cryptography to prevent counterfeiting and other exploits. They are most commonly based on blockchain technology, which provides a distributed (and in many cases public) ledger for participants and market observers to monitor transactions. Some of the most popular Cryptocurrencies are Bitcoin (XBT/BTC), Bitcoin Cash (XBC/BCH), Ripple (XRP), Ethereum (ETH), and Litecoin (LTC).

The market for Cryptocurrencies (Cryptos) has matured to the point where institutional and other more traditional investors are now involved. The Eagle software suite has flexibility to model Cryptocurrencies in Accounting, Data Management, and Performance, regardless of your preferred coin(s). There are two models available that serve different business requirements and operational goals.

  • Securitization: set up a security to represent each Cryptocurrency and book trades like an equity
    • This allows you to track tax lots, calculate unrealized gain/loss, use different lot relief methods, and generate richer performance returns
    • The security can be denominated in the Cryptocurrency itself to enable trading the same security master file (SMF) across different settlement/base currencies
    • The security can also be denominated in a physical currency, which requires a separate SMF for each settlement/base currency
  • Cash: set up each Cryptocurrency as cash and book trades using contributions/withdrawals and spots/forwards
Content on this page:

Please consult with your internal accounting and tax experts to determine the appropriate treatment based on your organization's regulatory responsibilities and reporting requirements. The information provided in this document is intended to explain the functionality available in Eagle Accounting. It should not be interpreted as guidance about the regulatory responsibilities and reporting requirements for your specific organization.

Pay special attention to underlined sections, as these highlight the most frequently encountered issues. Bold is used for navigation, modules, and screens. Italics are used for fields, tables, and errors. Fixed width indicates values for fields or code/text that should be entered. Tags are shown in parentheses (#) after field names.

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

Entity Setup

Entities trading Cryptocurrencies do not require any special setup, but pricing and exchange rate sources must be considered.

  • Securitization Model Denominated in Cryptocurrency & Cash Model
    • Ensure your FX Source (1344) and Valuation FX Source (11652) reflect your desired Cryptocurrency exchange rate sources
  • Securitization Model Denominated in Physical Currency
    • Ensure your Long Price Source (1282) and Short Price Source (5422) reflect your desired Cryptocurrency pricing sources, as you will be loading the exchange rates as prices

Reference Data

Storage & Configuration

Each Cryptocurrency security master file (SMF) is modeled as its own equity security (securitization model) and/or cash security (cash model).

Both models may involve adding a new currency to Eagle Accounting. The engines must be restarted by an administrator after a new currency is added, as described in this knowledge base article.

Market Data

Exchange rates to various physical currencies are readily available for most major Cryptocurrencies.

  • Securitization Model Denominated in Cryptocurrency & Cash Model
    • The exchange rates must be loaded as FX rates
    • The rates must be loaded to the appropriate source for each currency pair that will be used to trade Cryptocurrencies
      • If you trade Bitcoin in both USD and GBP funds, for example, you must load rates for both XBT->USD and XBT→GBP
      • These rates are used automatically in the calculation of base market value and gain/loss
      • Due to the high prices of bitcoin and the use of "divide by" FX rates in Eagle Accounting, you may see slight rounding differences when comparing valuations between the securitization and cash models
    • Each Cryptocurrency's precision is defined when creating the cash security
  • Securitization Model Denominated in Physical Currency
    • The exchange rates must be loaded as prices
    • Precision is controlled by the underlying physical currency, in which case trades must be loaded with the appropriate rounding already applied

Some Cryptocurrencies, such as Ethereum, require greater precision than is currently supported in Eagle. In these cases, rounded values must be used in Eagle. If you need to maintain a record of the full precision for reference and reporting purposes, you can enter the unrounded value in one of the Settle Instructions fields (1897-1900) at trade time because these are character fields. This does not drive any Accounting processing.

Security Data

Cryptocurrency SMFs can be set up and maintained in Issue Viewer, Security Reference Manager (SRM), or Reference Data Center (RDC). The lists below capture all required fields.

Securitization Model

To have the security denominated in the Cryptocurrency itself, and thus allow the same SMF to be traded in different settlement/base currencies, you must first create a cash security as described under Cash Model below. You can skip that step if the security will be denominated in a physical currency, in which case a separate SMF is required for each settlement/base currency.

Cash Security

  • Issue Name (961)
  • Ticker (13): enter Cryptocurrency symbol, such as XBT for Bitcoin, XRP for Ripple, etc.
  • Primary Asset ID (14): locked and concatenated to CASH + Ticker, such as CASHXBT or CASHXRP
  • Primary Asset ID Type (1432) = CASH
  • Processing Security Type (3931) = CRCRCR (Currency)
  • Price Multiplier (18) = 1.00
  • Quantity Scale (19) = 1.00
  • Security Type (82) = CRNY (Cash)
  • Issue Country (1418)
  • ISO Currency Number (1442): enter a large, unique value such as 9999 because Cryptocurrencies are not official ISO currencies
    • You will receive an error on submission if the value is already in use, in which case you step it up or down one digit
  • Currency Precision (1451): an unofficial list of Cryptocurrency precisions is available on Wikipedia

Cryptocurrency Security

  • Issue Name (961)
  • Primary Asset ID (14) & Type (1432)
  • Processing Security Type (3931) = EQCSCS (Common stock)
  • Security Type (82) & Sub Security Type (1464): use these fields to identify your Cryptocurrency securities vs. true equities
    • These fields are driven by the SECURITY TYPE and SUB SEC TYPE Code Categories respectively
  • Price Multiplier (18) = 1.00
  • Quantity Scale (19) = 1.00
  • Issue Country (1418): because Cryptocurrencies are typically not tied to a specific country, we recommend adding a new value to the COUNTRY CODE Code Category that is consistent with existing values
    • For example: short code = XX and long code = For Cryptocurrencies (non-Country)
  • Asset Currency (85): set to the cash security created above to trade the same SMF across multiple settlement/base currencies, or select a physical currency to use separate SMFs for each settlement/base currency
  • Issue Tax Type (668): you can add a new value to the ISSUE TAX TYPE Code Category if your Cryptocurrency trades are subject are subject to tax withholdings and/or reclaims
  • Primary Exchange (17): we recommend using a dummy value such as ALL because the same Cryptocurrencies are traded on multiple exchanges
    • Instead, exchange information can be entered as trade information, such as in the Broker (88) field

Cash Model

Create a cash security as described above under Cash Security.

Trade Processing

Trades are entered using the Book Trade module once the entity and reference data have been configured. Enter the appropriate entity, security identifier, and trade (35)/settle dates (37) and click Submit to query for the security.


Securitization Model

Open

Right-click the Cryptocurrency security and select Open > Buy or ShortSell. The lists below captures all required fields to book a trade.

  • Shares (40): quantity of the Cryptocurrency being purchased
  • Price Per Share (45)
    • Denominated in Cryptocurrency: enter 1.00
    • Denominated in Physical Currency: enter the exchange rate between the Cryptocurrency and physical currency at trade time
  • The following fields are available to capture trade fees and taxes:
    • Commission (47)
    • SEC Fee (48)
    • Tax Amount (46)
    • Stamp Duty Tax (51)
    • Other Fee (3752)
  • Settlement Currency (63): when the SMF is denominated in Cryptocurrency, set this to the appropriate physical currency for settlement
  • Settlement Net Amount (64): this is calculated automatically based on the prevailing FX rate, but can also be entered directly
  • Broker (88)

Close

Right-click the Cryptocurrency security and select Close > Sell or BuytoCover. The lists below captures all required fields to book a trade.

All fields on the close are the same as the open, except Lot Selection Method (27). This defaults to the entity-level election, but can be overridden.

Cash Model

Open & Close

Right-click the Cryptocurrency cash and select Book Foreign Exchange > Buy Currency - Spot Contract or Sell Currency - Spot Contract. The table below capture all required fields to book both a buy and sell of Cryptocurrency.

FieldBuy CryptocurrencySell Cryptocurrency
Sell Currency Symbol (363)Sale currency symbolCryptocurrency symbol
Sell Quantity (366)Sale currency amountCryptocurrency amount
Buy Currency Symbol (313)Cryptocurrency symbolPurchase currency symbol
Buy Quantity (316)Cryptocurrency amountPurchase currency amount
Broker (88)

Cancel & Rebook

Faulty Cryptocurrency transactions can be cancelled and rebooked using the Cancel & Rebook Trade module. Alternatively, trades can be cancelled using Cancel Trade, with the transaction rebooked using the Book Trade module.

Accounting

Once a Cryptocurrency trade is booked it will be picked up in Eagle’s global workflow. Accounting valuation is calculated when posting unrealized gain/loss, and Data Management valuation is calculated in the STAR to PACE push. These can be scheduled or triggered manually.

  • Global Processes (V17)
    • Accounting Valuation: Unrealized Gain Loss Entries > Post Daily Fund Unrealized Gain Loss-Position
    • Data Management Valuation: Eagle STAR to Eagle PACE Direct Processing > Transfer Data - Batch
  • Global Process Center (prior to V17)
    • Accounting Valuation: Unrealized Gain Loss Entries > Post Daily Fund Unrealized Gain Loss-Position
    • Data Management Valuation: STAR to PACE Direct Processing > Transfer Data - Batch

Valuation

Cryptocurrencies can be valued using their prevailing FX rates. However, some organizations may not be allowed to report gains on Cryptocurrencies due to their regulatory responsibilities and reporting requirements. Please consult with your internal accounting and tax experts to confirm.

If you cannot recognize gains, you may want to set the STAR 2 PACE entity flag Value At Cost - No Price Found (11454) = Yes if Cryptocurrencies are the only securities held in the fund. This ensures holdings will always be valued in Data Management, even if no market price is available. Please consider the implications carefully if there are other types of securities in the fund, as the flag affects all of an entity's holdings.

  • Note: when running the STAR to PACE process using Transfer Data - Batch or Transfer Data - Delta, Price Date Switch (9981) controls what happens in the case of a missing price, before falling back to Value At Cost - No Price Found
  • The table below shows what happens on dates when there is a missing price in the various combinations of these elections

Value At Cost - No Price Found = No

Value At Cost - No Price Found = Yes
Price Date Switch = ActualMarket Value = 0.00Market Value = Cost
Price Date Switch = RecentMarket Value = Stale if a price exists for any prior date, else 0.00Market Value = Stale if a price exists for any prior date, else Cost

For the securitization model denominated in Cryptocurrency, the Cryptocurrency security should always be price at 1.00/valued at cost. Base market value will capture the value in the settlement/base currency and gain/loss will be captured as currency gain/loss.

For the securitization model denominated in physical currency, the prevailing FX rates must be loaded as prices to the appropriate source for each Cryptocurrency security.

Valuation is calculated using this formula: Market Value = # of Units of Cryptocurrency * Quantity Scale * Price * Price Multiplier

  • Price will be 1.00 if denominated in Cryptocurrency, or the prevailing FX rate if denominated in physical currency
  • Quantity Scale and Price Multiplier should both be set to 1.00
  • Base market value is used to calculate currency gain/loss if the security is denominated in Cryptocurrency

An example is shown in the attached spreadsheet: Cryptocurrency Examples.xlsx.

Corporate Actions

Cryptocurrencies are subject to several events that are not considered traditional corporate actions, but have very similar end results. These include Staking Rewards, Hard Forks, Soft Forks, and Airdrops, among others. All of these events can be modeled using traditional buy/sell or receive/deliver transactions.

Under the Securitization Model, these events can also be processed as corporate actions in Eagle Accounting. This may be helpful if you need a more structured process that can be applied across funds. Share offers, stock dividends, spinoffs, and exchange offers are all available depending on the exact details of the event. In the example below, we model Staking Rewards using the Share Offer corporate action announcement.

  • From Security: enter an identifier to return the Cryptocurrency SMF
  • Effective Date (1109): enter the date the reward is received
  • Ex Date (65): set equal to Effective Date
  • Treatment of Fractional Shares (3965) = Post Fractional Shares
  • Mandatory/Voluntary Indicator (1734): select Mandatory if all positions are fully staked, or Voluntary if positions are partially staked
  • To Security: enter an identifier to return the same Cryptocurrency SMF as above
  • Subscription Price (1705): enter zero
  • To Ratio (Shares) (1001): enter reward percentage
    • For example, if this is set to 0.03 and your position of 100 coins is fully staked, you will receive 3 additional coins

When the corporate action is processed, an additional lot based on the To Ratio (Shares) is added to your Cryptocurrency position with a cost basis of zero.

Reporting

STAR to PACE (S2P)

Almost all reports in Eagle leverage data from the Warehouse, 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 Cryptocurrency in the POSITIONPOSITION_DETAILTRADE, and CASH_ACTIVITY tables. The MARKET_VALUE_INCOME column captures the total market value, inclusive of price fluctuations and period-to-date accruals payable or receivable. Spot transactions used for the cash model are not posted to the TRADE table.

Accounting Reports

Eagle has a core set of accounting reports that can be used to review Cryptocurrency information. These are designed to support the daily operational workflow for business users, allowing Grid Reports to be easily exported to Excel and customized to provide additional details as needed. Advanced Reports are intended to be client-facing and do not provide the same level of customization.

Data Management Reporting

General Reporting (Eagle OLAP)

OLAP reports provide the maximum level of customization, allowing any column in Data Management to be pulled into a report. These go beyond the Eagle Accounting Grid Reports because they are not limited by core queries, can support multiple sources and various types of calculations, and provide drill-down functionality based on user-defined groupings.

Performance

The performance toolkit has full functionality to calculate market value-based performance for Cryptocurrencies using data supplied by the S2P process. Risk and performance attribution features are available to analyze Cryptocurrency performance.

Automation

Cryptocurrency security master files (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 Supported Generic Interfaces V17 for more information.

  • No labels