Eclipse Software, Inc. Knowledge Base

Contents

Key Links

The Knowledge Base is the reference data component of the Framework. There are two primary classes of entities in the Knowledge Base:

The only parts of the Framework that are built-in are the concepts of the Register and Association tables (and the derived data in the Positions and Balances area). For instance, there are no built-in transactions, such as the Buy of a Treasury security. The transactions and other application items are set up in the Knowledge Base. For a Buy of a Treasury an entry is created in the Register Type table. Parameters there determine all the associated processing: quantity and money fields and their distributions, required/optional/forbidden fields, and the like.

It is through the Knowledge Base that the investment products, transactions, and processing described under Areas of Expertise can be handled within a single framework, without reprogramming.

The full Knowledge Base is quite extensive, so we will present only the components most relevant to transaction, positions, and balances processing. In particular we will not address the security master or the counterparty components.

Some components of the Knowledge Base are true metadata, controlling many aspects of the processing at a very detailed level (Register Type and Association Type are the most important of these). Others serve primarily as static reference data.

The Knowledge Base stores the information on the application-specific processing. Much of the associated processing itself is managed through the Processing Rules component of the Framework. The Data Structures component includes a model of the Knowledge Base entities.

The Knowledge Base is key to the reuse of the Framework for new situations, such as additional securities classes, settlement methods, and transaction types. For a discussion, see Extending the Framework.

Amount Type

The purpose of this entity is to recognize and promote the commonness in the processing of quantity and money amounts. Quantity accounting is common to all inventory applications, but the presence of a well-established, self-balancing framework with commonly understood accounts (the stock record) leads naturally to a unified, standard handling of quantity and money amounts.

Though the Framework supports any number of Amount Types, we have not encountered any other than the two listed here.

Within the Framework this is more static data than true metadata as no processing is driven by the value.

As implied by the Register, Association, and PandB entities, it is not possible to have a given amount distributed to two different Amount Types; the distribution is always to a single Amount Type.
CodeLong Name
MMoney
QQuantity

Book Type

The concept of multiple sets of books is common in accounting systems: the "official" books, audit books, tax books, cash books (vs. accrual). There are a number of uses of this concept in securities accounting.
CodeLong NameDescription
BUDBudgetApproved budget amount.
BUDRBudget - revisedRevised budget amount.
MEMOMemorandumThese are memorandum amounts (not memorandum accounts).
MSEGSegregation memoOne approach to segregating customer positions on the stock record (the other is to use a different location account).
NOTNNotionalThese are off-balance amounts that are useful for accruing P&L.
PRIMPrimaryOfficial books and records; on balance sheet.

The great majority of postings are to PRIM. The structure is designed to support postings in multiple Book Types to the same account, as implied by the list.

Distribution Accounts

The Register records all information for updating positions and balances, which are kept in the PandB entity. There are two charts of accounts, one for each Amount Type (money and quantity).

Money (General Ledger) Accounts

Monetary values (principal, interest, realized P&L, etc.) are tracked at various levels of details in systems maintaining account information. Identification can include combinations of the trading account (or desk), security (or security class), counterparty account, and the like. Typically a trading system will have the greatest detail, books and records an intermediate level, and the firm general ledger will have the least.

The most basic level, common to all, is the ledger account portion. This identifies the account as being principal rather interest, for instance. Being precise, the ledger account is any device for accumulating additions and subtractions relating to a single element of the financial statements. See "account" in [AcctLangBus05] and ¶1 - 7 of [FASBCon6].

Within the Framework there are two classes of ledger accounts:

The following table lists the ledger codes (type "G") we will use in discussing transaction processing.
CodeLong NameShort NameStType
BUALong - Accrued Coupon Interest IncLong-Int IPL
BUIBuys - InterestBuys - IntBS
BUPBuys - PrincipalBuys - PrnBS
CPCCoupon ClearingCpn ClearBS
CPPCoupon PayableCoupon PayBS
CPRCoupon ReceivableCoupon RecBS
CSHCashCashBS
CUPCustomer PayableCust PayBS
CURCustomer ReceivableCust RecBS
DVCDividend ClearingDiv ClearBS
DVIDividend IncomeDiv IncPL
DVXDividend ExpenseDiv ExpPL
LOALoans - Interest Expense (accrued)Loan I/ExpPL
LOILoans - Interest PayableLoan I/PayBS
LOPLoans - PrincipalLoan PrinBS
PLRProfit & Loss - RealizedP&L - RealPL
PLUProfit & Loss - UnrealizedP&L - UnRePL
PLXP&L Accounts -- Realized / UnrealPL
RETRetained EarningsRet EarngsBS
RPARepos - Interest Expense AccrualRP - Int XPL
RPIRepos - Interest PayableRP - Int PBS
RPPRepos - PrincipalRP's PrnBS
RVAReve RPs - Interest Income AccrualRV - Int IPL
RVIReverse Repos - Interest ReceivableRev RP IRBS
RVPReverse Repos - PrincipalRev RP PrnBS
SEAShort - Accrued Coupon Interest ExShort IntPL
SEISells - InterestSells- IntBS
SEPSells - PrincipalSells- PrnBS
SOASold F - Interest Income (accrued)Sold I/IncPL
SOISold Funds - Interest ReceivableSold I/RecBS
SOPSold Funds - PrincipalSold PrinBS
ZBBSuspense - Beginning BalancesSusp-BBLSBS

The columns:
Code3-character identifier that will be used in discussing transactions and processing.
Long NameText description of the ledger code.
Short NameShorter description of the ledger code.
StTypeStatement type: PL = P&L, BS = Balance Sheet. This field is solely informational; it doesn't affect any processing.

Quantity Accounts

The financial industry has a standard double-entry, self-balancing bookkeeping system for tracking the inventory of securities: stocks, bonds, contracts, and the like. Like other inventory control systems, it focuses on where items of inventory are and who has claims on them.

As with the money accounts, we keep customer due to/due from information at the detail customer account level. These accounts are prefixed with a type of "C". The other types are discussed after the list of accounts.
TypeSubLong Name
CCounterparty Receivable/Payable
TTrading Account (Proprietary Position)
TBBORTrading Account -- Bond Borrow
TBLONTrading Account -- Bond Loan
TFDELTrading Account -- Free Deliver
TFRECTrading Account -- Free Receive
TREPOTrading Account -- Repo'd Out
TFRECTrading Account -- Reversed In
TSBORTrading Account -- Stock Borrow
TSLONTrading Account -- Stock Loan
LBOXIn the box
LSEGSegregated, apart from the Box

The columns:
Type1-character identifier identifying the general type: C = Counterparty, T = Trading Account, L = Other Location.
SubSpecific area within the Type.
Long NameText description of the inventory location.

Register Type

The Register entity stores all the information necessary for updating the firm's positions and balances. The primary relevant Knowledge Base entity is the Register Type. This entity contains two types of information:

Only the first type will be discussed here. See Processing Rules for further information on process control.
Quantity DistributionPrincipal DistInterest Dist
Reg TypeDescriptionAbbreviationLgAcctShAcctDrAcctCrAcctDrAcctCrAcctBook
ACCR-CPNPCoupon PayableCoupon PayBBGSEIGCPPBBPRIM
ACCR-CPNRCoupon ReceivableCoupon RecBBGCPRGBUIBBPRIM
ACCR-INTLInterest on Long Settled PositionsLong IntBBGBUIGBUABBPRIM
ACCR-INTSInterest on Short Settled PositionShort IntBBGSEAGSEIBBPRIM
ACCR-LOANBank Loan AccrualBank LoansBBGLOAGLOIBBPRIM
ACCR-NPRNNormalize PrincipalNorm PrinBBGBUPGSEPBBPRIM
ACCR-PLRLTrading P&L - Realized - LossP&L-Real-LBBGPLRGSEPBBPRIM
ACCR-PLRPTrading P&L - Realized - ProfitP&L-Real-PBBGBUPGPLRBBPRIM
ACCR-PLULTrading P&L - Unrealized - LossP&L-Unrl-LBBGPLUGSEPBBPRIM
ACCR-PLUPTrading P&L - Unrealized - ProfitP&L-Unrl-PBBGBUPGPLUBBPRIM
ACCR-REPORepo Interest Payable AccrualRepo IPayBBGRPAGRPIBBPRIM
ACCR-REVEReverse Interest Receivable AccrReve IRecBBGRVIGRVABBPRIM
ACCR-SBIBorrowers' Interest AccrualBorr IntBBGSBIGSIABBPRIM
ACCR-SIAInterest Income/Fee Income AccrualIntInc/FeeBBGSIAGSFABBPRIM
ACCR-SOLDSold Funds AccrualSold FundsBBGSOIGSOABBPRIM
ACCR-SPIParticipants' Interest AccrualPart IntBBGSIAGSPIBBPRIM
BBOR-CLOSBond Borrowing - Closing SideBBOR-CloseCT-BBORCGRVPCGRVIPRIM
BBOR-OPENBond Borrowing - Opening SideBBOR-OpenT-BBORCGRPVCGCPRIM
BLON-CLOSBond Loan - Closing SideBLon-CloseT-BLONCGRPPCGRPICPRIM
BLON-OPENBond Loan - Opening SideBLon-OpenCT-BLONCGRPPCGPRIM
BUY -BuyBoughtTCGBUPCGBUICPRIM
COLL-SWAPCollateral SwapColl SwapVVVVVVPRIM
CPN -PAYCoupon PayableCpn PayBBGCPCCBBPRIM
CPN -RECCoupon ReceivableCpn RecBBC GCPCBBPRIM
CXL -CancellationCancelVVVVVV
DEL -DeliverDeliverLBOXCGCSHCGCSHCPRIM
DIV -PAYDividend PayableDiv PayBBGDVCCBBPRIM
DIV -RECDividend ReceivableDiv RecBBC GDVCBBPRIM
FDEL-CLOSFree Deliver of Collateral - CloseF/D-CloseT-FDELCGCGCPRIM
FDEL-OPENFree Deliver of Collateral - OpenF/D-OpenCT-FDELCGCGPRIM
FREC-CLOSFree Receive Collateral - ClosingF/R - ClosCT-FRECCGCGPRIM
FREC-OPENFree Receive Collateral - OpeningF/R - OpenT-FRECCGCGCPRIM
JNL -AUTCCash for clearance (auto-gen'd)Auto-CashCLCGCSHCGPRIM
JNL -BUICoupon LongCpn LongBBGCPCGBUIBBPRIM
JNL -COUPCoupon PaymentsCouponsBBVVBBPRIM
JNL -DVIDividend IncomeDiv IncBBGDVCGDVIBBPRIM
JNL -DVXDividend ExpenseDiv ExpBBGDVXGDVCBBPRIM
JNL -LOCCLocation ChangeLoc ChangeVVBBBBPRIM
JNL -OFRLExpirations - Opts & Futs - LongExp O&F LgCTGGGGPRIM
JNL -OFRSExpirations - Opts & Futs - ShortExp O&F ShTCGGGGPRIM
JNL -OPCROpening Positions - CreditOp Pos CRLBOXTGCSHGSEPGGPRIM
JNL -OPDROpening Positions - DebitOp Pos DRTLBOXGBUPGCSHGGPRIM
JNL -OTHROtherOtherVVVVGGPRIM
JNL -PODFPair-off DifferencesP/O DiffCLCGCGPRIM
JNL -REDMRedemptionsRedemptionVVVVVVPRIM
JNL -RELORedemption of Long PositionRedemptionLBOXTGCSHGBUPGCSHGBUIPRIM
JNL -REPRRepricingRepricingVVVVVVPRIM
JNL -RESHRedemption of Short PositionRedemptionTLBOXGSEPGCSHGSEIGCSHPRIM
JNL -RPRORepricing - Money DifferenceRepricingVVVVVVPRIM
JNL -SEICoupon ShortCpn ShrtBBGSEIGCPCBBPRIM
LOAN-CLOSBank Loans - Closing PieceBL-CloseLCGLOPCGLOICPRIM
LOAN-OPENBank Loans - Opening PieceBL-OpenCLCGLOPCGPRIM
LOCC-SEGIPlacing into segregationInto SegLBOXLSEGGGGGPRIM
LOCC-SEGOTaking out of segregationOut of SegLSEGLBOXGGGGPRIM
LOCM-SEGIPlacing into Seg memoSeg Memo ICLSEGGGGGMSEG
LOCM-SEGOTaking out of Seg memoSeg Memo OLSEGCGGGGMSEG
MRGN-INMargin - Cash ReceivedMargin-INBBGCSHCBBPRIM
MRGN-OUTMargin - Cash wired outMargin-OutBBCGCSHBBPRIM
REC -ReceiveReceiveCLBOXCGCSHCGCSHPRIM
REPO-CLOSRepurchase - Closing PieceRepo/CloseT-REPOCGRPPCGRPICPRIM
REPO-OPENRepurchase - Opening PieceRepo/OpenCT-REPOCGRPPCGPRIM
REV -ReversalReversalVVVVVV
REVE-CLOSReverse Repurchase - Closing PieceRepo/CloseCT-REVECGRVPCGRVIPRIM
REVE-OPENReverse Repurchase - Opening PieceRepo/OpenT-REVECGRVPCGCPRIM
REVR-DELCustomer Reversal - DeliverRevr DelLBOXCGCSHCGCPRIM
REVR-RECCustomer Reversal - ReceiveRevr RecCLBOXCGCSHCGPRIM
SELL-SellSoldCTCGSEPCGSEIPRIM
SOLD-CLOSSold Funds - Opening PieceS/F-OpenCLCGSOPCGSOIPRIM
SOLD-OPENSold Funds - Opening PieceS/F-OpenLCGSOPCGCPRIM
UNCL-DELUNCL Loan - DeliverUNCL DelLBOXCGCSHCGGPRIM
UNCL-RECUNCL Loan - ReceiveUNCL RecCLBOXCGCSHCGPRIM
WIRE-INMoney wired inMoney inBBGCSHCBBPRIM
WIRE-OUTFunds Wired - SentFunds OutBBCGCSHPRIM

The columns:
Reg TypeIdentifies business transactions (e.g., BUY, SELL, WIRE), settlements (REC, DEL), system-generated journals (ACCR-CPNR, ACCR-PLRP), bookkeeping journals (JNL-COUP, JNL-REDM), audit history (CXL, REV): anything that can affect the books and records.
DescriptionText description of the register type.
AbbreviationShorter description of the register type.
Quantity DistributionFour columns: the first two give the type and account of the long side of the distribution, and the next two pertain to the short side. The type values and associated accounts are:
BBlankThis transaction has no quantity distribution.
VVariableDistribution may either be entered by the user (e.g., a journal entry) or dependent on another entry (e.g, a CXL reverses the distribution of the original Register entry).
CCounterpartyAccount is a counterparty number.
LLocationStock record location. See Quantity Accounts for the list.
TTrading AccountThe trading account is the distribution account. If the value is preceded with a "-", the distribution account has the text appended (e.g., a repo for trading account 9161 will have a distribution of 9161-REPO).
Principal DistributionThe distribution for the first money field on the transaction (typically principal). The structure parallels the Quantity Distribution. The type values and associated accounts are:
BBlankThis transaction has no quantity distribution.
VVariableDistribution may either be entered by the user (e.g., a journal entry) or dependent on another entry (e.g, a CXL reverses the distribution of the original Register entry.
CCounterpartyAccount is a counterparty number (customer receivable/payable).
GGeneral Ledger accountThe account is typically a code (see Money Accounts below), which will go through a translation step to result in a GL account number.
BookUsually PRIM, for books and records. See Book Type. Each amount being distributed can have its own Book Type, of course, but we have just shown one here for simplicity.

This presentation mirrors the generalized model of the Framework. It shows one quantity distribution and two money distributions (principal and interest). This is for convenience only. Transactions can have any number of distributions of either type.

We repeat that the table given above contains sample entries made into the Register Type repository. They reflect the particular needs of an individual firm. The number and type of entries that can be set up are essentially unlimited.

Association Type

The Register and Association Types are the primary process control entities of the Knowledge Base. For this discussion we are concerned with the final representation in the data tables, and how that information is used to manage positions and balances.

For details on the processing that results in association entries see Processing Rules.
Association TypeDescriptionAbbreviation
ADDAdd (enter) a transactionAdd
AFCLClear out accrued interestClear AF
BBCLCloseout of a RP/RV BuybackRP/RV Clos
BBCOCorrection of a RP/RV BuybackRP/RV Corr
BKOBack out an associationBackout
CLRClearanceClearance
CORRCorrectionCorrection
CSWPCollateral SwapColl Swap
CVWIWI ConversionWI Convert
CXLCancellationCancel
CXRNCancel & Re-instate NewCXL/R-New
CXROCancel & Re-instate OldCorrection
FRACSplit one trade into twoSplit
FRCLCloseout of a Free Receive/DeliverFree Clos
KO-RKeyoff Reversal (leave item)KO-Reverse
KORKeyoff Reversal (leave item) - AnyKO-Rev Any
LO-SBank Loans - SettlingLoan-Settl
MD-GGenerate a Money DifferenceGen MoneyD
MD-SMoney Difference - SettlingMD-Settle
MODSModification not affecting sttlmntMod/Settle
P/OPairoffPairoff
PD-SP/O Difference - SettlingPO-Settle
PO-EEarly Pair-offsEarly P/Os
PO-LLate Pair-offsLate P/Os
PO-PPartial Pair-offsPart. P/Os
RCXLRe-cancelRe-cancel
REVRReverse SettlementRev Settle
RPRNRe-price & Re-instate NewReP&R-New
RPRORe-Price & Re-instate old ItemReprice
RSTLRe-settleRe-settle
S-FFSU/D: Settle to Fail (w/delete)Fail
SETLSettlementSettle
UNCLUNCL SettlementUNCLSettle
UNDOUndo Settlement & Delete ItemUndo&Delet
VARTVariable Rate ChangeRate Chge
WIREFunds WiringFunds Wire


Copyright 2005-2021, Eclipse Software, Inc (ESI).  E-mail: WebSite@eclipsesoftware.biz.