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
- Knowledge — the hub of all knowledge notes, with the alphabetical product run.
- Wikipedia: Stock. This note follows its general definition.
- ORE User Guide, Product catalogue: products.tex, which inputs equityposition.tex. The upstream project is OpenSourceRisk/Engine.