Equity Position

Table of Contents

An equity position is direct exposure to a single equity or to a weighted basket of equities. It works as a stand-alone trade type and as a building block inside other products. ORE models it with the trade type EquityPosition. This note records the domain grounding, as ORE documents it in its product catalogue.

1. Identifiers

What a trader books it as, and what to grep for. The codes are the trade type catalogue's, which is what the database enforces.

Field Value
Full name Equity Position
Short name Equity Position
ORE Studio product code EquityPosition
Asset class equity
Family Position
ORE trade data node EquityPositionData
ORE documentation equityposition.tex

2. Summary

An equity position holds one equity underlying or several weighted equity underlyings. As a stand-alone trade it uses the trade type EquityPosition. As a trade component it is the EquityPositionData node inside the TotalReturnSwap (Generic TRS) trade type, where it sets up equity basket trades. The position price is the quantity times the weighted sum of the underlying prices, each converted to the first underlying currency. The container node is EquityPositionData.

3. Detail

3.1. What it is

ORE defines the product as follows:

An equity position represents a position in a single equity - using a single Underlying node, or in a weighted basket of underlying equities

  • using multiple Underlying nodes.

Source: ORE User Guide, Products catalogue, equityposition.tex.

ORE states the dual role as follows:

An Equity Position can be used both as a stand alone trade type (TradeType: EquityPosition) or as a trade component (EquityPositionData) used within the TotalReturnSwap (Generic TRS) trade type, to set up for example Equity Basket trades.

Source: ORE User Guide, Products catalogue, equityposition.tex.

3.2. In plain terms

An equity position is the spot view of the equity family. It says how many shares or basket units are held. One share name is enough. A basket is a list of names with weights, priced in the currency of the first name. The same block also works inside a total return swap when the swap pays the return of an equity basket.

3.3. How it works in ORE

The EquityPositionData node is the trade data container for the EquityPosition trade type. Quantity is the number of shares or the number of basket units held. The node takes one or more Underlying descriptions. Only equity underlyings are allowed. For a basket each underlying carries a Weight value. The underlying block names the equity with fields such as Type, Name, IdentifierType, Currency and Exchange. The first equity currency is by definition the currency in which the net present value of the basket is expressed. Other equity currencies convert into it through the FX spot.

3.4. Mathematical notes

The weighted basket price is Basket-Price = Quantity x sum over i of Weight_i x S_i x FX_i. Here S_i is the price of the ith share in the basket. FX_i is the FX spot converting from the ith equity currency to the first equity currency. A single-name position is the special case of one underlying with a weight of one.

3.5. What moves its value (static sensitivities)

  • The spot price of each underlying equity.
  • The weight of each name in the basket.
  • The FX spot rates between the equity currencies and the first equity currency.
  • The quantity of shares or basket units.

The position gains when its underlying prices rise. A name with a larger weight moves the position more.

3.6. How the profile ages (dynamic sensitivities)

An equity position is a spot holding. It carries no schedule and no optionality. Its value follows the underlying prices day by day until the position is closed. The FX conversion rates refresh with each valuation.

3.7. Why a customer would want it

A customer can hold direct equity exposure in one trade, single name or basket. The same position block plugs into a total return swap when the swap needs an equity basket leg. In ORE Studio a customer books equity positions to value them and run sensitivities on the ORE engine.

3.8. Example

ORE's catalogue shows an equity basket position with two European names, weighted equally:

<Trade id="EquityPosition">
  <TradeType>EquityPosition</TradeType>
  <Envelope>...</Envelope>
  <EquityPositionData>
    <Quantity>1000</Quantity>
      <Underlying>
        <Type>Equity</Type>
        <Name>BE0003565737</Name>
        <Weight>0.5</Weight>
        <IdentifierType>ISIN</IdentifierType>
        <Currency>EUR</Currency>
        <Exchange>XFRA</Exchange>
      </Underlying>
      <Underlying>
        <Type>Equity</Type>
        <Name>GB00BH4HKS39</Name>
        <Weight>0.5</Weight>
        <IdentifierType>ISIN</IdentifierType>
        <Currency>GBP</Currency>
        <Exchange>XLON</Exchange>
      </Underlying>
  </EquityPositionData>
</Trade>

Source: ORE User Guide, Products catalogue, equityposition.tex, listing Equity position data.

The option-based relative of this product is the Equity Option Position.

4. See also

Emacs 29.3 (Org mode 9.6.15)