Business Functions User Guide
Business Functions User Guide
You are here: Home > Front Office - PM > Front Office > Business Func ons User Guide
Introduc on
This product guide is aimed at intermediary-level users and describes the following financial or business func ons of Front Office - Por olio Management (PM):
Opera on List
Opera ons History
Order List
Valua on
Posi ons History
Journal Of Liquidity
Event Genera on
Return Analysis
Synthe c Administra on
Composite Manager
Display Chrono
Yield Curve
External
Note: Front Office - PMscreens might change slightly from one version to another but the basic informa on on the screens remain the same.
The Opera on List process retrieves the flows in accordance with the parameters entered in the Domain screen. The most important of these parameters are the Por olio Dimension and the Dates (Ini al Date and Final Date). With this
informa on, the process retrieves the flows that occur between the dates and creates the extended posi on structure.
If the Ini al Date is earlier than the Final Date, the process retrieves a series of flows that arrived during the period, for example, the posi ons and balance posi ons that meet the following condi ons:
Opera on List is the only func on in Front Office - PM that displays the flows whose status is not equal to “Treated”, that are posi ons that have not been merged in the fusion process.
The Opera on List func on also loads flows due to the presence of a PPS linked to the por olio.
Opera ons with a status of “Cancelled” never generate Ini al Stock or Final Stock. They are only flows that are closed immediately (begin_d = end_d).
Note: If the selected line has a reverse nature "reversed", you do not have rights to update, delete, and copy. Also, for reverse nature "reverse", you do not have rights to delete and copy. In all other cases, you have standard rights.
To view the modifica ons of an opera on in the Opera on List format, you must refresh the window with the Refresh bu on (top right of screen).
1. From the Front Office - PM menu bar, choose Opera on > Opera on List > Opera on List.
Field Descrip on
Por olio These fields indicate which por olios are passed to the Opera on History
func on.
Por olio List
Customer
All Instruments These fields indicate if the posi ons retrieved are related to a single
instrument or a list of instruments.
Instrument
List
Ini al Date The date from which the Opera on List starts.
Minimum Status These fields indicate the range of states the retrieved posi ons' statuses
must fall within.
Maximum Status
Incl./Excl. Indicates if Ini al Stock and Final Stock posi ons are loaded or not.
posi on
(on the
Parameters tab)
Note: The relevant fields in the extended posi on structure that is created are described in sec on Extended posi on structures.
4. (Op onal) You can access a context menu from the list. To do this, click the cell you are interested in to select it and then right click the mouse. The exact menu op ons depend on the cell data.
Structure Descrip on
Descriptors Por olio, Instrument, Deposit, Posi on currency, Instrument currency, Reference
of the currency, etc.
posi on
Details of Opening opera on nature, Execu on opera on code, Reversal nature, Status,
the opening Main flag, etc.
opera ons
Cost data Quan ty, All cost exchange rates, Price, Quote, All net and gross cost amounts
(Reference, instrument, and posi on currency), All fees and tax counters.
Nature Indicates whether the extended posi on is an ini al stock, a final stock, or a flow.
As men oned above, ini al (or final) stocks are posi ons or balance posi ons
that are open at the Ini al (or Final) Date. Flows are the opera ons between the
Ini al Date and Final Date.
Opera ons History retrieves the flows in accordance with the parameters entered in the domain. The most important parameters are the Por olio Dimension, Currency and the dates (Ini al Date and Final Date). With this informa on, the process
retrieves the flows between the dates and creates the extended posi on structure.
If the Ini al Date is earlier than the Final Date, the process retrieves a series of flows that arrived during the period; these are the posi ons and balance posi ons that meet the following condi ons:
Opera ons with a status “Cancelled” never generate Ini al Stock or Final Stock. They are only flows that are closed immediately (begin_d = end_d).
Reference currency is the Reference currency is always the por olio currency.
currency specified in the domain.
Only the main por olio or the PPS PPSs cannot be loaded.
defined in the domain is loaded
Displays only Treated opera ons. Displays the Treated and Untreated opera ons (that is,
opera ons that have not gone through the fusion process).
1. From the Front Office - PM menu bar, choose Analysis > Opera ons History > Opera on History.
Field Descrip on
Por olio These fields indicate which por olios are passed to the Opera on History
func on.
Por olio
List
Customer
All These fields determine if the posi ons retrieved are related to a single instrument
Instruments or a list of instruments.
Instrument
List
Currency Indicates the currency in which the Opera on History should be displayed (this is
the reference currency).
Ini al Date The date from which the Opera on History starts. Set by default to current date
minus a year.
Final Date The date un l which flows are retrieved. Set by default to the current date.
Minimum These fields define the range of states the retrieved posi ons' status must fall
Status within.
Maximum
Status
Loading To load a Por olio Posi on Set, select PPS or Default or Load PPS from the field's
Rule drop-down list. When you select one of these op ons, the Consolida on P field
is ac vated. Click Browse bu on beside the Consolida on P field to select a
consolida on por olio (PPS).
Incl./Excl. Indicates if Ini al Stock and Final Stock posi ons are loaded or not.
Posi on (on
the
Parameters
tab)
Note: The relevant fields in the extended posi on structure that is created are described in sec on Extended posi on structures.
The Opera on History screen is displayed showing the details of all instruments of the selected por olio.
4. (Op onal) You can access a context menu from the list. To do this, click the cell you are interested in to select it and then right click the mouse. The exact menu op ons depend on the cell data.
Structure Descrip on
Posi on Por olio, Instrument, Deposit, Posi on currency, Instrument currency, Reference
descriptors currency, etc.
Opening Opening opera on Nature, Execu on opera on Code, Reversal Nature, Status,
opera ons' Main flag, etc.
details
Structure Descrip on
Cost data Quan ty, All cost exchange rates, Price, Quote, All net and gross cost amounts
(Reference, instrument, and posi on currency), All fees and tax counters.
Nature Indicates whether the extended posi on is an ini al stock, a final stock or a flow.
As men oned above, ini al (or final) stocks are posi ons or balance posi ons
that are open at the Ini al (or Final) Date. The flows are the opera ons between
the Ini al Date and Final Date.
Restart profit and loss at flexible date for Opera on History func on
Posi on History func on with "Restart profit and loss at flexible date" displays flows calculated on cost prices and cost exchange at a specific date. The same func onality is also available for the Valua on func on (see sec on Restart profit and
loss at flexible date for Valua on func on).
Domain se ngs
To ac vate this behaviour, the domain needs the following specific se ngs:
Reference Date is used to define the specific date. Cost prices and exchange rates are retrieved at this date.
This date must be before the Ini al Date.
P&L Method is used to ac ve this behaviour.
P&L Method is set to Market Value Profit and Loss method.
Impact on flows
Posi ons opened before the Reference Date is updated:
Cost price and cost exchange rates are replaced by their value at Reference Date.
Cost amounts are calculated with the new cost price and exchange rate.
Fees and taxes are removed from the posi on.
All opera ons between the Reference Date and the Final Date are taken into account by a logical fusion to generate new flows based on updated posi ons.
Note that posi ons with instrument natures Forward or Futures are excluded from this func onality; their cost prices and exchange rates are never updated.
Posi on Reference
Posi on Reference
This posi on is closed on 25/03/2012 @ 52.00 CHF with 9.00 of fees and taxes:
Posi on Reference
Posi on Reference
The fusion process generates capital & currency P&L (calcula on with PORT_PL_COMP_RULE = 2):
Reference
Posi on Reference
Ini al posi on on Nestle is updated with price and exchange rate on 31/12/2011, fees and taxes are removed:
Posi on Reference
This posi on is closed on 25/03/2012 @ 52.00 CHF with 9.00 of fees and taxes:
Posi on Reference
Posi on Reference
The fusion process generates capital & currency P&L (calcula on with PORT_PL_COMP_RULE = 2)
Reference
It returns the extended opera on structure. The Order List displays informa on inherent in the opera ons performed in one or more por olios between two given dates. Each line contains informa on on the transac on (dates, quotes, prices,
etc.).
You can also have the func on return other members of a global order family even if not all the orders match the search criteria.
The first phase basically depends on the following domain fields: Por olio and Instrument Dimensions, Ini al Date, Final Date, Min and Max Status, and Fusion Date Rule.
The Fusion Date Rule (fusion_date_rule_e) domain parameter, if different from <none>, op mises the search and indicates which date (Opera on, Accoun ng, or Value) should be used for the search during the loading phase. Where possible, the
func on resolves the Ini al Date, Final Date, and the Min and Max Status in the Opera on table. To do this, it uses the date specified by the Fusion Date Rule as the Reference Date. Note that you cannot enter the Fusion Date Rule domain
parameter as a value in the GUI. It must be set as a default value.
If the func on cannot resolve the Ini al Date, Final Date, and the states in the Opera on table, or if the Fusion Date Rule passed from the domain is set to <none> (0), it uses the Begin Date in the Posi on/Balance Posi on tables. This means that
the loading phase uses the Posi on/Balance Posi on tables first of all, which slows it down. The Begin Date, used as the Reference Date, is always the date set by the por olio's Fusion Date Rule.
The OP_SEARCH_METHOD system parameter defines when the search is op mised and conducted on the Opera on table (see sec on Business func on system parameters).
The process first iden fies the opera ons that meet the following condi ons:
and
The posi ons iden fied are then filtered according to Opera on table criteria.
Secondly, the extended opera ons are built and then filtered according to the remaining criteria.
Note: Moving to GIPS compliance requires the full disclosure of posi on merging. Accordingly, the Fusion Date Rule func onality has been adapted for full GIPS compliance without affec ng past transac ons. For more informa on, refer to the
WealthSuite Front Office - Por olio Management - Opera ons, Posi ons, and Fusions Reference Guide.
When working on Global Orders you can specify that other members of the same family must be returned using the Load Global Order field.
Value Descrip on
0 No Family (default)
Only returns the order matching the specified criteria.
1 Parent
If the criteria match a Child Order (parent_oper_nat_e=3) its parent order is returned as
well.
2 Children
If the criteria match a Parent Order (Block Order with parent_oper_nat_e=2) all its
children are returned as well.
The func ons can also handle a whole por olio hierarchy when the Load Hierarchy from Parent is selected at the domain’s parameters level.
OP_SEARCH_METHOD Specifies the behaviour of the business func on. If the Fusion
Date Rule domain parameter is different from <none>, the
search is op mised on the Opera on en ty, where possible.
The specified Opera on, Accoun ng, or Value date is used to
match the Domain Ini al Date and Final Date. However, the
op misa on is always performed when you choose All
Por olios and All Instruments in the Domain screen. It has
restric ons in the other cases. The permi ed values for this
parameter are:
The following image shows the full process that returns the matching extended opera ons:
Reports
The parameters of the Order List func on can be passed to a report when the report_id field is specified (<> NULL).
0: Not displayed
1: Displayed
For the instrument, there is a difference in behaviour when you define the search criteria through (1) Quick Search of the instrument dimension or (2) the Extended Opera on Search Criteria.
In the first case, the search criteria are applied to all a ributes of the extended opera on that references an instrument. This implies that it is applied to the a ribute instrument, but also to adjusted
instrument, account, account 2, and account 3 (because cash accounts are instruments) and all others that are defined within the data model.
In the second case, it is possible to define the search criteria applied to one a ribute of the extended opera on (e.g., for the a ribute instrument).
This means that you have to be aware that search criteria with a similar defini on could provide different results because they are not applied on the same set of a ributes.
Func on limits
Although the use of one indexed field is compulsory, it is strongly recommended that you use an index that is discrimina ng enough during the search to avoid performance degrada on.
If you intend to make frequent searches on non-indexed fields, you should consider indexing them.
To view the modifica ons of an opera on in the Order List formats, you must click the Refresh bu on (top right of screen) to refresh the screen.
1. From the Front Office - PM menu bar, choose Produc vity > Order List.
Valua on func on
The Valua on func on displays the details of the posi ons in one or more por olios at a given date. Each line contains informa on on the transac on(s) that opened the posi on (e.g., dates, cost price, etc.), as well as the pricing data of the
requested valua on date.
Field Descrip on
Por olio Selec on of the por olios for which the func on should be run. Available op ons
Dimension are: All Por olios, List, Por olio, Quick Search, Third Party (Customer).
Currency The currency in which the valua on will be done. By default, it is set to the currency
of the por olio, por olio list or client, but can be changed.
Ini al Date The date on which the posi ons of the por olio are evaluated and the market
prices and exchange rates are retrieved.
Note that no prices in the future are retrieved even if the entered date (Ini al Date)
is greater than the current date.
Retrieving data
When it receives the domain parameters, the system retrieves all posi ons (but not balance posi ons) that are “open” on the Domain Ini al Date. An open posi on is a posi on that has passed its Begin Date and not reached its End Date. Begin
Dates and End Dates are defined at the system por olio or por olio posi on set level to correspond either to the trade date, the accoun ng date, or the value date.
Posi on pricing
Posi on pricing involves:
Rule Descrip on
Composite The instrument is a composite and its price is the weighted sum of its component
instruments.
Theore cal Front Office - PM computes a theore cal price. This currently applies to op ons
and forwards, money market and discount instruments, swaps and FOREX swaps.
For theore cal pricing to be used, other elements must be available (e.g., a zero
coupon curve).
Reference The price of the instrument is derived from the price of a reference instrument
Instrument (defined in the instrument table), plus a margin entered in the instrument
chronological data (click Chrono bu on).
Script A user-defined script (Base Value and Mul plier) is associated with the instrument
that computes the price (only available for debt instruments).
Rule Descrip on
Parent The instrument is a component instrument and inherits the price of its parent.
price
Simple This valua on rule is a simplified form of the Script valua on rule described above.
Script The Script valua on rule ini ates a complete fund valua on to calculate the value.
This means that a complete fund valua on is also performed in the Journal and
Event Genera on func ons for this purpose (if there are debts in the por olio).
The Simple Script valua on rule simply evaluates the script as it stands but does
not start a fund valua on. This makes the Journal and Event Genera on func ons
more efficient.
The default price retrieval mechanism determines the most appropriate price in a case where several prices are available.
This sec on describes the system-wide price search algorithm. It is possible to define more sophis cated rules, which can be linked to a por olio or enforced at the domain. These rules are described in Appendix A: Valua on rules.
Data
The following elements play a role in deciding the appropriate price to use:
System parameter
Instrument data
Por olio data
Type data
Posi on data
System parameters
The following table lists the most important system parameters:
Price Selec on Order Indicates the priority between the following price
selec on criteria:
PRICE_SEL_ORDER
Business en ty to which the end user is
connected. This criterion applies only when
the mul -en ty func onality is configured (B)
reference currency of the price defined at
instrument level (C)
price type (type rank) (T)
price provider (defined at instrument level) (P)
default market of the instrument (M)
term type (defined at posi on level, it
indicates the standardised se lement period
in term markets (F)
Price Date Priority Flag Indicates if the requested date takes priority for finding a
price (1) or if the price depends on the PRICE_SEL_ORDER
PRICE_DATE_PRIORITY_FLAG se ng (0).
Price Validity Period Indicates the normal period between two occurrences of
prices in the database (for example, 5 days).
PRICE_VAL_PERIOD
From a technical point of view, this parameter indicates
the number of days of prices that need to be retrieved
ini ally from the database. If no price is found during this
period, the system looks for a price in the Extended Price
Validity Period (see below).
If all the prices found have a price type rank equal zero,
the system could look for a price in the Extended Price
Validity Period according to Price Rank Zero Use Extended
Period parameter (see below).
Extended Price Validity Period Indicates the absolute validity period of a price. If no price
is found during this period, the instrument has a price of
EXTENDED_PRICE_VAL_PERIOD 0.
Price Rank Zero Use Extended Indicates if a er the first period of price searching
Period (PRICE_VAL_PERIOD), if all the prices found have a price
type rank equal zero,
PRICE_RANK_ZERO_USE_EXTD_PER
if the second search with the extended period
(EXTENDED_PRICE_VAL_PERIOD) is launched (1) or is not
launched (0)
Instrument data
The following data is found at instrument level:
Instrument
Descrip on
parameter
Instrument
Descrip on
parameter
Provider Default informa on provider from whom the price of the instrument is
obtained.
Instrument
Descrip on
parameter
Pos. Logical Indicates which criteria are used to iden fy a posi on. The Posi on Logical Rule
Rule field has five op ons in its drop-down list:
If you do not set a rule at the por olio level (default), the Por olio Logical Id Rule
system parameter, which has the same possibili es, is used.
Type data
Each price type can be associated with a rank, which is evaluated in the price search process.
Posi on data
The following data is found at the posi on level:
Term Type Indicates the se lement period for a term transac on.
Posi on currency The currency of the price of the opening opera on.
Algorithm
With the data and parameters described above, the system will perform the search for the best price according to the following algorithm:
Dates: The prices considered or those on or before the Valua on date. If the Price Date Priority Flag system parameter is set to 1 (Yes), the system works by date, then by criteria. Alterna vely, if
this parameter is set to 0 (No), then the system works first on the criteria, then on the date.
Criteria: the Price Selection Order system parameter indicates in which order the criteria must be used. If this is set to BCTMPF, for example, it means that the most important criteria is the business
en ty to which the end user is connected, then price currency (C), price type (T), market (M), provider (P), and finally term type (F).
Business En ty: The system looks first among prices that are specific to the end user’s connected business en ty. If no price is found, the search scope includes prices defined in the master en ty.
Currency: If the por olio posi on logical ID (or the posi on logical id system parameter if Default is chosen) includes the posi on currency, the first match that is a empted is with a price in the posi on
currency. If none is found, a search is made in the instrument reference currency. If the por olio posi on logical ID does not include the posi on currency, the match is only made against the instrument
reference currency.
Type: The matching on instrument price types is done using the lowest ranking type. Note that a type with a rank equal to 0 is never used in the default valua on (these could be "fiscal prices", for
example).
Market: The matching is done between the market defined at the instrument level and the market of the price. If no market is defined in the instrument record, the system gives priority to the price
with a market = NULL. If there are mul ple, possible prices with different markets, the system takes the first one on the list without applying any priority.
Provider: The matching is done between the provider defined at the instrument level and the provider of the price. If no provider is defined in the instrument record, the system gives priority to the
price with a provider = NULL. If there are mul ple, possible prices with different providers, the system takes the first one on the list without applying any priority.
Term type: The posi on Term Type is matched with the price Term Type. If no term type is defined in the posi on, all prices that are set with a specific term type are filtered.
Example:
Take a posi on in IBM stock bought in Euros. IBM is defined at instrument level with the default market NYSE and default price provider Reuters. In the Type table, we find Close with a rank of 1, Bid with a rank of 2, Ask with a rank of 3. The
Price Selection Order system parameter is set to BCMTPF.
Date Quote Bus. Ent. Currency Market Type Provider Term type
If the end user is connected to SGP, then Front Office - PM selects price 1 that matches the end user’s connected business en ty and the currency.
If the end user is connected to another business en ty:
If the Price Date Priority Flag is set to Yes (1), then price 4 in the absence of a Euro price (currency and market criteria are sa sfied) and the type are iden cal to that of price 1 but the
provider is also matched.
If the Price Date Priority Flag is set to No (0), then Front Office - PM chooses price 5 (currency and market criteria are sa sfied) and the type rank is the lowest.
Rule Descrip on
Por olio The system will not search for prices in instr_price but only in the en ty
Specific Price portfolio_instr_price.
All subscrip ons on a Signature Por olio are priced at 1.00. All redemp ons on a Signature Por olio are done at a price available in en ty portfolio_instr_price.
Accrued valua on
The accrued valua on is an accoun ng computa on method for valuing Fixed Incomes, Conver ble Bonds, Swaps, Op on Bonds, Cash Accounts, and Money-Market Instruments.
For Swaps, the accrued interest and the issued coupons need to be computed in both legs of the swap. As the swap can be amor sed, you must take the quan ty varia on into account when compu ng the accrued interest.
It is o en assumed that the posi ons in Swaps do not change during the life me of the instrument and that the quan ty does not vary. However, if you use Front Office - PM with por olios whose swap posi ons are not constant in me, the swap
nominal is amor sed and sell opera ons are executed for each amor sa on. This results in a reduc on in the number of posi ons.
This is not the case for the standard calcula on of accrued interest. There is no requirement for such processing since the accrued interest is paid by the buyer of a bond to the seller, for example.
In the case of a money market instrument, the amendment fusion sub-nature (in the opera on) stores the accrued interest amount in the newly created posi ons.
For Mortgage-Backed Securi es (MBS), if you manage por olios that contain posi ons in this instrument entered as Fixed Income, the no onal of the MBS is amor sed during the instrument life me. As the quan ty moves, the accrued interests
cannot be computed as a simple product of quan ty, flow rate, number of days and annual basis. The change in the quan ty must be taken into considera on. This means that all the opera ons in the instrument must be loaded in order to
compute the accrued interest on the correct quan ty during the correct period.
fixed income
conver ble bonds
swap fixed legs
op on bonds
cash accounts
money market instruments
For more informa on on how gross accrued interest is computed, refer to the WealthSuite Front Office - Por olio Management - Financial Instruments Reference Guide.
If you want to compute other factors (such as the net accrued interest or the accrued interest up to the corresponding se lement date), you must create a default value for the accr_int_m field in the posi on valua on structure. Then, use the
ACCR_INTER() keyword to specify a different Final Date and/or tax rate.
The Accrued Valua on method only works in the accoun ng view for swaps and fixed income (including FRN) and in the risk view when the swap is split into two bond legs. It is computed between two dates and usually starts on 1st January of
the year for which the valua on is run. However, the begin date of the accrued valua on can vary.
Where:
= Accrued value on me t
= Accrued Interest from accrued valua on Begin Date ll date t for posi on k
is computed as follows:
Where:
q = quan ty of posi on k
rt = rate of flow t
dt = number of days between max (accrued valua on begin date, flow begin date) and flow end date computed according to accrual rule
If the quan ty of the bond leg used in the computa on is nega ve, the accrued value is also nega ve.
The accrued value of a swap is simply the sum of the paid leg and the received leg that can be assimilated to bonds. The received leg has a posi ve value and the paid leg has a nega ve value.
Examples
To process French bonds whose accrued interest is computed to three days a er the valua on date, use the following script:
To process Italian bonds whose accrued interest is computed a er tax, use the following script:
Implementa on
A format element (for more informa on about format elements, refer to the WealthSuite Front Office - Por olio Management - Format and UDS Reference Guide) with the ACCR_INTER script keyword must be added to the relevant format with
the new argument set to the ACCR_VAL keyword and the accrued valua on Begin Date. For example, the following script could be used:
Examples
Begin date End date Fixing Days Basis Rate Nominal Coupons
Interests:
15/03/2000320 100.44
15/06/2000965 744.44
Accrued interests between 15/12/2000 and 31/12/2000 = 100 000 000 * 4.966% * 16/360 = 220 711.11
accrued interests between 15/12/2000 and 31/12/2000 = 100 000 000 * 4.966% * 16/360 = 220 711.11
Value = interest 11/02/2000-15/03/2000 + accrued interest 15/03/2000-31/12/2000 = -432,555.56 – 100,000,000 * 4.58% * 285/360 = -432,555.56 – 3,625,833.33 = -4,058,388.89
= -164,605.56
We need to compute the accrued interests directly on the correct quan ty. That means that the arrays are changed if we take back the above examples:
Begin date End date Fixing Days Basis Rate Nominal Coupons
Interests:
15/03/2000320.100.44
15/06/2000965.744.44
15/09/20001.162.266.67
15/12/2000612.480.55
Accrued interests on 50000000 that was sold between 15/09/2000 and 30/11/2000 = 50,000,000 * (-4.8460%) * 76/360 = 511,522.22
Accrued interests between 15/12/2000 and 31/12/2000 = 50,000,000 * 4.966% * 16/360 = 110,355.55
Value = - interest 11/02/2000-15/03/2000 - accrued interests 15/03/2000-30/11/2000 - accrued interests 30/11/2000-31/12/2000 = -432,555.56 – 100,000,000 *4.58% * 255/360 - 50,000,000 * 4.58% * 30/360= - 432,555.56 – 3,244,166.67 –
190,833.33 = - 3,867,555.56
We need to compute the accrued interests on the 2 posi ons and aggregate them:
Aggrega on = Floa ng leg value = 3,893,783.33 + 211,313.89 = 3,682,469.44 (»3,682,469.87) => Rounding difference
Dividend accruals
Front Office - PM offers the possibility to include into financial func ons (e.g., Valua on func on) the dividend that has been exercised but not paid (as an income opera on).
Stocks and Fund Shares are the only concerned Instruments for Dividend Accruals.
The computa on of dividend accruals into financial func ons depends on the following se ngs:
Business principles
For the following explana ons, it is considered that there is only one instrument (or posi on) in one por olio that is concerned by a dividend payment.
This could be populated with many por olios and many instruments concerned by dividend payments.
Because payment date is greater than ex-date, there is a valua on gap between those two dates.
Valua on on or a er Ex-Date and prior to Payment Date
At ex-date, the instrument’s price was cut down by a value equals to unitary dividend amount but will be paid in the future. As the dividend’s payment is not effec ve, the dividend accrual could be calculated and valued.
Valua on on and a er Payment Date
Theore cally, at payment date, the dividend is effec vely paid and valued into por olio as an income. The por olio’s valua on reflects the instrument’s price and its associated dividend.
In order to have no valua on gaps coming from the difference between theore cal & effec ve payment date, the dividend accrual should be calculate un l an income opera on is input into por olio for the dedicated instrument.
Se ngs
Domain
To determine whether to value or not the Dividend Accruals in the financial func ons, the user must set the Cash Flow Management field in the Parameters tab of the Domain screen with one of the following values:
<None> - exercised, but not paid, dividends are never accrued in financial func ons, whatever the value set at the Por olio and System Parameters levels. This is also the parameter’s default value.
All - dividends are accrued from ex-Date un l Payment Date for Stocks and Fund Shares.
Default - dividend accruals treatment depends on Por olio’s a ribute Dividend Accruals.
Stocks - only stocks’ dividends are accrued.
Fund Shares - only fund shares’ dividends are accrued.
Por olio
At Por olio level, the Dividend Accruals a ribute permits to set if dividends are accrued or not for all posi ons held into the Por olio.
This a ribute is defined by the same permi ed values as the domain’s parameter:
<None>: means that exercised, but not paid, dividends are not accrued by default for this Por olio.
All: means that dividends are accrued by default for this Por olio for Stocks and Fund Shares.
Default: Dividend Accruals treatment depends on INCLUDE_DIV_ACCRUAL System Parameter.
Stocks: means that only Stocks’ dividends are accrued by default for this Por olio.
Fund Shares: means that only Fund Shares’ dividends are accrued by default for this Por olio.
System Parameters
INCLUDE_DIV_ACCRUAL
By se ng this System Parameter, the User could define the Instruments’ perimeter on which the Dividend Accrual computa on must – or not – be processed by default by the system.
0 & 2: means that exercised, but not paid, dividends are not accrued by default into financial func ons.
1: means that dividends are accrued by default into financial func ons for Stocks and Fund Shares.
3: means that only Stocks’ dividends are accrued by default into financial func ons.
4: means that only Fund Shares’ dividends are accrued by default into financial func ons.
INCOME_FLOW_CHECK_DAYS
It defines a dates’ range that permits to determine if the valua on date is included into the interval [Instrument Dividend’s ex-Date; Instrument Dividend’s ex-Date + INCOME_FLOW_CHECK_DAYS].
If the Valua on Date is part of this interval, the Dividend could be accrued, depending of the condi ons described in the Process sec on.
INCOME_PAYMENT_RANGE
It defines a dates’ range that permits to retrieve - or not – a paid income into an interval where the number of days is applied prior to and posterior to the theore cal payment date.
[Theore cal Payment Date – INCOME_PAYMENT_RANGE; Theore cal Payment Date + INCOME_PAYMENT_RANGE].
When the Cash Flow Management is ac vated in the domain, the Dividend Accruals service is ac vated:
for all Instruments if set to All.
only for stocks if set to Stocks.
for Fund Shares if set to Fund Shares.
If the Cash Flow Management is set to Default, the Dividend Accruals computa on depends on the Por olio’s a ribute Dividend Accruals.
In the case of Default set at the Cash Flow Management level in the domain, and when the Por olio’s a ribute Dividend Accruals is set with one of the following values, the accrued dividend valua on must be
done:
for all Instruments if set to All.
only for stocks if set to Stocks.
for Fund Shares if set to Fund Shares.
If both Cash Flow Management at the domain level and Dividend Accruals at the por olio level are set to Default, the Dividend Accruals computa on depends on the system parameter’s value for
INCLUDE_DIV_ACCRUAL.
If the latest rule is respected and the INCLUDE_DIV_ACCRUAL is set with one of the following values, the dividend accrual must be computed:
for all Instruments if set to 1.
for only stocks if set to 3.
for Fund Shares if set to 4.
If one of the previous condi ons enables the Dividend Accrual computa on, the financial func ons take into account dividends that have been exercised (from ex-date) but not yet paid (un l effec ve payment date).
If a posi on is eligible to dividend (open posi on at ex-date minus 1 day), and if this posi on has been closed between ex- and payment dates, the dividend could be accrued (respec ng the previous rules).
A dividend is considered as paid when, for an Instrument, there is an Income Opera on input into por olio that represents the dividend amount.
A dividend is accrued as a cash posi on, with currency equals to the one set into income event descrip on.
Example
For a posi on of 500 EPR_INSTR_DIV, with the following dividend descrip on:
Income Event:
ex-Date: 10/06/2005
Dividend: 5 CHF.
System Parameters:
INCOME_FLOW_CHECK_DAYS = 180
INCOME_PAYMENT_RANGE = 5
The accrued dividend should be generated from 10/06/2005 un l 10/08/2005 for an amount of 2,500 CHF.
Before ex-date, there is no dividend accrual to compute and the cash valua on on 09/06/2005 does not calculate any dividend accrual.
On accoun ng date as of 05/08/2005, the effec ve payment is made via an Income Opera on in the amount of 2,000 CHF. The accrued dividend is replaced by the Income Opera on into valua on.
Example
All subscrip ons on a Signature Por olio are at a price of 1 EUR. The posi ons held against the instrument is 20000. The posi on is valued at 20000 * 1 = 20000 EUR.
When the valua on amount is received by the external agency, the record is inserted into the en ty portfolio_instr_price as below. The price in this en ty is 3 EUR:
Instrument: Signature Por olio
Por olio: TCIB_PTF11
Quote Date: 15/112018
Quote: 3
Value: 60000
Quan ty: 20000
Price Calcula on Rule: Por olio Specific Price
Price: 3
Currency: EUR
The posi on of 20000 is valued at a price of 3 EUR. This price is chosen from the en ty portfolio_instr_price, not instr_price.
All redemp ons on a Signature Por olio are valued at a price available in en ty portfolio_instr_price.
Exchange rates
Exchange rates are handled in two steps. First, you must retrieve the exchange rate according to system-defined rules, as you would with instrument prices. Secondly, you have to handle cross rates, with the further complexity of Euro cross rates.
This sec on only describes the standard mechanism. You can define more complex rules by defining valua on rules, see Appendix A: Valua on rules.
Standing data
Exchange rates are stored in the exchange rate table. The following a ributes in this table are important:
Date
Currency
Underlying currency
Type (e.g. bid, ask, close)
Market (e.g. NYSE, LIFFE)
Provider (e.g. Telekurs, Reuters)
Note: You can enter several exchange rates per day and per currency pair.
The following elements play a role in deciding the appropriate price to use:
System parameters
Currency data
Type data
System parameters
To find the system parameters in the GUI menu, go to Administra on > Security > Parameter, and select Valua on/Risk in the Nature field:
Exchange Rate Selec on Order Sets the priority between the following selec on
criteria:
EXCHANGE_RATE_SEL_ORDER
business en ty to which the end user is
connected. This criterion applies only
when the mul -en ty func onality is
configured. (B)
types of prices (type rank) (T)
price provider (defined at instrument
level) (P)
instrument default market (M)
Exchange Rate Date Priority Flag Indicates the priority between the exchange rate for
the requested date and an exchange rate that
EXCHANGE_RATE_DATE_PRIORITY_FLAG depends on EXCHANGE_RATE_SEL_ORDER.
Exchange Rate Validity Period Indicates the absolute validity period of a price.
EXCHANGE_RATE_VAL_PERIOD
Currency data
Type data
Rank At Type level, you can rank the various types in order of importance.
Example:
Say we want an exchange rate between USD and CHF. USD is defined at the currency level with the default market New York and default price provider Reuters. In the Type table, we find Close with a rank of 1, Bid with a rank of 2 and Ask with a
rank of 3. The Exchange Rate Selection Order system parameter is set to BTMP.
If the end user is connected to SGP, then Front Office - PM selects exchange rate 1.
If the end user is connected to another business en ty:
If the Exchange Rate Priority Flag is set to Yes, then the Valida on func on of Front Office - PM chooses exchange rate 4 in the absence of a guilder price. Exchange rate 3 meets the
market criterion, and the type is iden cal to that of exchange rate 1 but the provider is also matched.
If the Exchange Rate Priority Flag is set to No, then the Valida on func on of Front Office - PM chooses exchange rate 5 as it meets the market criterion and the type rank is the lowest.
Cross rates
This process depends on:
If the EXCH_UNDERL_CURRENCY system parameter is set, the currency it is set to is the default underlying currency that is used for compu ng a cross exchange rate between two currencies. By default, this
parameter is set to the same value (currency) as the System Currency.
By default, the exchange rate between two currencies, neither of which is the Exchange Underlying Currency, is computed as the ra o between the two exchange rates against the underlying currency.
If one of the two currencies is the Exchange Underlying Currency, no cross rate is computed and the value stored in the database is used directly, or inversely, depending on the case.
If the two currencies are the same, the exchange rate is automa cally set to 1.
If the Exchange Underlying Currency is not provided, the System Currency system parameter is taken as the default underlying currency that is used for compu ng cross exchange rates.
Note that the EXCH_UNDERL_CURRENCY and SYS_CURRENCY system parameters can be different. This is useful for dealing with the Euro, for example, where the Euro is the Exchange Underlying Currency
and an ‘in’ currency is the System Currency, at least during the transi on period from 01/01/1999 to 01/01/2002.
If the Exchange Rate Date Priority Flag is set to 1, the priority is to use the exchange rate for the date. If there is no other exchange rate for that date, the new exchange rate is deemed the default one.
From 01/01/99, the European currencies that are ‘in’ the Euro system are no longer quoted. Their exchange rates with the Euro were fixed on that date.
These fixed exchange rates are officially published in direct quota on mode (to 6 significant figures). In compu ng, the fixed rates must be used as published and not their inverse (to avoid rounding errors).
When applying a cross-exchange rate between 2 "in" currencies to an amount, you must use the triangula on method. This means that you go through an amount expressed in euros instead of applying the
implicit cross-exchange rate, computed as the ra o of the two fixed exchange rates.
The triangula on method as defined by the European authori es means that you must:
Convert the amount in the first ‘in’ currency into an amount in euros (rounded minimum to three decimals as per the values of the next two parameters) using the fixed exchange rate,
Convert the Euro amount obtained as above into the second ‘in’ currency using its fixed exchange rate.
From 01/01/99, the exchange rates between the ‘in’ currencies and ‘out’ currencies are no longer quoted. You can s ll calculate these exchange rates, however, as the ra o of the ‘out currency’/Euro and ‘in
currency’/Euro exchange rates.
This process of conver ng a European currency into euros can be repeated over me for new joiners. The conversion of the Bri sh Pound, for example, could take place at a later stage.
Front Office - PM has a number of parameters for implemen ng the previous Euro rules.
Euro Conversion Date (Euro_conv_d): this a ribute in the Currency table indicates the date of entry of a currency into the Euro. From that date, the exchange rate of this currency is considered as fixed
against the Euro. So the Exchange Rate table will no longer be used to compute a ‘cross rate’ against any currency. Note the following two points:
If that date is set to NULL (which is the default), it implies that the currency is considered as an ‘out’ currency. The content of the ‘Exchange Rate’ table is used according to the rules described into the
previous sec on.
That date is not necessarily equal to the ‘01/01/1999’. This allows to deal with the case of currencies which will be ‘in’ the Euro at a later stage (e.g. case of the GBP). In that case, the currency will be
considered as an ‘out’ currency ll that date.
Euro Exchange Rate (Euro_exch_rate): this informa on in the Currency table allows to set the fixed exchange rate between an "in" currency and the Euro. Two points must be men oned:
If the Euro Conversion Date of the currency is different from NULL, this date has to be provided, and it has to be posterior to the Euro Conversion Date defined at the system level.
This fixed exchange rate as to be set in the direct way (i.e. the amount of the ‘in’ currency required for one unit of Euro).
Euro Currency (EURO_CURRENCY): This system parameter specifies which currency is the Euro. By default, this parameter is set to EUR, the ISO code of the Euro.
Euro Conversion Date (EURO_EXCH_CONV_DATE): this system parameter specifies the date of the introduc on of the Euro (normally, ‘01/01/1999’).
Three points must be noted about this parameter:
If the date is set to NULL, it means that none of the par cular processes described in this sec on will occur. The methods used to retrieve the exchange rates are then based only on the parameters
specified in the previous sec on.
That date may also be set before or a er 01/01/1999. This can be useful for tes ng purposes.
If the date is later than the system date of the database server, this is the same as the date being equal to NULL. All the Euro processing described in this sec on takes place only from the moment the
Euro Conversion Date is prior or equal to the system date.
The Old Exchange Underlying Currency (OLD_EXCH_UNDERL_CURRENCY): This system parameter, if provided, indicates the ‘old’ Exchange Underlying Currency before the Euro Conversion Date. This
informa on is useful for systems which are in produc on before this date and for which the exchange rates have been introduced against the System Currency.
The Old Exchange Inverse Flag (OLD_EXCH_INVERSE_FLAG): This system parameter, if provided, indicates the ‘old’ Exchange Inverse Flag before the Euro Conversion Date. This informa on is useful for
systems which are in produc on before this date and for which the exchange rates have been introduced the "indirect" way against the System Currency. The last two parameters change the ‘Exchange
Underlying Currency’ to Euro and the ‘Exchange Inverse Flag’ to ‘1’, while keeping the exchange rates stored into the system before that date.
The Euro Cross Currency Flag (EURO_CROSS_CURRENCY_FLAG): this system parameter indicates if, when conver ng amounts from one 'in' currency into another 'in' currency either the implicit cross rate
method (0) or the triangula on method (1) is used.
The Euro Cross Rounding Rule (EURO_CROSS_ROUND_RULE) This system parameter indicates, when the triangula on method has to be used to convert from one 'in' currency into another 'in' currency, what
rounding rule has to be used. The following values are valid: '0' = ‘Default’ (= 'Nearest'), '1' = 'Nearest’, '2' = 'Down', ‘3’ = ‘Up’.
The Euro Cross Rounding Unit (EURO_CROSS_ROUND_UNIT): This system parameter indicates, when the triangula on method has to be used to convert from one 'in' currency into another 'in' currency, what
rounding unit has to be used. The permi ed values are the following:
'11' = 0.001 (rounding to the third decimal)
'12' = 0.00001 (rounding to the fi h decimal)
'13' = 0.0001 (rounding to the fourth decimal)
Taking into account the above parameters, in par cular, the standard rules for exchange rate retrieval, the rules for exchange rate retrieval from the date of introduc on of the Euro (that is, the Euro Conversion Date is different from NULL and
prior or equal to the system date) also depend on if the Euro is the Exchange Underlying Currency or not.
Case 1:
Euro is the Exchange Underlying Currency:
With the Euro Conversion Date at system level and "in" currencies level set to 01/01/99, then:
For dates a er 01/01/99, the exchange rate of an "out" currency against the Euro is the most recent exchange rate of the ‘out’ currency against the Euro, as stored in the Exchange Rate table.
For dates a er 01/01/99, the exchange rate of an "in" currency against the Euro is the fixed rate of the ‘in’ currency and the Euro, as stored in the Currency table.
For dates a er 01/01/99, the exchange rate of an "out" currency against another ‘out’ currency is the ra o of the most recent exchange rates of the two ‘out’ currencies against the Euro, as stored in the
Exchange Rate table.
For dates a er 01/01/99, the exchange rate of an "out" currency against an "in" currency is the ra o of the most recent exchange rate of the ‘out’ currency against the Euro, as stored in the Exchange Rate table,
and the fixed exchange rate of the ‘in’ currency against the Euro, as stored in the Currency table.
For dates a er 01/01/99, the conversion of an "in" currency against another ‘in’ currency requires the fixed rates stored in the Currency table, whether the triangula on method (compulsory for "in" countries)
or implicit cross calcula on method is used.
For dates prior to 01/01/99, the exchange rate of an "out" currency against ‘the Euro’ is the exchange rate against the Euro at the date of the introduc on of the Euro stored in the Exchange Rate table.
For dates prior to 01/01/99, the exchange rate of an "in" currency against the Euro is the fixed rate as stored in the Currency table.
For dates prior to 01/01/99, the exchange rate between two currencies other than the Euro is the implicit cross exchange rate calculated from the historical exchange rates against the ‘Old Exchange Underlying
Currency’ as stored in the Exchange Rate table.
Case 2:
An ‘out’ currency is the Exchange Underlying currency:
Considering ‘01/01/1999’ as the Euro Conversion Date and assuming that the same ‘out’ currency (e.g., CHF) remains the Exchange Underlying Currency before and a er the introduc on of the Euro, then:
For dates a er 01/01/99, the exchange rate of an "out" currency against ‘the Euro’ is the ra o of the most recent exchange rate of both the ‘out’ currency and the Euro against CHF, as stored in the Exchange
Rate table.
For dates a er 01/01/99, the exchange rate of an "in" currency against the Euro is the fixed exchange rate of the ‘in’ currency against the Euro stored in the Currency table.
For dates a er 01/01/99, the exchange rate of an "out" currency against another ‘out’ currency is the ra o of the most recent exchange rates against CHF, as stored in the Exchange Rate table.
For dates a er 01/01/99, the exchange rate of an "out" currency against an "in" currency is the ra o of the most recent exchange rates of the ‘out’ currency and the Euro against CHF as stored in the Exchange
Rate table, divided by the fixed exchange rate of the ‘in’ currency against the Euro, as stored in the Currency table.
For dates a er 01/01/99, the exchange rate of an ‘in’ currency against another ‘in’ currency is the ra o of the fixed rates against the Euro in the Currency table. Depending on whether the triangula on is chosen
or not, the conversion of an amount from the first ‘in’ currency to the second ‘in’ currency is performed by passing through a Euro amount (triangula on required), or by applying the implicit cross rate resul ng
from the ra o of the two fixed rates (triangula on not required).
The following points that apply to both cases are worth no ng:
A currency for which an exchange rate is retrieved before it becomes an ‘in’ currency (e.g., case of the GBP between the 01/01/1999 and the 01/01/2002) is treated as an ‘out’ currency.
You may have to retrieve exchange rates against the Euro before the date of the introduc on of the Euro in some cases (historic Valua on against the Euro, Modify Currency into Euro, Performance
measurement in Euro for a period beginning before the Euro Conversion Date).
Some instruments, however, do not always follow this rule. This is the case of Futures and Forward contracts, as well as Term posi ons. In these cases, these instruments or posi ons are valued according to the Futures accoun ng flag
(FUT_ACC_FLAG), the Forward accoun ng flag (FWD_ACC_FLAG) and Term accoun ng flag (TERM_ACC_FLAG) system parameters:
There are two posi ons, the instrument posi on (valued as the price mes the quan ty) and the cash posi on.
If the ***_ACC_FLAG is set to 1: the cash posi on is not shown and the instrument posi on is valued as the difference between the current price and the cost price, with no offse ng cash.
Fund spli ng
Fund spli ng is the process by which a mutual fund share is split into its components. This process gives a more accurate view of the exposures of the share.
Details of how these components can be set up are found in the WealthSuite Front Office - Por olio Management - Financial Instruments Reference Guide.
When the fund share is split, new extended posi ons are created. These posi ons show the exposure in the component instruments. To display the components or the original fund share posi on, you create a filter for the Fund-split field in the
Extended Posi on structure. The filter values are:
0. Not a fund
To display the accoun ng and risk posi ons, you can create filters on the Accoun ng flag (indica ng whether the posi on is an accoun ng posi on) and on the Risk Nature (indica ng whether the posi on is a risk posi on) in the Extended
Posi ons structure. Some posi ons can be both accoun ng and risk posi ons (e.g., equity).
None
Equity
Interest
Commodity
Currency
Hybrid
Hybrid instrument
If the instrument is a hybrid, the process a empts to decompose this instrument into component parts. The new quan es are weighted according to data found in the instrument composi on table. The sum of the values of the component
instruments is equal to the value of the parent. The quan ty specified in the instrument composi on table can represent either the quan ty of the component instrument or a percentage of the value of the composite in the component. The
decomposi on con nues un l no more composite hybrid instruments are found.
Deriva ves
The ini al instruments, or those that have been found in the hybrid instrument decomposi on described above, are tested to see if they are deriva ves. Risk posi ons for each deriva ve contract are described in the WealthSuite Front Office -
Por olio Management - Financial Instruments Reference Guide. The basic process is to show the exposure to underlying risk factors. If the underlying instrument is also a hybrid instrument, it too is subject to the same process.
An example of this mechanism is an op on bond (hybrid risk) composed of an ex-bond (interest rate risk) and an op on (deriva ve) in a basket (hybrid risk) of stocks (equity risk). In the accoun ng view, the posi on in the op on bond is
displayed; in the risk view, the exposure to the ex-bond and the individual stocks that make up the basket are displayed.
To see examples on the treatment of the different instrument natures, refer to the WealthSuite Front Office - Por olio Management - Financial Instruments Reference Guide.
Example 1
To display the quan ty of the original accoun ng posi on when the exposure in the underlying instrument is displayed, define a format element with the defini on Risk_ext_pos_id.quan ty_n.
Example 2
Domain se ngs
To ac vate this behaviour, the domain needs the following specific se ngs:
Reference Date is used to define the specific date. Cost prices and exchange rates are retrieved at this date.
This date must be before the Ini al Date.
P&L Method is used to ac ve this behaviour.
P&L Method is set to Market Value Profit and Loss method.
Note that posi on valua on rule cannot be loaded when “Restart profit and loss at flexible date” is ac vated.
Cost price and cost exchange rates are replaced by their value at Reference Date.
Cost amounts are calculated with the new cost price and exchange rate.
Fees and taxes are removed from the posi on.
All opera ons between the Reference Date and the Ini al Date are taken into account by a logical fusion to generate new posi ons based on updated posi ons.
Note that posi ons with instrument nature Forward or Futures are excluded from this func onality; their cost prices and exchange rates are never updated.
Posi on Reference
Posi on Reference
Unrealised profit and loss calculated by script key word UNREALISED_PL (calcula on with PORT_PL_COMP_RULE = 2):
Reference
Posi on Reference
Posi on Reference
Impact on unrealised profit and loss calculated by script key word UNREALISED_PL (calcula on with PORT_PL_COMP_RULE = 2):
Reference
Domain
On the Domain screen (by choosing Analysis > Valua on), the following fields define the valua on process:
Loading Data
Parameters
Loading Data
Field Descrip on
Por olio All Por olios/List/Por olio/Third Party: enter (or browse for) the por olios you
Dimension want to include in the valua on.
Instrument All Instruments/Instrument/List: defines if the posi ons retrieved are restricted to
Dimension a single instrument or a list of instruments.
Currency Enter (or browse for) the currency in which you want the valua on to be made.
Minimum Select the minimum and maximum statuses of the retrieved posi ons. Lets you
Status evaluate a por olio with or without orders, for example.
Maximum
Status
Loading To load a por olio Posi on Set, select PPS or Default or Load PPS from the field's
Rule drop-down list. When you select one of these op ons, the Consolida on P field is
ac vated. Click Browse bu on beside the Consolida on P field to select a
consolida on por olio (PPS).
Parameters
Field Descrip on
Consolida on Select Merged if you want to consolidate several por olios, which are then
considered as one por olio. Select Detailed to keep the posi ons separated. If
the Por olio Dimension is based on a third party used for household (for
informa on about household, refer to the WealthSuite Front Office - Por olio
Management - User Guide, select Merged Hierarchy if you want to consolidate
por olios of each por olio hierarchy into their corresponding head por olio. (*)
Field Descrip on
Fund Spli ng Select Spli ng to break down fund shares into component parts. Select None to
view consolidated fund shares. (*)
Accoun ng Select the checkbox if you require a risk valua on. Leave it clear for an
View accoun ng valua on. Note that access to a Risk View is enabled in the Func on
Security Profile. (*)
Risk View
Cash Flow It permits – when set - to include dividend amounts that have been exercised
Management from Stocks and / or Fund Shares but not paid (as Income Opera on).
Exclude / Select the checkbox to retrieve (Include) posi ons with a quan ty of 0.
Include Zero
Posi ons
Keep / Merge Select the checkbox if you want to merge posi ons that have different statuses.
Status When you choose the Merge Status op on, the posi ons are merged according
to the MERGE_STATUS_RULE system parameter se ng.
Keep / Close Select the checkbox to merge nega ve and posi ve posi ons. Note that if you
Posi ons merge the posi ons, they realise a profit and loss that will no longer appear in
the unrealised profit and loss.
Load Permits to value the por olio’s hierarchy. To do so, the user must set this
Hierarchy parameter at From Parent. In this context, the parent por olio and its child
components will be valued.
Posi on The Posi on Logical Id rule indicates which business fields iden fy a posi on
Logical Id (Basic, PosCurr, Deposit, PosCurr/Deposit).
Fusion Rule The Fusion Rule specifies which logical fusion is to be performed.
Loading Rule Determines if pos_val records are loaded or not (Nothing to load). To load
pos_val records, choose from Load at Ini al Date, Load at Final Date, and Load at
Ini al Date and Final Date.
(*) Note that for a logical fusion at the Front Office - PM level, a “Risk” posi on (derived from a fund spli ng or a risk view) cannot merge with an “Accoun ng” posi on.
Applica on parameters
The following applica on parameters directly affect the valua on process.
Parameter Descrip on
ACCR_INTEREST_VAL_PERIOD
Accrued Interest Validity Period Flag
EXCH_RATE_DATE_PRIORITY_FLAG
Exchange Rate Date Priority Flag
EXCH_RATE_SEL_ORDER
Exchange Rate Selec on Order
EXCH_RATE_VAL_PERIOD
Exchange Rate Validity Period
EXECUTION_STATUS
Execu on Status
Parameter Descrip on
FULL_COUPON_FLAG
Full Coupon Flag
FUND_SPLIT_CALC_RULE
Fund Spli ng Calcula on Rule
FUT_ACC_FLAGFWD_ACC_FLAGTERM_ACC_FLAG
Future Accoun ng Flag
INCOME_FLOW_CHECK_DAYS
Income Flow Check Days
INCOME_PAYMENT_RANGE
Income Payment Range
MISSING_EXCH_RATE
Missing Exchange Rate
POS_LOGICAL_ID_RULE
Posi on Logical Iden fier Rule
PRICE_DATE_PRIORITY_FLAG
Price Date Priority Flag
PRICE_SEL_ORDER
Price Selec on Order
PRICE_VAL_PERIOD
Price Validity Period
RISK_OPT_COST_RULE
Risk Op on Cost Rule
RISK_OPT_VAL_RULE
Risk Op on Valua on Rule
Structures
The valua on process generates the extended posi on and posi on valua on structures. The per nent fields in these structures are described below. For a complete descrip on of these structures, refer to the WealthSuite Front Office - Por olio
Management - Data Model Reference Guide.
Field Descrip on
Details from Opening opera on nature, Execu on opera on code, Reversal nature, Status,
the opening Main flag, etc.
opera ons
Field Descrip on
Cost data Quan ty, All cost exchange rates, Price, Quote, All net and gross cost amounts
(Reference, instrument and posi on currency), All fees and tax counters.
Field Descrip on
Amounts Net, accrued interest and market value amounts in posi on, reference and
instrument currencies.
Remarks
The Por olio table includes the following non-physical fields:
Field Value
Flows inherent in the opera ons performed in a por olio or several por olios between two given dates
Posi ons that are open at the Ini al Date and Final Date.
Each line in the Posi ons History screen contains informa on on the transac on (e.g., dates, cost prices, etc.) and, for posi ons that are valued, the pricing data available at the Ini al Date and Final Date.
The Posi ons History process retrieves the posi ons in accordance with parameters entered into the domain. The most important parameters are the por olio Dimension and the Dates (from_d and ll_d). These and other fields are described
later. With this informa on, the process retrieves the flows between the dates and creates the extended posi on structure.
The second part of the process involves the valua on of the posi on at the Ini al Date and Final Date. The mechanism is the same as for a Valua on. The process creates an extension to the extended posi on structure called posi on valua on.
For more details on the valua on of posi ons, see sec on Valua on func on.
begin_d <= from_d and end_d > from_d (begin_d <= ll_d and end_d > ll_d for Final stock).
The flows that occur between the two dates are also loaded, that is posi ons with:
Opera ons with a status of Cancelled never generate Ini al Stock or Final Stock. They are only flows that are closed immediately (begin_d = end_d).
Posi on valua on
In the Posi ons History func on, a valua on is performed on the Ini al stock and Final stock posi ons. The general mechanism to evaluate the price and the exchange rate of a posi on is fully described in sec on Valua on func on.
Load Flows for posi ons and Load opens posi ons (with Load Flows for posi ons and
balance posi ons between the status > cancelled) at Ini al balance posi ons between
Ini al Date and the Final Date. Date; this is similar to the the Ini al Date and Final
Ini al Stock from Opera on Date.
With Incl. Posi on, load also History.
open posi ons (with status > Load also opens posi ons
cancelled) at Ini al Date and No balance posi ons are (with status > cancelled) at
Final Date, called Ini al Stock, loaded. Ini al Date and Final Date,
Final Stock. called Ini al Stock and Final
No Flows are loaded. Stock.
You can use the UNREALISED_PL script keyword in the Posi ons History format (on the posi on valua on extension just like in the Valua on func on) to calculate the unrealised profit and loss. However, you cannot use the MEAN_CAP and
RETURN script keywords in the Posi ons History format because they use the port_synthe c structure.
The limita ons of the Posi ons History func on compared to the Return func on are described in the following table:
Only one period of return defined between The period of return defined by the Ini al Date
the Ini al Date and Final Date and Final Date is divided into sub-periods based
on the Return Frequency Unit (defined in the
por olio)
The counters that calculate the difference in The difference in the por olio value between the
the por olio value between the Ini al Date Ini al Date and Final Date is stored in the
and Final Date are implemented in script port_synthe c table counters
language
The calcula on of the mean capital and the The MEAN_CAP and RETURN script keywords
return have to be done by user’s script calculate different mean capital and return data
formula
5. From the Front Office - PM menu bar, choose Analysis > Posi ons History.
Field Descrip on
Por olio Indicates which por olios are passed to the Posi ons History func on.
Dimension
Instrument Determines if the posi ons retrieved are related to a single instrument or a list of
Dimension instruments.
Currency Indicates the currency in which the Posi ons History should be made (this is the
reference currency).
Ini al Date The date from which the Posi ons History List starts. Set by default to current date
minus a year.
Final Date The date un l which flows are retrieved. Set by default to the current date.
Field Descrip on
Minimum Define the range of statuses the retrieved posi ons' statuses must fall within.
Status
Maximum
Status
Loading To load a por olio Posi on Set, select PPS or Default or Load PPS from the field's
Rule drop-down list. When you select one of these op ons, the Consolida on P field is
ac vated. Click Browse bu on beside the Consolida on P field to select a
consolida on por olio (PPS).
The relevant fields in the extended posi on and posi on valua on structures are described in sec on Structures. For informa on about the applica on parameters used in the valua on process, refer to sec on
Valua on func on.
Structures
As men oned previously, the Posi ons History func on generates the extended posi on and posi on valua on structures. The relevant fields in these structures are described below. For a complete descrip on of these structures, refer to the
WealthSuite Front Office - Por olio Management - Data Model Reference Guide.
Field Descrip on
Descriptors Por olio, Instrument, Deposit, Posi on currency, Instrument currency, Reference
of the currency, etc.
posi on
Details from Opening opera on nature, Execu on opera on code, Reversal nature, Status,
the opening Main flag, etc.
opera ons
Cost data Quan ty, All cost exchange rates, Price, Quote, All net and gross cost amounts
(Reference, instrument and posi on currency), All fees and tax counters.
Nature Indicates whether the extended posi on is an ini al stock, a final stock, or a flow.
As men oned above, ini al (final) stocks are posi ons or balance posi ons that
are open at the Ini al Date. The flows are the opera ons between the Ini al Date
and Final Date.
A ribute Descrip on
Amounts net, accrued interest and market value amounts in posi on, reference and
instrument currencies
The process retrieves all the posi ons requested and generates flows for each instrument held. It uses the default values set up at the opera on level to generate extended posi ons. Cash is assigned to accounts as specified in the payment
instruc ons of the por olio. It also takes into account the cash derived from Standing Instruc ons. For more informa on about Standing Instruc ons, see sec on Event Genera on func on.
If these two dates are equal, the posi ons are retrieved at one date (final stocks)
If the Ini al Date is earlier than the Reference Date, the process retrieves a series of "ini al stocks" (i.e., the posi ons at the Ini al Date), a series of "final stocks" (i.e., the posi ons at the Reference Date), and
all intervening opera ons.
Fees and/or taxes applied are those that should have occurred.
All amounts can be seen net and gross.
Cash is paid into the account designated by the payment instruc ons associated to the por olio.
The value date is computed using the calendar key words.
Note that before genera ng a flow in Journal, the process checks whether this flow has not already been generated as an opera on. This comparison uses the Event check days system parameter. The basic mechanism is to check during the
number of days defined in this period, if the cash flow has not already been passed as an opera on. The checking is done on the Event code, Event number, instrument, opera on type.
Discount Factors are generated using the Yield-Curves present in the IRS.
Typically, IRS consists of two legs (Receiving and Paid) and each of the leg uses the yield-curve specified at the IRS level to compute/display the discount factors. Note that if the yield-curves are not men oned in the IRS, the ‘default yield-curve’ of
the Reference Currency will be used to compute/display the discount factors in the Journal func on.
Note:
Front Office - PM generates the ‘discount factor’ for single-currency IRS (i.e., IRS with same currency for Receiving and Paid Legs).
Received-Leg-Script-Example:
(instr_flow.received_price_n*(quan ty_n/instr_id.contract_size_n))
Paid-Leg-Script-Example:
(instr_flow.paid_price_n * (quan ty_n/instr_id.contract_size_n) )
Domain
In the Domain screen, the following fields have an influence on the journal process:
Field Descrip on
Por olio/Por olio Indicates on which por olios the journal should be made.
list/Customer
Ini al Date The date from which the journal starts. As men oned above, if the
Ini al Date is before the Reference Date, the journal will display
opera ons that have occurred between the Ini al Date and the
Reference Date and projected flows between the Reference Date and
the Final Date. If the Ini al Date is equal to the Reference Date, the
journal only shows projected flows between the Reference Date and
the Final Date.
Final Date The date un l which cash flow projec on of the journal should go.
Reference Date The date at which cash flow projec on of the journal should start.
Note that flows are generated from "Reference Date +1".
Minimum Status Indicates what status the retrieved posi ons must have. Allows the
projec on on a por olio with or without orders for example.
Maximum Status
Include/exclude zero Indicates that posi ons with a quan ty of 0 should be retrieved.
posi ons
Keep/merge status Indicates whether posi ons that differ by their status should be
merged. When you choose the Merge Status op on, the posi ons are
merged according to the MERGE_STATUS_RULE system parameter
se ng.
Keep/close posi ons Indicates that posi ons with quan es of opposite sign do not merge.
Posi on logical Indicates which business fields iden fy a posi on (currency, deposit).
iden fier rule
On the Flow tab of the Domain screen, the items are selected (shown by a ck or check mark) by default. Click the check mark to the le of the item to clear the item and exclude it from processing.
Fusion Rule: The Fusion Rule specifies which logical fusion is to be performed
Event Date Rule: indicates if op onal exchanges and American op ons are to be generated at the term date or the earliest possible date. Select Term Date or Earliest Date from the field's drop-down list. Term
Date is the final contract date. Earliest Date means the first possible date so if, for example, an event genera on starts a er the Begin Date of an American op on, the earliest date is the Ini al Date in the Event
Genera on domain. However, in the case of a special op on whose Begin Date occurs a er the Ini al Date of the Event Genera on domain, the earliest date is the Begin Date (begin_d) of the op on.
Flow Nature: selects the event natures to process:
All
Income
Issue
(*) It is possible to hide this flow nature (see sec on Event Genera on func on).
Applica on parameters
The following applica on parameters have a direct influence on the journal process.
Posi on logical iden fier rule: indicates what business fields iden fy a posi on (currency, deposit).
Journal flow status: indicates the status of the opera ons generated.
Field Descrip on
Descriptors Por olio, Instrument, Deposit, Posi on currency, Instrument currency, Reference
of the currency, etc.
posi on
Details from Opening opera on nature, Execu on opera on code, Reversal nature, Status,
the opening Main flag, etc.
opera ons
Cost data Quan ty, All cost exchange rates, Price, Quote, All net and gross cost amounts
(Reference, instrument and posi on currency), All fees and tax counters.
Nature Indicates whether the extended posi on is an ini al stock, a final stock or a flow.
As men oned above, ini al stocks are generated at the Ini al Date when the
Ini al Date is set before the Reference Date. Final stocks are generated on the
Reference Date. Flows may either be the opera ons between the Ini al Date and
Reference Date (in which case their forecast flag is set to false) or actual
projected flows (in which case their forecast flag is set to true).
To define (in the opera on) specific default values for the Journal and Event Genera on func ons, test against instr_flow_id <> NULL. As instr_flow_id references the flow behind the opera on, the test is posi ve if the opera on is due to an
event and nega ve for normal opera ons.
To define default values that depend on the posi on behind the opera on, you can use init_ext_pos_id.
Example:
If the opera on inherits the sub_pos_nat_e field from the original posi on in the case of an Adjustment P&L following the Event Genera on, implement the following default value in the adjust_opera on:
1. From the main Front Office - PM menu bar, choose Opera on > Event Genera on.
Parameter Descrip on
Parameter Descrip on
Por olio Por olio / Por olio List / All Por olios
Dimension
Indicates the por olio(s) passed to the func on. If you choose Por olio or Por olio
List, you can enter the name directly or browse for a list or a par cular por olio.
Note, however, that for logical reasons you cannot choose All Por olios with All
Instruments and vice-versa. The All Por olios or All Instruments op on is greyed in
this case and the Browse bu on disabled.
Posi on Indicates the star ng date for the event genera on.
Date
Final Date Indicates the end date for the event genera on.
Opera on Status of the generated orders or opera ons. This will be the status given to orders
Status or opera ons created by this func on.
Event P&L Indicates if the profit and losses generated are applied to the underlying
Rule instrument at the origin of the event or not.
Event Date Indicates if op onal exchanges and American op ons are to be generated at the
Rule term date or the earliest possible date. Select Term Date or Earliest Date from the
field's drop-down list. Term Date is the final contract date. Earliest Date means the
first possible date so if, for example, an event genera on starts a er the Begin Date
of an American op on, the earliest date is the Ini al Date in the Event Genera on
domain. However, in the case of a special op on with a Begin Date that occurs
a er the Ini al Date of the Event Genera on domain, the earliest date is the Begin
Date (begin_d) of the op on.
Parameter Descrip on
Flow Sub- Refines the previous selec on (Flow Nature). The proposed Sub-Natures
Natures correspond to the selected Event Nature. For example, the corresponding Flow
Sub-Natures for Flow Nature “Income” are:
Plan Indicates the plan to use in conjunc on with the Genera on Nature "Create
Defini on Session & Check". This allows the launch of an Event Genera on func on in
simula on mode with a working plan defini on set as parameter. The goal is to
simulate the genera on of the first order cycle of a specific Mutual Fund
Systema c Plan, and only for this plan.
The results of the event genera on simula on mode (i.e., a set of buy orders) are
included in a session where a PTCC is run with poten al cases raised. For more
informa on about plan simula on, see sec on Plan check.
Note that the Plan Defini on field is not displayed in the default domain GUI
screen. The reason is that it is currently only used in the Mutual Fund Systema c
Plan module of WealthSuite Channels.
3. Items are selected (shown by a ck or check mark) by default. Click the check mark to the le of the item to clear the item and exclude it from processing.
The complete correla on of Flow natures and Flow subnatures is shown in the following table:
All All
Paid Dividend
Projected Dividend
Par al Issue
Call Redemp on
Put Redemp on
Amor sa on
Capital Reduc on
Capital To Receive
Capital to Pay
Capital Return
Debt Amor sa on
Exchange Conversion/Exchange
Split
Reverse Split
Other Exchange
The Event Genera on func on is called from a Domain screen where the Genera on Nature field indicates whether confirma on of events is required.
4. The results are shown in the Event Genera on screen where you can accept individual events or all the events, or cancel the en re opera on without crea ng the events.
The following points must be taken into account when you use the Event Genera on func on:
The events created using this func on are derived from the Income Event and Exchange Event logical tables accessible at Instrument level. (To view these logical tables, choose Administra on > Main En es >
Instrument and select an instrument to view or modify. The bu ons Income Event and Exchange Event appear at the bo om of the default screen.)
For an event to be generated by Event Genera on, the Validity Date of the event must be less than or equal to the current date. Also, the Begin Date of the event must fall between the Posi on Date and Final
Date specified in the Domain - Event Genera on screen.
More informa on on the detailed processing of different event types and how they relate to different instrument types is given in the WealthSuite Front Office - Por olio Management - Financial Instruments Reference Guide.
System parameters
The following system parameters determine if the generated opera ons must be confirmed before they are saved:
Parameter Opera on
EVT_GEN_DEBT_CONF Debts
EVT_GEN_EXCH_CONF Exchanges
EVT_GEN_INC_CONF Incomes
EVT_GEN_ISS_CONF Issues
EVT_GEN_TERM_CONF Terms
As the parameters are flags, the two possible values for each are as follows:
A seventh parameter, EVT_GEN_CHECK_DAYS, defines the number of days to take into account for Event Genera on.
An eighth parameter, EVT_GEN_MIN_STATUS, defines the minimum status of the posi ons that can be selected by the Event Genera on func on for the genera on of incomes.
For further details about the system parameters and their use, refer to the WealthSuite Front Office - Por olio Management - System Management Guide.
Commodity
Deliverables
Index
Rate
Yield Curve
Note that the reference nature (ref_nat_e) of the ini al opera on can affect the behaviour of Event Genera on. For example, if you buy an instrument whose nature is Forward and you do not select Fwd Open as the reference nature (ref_nat_e)
of the Buy opera on, Event Genera on will NOT propose a Term Expira on opera on.
Selected posi ons
In the Event Genera on func on’s default domain, minimum and maximum status of posi on are not shown. The default values of these statuses take the value of accoun ng status (system parameter ACCOUNTING_STATUS).
Generated opera ons:
A check is done so that an opera on with the same characteris cs is not generated twice.
The system parameter EVT_GEN_CHECK_DAYS specifies the number of days in the period before the Reference Date in which the posi on history is checked to see if the event has already been generated or not. This parameter is used when
the Domain Ini al Date and Reference Date are the same.
Even number
Even code
Opera on type, only for redemp on opera on
Opera on date
To define (in the opera on) specific default values for the Journal and Event Genera on func ons, test against instr_flow_id <> NULL. As instr_flow_id references the flow behind the opera on, the test is posi ve if the opera on is due to an
event and nega ve for normal opera ons.
To define default values that depend on the posi on behind the opera on, you can use init_ext_pos_id.
Example:
If the opera on inherits the sub_pos_nat_e field from the original posi on for an Adjustment P&L following the Event Genera on, implement the following default value in the adjust_opera on:
Forward closing
The Event Genera on func on is able to – manually or via batch processing - generate Opera on and Accoun ng dates prior to the Expira on Date with a number of Business Days defined at the Se lement Day Cycle level in the Instrument table.
This field must be an integer. By default, the field is empty, which means that:
A default value should also be implemented in the Accoun ng and Opera on dates with the script:
If the Se lement Day Cycle field is set - with a value different than 0 or <Blank> and the default value is scripted, both Opera on and Accoun ng dates will be shi ed to the prior Business Day available for both Reference Currency and Underlying
Currency.
Example
Then, for the generated Sell Opera on that closes the Forward, the dates are computed as:
In this example, only the Accoun ng date is scripted to take into account the Se lement Day Cycle; the same rule should be applied to the Opera on date.
To apply a compliance check on generated orders, the genera on nature of Domain has to be set to "create a session". This session can be used again in another business func on such as Order Entry.
Standing instruc ons are stored at the por olio level. This means that in Domain, only the por olio dimension is required; instrument dimension is not used.
Standing instruc ons are also used by the Journal func on.
The flow nature Standing Instruc on is shown in the GUI (online mode).
If the flow nature selected is All, then the standing instruc ons will be executed.
If the flow nature selected is Standing Instruc on, then the standing instruc ons will be executed.
No difference between online mode and batch mode.
This system parameter is used by the Event Genera on func on and the Journal func on.
A status (*) greater than or equal to the system parameter STANDING_INSTRUCTION_EXEC. The status of the standing instruc on has the same behaviour as the opera on status.
A period of validity that is described by a begin date and an end date. (The end date is not mandatory.) The posi on date of the Event Genera on func on’s domain is compared to this period. The standing
instruc on is taken into account if its begin date is less than or equal to the posi on date and, if its end date exists, this end date is less than or equal to the posi on date.
Frequency Unit field is a period; the system accepts the values "Day", "Month", and "Year".
Frequency field, which is a number that defines the frequency of the unit.
Examples:
If the " Frequency Unit field has the value “Month” and the Frequency field has the value “2", then the standing instruc on will be generated every two months.
If the " Frequency Unit field has the value "Day" and the Frequency field has the value "7", then the standing instruc on will be generated every seven days.
Note: For a frequency unit set to "Month", the value of the begin date defines the opera on date (i.e., the begin date is the last day of a month) therefore, the standing instruc on will only be generated on the last day of a month.
Examples:
Begin date = 30.04.2009, unit = Month and frequency = 1: dates of genera on will be 30.04.2009, 31.05.2009, 30.06.2009, 31.07.2009,…
Begin date = 15.04.2009, unit = Month and frequency = 1: dates of genera on will be 15.04.2009, 15.05.2009, 15.06.2009, 15.07.2009,…
Field Descrip on
Buy
Sell
Invest
Withdrawal
Amount The amount of orders generated must not be greater than this amount. The
calcula on of the order quan ty is based on this amount.
Weight Only in the context of a financial plan, the weight of the standing instruc on that is
used to calculate the amount of the order to generate (in terms of the amount to
invest).
Minimum Only in the context of a financial plan, the minimum amount to be invested for the
invest current instruc on.
amount
If the calculated amount to invest is greater than or equal to this minimum amount
to invest, the system creates an opera on using the calculated amount to invest.
Fee set-up Fields to manage a nego ated fee set-up for Mutual Fund Systema c Plans. For
more informa on, see sec on Fee set-up.
Calendar Indicates the calendar to take into considera on when se ng the opera on date.
For more informa on, see sec on Opera on date management.
For all other fields of the order, the default values of the opera on are used.
The fields of Opera on Event for standing instruc ons are set as follows:
Number field is set to the generated occurrence of the standing instruc on (e.g., if the value is 5, the order is generated for the fi h me).
Code field is set to the Standing Instruc on Code.
The check to not generate the same order (same date) twice is based on these two fields. This check can be effec ve only if orders are stored in the extended_opera on table in the Front Office – PM database.
PE-Ini al Commitment
PE-Drawdown
PE-Capital Call
PE-Actual PE Security
These four are linked together as a single PE instrument through the common reference and parent instrument id defined at the instrument level.
Ini al Commitment
Capital Call
Capital Return before Allotment
Allotment
Capital Return a er Allotment
Reduc on in Commitment
Maturity
While the ini al commitment subscrip on is a customer-ini ated event, all other events are ini ated by the PE fund issuer. The Event Genera on func on, which can run in both batch mode or online, is available to evaluate the data in the table
issue / redemp on event for PE funds and to create the corresponding opera ons.
The various events of a PE fund are only filled for the component of a private equity fund, which has the sub nature PE-Ini al Commitment, but opera ons are created for other components. Only the income event from the instrument of sub-
nature PE-Actual PE Security has to be linked directly to the instrument.
To apply a compliance check on generated opera ons, the genera on nature of Domain has to be set to "create a session". This session can be used again in another business func on such as Order Entry.
In Domain, the por olio dimension and instrument dimension are required. Instrument dimension can have the PE fund, which has sub-nature PE-Ini al Commitment or it can have an instrument list, which contains all four components of the PE
fund.
If the flow nature selected is All, then the necessary PE opera ons/cash flows will be generated.
If the flow nature selected is Issue, then the PE fund share allotment (Total Issue) will be executed if the event is set within the domain dates.
If the flow nature selected is Redemp on, then the PE Capital Call, Capital Return, Capital to Receive, Capital Reduc on, and Final Redemp on opera ons/cash flows will be generated if the relevant event is set
within the domain dates.
The following sec ons provides informa on used by the Event Genera on func on to compute the correct amounts to invest and based on this amount, the func on generates the relevant order for each standing instruc on:
Note that some specific treatments are available to cope with the management of Mutual Fund Systema c Plans. For more informa on, see sec on Mutual Fund Systema c Plans.
Defini on of an objec ve in terms of amount. Each investment has the same amount, and no calcula on is done on this amount. Only the rule associated to the plan is checked.
Defini on of an objec ve in terms of period. You specify the amount to invest during a period. The periodic amount to invest is revaluated for each investment and takes into account free deposits or missing
payments.
Defini on of an objec ve in terms of amount. You specify the amount to reach at the end of the period. The periodic amount to invest is revaluated for each investment and takes into account free deposits or
missing payments.
No objec ve is defined. Only free investments will be realised by the user. In this case, there is no amount to calculate and all available cash is used in the investment.
Period Frequency, which is used to specify the me-lapse to achieve the objec ve
Minimum or Maximum Amount to achieve the objec ve
Minimum or Maximum Amount Indexa on Rule and Value.
Investment parameters define how and when cash flows and investments are executed by the system for the financial plan. The main a ributes of plan investment parameters used by the system to compute the amount to invest are:
Note: The ini al payment is considered as a free deposit and treated as such by the system.
The plan offers a disciplined, flexible, and hassle-free way to invest in mutual funds to help build wealth for the future. It is a good choice for those who do not possess a good understanding of financial markets. For banks, this type of plan is an
important func onality in the advisory services for retail and mass affluent clients.
Note that the front-end used for Mutual Fund Systema c Plans is Channels; the GUI does not cover all use cases and therefore, is not meant to be used for implementa on. For more informa on about Mutual Fund Systema c Plans offered in
Channels, refer to the WealthSuite Channels - Por olio Management and CRM - Desktop User Guide and the WealthSuite Channels - Por olio Management and CRM - Packaging Reference Guide.
Datamodel overview
Plan check
When crea ng Mutual Fund Systema c Plans, a plan check is required to check the impact of the new plan before valida ng it.
Since Release 17.11, the Event Genera on func on provides a simula on mode where the plan defini on is set as domain parameter. The goal is to perform a plan check by simula ng the genera on of the first order cycle of a specific Mutual
Fund Systema c Plan, and only for this plan.
The result of the event genera on in simula on mode is an order session with the set of buy orders ini ated by the plan’s standing instruc ons on which a Pre-trade Compliance Check (PTCC) is run with poten al cases raised.
Note that in simula on mode, the Event Genera on func on creates orders even when the plan status is not Validated.
To check a plan in simula on mode, set the following characteris cs in the Event Genera on domain:
Order management
Once Mutual Fund Systema c Plans are created and validated, orders can be automa cally generated through a standard order management func onality without any manual interven on.
To do so, you can run the Event Genera on func on in batch mode that will create orders on all por olios with valid Mutual Fund Systema c Plans. The following process then applies:
1. The Event Genera on func on is used (in GUI or by batch) to generate the orders on all por olios with valid Mutual Fund Systema c Plans. The func on must run with the following domain characteris cs:
Func on (func on_dict_id) as 12 - Event generation (event_gen)
Por olio dimension (por olio_dimension_e) as 2 - Portfolio List
Por olio object (port_object_id) as the por olio list defined in the system parameter PCK_GL_SP_PORTFOLIO_LIST. The default value of this parameter is set as PCK_GL_SP, which corresponds
to por olio lists that contains all por olios with valid Mutual Fund Systema c Plans. These por olio lists are delivered in the standard packaging.
Genera on Nature (event_gen_nat_e) as 9 - Check, Split & Publish. This allows for the generated orders to be checked and then split between valid and invalid, and finally, publish the
valid ones (see step Based on the outcome of the PTCC, the system automa cally splits the valid and failed orders as follow:)
Compute data (comp_data_e) as 1 - Compute New
Flow nature as (event_flow_nat_e) as 7 - Standing Instruction
Flow sub-nature as (event_flow_sub_nat_e) as 28 - Stand Instruction Buy since only investment plans (buy orders) are currently covered
From date (calc_from_d) as the current day and the Till date (calc_ ll_d) as the From date plus 1 day
Minimum status (min_status_e) as the status defined in the parameter ORDER_STATUS, which corresponds by default as 35 - To Send. This is important in the management of retry mechanism
(see sec on Retry mechanism)
Maximum status (max_status_e) as the status defined in the parameter ACCOUNTING_STATUS, which corresponds by default as 90 - Accounted
Order status (event_oper_status_e) as the status defined in the parameter ORDER_STATUS, which corresponds by default as 35 - To Send
2. The result of step 1 is an order session with the set of buy orders ini ated by the plan’s standing instruc ons on which a Pre-trade Compliance Check (PTCC) is run with poten al cases raised.
3. Based on the outcome of the PTCC, the system automa cally splits the valid and failed orders as follow:
Valid orders are kept in the original session and are published. The order session status is consequently moved to Final. In the standard package, the orders are saved with status 35 - To Send,
which triggers an event in TTI (also known as the interface between Core Banking and Front Office – PM) to send them to the back-office (Core Banking). The standard order workflow then applies
(execu on and booking). Note that valid orders are those with either no associated cases or cases that do not require clarifica on. Otherwise, orders are considered invalid.
Invalid orders are saved into a new session but are not published. Their session status is Checked. This session keeps a link to the original link via its Parent Session ID (parent_session_id). This order
session is kept for informa on purposes only to keep track of the reasons (cases) why the orders were rejected. Note that invalid orders are those with either blocking cases or cases that required
clarifica on. Should an order be rejected for a por olio, all other orders in this por olio will also be rejected so that a coherent approach is kept per por olio.
4. Step 1 is repeated based on the batch frequency.
Screen
Since Release 17.11, the Event Genera on func on is able to associate a screen with this func on to apply a set of business rules (default values and input controls) defined in packaged or customized screens.
In the standard packaging, the screen called through Channels is PCK_TCIB_SECURITY_BUY. This screen is used to set-up the following a ributes for Mutual Fund Systema c Plans:
BP 4 amount (bp4_amount_m) and currency (bp4_currency_id). For more informa on, see sec on Fee set-up.
Type (type_id) is set as the one defined in parameter PCK_TCIB_SP_OPE_TYPE. This allows for the iden fica on of orders that originated from Mutual Fund Systema c Plans.
The calendar used to set the next business day is the one defined in the standing instruc on that originated the order. If this calendar is not defined, than the Event Genera on func on considers the system calendar as defined in parameter
SYS_CALENDAR.
Retry mechanism
Since Release 17.11, the retry mechanism can regenerate orders that have been rejected. To do so, the Event Genera on func on is enhanced to manage the retry mechanism based on:
Retry set-up defined in the en ty Plan Invest Param Histo (plan_invest_param_histo) where you need to define:
Retry frequency unit (retry_frequency_unit_e) set in the standard as the value defined in parameter PCK_TCIB_SP_RETRY_FREQ_U, which is delivered by default with value 1 - Day. To avoid
any mismatch between both frequencies, ensure that the retry frequency unit is in line with the plan frequency. It is, therefore, recommended that this parameter is kept at 1 - Day.
Retry frequency (retry_frequency_n) set in the standard as the value defined in parameter PCK_TCIB_SP_RETRY_FREQ_N, which is delivered by default with value 2.
Maximum number of retries (max_retry_n) set in the standard as the value defined in parameter PCK_TCIB_SP_MAX_RETRY_N, which is delivered by default with value 3
Improvement on the en ty Plan Invest Date (plan_invest_date) with:
New status (status_e) permi ed values for the retry mechanism: Retry candidate, Retry treated, Retry cancelled, Retry success, and Retry failed
New a ribute that defines the retry number (retry_n)
Example
The plan has the following characteris cs:
Retry
# Investment Type Status Event # System ac on
#
On 8th October 2017, the first event genera on batch is launched and the following order is generated into an order session based on plan investment #1:
The informa on for Plan Invest Date 8th Oct 2017 is updated:
Retry
# Investment Type Status Event # System ac on
#
Assume, for illustra on purposes, that the order has failed. On 9th October 2017, the event genera on batch is launched, but no order is generated for the plan because we do not have any untreated Plan Invest Date on 9th October 2017
(instruc on or retry).
Retry
# Investment Type Status Event # System ac on
#
Retry
# Investment Type Status Event # System ac on
#
1.1 10th Oct Retry Retry 1 20171008 Once the instruc on is failed,
2017 candidate the event genera on func on
creates all retry candidates (3
retry in our example)
1.2 12th Oct Retry Retry 2 20171008
2017 candidate
On 10th October 2017, the event genera on batch is launched and the following order is generated into an order session based on plan investment #1.1 (first retry of plan investment #1):
Retry
# Investment Type Status Event # System ac on
#
Assume, for illustra on purposes, that the order is OK. On 11th October 2017, the event genera on batch is launched but no order is generated for the plan because we do not have any untreated Plan Invest Date on 9th October 2017
(instruc on or retry).
Retry
# Investment Type Status Event # System ac on
#
Retry
# Investment Type Status Event # System ac on
#
From 12th October 2017 un l 7th November 2017, event genera on batches generate no order for this plan because we do not have any untreated Plan Invest Date un l 8th November 2017 (instruc on or retry).
On 8th November 2017, the event genera on batch is launched and the following order is generated into an order session based on plan investment #2:
Retry
# Investment Type Status Event # System ac on
#
Assume, for illustra on purposes, that the order has failed. On the 9th November 2017, the event genera on batch is launched but no order is generated for the plan because we do not have any untreated Plan Invest Date on 9th November 2017
(instruc on or retry).
Retry
# Investment Type Status Event # System ac on
#
Retry
# Investment Type Status Event # System ac on
#
2.1 10th Nov Retry Retry 1 20171108 Once the instruc on is failed,
2017 candidate the event genera on func on
creates all retry candidates (3
retry in our example)
2.2 12th Nov Retry Retry 2 20171108
2017 candidate
On 10th November 2017, the event genera on batch is launched and the following order is generated into an order session based on plan investment #2.1 (first retry of plan investment #2):
Retry
# Investment Type Status Event # System ac on
#
Assume, for illustra on purposes, that the retry order has failed again. On 11th November 2017, the event genera on batch is launched but no order is generated for the plan because we do not have any untreated Plan Invest Date on 11th
November 2017 (instruc on or retry).
Retry
# Investment Type Status Event # System ac on
#
2.1 10th Nov Retry Retry 1 20171108 Status changed to Retry failed
2017 failed because the event genera on
func on has not found an
order with the event code
STANDING1 and event
number 20171108
On 12th November 2017, the event genera on batch is launched and the following order is generated into an order session based on plan investment #2.2 (Second retry of plan investment #2):
Opera on Date: November 13th 2017 (November 12th 2017 is a Holiday for the calendar EUROPE, the next business day is the November 13th 2017)
Por olio: PTF1
Mutual Fund: Mid Cap Europe
Quan ty (units): 492
Price: 2.03
Amount: 998.76 EUR
Event Code: STANDING1
Event Number: 20171108
Retry
# Investment Type Status Event # System ac on
#
Retry
# Investment Type Status Event # System ac on
#
Assume, for illustra on purposes, that the retry order has failed again. On 13th November 2017, the event genera on batch is launched but no order is generated for the plan because we do not have any untreated Plan Invest Date on 13th
November 2017 (instruc on or retry).
Retry
# Investment Type Status Event # System ac on
#
2.2 12th Nov Retry Retry 2 20171108 Status changed to Retry failed
2017 failed because the event genera on
func on has not found an
order with the event code
STANDING1 and event
number 20171108
On 14th November 2017, the event genera on batch is launched and the following order is generated into an order session based on plan investment #2.3 (Third retry of plan investment #2):
Retry
# Investment Type Status Event # System ac on
#
Retry
# Investment Type Status Event # System ac on
#
Assume, for illustra on purposes, that the retry order has failed again. On 15th November 2017, the event genera on batch is launched but no order is generated for the plan since we do not have any untreated Plan Invest Date on 15th
November 2017 (instruc on or retry). The updated Plan Invest Dates are now:
Retry
# Investment Type Status Event # System ac on
#
2.3 14th Nov Retry Retry 3 20171108 Status changed to Retry failed
2017 failed because the event genera on
func on has not found an
order with the event code
STANDING1 and event
number 20171108.
The order cycle has reached the maximum number of retries, no further retry is done and the order cycle is skipped.
Now, let us say that for the remainder of the plan life, all remaining orders have been successful and saved at the first instruc on.
Note that in this example, we assume that batches are launched every day, including holidays. The same approach would work when batches run only on business days. The only difference would be that for Monday batches, the days to consider
would include Invest Plan dates of previous Saturday and Sunday.
Fee set-up
The objec ve is to allow a user to define a nego ated fee set-up at the plan level. This set-up will then be used to default it for all orders generated for the plan.
The fee set-up is possible only for one-fee amount (balance posi on) and its corresponding currency (balance posi on currency). Within the standard Core Banking and Front Office - PM interface (known as TTI), the one chosen is balance posi on
4 (bp_4_amount_m and bp_4_currency_id).
The nego ated fee set-up is defined at the plan level in the Standing Instruc on (en ty standing_instruc on) where you can set:
Fee set-up (order_fee_e) to define if the fee is 0 - Not negotiated, 1 - Negotiated in amount, or 2 - Negotiated in percent.
Fee percent (order_fee_p) when the set-up is defined as 2 - In Percent
Fee amount (order_fee_amt_m) and currency (order_fee_curr_id) when the set-up is defined as 1 - In Amount
Values entered at the plan level and then, used during order crea on to set the corresponding order a ributes via scrip ng,:
order_fee_e
order_fee_p to define the nego ated fee discount in percent in case of percent nego a on
bp_4_amount_m and bp_4_currency_id in case of amount nego a on
All three methods need to know the market values of posi ons and the state of the various performance counters (balance posi ons) at given mes as well as the size and ming of flows in or out of the por olio. This data is found in the por olio
synthe c structure.
In the MWR method, the market values at the beginning and the end of the return period are used. Addi onally, the size and ming of flows are used to compute the "mean invested capital" using the "modified Dietz" method.
The TWR method is theore cally computed as the geometrically chained returns of sub-periods. A sub-period return is calculated using the market values before and a er each flow. The system computes TWR by compu ng these market values
at a predefined frequency, calcula ng the return and chaining. Obviously, if the frequency is set to "daily", the result is exactly the same as the theore cal method. Using a longer frequency on por olios with few flows, gives a good approxima on
of TWR and is less data intensive.
The IRR method uses the same periodicity as the TWR method. In each sub-period, average flow ming is computed. IRR is then the rate that equates the ini al market value to the sum of the discounted cash flows, including the final market
value.
The Return func on can compute the return on a por olio or the por olios of a client or a list of por olios. The level of detail is may be set to:
Periodicity
The periodicity of occurrences is defined in the por olio:
Return Frequency and Return Frequency Unit: Permi ed values are currently:
1 day
1 month
Monthly TWR
Monthly Global TWR
1 quarter
Use the Monthly TWR and the Monthly Global TWR frequencies to compute the real TWR. Each me an opera on is detected on a given por olio synthe c data is computed, allowing Front Office - PM to compute the return with a maximum of
precision. The difference between the Monthly TWR and the Monthly Global TWR frequencies consists in the opera on nature that is used to compute the new synthe c data:
Monthly TWR: all the opera ons are taken into account
Monthy Global TWR: Investment, Withdrawal, Fees and Taxes, Transfer and Por olio Transfer opera ons are detected.
Note that the use of the new Monthly TWR and Monthly Global TWR frequencies require the use of the following filter in addi on to the exis ng filter:
{then} 1,
For more informa on on this script, refer to the WealthSuite Front Office - Por olio Management - Script Language Reference Guide.
In a monthly calcula on, the periods are defined as star ng at the beginning of the calendar month and ending at the end of each calendar month. If the return is requested from a date that is not at the beginning of a month, an ini al period is
created between the requested begin date and the end of the month. Similarly, if the end date is not the end of a calendar month a period is created between the end of the previous month and the requested Final Date.
Example:
A return calcula on between the 15 of January and the 3rd of March will generate the following three periods: 15/01 - 31/01; 01/02 - 28/02; 01/03 - 03/03.
Level of detail
The level of detail is specified at the por olio and domain level. The possibili es are:
Value Descrip on
Grid The data is shown according to a specified grid or to grids defined as defaults at the
por olio, customer or por olio list level. To compute returns:
Instrument Indicates that the results are shown at the instrument level.
Note that the level specified at the por olio level can be overridden at the domain
level.
For more details about the por olio synthe c structure, refer to the WealthSuite Front Office - Por olio Management - Data Model Reference Guide.
Standard method
1. The total profit and loss in the por olio reference currency is computed using the cost amounts in the por olio currency (that were stored when the opera on was saved) and the current market value at today’s
price and exchange rate.
2. The capital profit and loss in the instrument reference currency is computed using the cost amounts in the instrument currency (that were stored when the opera on was saved) and the current market value at
today’s price.
3. This capital profit and loss is converted into the por olio reference currency. The exchange rate to be applied follows the parameter P&L computation rule, which has the following values:
"ini al": the exchange rate applicable at the opening of the posi on is used. This in effect posts the cross effect to the currency counter.
"final": the exchange rate applicable on the valua on date is used. This in effect posts the cross effect to the currency counter.
"middle": the exchange rate is the average of the two exchange rates men oned above. This splits the cross effect between the currency and capital counters.
4. The currency profit and loss is calculated as the difference between the total and capital profit and loss.
This kind of return cannot be stored in the synthe c data table. This func onality only works online. It takes me because there is a refusion of the por olio so that the market value at the Ini al Date is copied to the net cost value of the posi on.
Example
31/03/2003 1.36
30/04/2003 1.38
31/05/2003 1.39
30/06/2003 1.4
31/07/2003 1.2
31/08/2003 1.25
Boeing price
31/03/2003 50
30/04/2003 57
31/05/2003 63
30/06/2003 70
31/07/2003 50
31/08/2003 55
Hypothesis: PORT_PL_COMP_RULE=3
Indicates where the interac on effect of capital and currency profit and losses are posted.
Where
With the Market Value Profit and Loss method, the buy date is the Ini al Date of the domain.
If you run a return computed monthly at different periods, the different results are:
2. Computa on of the profit and loss with the Market Value Profit and Loss method
Net/Gross unreal currency profit and loss: - 10,800 = 60,000 – 98,000 – (-27,200)
2. Computa on of the profit and loss with the Market Value Profit and Loss method
Note that as is shown in the previous example, the sum of "purchases" and "sales" does not equal zero. It is the sum of the purchases, sales, paid and received income (incl. accrued interest), fees and taxes that equals zero.
The computa on of mean invested capital follows the day weigh ng approach also known as "Modified Dietz". At the system level, one can indicate whether flows occur at the beginning, the middle or the end of a day.
Note that using "Modified Dietz" on a daily frequency is equivalent to using the ini al market value, adjusted by the intraday ming of investments.
The result may be requested before or a er management fees, including or excluding tax credits, gross or net of commissions and taxes.
Where
Note that in the system, the weigh ng of flows is done from a fixed Reference Date. This enables to store data without having to consider the period over which the return is to be computed.
Compu ng return
The rates of return of a por olio, a market segment or an instrument are computed using the RETURN keyword. The output of this func on is the "por olio return" structure. As can be seen from this structure, the total return can be calculated
as well as the various effects that compose this return. In par cular, you can compute the effects due to individual counters (e.g. unrealised currency loss effect) as well as intermediate counters (e.g. unrealised currency effect, currency effect,
etc.).
Limita ons
The func on has some limita ons:
Field Descrip on
Por olio All Por olios/List/Por olio/Quick Search/Third Party: indicate on which por olios
Dimension the valua on should be made. If you choose Quick Search and click Browse
bu on ( ), the Por olio Quick Search screen opens to let you perform a
search.
Currency Indicates in which currency the return should be computed. The only currency for
which exact performance data is found is the por olio reference currency. All other
currencies are based on exchange rates valid at the “final date" of the periods.
Dates Ini al Date: Indicates the date from which the return counters are computed.
Final Date: Indicates the date un l which the return counters are computed.
Minimum These indicate the status of the retrieved posi ons. Allows the return to be
Status calculated including simulated posi ons.
Maximum Note that if these states are different from those of the stored "por olio synthe c"
Status structure, the process calculates return online.
Parameters tab
Complete the following fields in the Parameters tab to define the data a ributes:
Field Descrip on
Consolida on Indicates in a mul -por olio context whether consolida on should occur across
por olios.
Detailed: The consolida on occurs at the hierarchy head (parent por olio).
Detailed children: Each por olio, parent or child por olio, is evaluated
separately.
Load Determines whether the posi ons of child por olios are also loaded ("From
Hierarchy Parent") or not ("No"), when the por olio is a head of a hierarchy.
Return Detail Indicates whether the return counters are shown at the por olio level, the grid
level, or the instrument level. In the case of grid level, one may either specify a
grid, or leave blank, in which case the process will use the grid(s) defined at the
por olio, third party, or list level, depending on the por olio dimension
specified above.
P&L Method Choose between Standard method and Market Value Profit and Loss method
(see sec on Spli ng between currency and capital profit and loss).
Field Descrip on
Return Together they indicate the length of the period between two occurrences of
Frequency "por olio synthe c". Currently the permi ed values are: 1 day, 1 month, Monthly
TWR, Monthly Global TWR, 1 quarter, 1 semester, 1 year.
Return
Frequency
Unit
Return It indicates the l default level of detail for this por olio. The permi ed values are
Detail Global, Grid and Instrument. These default levels are used when the "por olio
Level synthe c" data is physically stored. In the Domain screen, however, you can
override these.
Return In this associated table, you describe the grids, i.e. the market segmenta on used
Grid Link by default. Although you can associate several grids, these must be primary grids.
This informa on is used to store por olio synthe c data, if the return detail level is
set to grid. Furthermore, at the domain level the grids specified here are used as
default grids. You can override these however, in the domain. These Return Grid
Links can be defined at the por olio, third party or por olio list level. These grids
are only used as default at the domain level. Storage is only done with the grids
associated with the por olio.
System parameters
The Return func on depends heavily on the Valua on func on. All parameters related to Valua on obviously influence Returns. The following system parameters are those that have a direct influence on the return process:
Field Descrip on
Field Descrip on
SYNTHETIC_MIN_STATUS These two parameters indicate the maximum and minimum status
of posi ons to be included in the genera on and storage of
SYNTHETIC_MAX_STATUS por olio synthe c structures.
Structure
As described above, the return process generates the por olio synthe c structure. A detailed descrip on of the a ributes of this structure is provided in the WealthSuite Front Office - Por olio Management - Data Model Reference Guide. The
content of this structure is as follows:
Structure
Descrip on
element
Instantaneous This includes the market values and accrued interest at the ini al date and the
data final date, as well as the cost value at the final date.
Realised These counters are computed as the difference between the amounts stored in
amounts the appropriate balance posi ons at the Ini al Date and Final Date of a period.
They include gross and net investment and withdrawals, gross and net capital
and currency profit and loss, gross and net paid and received income, paid and
received accrued interest, por olio fees and taxes, tax credits.
Gross and net When compu ng a detailed return, these are the sum of all opera ons that
purchases increase or decrease the quan ty of an instrument (excluding investment and
and sales withdrawals that are treated separately).
Unrealised These counters contain the change of unrealised capital and currency profit and
net and gross loss between the Ini al Date and Final Date of a period.
profit and loss
Unrealised They are computed as the difference between the accrued interest at the Ini al
received or Date and Final Date of the period.
paid accrued
interest
Weighted These are the sums of the product of the amount of each flow mul plied by the
amounts number of days elapsed from a Reference Date. These counters are used to
compute the Mean invested capital.
Synthe c Synthe c Data is given a mask that makes it possible to dis nguish between
Data several characteris cs of the port synth, as described below.
defini on
mask The synthe c data mask is a 6-digit binary number. As well as the Return
Analysis and the Synthe c Administra on func ons, this mask is also used in
the Performance A ribu on module.
Digit 1: The first digit of the synthe c data mask is set to 1 if the End Date
depends on the por olio frequency (otherwise, it is set to 0).
Digit 2: The second digit is set to 1 if its End Date depends on a benchmark
rebalancing (used in the performance a ribu on module only).
Digit 3: Set to 1 if the synthe c data is primary. A primary port synthe c is data
that has not yet been through a temporal consolida on process. To summarise,
a port synthe c is primary if there is no change in the por olio frequency or
opera on between the ini al date and the end date of this data.
Digit 4: Set to 1 if the synthe c data is secondary data that will be stored in the
ext_return_analysis structure.
Digit 5: Set to 1 if the synthe c data is secondary data that will be stored in the
ext_return_analysis structure.
Digit 6: This digit is used for the por olio storage / parallel storage func on. For
more details, refer to the WealthSuite Front Office - Por olio Management -
Performance Analysis Reference Guide.
Example: 0 1 1 1 0 1 = 29 means that the synthe c data is Primary and that its
final_d value is due to a change in the frequency.
This mask is a filter which is useful for viewing only a certain type of data. For
example, for the return analysis func on it is interes ng to display only the
secondary data (data due to a change in the por olio frequency), while
compu ng the return on the primary data which is more precise.
The RETURN script keyword allows calcula ng the return of the por olio based on the data, which is provided in the port_synthe cs structure, according to the various methods (MWR, TWR, gross/net of fees, taxes, etc.). Refer to the
WealthSuite Front Office - Por olio Management - Script Language Reference Guide for further informa on. The script keywords BENCH_RETURN and BENCH_WEIGHT can be used to calculate the return of a strategy, which is linked to the
por olio.
Therefore, there are generally two possibili es to treat a por olio hierarchy:
Treat the hierarchy as a list of por olios. That is, the returns of the member por olios are calculated individually and aggregated according to the merge rules.
Treat the hierarchy as if it was a single por olio. This is done by temporarily crea ng a synthe c por olio, which contains all posi ons of the parent por olio and all its child por olios, and calcula ng a TWR on
this data.
The method "Merged TWR" calculates as if all opera ons had taken place in the parent por olio.
System parameter
The system parameter RETURN_IN_PARENT_PTF_RULE determines which method is used in each context.
Value Descrip on
0 Computes the Monthly TWR or Monthly Global TWR in Return Analysis as well as
Performance A ribu on and Analysis as usual.
an online Monthly TWR or Monthly Global TWR, with the hierarchical TWR
method.
new synthe c data or new PSP with the hierarchical TWR method.
a standard TWR on PSP set with standard perf a rib.
2 Online computa on, all synthe c data and all PSP are computed using the hierarchical
method (whatever the Perf. Return descrip on set at por olio level).
RETURN_IN_PARENT_PTF_RULE
Perf Return
0 1 2
Descrip on
standard perf old Standard TWR Hierarchical TWR for online and all PSP
a rib method
hierarchical old Hierarchical TWR for online Hierarchical TWR for online and all PSP
perf a rib method and new PSP set with
hierarchical perf a rib
Synthe c Administra on
RETURN_IN_PARENT_PTF_RULE
Compute
0 1 2
Data
This Synthe c Administra on func on is useful because the computa on of returns is a resource intensive process. By pre-calcula ng the por olio synthe c structure and using it when you run a Return Analysis, you reduce the demand on
resources. Typically, Return Analysis is two or three mes faster if you use synthe c data.
When you insert, modify or delete backdated transac ons, the stored data is updated. This ensures the integrity of the por olio synthe c data, that is, it makes sure that the stored data reflects the actual state of the por olio (see sec on
Upda ng process for details).
Field Descrip on
Por olio If one or more por olios are selected, the func on generates entries for each
Dimension por olio in its reference currency.
Ini al Date Entries in the synthe c data table are generated for the period between these two
dates. The frequency and level of detail of these entries depend on the se ngs
Final Date specified at por olio level (Administra on > Main En es > Por olio) in the
Return Frequency Unit and Return Detail Level fields, as indicated below:
If the Ini al Date is not an end of period date (as for a monthly frequency, for
example), the date is forced to the end of the previous period.
Note that if the Ini al Date is the same as the Final Date, the func on computes
new synthe c data from the most recently saved synthe c data un l the Final Date
of the domain.
Por olio If the por olio contains Por olio Posi on Sets (PPS) with the Por olio Synthe c
Posi on flag set to Yes, the por olio synthe c data is generated at the same me as the
Set main por olio. If the flag is set to No, the PPS does not have stored synthe c data.
Calcula on methods
The difference between Permanent and Non-Permanent data is as follows:
Synthe c data is generally stored for a period corresponding to the Return Frequency Unit of the Por olio. If the unit is a month, the period begins or ends at the end of a month. For a period that ends within
the Return Frequency Unit, you can choose if you want to stock the data permanently or not.
Non-Permanent data that does not correspond to an "end of period" date is deleted when the synthe c administra on is computed with a later Final Date. Permanent data, or data with an "end of period" date
persists, that is, it is not deleted when the synthe c administra on is computed with a later Final Date.
This means that the Non-Permanent period can only be the more recent period. The other periods all have Permanent status.
The following sec ons provide examples and further notes about calcula on methods.
Example 1
Take a Por olio with the Return Frequency Unit set to 1 month.
A Synthe c Administra on from 31.12.97 to 15.03.98 computes the synthe c data for the periods:
31.12.97-31.01.98 (Permanent)
31.01.98-28.02.98 (Permanent)
28.02.98-15.03.98 (A or B below)
If the last period (28.02.98-15.03.98) has Permanent status, launching a "synthe c administra on" with Ini al Date = Final Date = 25.04.98 computes the following periods:
15.03.98-31.03.98 (Permanent)
31.03.98-25.04.98
If this same period (28.02.98-15.03.98) has Non-Permanent status, launching a synthe c administra on with Ini al Date = Final Date = 25.04.98 replaces the last period 28.02.98-15.03.98 with the period
28.02.98-31.03.98 and adds the period 31.03.98-25.04.98.
28.02.98-31.03.98 (Permanent)
31.03.98-25.04.98
The Permanent or Non-Permanent nature of the last period is defined when the data is created.
Front Office - PM also lets you choose between compu ng only new synthe c data or replacing the exis ng data.
If you choose the New op on in the Compute Data field, Front Office - PM completes the missing data in the period defined by the Ini al Date and Final Date fields. The Replace op on deletes all stored por olio synthe c table data for the period
defined by the Ini al Date and Final Date fields and computes new por olio synthe c data for the en re period. The Replace op on keeps the dates so the intermediate Permanent stored dates are not lost.
Example 2
Take a Por olio with the Return Frequency Unit set to 1 month and with stored synthe c data for the following periods:
31.12.97-31.01.98 (Permanent)
31.01.98-28.02.98 (Permanent)
28.02.98-15.03.98 (Permanent)
Missing
31.03.98-25.04.98 (Permanent)
If you run the Synthe c Administra on func on with the Compute Data field set to New, the Ini al Date set to 31.12.97, and the Final Date set to 30.04.98, Front Office - PM computes synthe c data for the
following periods:
15.03.98-31.03.98 (Permanent)
25.04.98-30.04.98
If you run the Synthe c Administra on func on with the Compute Data field set to Replace, the Ini al Date set to 31.12.97, and the Final Date set to 30.04.98, Front Office - PM computes synthe c data for the
following periods:
31.12.97-31.01.98 (Permanent)
31.01.98-28.02.98 (Permanent)
28.02.98-15.03.98 (Permanent)
15.03.98-31.03.98 (Permanent)
31.03.98-25.04.98 (Permanent)
25.04.98-30.04.98
If you run the Synthe c Administra on func on with the Compute Data field set to New or Replace, the Ini al Date and the Final Date set to 30.04.98, Front Office - PM computes synthe c data for the
following period:
25.04.98-30.04.98.
Value
Descrip on
combina on
New, If the Ini al Date is earlier than the Final Date (Ini al Date < Final Date), the New,
Permanent Permanent op on completes the missing data in the period. Otherwise, if the
Ini al Date is the same as the Final Date (Ini al Date = Final Date), the New,
Permanent op on computes new synthe c data from the last saved synthe c
data un l the Final Date. The last data has the nature Permanent.
New, Non- The New, Non-Permanent op on behaves the same as the New, Permanent
Permanent op on except that the last data has the nature Non-Permanent.
Replace, If the Ini al Date is earlier than the Final Date (Ini al Date < Final Date), the
Permanent Replace, Permanent op on re-computes all por olio synthe c data in the period
while preserving the dates. Otherwise, if the Ini al Date is the same as the Final
Date (Ini al Date = Final Date), the Replace, Permanent op on behaves the same
as the New, Permanent op on. The last data has the nature Permanent.
The first two op ons in the Compute Data drop-down list are:
Delete - Front Office - PM deletes the data between the Ini al Date and the Final Date. If the Ini al Date is not the date of an occurrence, the occurrence containing this date is not deleted.
View - The data between the Ini al Date and the Final Date is displayed (either for the por olio or for the PPS).
Notes
The Replace, Permanent op on is not equivalent to choosing the Delete op on followed by the New, Permanent op on. The Replace, Permanent op on preserves the date of the synthe c data which is replaced. The Delete op on deletes all the
data and the New, Permanent op on computes new data for the period.
If you select Delete or View, the Display Result Flag checkbox is disabled.
Also, to avoid unnecessary format evalua on in batch processing, make sure the Display Result Flag checkbox is cleared (the disp_result_f flag is set to 0):
Hints:
Upda ng process
The Synthe c Administra on procedure stores the data of the current por olio for specified past periods. However, if you create an opera on that occurred in the past (in a period for which por olio synthe c data is already stored), the synthe c
data will no longer correctly reflect the por olio. Un l now the only way to update the synthe c data was to delete the exis ng data and compute the new data. This process is automated to ensure the correct calcula on of the return.
Func on Descrip on
Synthe c If you run the Synthe c Administra on func on on a por olio which has an
Administra on event in the Event_Scheduler table, the domain's Ini al Date is used only if it is
earlier than the date of the event. If the Ini al Date is later than the date of the
event, Front Office - PM treats the date of the event as the Ini al Date. The
synthe c data created a er the event date is recalculated.
Return The return func on automa cally seeks stored por olio synthe c records. If it
Analysis does not find these, or they are incomplete or do not correspond to the
requested level of detail, these records are recomputed online.
If you run a Return Analysis on a por olio that has an event in the
Event_Scheduler table, the por olio synthe c data is calculated online from
the period containing the event.
Modify If you modify the currency (Opera on->Special Func ons->Modify Currency),
Reference / the synthe c data is changed to the new currency using the exchange rate from
System the end of the period (same method as for the return calcula on in another
Currency currency).
Notes
The por olio return frequency is defined for each por olio (at por olio level) using the "Return frequency unit" parameter. This parameter is generally set to monthly or daily. Compared to monthly, daily takes 30 mes more space in the
port_synthe c table.
The por olio return level is also defined for each por olio (at por olio level) using the parameter "Return detail level". It can be set to Global, Grid or Instrument. If you choose Global, there is only one entry per por olio per frequency unit. If you
choose Grid, you obtain one entry per por olio per frequency unit and per market segment combina on. If you choose Instrument, there is one entry per por olio per frequency unit for each instrument (posi ons with the same instrument are
merged), which takes up a lot of space! The choice not only depends on the space the data takes; the most important factor is the detail level required by users. The detail level allows the high quality rendering of reports and formats. With the
Grid/Instrument value, there is also the entry linked to the Global value.
Another important parameter is the frequency at which we compute the synthe c data. It can be every Saturday or, for important por olios, every day. This is very important as the computa on is long and resource-consuming. It is cumbersome
to compute a large number of por olios every day. Obviously, the only problem with weekly computa on is that the data is not up-to-date in-between. However, everything is brought up to date once the weekly computa on is carried out. It is
also worth no ng that it is not recommended to perform the computa on of the synthe c data in parallel.
When you insert, modify or delete backdated transac ons, the stored data is updated. But if you modify an instrument price or exchange rate, the stored data is not updated. You can decide to compute synthe c data up to the week before and
not the day before, enabling you to modify the instrument prices for the previous week without affec ng the return results.
Each entry in the por olio_synthe c table requires approximately 600 bytes. You can accurately es mate the size of the table if you know:
The Synthe c Administra on func on can be executed in batch mode using the exec_fin_analysis_all_domain stored procedure. The scripts that compute synthe c data during the night typically process lists of por olios.
Note that for a return on a list of por olios with different return frequencies, the results are computed for the lowest frequency (for example, if some por olios are set to a daily frequency and others to monthly, all the por olios in the list are
treated as if the return frequency is monthly). It is the por olio frequency that has priority.
Depending on the por olio configura on (por olio return frequency and por olio return level parameters), the scripts may take a long me to execute. Evaluate this me by performing intensive tests on your Front Office - PM test environment.
If there is no effect on business issues, you can take the parameters into account when you analyse performance.
A composite is defined in Front Office - PM as a list of por olios. As the contents of this list can change over me, it is essen al to create historical lists.
The Composite Manager func on retrieves the por olios belonging to a composite over me. From each por olio and period, you can access pre-stored performance data. This performance data must be stored in the related por olio
chronological data.
The Composite Manager is run from the main toolbar. You must enter the name of the Por olio list (Composite), the period over which the data must be presented, and the frequency at which the por olio returns are calculated (e.g. Monthly).
Front Office - PM generates a por olio_freq structure. A line of this structure is displayed for each por olio and each period, and contains informa on stored in the chronological data of the por olio.
Frequency
Status
Historical versus present list
Frequency
The Composite Manager retrieves the components of a list at different dates. These dates are defined in the Domain screen.
The dates are the Ini al Date, intermediate dates based on a given frequency and the Final Date. This means that if you run the Composite Manager with 15/01/99 as the Ini al Date and 25/03/99 as the Final Date and a frequency of 1 month, it
retrieves the list’s components for the 15/01/99, 31/01/99, 28/02/99, and 25/03/99. These dates are the Frequency Dates.
Status
The composite manager allows the user to determine from the status_e a ribute if a por olio is Entering, Remaining, Exi ng or Transi ng from a composite.
All the func ons, except the Composite Manager, only work with "present" lists (i.e. with components that do not have a validity date). The Composite Manager func on lets you work with the present list or the historical components of the list.
It does this by using a Historical List flag.
When the Composite Manager uses the Present List se ng, it displays the present components at all dates.
When the Composite Manager uses the Historical List se ng, it displays the historical components that are valid at the frequency date. If the list has no historical components, the present components are loaded.
If the Historical Flag is set, all the lists used in the format (for example, with the WHERE_IN_GRID(), CLASSIFY() and IS_IN_LIST() keywords or used by valua on rules) are also based on historical lists.
Loading data
Descrip on
tab
Por olio Level passed to the Composite Manager func on. You can choose from All
Dimension /List/Por olio/Quick Search. If you select Quick Search and click Browse
panel
bu on ( ), the Quick Search screen opens to let you select criteria and
perform the search you want.
All/List/Por olio Name of the por olio or list that is displayed. All displays all the por olios and
lists.
Ini al Date The date from which the Composite Manager starts. Set by default to current
date minus a year.
Final Date The date un l which the por olio(s) are retrieved. Set by default to the
current date.
Loading data
Descrip on
tab
Frequency The frequency is set using two fields: Frequency and Frequency Unit. Enter a
number in the Frequency field and select a period in the Frequency Unit field.
For example, you can enter 1 in the Frequency field and select Month in the
Frequency Unit field drop-down list for monthly returns. The Frequency Unit
field lets you select a period from Day, Week, Month, Quarter, Semester and
Year.
Historical List Select the checkbox to load historical list components. Clear it to load Present
checkbox List components.
Load Hierarchy Select the Load Hierarchy From Parent if you want to load a Por olio’s
hierarchy, otherwise let it to No.
The relevant fields that are created in the por olio_freq structure are described in the sec on Por olio Frequency structure.
Field Descrip on
Status_e The status_e a ribute of the por olio_freq en ty defines the status of the
por olio:
A lot of informa on can be displayed using only these three fields. The informa on can be retrieved directly from the por olio or by using script keywords like PORT_CHRONO(), BENCH_WEIGHT(), BENCH_RETURN(), etc.
The Display Chrono process retrieves instrument, currencies or third par es according to the parameters entered in the Domain screen. The most important parameters are the Por olio Dimension, the Ini al Date, the Final Date, the Frequency,
and the Historical List checkbox. With this informa on, the process retrieves the objects between the dates specified and creates the instrument_freq, currency_freq or third_freq structures.
Frequency
Historical versus present list
Frequency
The Display Chrono func on retrieves the components of a list of instruments, currencies or third par es at the different dates defined in the Domain screen.
These dates are the Ini al Date, the Frequency dates, and the Final Date. This means that the Display Chrono func on, run from 15/01/99 un l 25/03/99 with a frequency of 1 month, retrieves the list’s components at the 15/01/99, 31/01/99,
28/02/99, and 25/03/99. These dates are the Frequency dates.
Depending on the Historical List checkbox se ng, the Display Chrono func on works with the present list or the historical components of the list. If the checkbox is cleared; that is, if it is set to Present List, Display Chrono shows the present
components at all dates.
If the checkbox is selected (set to Historical List), Display Chrono shows the historical components valid at the frequency date. If the list has no historical components, the present components are loaded.
If the Historical List flag is set, all lists used in the format (with the keywords WHERE_IN_GRID(), CLASSIFY(), IS_IN_LIST(), for example, or used by the valua on rules) are also based on historical lists.
1. From the Front Office - PM menu bar, choose Administra on > Chrono > Display Chrono.
Field Descrip on
Por olio It contains the following op ons in the drop-down list: Currency, Instrument, List,
Dimension Third Party, and All. Indicates which level is passed to the Composite Manager
func on.
Instrument The drop-down list op ons displayed depend on the op on selected in the
Dimension En ty/List field. The possible op ons are: Instrument, Currency, Third Party, and
All. The choice determines the name of the object or list that is displayed.
Ini al Date The date from which the Display Chrono starts. Set by default to current date
minus a year.
Field Descrip on
Final Date The date up to which the por olio(s) are retrieved. Set by default to the current
date.
Report Lets you choose a report (clear the field to display the results in the GUI).
Frequency The frequency is supplied using two fields. Enter a number in the Frequency field
and select a period in the Frequency Unit field. For example, you can enter 1 in the
Frequency field and select Month in the Frequency Unit field drop-down list for
monthly returns. The Frequency Unit field lets you select a period from Day, Week,
Month, Quarter, Semester, and Year.
Field Descrip on
Historical Select the checkbox to load historical list components. Clear it to load present list
List components.
Load Select From Parent to load a Por olio’s hierarchy, otherwise let it to No.
Hierarchy
The relevant fields that are created in the instrument_freq, currency_freq, and third_freq structures are described in sec ons Instrument Frequency Structure, Currency Frequency Structure, and Third (Party)
Frequency Structure.
Structures
The Display Chrono generates the instrument frequency, currency frequency or third frequency structure. The relevant fields in these structures are described below. For a complete descrip on of these structures, refer to the WealthSuite Front
Office - Por olio Management - Data Model Reference Guide.
Field Descrip on
Field Descrip on
Field Descrip on
A lot of informa on can be displayed using only two fields per structure. The informa on can be displayed either directly from the en ty or by using script keywords such as CURR_CHRONO(), THIRD_CHRONO(), INSTR_CHRONO(), INSTR_PRICE(),
EXCH_RATE(), etc.
The Display Compliance Chrono process retrieves risk measures according to the parameters entered in the Domain screen. The most important parameters are the En ty dimension (Por olio Dimension), the Objects (Por olio and Strategy), the
Ini al Date, the Final Date, and the Frequency. Currently, risk computa on is not supported for strategy. Although Strategy is used as a dimension to be consistent with ‘Compute Compliance Chrono’, it will not fetch any results. With this
informa on, the process retrieves the objects between the dates specified and creates the risk measure structures.
Frequency
Frequency
The Display Compliance Chrono func on retrieves the components of a por olio at the different dates defined in the Domain screen.
These dates are the Ini al Date, the Frequency dates, and the Final Date. This means that the Display Compliance Chrono func on, run from 15/01/16 un l 25/03/16 with a frequency of 1 month, retrieves the list’s components at the 15/01/16,
31/01/16, 29/02/16, and 25/03/16. These dates are the Frequency dates.
Field Descrip on
Por olio It contains the following op ons in the drop-down list: All, List, Por olio, and
Dimension Strategy. Indicates which level is passed to the Composite Manager func on.
Instrument The drop-down list op ons displayed depend on the op on selected in the
Dimension En ty/List field. The possible op ons are: All, Por olio, and Strategy. The choice
determines the name of the object or list that is displayed.
Ini al Date The date from which the Display Compliance Chrono starts. Set by default to
current date minus a year.
Final Date The date up to which the por olio(s) are retrieved. Set by default to the current
date.
Frequency The frequency is supplied using two fields. Enter a number in the Frequency field
and select a period in the Frequency Unit field. For example, you can enter 1 in the
Frequency field and select Month in the Frequency Unit field drop-down list for
monthly returns. The Frequency Unit field lets you select a period from Day, Week,
Month, Quarter, Semester, and Year.
Note: The fields in the Parameters tab have no impact on the func on results.
Structures
The Display Compliance Chrono generates the risk measure structure. The relevant fields in the structure are described below. For a complete descrip on of these structures, refer to the WealthSuite Front Office - Por olio Management - Data
Model Reference Guide.
Field Descrip on
confidence_level_n Returns the confidence level set for the por olio
The Yield Curve func on displays different coloured yield curves for each selected Yield Curve instrument.
1. From the Front Office - PM menu bar, choose Administra on > Chrono > Yield Curve.
The ini al screen displays only the Front Office - PM logo un l you select the Yield Curve instruments that you want to display.
2. To select the Yield Curve instruments you want to display, choose Edit > New for each new curve (or press [CRTL] + [N]). For example, if you select four Yield Curve instruments, the top le screen panel looks like
this:
3. A er the selected instruments are displayed, you can specify addi onal parameters to define the display, as follows:
The Reference Date column indicates the date on which the value of the rates is retrieved. You can therefore display one or more curves on the same or different dates.
The DB data column refers to a flag that describes if you merely want to display the value of the rates on the curve (Yes) or compute a series of homogeneous points on it (No). If you choose Yes, the
available rates are retrieved and displayed as they are (e.g. Money Market rates are simple and Swap rates compounded). If you choose No, the rates are used to define a curve with a series of
interpolated points (e.g. all rates are compounded and missing points linearly interpolated).
4. Click in the Instrument column in this panel to enable the Instrument selec on cell:
Enabled cell with Browse bu on (...). Click the Browse bu on to select a Yield Curve instrument.
5. A er the cell is enabled, click Browse to the right of the cell to open a Select Instrument screen. The instruments in this screen are all of the Yield Curve nature.
6. Select the Yield Curve instruments you want for each new cell.
7. Click Select at the bo om of the screen to display the actual curves of the instruments.
The Period/Value pane corresponds to one of the Yield Curve instruments in the le pane.
8. Click a Yield Curve instrument and it changes for that instrument. The ZOOM panel on the right lets you look at part of a yield curve, for example, from the fourth to the eighth year:
The graph
scale
changes
accordingly
to show
the period
from the
fourth to
the eighth
years
External func on
The aim of the External func on is to allow you to:
The ac on to perform is defined by the Default Value script linked to the external_defini on_c domain field. This field is not displayed.
There are two possible syntaxes, one for URLs and one for external applica ons:
URL www.oams.com - the keyword URL allows the user to open a Web browser screen in the GUI at the given address.
Excel.exe - allows users to run the Excel applica on.
Examples
Example 1: Boursorama
Example 2: Server tool
Example 3: Import Clipboard in Excel
Example 1: Boursorama
Boursorama is a financial site that lets you view historical data for a financial instrument. On this site, each financial instrument is defined by its Sicovam codifica on. The Sicovam codifica on has been defined in Front Office - PM.
It is possible to access this site via the Boursorama External Func on. The user can select an instrument in an associated user-defined screen.
Script
The default values of the Boursorama func on are:
Use
The following Domain screen is associated with the Boursorama func on:
If you enter an instrument in the Domain – Boursorama screen, the following window is opened, showing the Boursorama website page for the chosen instrument (in this case, FRANCE_TEL):
The Domain – Server Tool (user-defined) screen is linked to the Server Tool func on and contains the fields Ac on and Server Name.
Script
The following image shows the script for the Server Tool:
You must perform a copy to clipboard from a par cular format and then select this func on from the main menu. The Excel Applica on opens automa cally. If the Func on Security Profile is well defined, no Domain screen is opened.
Script
Valua on rules use lists and classifica on. The rules are associated with lists of posi ons, instruments, or currencies. Therefore, the classifica ons and lists must already exist before you can create Valua on Rules. For more informa on on
crea ng lists and classifica ons, refer to the WealthSuite Front Office - Por olio Management - User Guide. Rules are dis nguished by their nature.
Nature Descrip on
The instrument price is used directly in the Valua on func on. You can also use
keywords such as INSTR_PRICE which returns the instrument price and
BENCH_RETURN, BENCH_WEIGHT, which compute the instrument return and
weights in strategies.
The instrument price is also used in the Return, Performance, and Check Strategy
func ons.
Exch. Defines how to obtain the exchange rate between two currencies.
valua on
rule The selec on criteria that you can specify include the type of the exchange rate
(ask, bid, close, etc.), the provider of the exchange rate (Reuters, Telekurs, Internal,
etc.), and the market of the exchange rate (New York, London, etc.). Also, you can
define the intermediary currency for a cross exchange. For example, you can
specify that all the rates are crossed through the USD.
The Exchange Rate is used directly in the Valua on func on. You can also use
keywords such as EXCH_RATE which returns the instrument price and
BENCH_RETURN, BENCH_WEIGHT, which compute the instrument return and
weights in strategies, which computes the instrument return and weights in
strategies.
The exchange rate is also used in the Return, Performance, and Check Strategy
func ons.
Nature Descrip on
You can access the lending rule and especially the lending coefficient by using the
INSTR_PRICE keyword in the context of the extended posi on structure. The
system matches the extended posi on for an instrument with the extended
posi ons list, on which the instrument lending valua on rule is based, and returns
the appropriate lending coefficient.
Curr. Defines a margin percentage to be held in the case of currency mismatches, that is,
lending to use a posi on in one currency to allow a lending in another currency. These
valua on rules supplement the lending coefficients defined at the instrument level.
rule
Currency lending valua on rules apply to currency lists.
You can access the lending rule and especially the lending coefficient by using the
EXCH_RATE keyword in the context of the extended posi on structure. The
system can match the posi on currency for an instrument with the currency list, on
which the currency lending valua on rule is based, and return the appropriate
lending coefficient.
Book Defines how to compute the book value of a posi on. Typically, book value rules
valua on define the book value to be the higher of the cost price or the market price, or the
rule amor sed value of the cost price.
Theore cal Defines how to compute the theore cal value of a posi on. Typically, a theore cal
valua on valua on rule is first defined and then set in the AA_DEF_VAL_RULE system
rule parameter. If the instrument valua on rule is set to Theore cal (and the user is
licensed to use the Advanced Analy cs Module), the posi on in the instrument is
valued according to the valua on rule defini on (usually based on AA keywords).
You can also use keywords such as INSTR_PRICE which returns the instrument
price and BENCH_RETURN, BENCH_WEIGHT, which return the instrument
return and weights in strategies. The instrument price is also used in the Return,
Performance, and Check Strategy func ons.
P&L rule Lets you override the default profit and loss generated by the Fusion process. You
can define a P&L rule at the por olio or por olio Posi on Set (PPS) level. P&L rules
work with classifica ons on the Extended Posi on structure. First, the profit and
loss is normally generated by the fusion. Secondly, the default profit and losses are
reclassified using P&L rules. In this context, you can define your own profit and loss
counters (Balance Posi on Types) in the Valua on Rule Element en ty (refer to the
WealthSuite Front Office - Por olio Management - Opera ons, Posi ons, and
Fusions Reference Guide).
Useful Extended Posi on fields that can be used to reclassify P&L Balance
Posi ons:
init_ext_pos_id: Points to the ini al posi on that generates a profit and loss.
open_oper_id: Points to the final posi on that generates the profit and loss (it
is associated with the opera on that generates the profit and loss).
The Valua on func on first computes the price and exchange rate of a posi on before compu ng lending coefficients and book values.
Valua on rule
Valua on rule history
Valua on rule elements
Valua on rule
Field Descrip on
Denomina on Denomina on (descrip on). Although op onal, this is very useful when you are
dealing with a lot of valua on rules.
Cross Only used in the Exch. valua on rule screen. Enter the intermediary cross-rate
Currency currency.
Field Descrip on
Date Priority
Only used in the Quote and Exchange valua on rule screens. Select the Date
Priority checkbox if you require "Precedence", clear it for "No precedence". If
you select Precedence, priority is given to the most recent prices, even if the
quality of the price is not of rank 1.
This means that the Valua on func on first examines the most recent prices;
i.e., for day D-1, it looks at the ranks of the valua on rule elements. If it does
not find a price, it looks through the prices of day D-2, rank a er rank. This
process con nues un l an appropriate price is found. See tables below for the
ranking.
D-1 rank 1
rank 2
rank n
D-2 rank 1
rank 2
rank n
D-n rank 1
rank 2
rank n
If you clear the Date Priority checkbox (No precedence), priority is given to the
price with the highest rank, even if it is not recent. This means that the
Valua on func on first looks for the prices with the highest rank, that is, rank 1,
for the first day, then repeats the process for the preceding day, and so on. If it
does not find a price, it goes through the prices with rank 2, day by day. This
process con nues un l an appropriate price is found.
Rank 1 D-1
D-2
D-3
Rank 3 D-2
D-2
D-3
Rank n D-n
D-2
D-3
Each valua on rule history is based on a classifica on. The valua on rule elements are based on the lists, which make up this classifica on.
For the different natures of valua on rules, you can use classifica ons based on the following en es:
When you create a Valua on Rule, all the lists specified in the Valua on Rule elements must belong to the classifica on you specified in the valua on rule history.
All the lists in the classifica on must be referenced in at least one element.
It is possible to define more than one valua on rule element per list. These must be dis nguished by different ranks. The rank defines the order in which the valua on rule elements are evaluated (see
descrip on of the a ribute Date Priority in sec on Valua on rule).
Except for valua on rules with the Theore cal valua on rule nature, it is very important to create the OTHER list so that all the data (instrument, ext_pos and currency) can be classified by default. In this case,
the Valua on Rule field (in the Valua on Rule Element) is set to <None>. This means that the valua on rule defined at instrument level is used.
The following sec ons describe the relevant fields of various Valua on Rule Element screens:
Field Descrip on
Type Indicates the type of instrument price specified in the rule element. If no type is
specified, the system retrieves the best price with type = NULL. If not found, it selects
the best price with the first type on the list.
Note: If the price type has a rank of zero, prices with this type are never selected as
the best price.
Market Indicates the market of instrument price specified in the rule element. If no market is
specified, the system only looks for the best price with market = NULL.
Provider The provider of the instrument price specified in the rule element. If no provider is
specified, the system only looks for the best price with provider = NULL.
Rank Indicates the priority of the different rules for the same list within a valua on rule
history. The lower the rank, the higher the priority (see descrip on of the a ribute
Date Priority in sec on Valua on rule).
Valua on Defines the Valua on Rule to apply to the instrument. If you choose the valua on
Rule rule Linear Valua on, you can use a script defini on. The script defini on is based on
the en ty specified in the Script En ty field. In this case, the value can be either
Instrument or Extended Posi on.
Price When the market is not specified, determines if the system uses the default market
Market specified at the instrument level, or any market.
Rule
Price When the provider is not specified, determines if the system uses the default
Provider provider specified at the instrument level, or any provider.
Rule
Price When the currency is not specified, determines if the system uses the posi on
Currency currency, the instrument reference currency or any currency.
Rule
With the Price Market Rule, Price Provider Rule and Price Currency Rule fields, you must take care not to reference empty fields. For example, if these rules are set to "Instrument" and no value exists at the instrument level for the a ribute, the
system returns a zero price.
Exchange Rate Valua on Rule element
The a ributes or fields you can complete in an Exchange Rate retrieval rule element screen are as follows:
Field Descrip on
Field Descrip on
Provider Indicates the provider of the exchange rate specified in the rule element.
At the valua on rule level, you can define a cross currency which is the currency used for compu ng cross rates.
Instrument Lending Valua on Rule element
The following a ributes or fields apply to an instrument lending rule:
Field Descrip on
Defini on Defines more complex rules and their associated lending coefficient.
Field Descrip on
Defini on Defines more complex rules and their associated lending coefficient.
Field Descrip on
Maximum The computa on rules that can be associated with the main book computa on
Constraint rule.
Book Pre- Determines if a pre-adjustment of the book value must be automa cally
Adjustment performed for the instrument belonging to the list of elements.
Flag
Field Descrip on
List Defines the instrument or extended posi on list to which the rule applies.
Valua on Can only be Valued using script. The associated script defini on can be based either
Rule on the Instrument or the Extended Posi on en ty, as specified in the Script En ty
field.
Field Descrip on
List Defines the extended posi on list to which the rule applies.
BP Type Defines the P&L Balance Posi on Type associated with the rule.
Theore cal No No No
Except when used in a keyword, the valua on rules apply in the following order of priority:
Note: The construc on of the pos_val structure does not take account of the exchange valua on rule defined in the por olio or por olio posi on set. Consequently, it is recommended to specify the exchange valua on rule in the domain.
Note, however, that the quote valua on rule specified in the por olio or por olio posi on set is taken into account.
Keywords
The following table shows the keywords in which valua on rules can be used:
BENCH_RETURN
BENCH_WEIGHT
BENCH_RETURN
BENCH_WEIGHT
System parameters
The following system parameters are used by valua on rules:
PRICE_SEL_ORDER You can specify the order in which prices are selected if the
applica on system parameters are used: B = business en ty
(mul -en ty func onality only), C = currency, M = market, T
= price type, P = provider, and F = term type.
Example: BCMTPF
EXCH_RATE_SEL_ORDER The user can specify the order that must be used to select
exchange rates if the applica on system parameters are
used: B = business en ty (mul -en ty func onality only), M
= market, T = price type, and P = provider.
Example: BMTP
Examples
Example 1: Linear valua on of Belgian and French cer ficates
Example 2: Theore cal valua on rule
Example 3: Lombard valua on
Problem descrip on
The following example shows how to perform a linear valua on (both Belgian and French types).
In some por olios (cash funds), all the Belgian cer ficates must be valued linearly if they are purchased in the last 6 months before expira on. Otherwise, they are valued "mark to market" (defined at instrument level). Therefore, we have 2
different types of posi ons according to their valua on method.
The formula to compute the linear price from the Buy price and the opera on date is:
Where:
Njt= Number of days of the linearisa on period depending on the opera on date(= expira on date – opera on date)
In France, the method is similar but easier. The linear valua on is applied to the whole posi on, based on the price in the instrument table (and not the price in the posi on table) over the last 3 months. This only applies to French TCN (Discount
Instrument nature). The yield is maintained constant un l expira on.
The general idea is to create a Valua on Rule element for each valua on method: an element for Belgian linear valua on, an element for French linear valua on and an element for the default method.
We must first define the lists we are going to use and group them together in a classifica on, because a valua on rule element is associated with a list of instruments.
For Belgian cer ficates, when an opera on is created in a por olio in the 6 months before maturity, the Reference Nature of the opera on must be set to "Open". This way, the posi ons will not merge together as only the new posi on will be
valued linearly and the old posi ons remain marked to market.
More informa on on the crea on of lists and classifica on can be found in the WealthSuite Front Office - Por olio Management - User Guide.
Crea ng valua on rule, valua on rule history and valua on rule elements
Create a new valua on rule with the Quote valua on rule nature. Create a valua on rule history with a begin date in the past (before the first date, on which you want to use the valua on rule in the business func ons) and reference you
instrument classifica on in the history. For this history, create three valua on rule elements, one for each list of your classifica on, as follows:
Rank 1 2 3
For the "Others" list, the valua on rule must be set to None, such that Front Office - PM uses the method defined at the instrument level.
IF Set the
condi on
(DATEDIFF(DOMAIN().calc_from_d, that the
end_d,MONTH,accrual_rule_e) <=3, date of the
domain
must fall in
the last 3
months
QUOTE_TO_PRICE(id, before
expira on
INSTR_PRICE (computed
according to
(id,DATEADD(end_d,MONTH,-3),0,0,0,0,,,,,) the Accrual
Rule of the
instrument),
.quote_n,
DOMAIN().calc_from_d,price_calc_rule_e,,,)
then the
price is
, computed,
INSTR_PRICE(id,DOMAIN().calc_from_d,0,0,0,0,,,,,).price_n
based on
) the quote 3
months
before
expira on
at the Ini al
Date of the
domain
according to
the price
calcula on
rule in the
instrument,
else
perform
valua on
using the
current
price in the
instrument.
QUOTE_TO_PRICE(instr_id,quote_n,
DOMAIN().calc_from_d,instr_id. then the price is computed
price_calc_rule_e,,,), from the buying quote in the
opera on,
)
else perform valua on with
the current price in the
instrument.
Now the valua on rule is ready to use. You can link it to a por olio or set it in the domain.
This sec on explains the defini on of this rule to facilitate the adapta ons, which might be done by the bank.
The table below summarises the script defini ons for all the PCK_RI_* lists.
PCK_RI_CRR_CONV_LIST nature_e = 19
SYSDATE())).underly_instr_id.nature_e IN (2,4,15))
PCK_RI_BS_OPT_LIST ((def_model_e = 2) OR
(GET_TERM_EVENT(id,SYSDATE()).underly_instr_id.nature_e
IN (1,2,4,6,7,8))) OR nature_e=22)
((def_model_e = 0) AND
(GET_APPL_PARAM("OPT_PRICING_MODEL") = "1")))
AND
(GET_TERM_EVENT(id,SYSDATE()).underly_instr_id.nature_e
IN (1,8,4))
PCK_RI_DF_FRA_LIST nature_e = 19
PCK_RI_DF_FLOW_LIST nature_e=25
(flow instruments)
All these lists form the classifica on PCK_RI_CLASSIF, on which the valua on rule is based.
In the valua on rule elements, a script defini on is assigned to each list. These script defini ons are based on the AA_ keywords. For example, the op ons of the PCK_RI_BS_OPT_LIST are valuated by using the Black-Scholes model, which
the op ons of the PCK_RI_CRR_OPT_LIST are valuated by using the Cox, Ross and Rubinstein model.
As the instrument lending rules are based on classifica on of extended posi ons, you can use all a ributes of ext_pos for their script defini on. For example, you can have separate lists for long op on posi ons and short op on posi ons by
crea ng script defini ons:
When defining the valua on rule elements, you can assign a lending coefficient to each list of the classifica on. Front Office - PM even allows defining mul ple lending coefficient for the same list by using the lending coefficient's nature, for
addressing different types of lending (e.g., lending to buy securi es, for house mortgages, for consumer credits).
Currency lending rules are based on currency classifica ons. This allows adding an addi onal factor when posi ons are held in a foreign currency.
Lending rules cannot be set in the domain of the valua on func on. They must be linked to the por olio, for which they are valid.
The lending coefficients can then be retrieved in format elements by using the keywords INSTR_PRICE and EXCH_RATE. For example,
returns the value of the lending coefficient of nature 0 for the current posi on from the instrument lending valua on rule, which is linked to the por olio, and
returns the value of the lending coefficient of nature 0 for the posi on currency from the currency lending valua on rule, which is linked to the por olio.
The amount in reference currency, which can be lent against a posi on, can then be calculated as
where @val_rule_coeff and @curr_lend_coeff reference the format elements, which contain the above script defini ons.
The keywords VAL_RULE_ELEM and VAL_RULE_HIST can help you to check your implementa on. For example
returns the valua on rule element of the por olio's instrument lending rule, which is used for the current posi on, and
returns the valua on rule element of the por olio's currency lending rule, which is used for the current posi on.