ores.refdata.tenor

Table of Contents

Persisted catalog of the standard tenor labels, so a user can see, manage, and order the set of tenors the system knows about rather than relying on labels implied by parsing logic alone. This table carries convention-independent identity only — how a given tenor resolves under a particular curve type is Tenor Convention's concern, recorded via Tenor Convention Resolution. Broken dates are deliberately out of scope — they are per-instance ladder data, not master data, and reference a row here only when they happen to coincide with a standard label.

1. Flags

2. Columns

2.1. code

Unique tenor code.

Examples: 'O/N', 'T/N', 'S/N', 'S/W', '1W', '1M', '1Y', 'SPOT'.

std::string(faker::word::noun()) + "_tenor_" + std::to_string(++counter)

2.2. display_name

Human-readable common name (e.g. 'Overnight', 'One Month', 'Spot').

std::string(faker::lorem::word())

2.3. description

Longer-form description of the tenor and where it typically appears.

std::string(faker::lorem::sentence())

2.4. sort_order

Explicit display/ladder ordering. Not derived from parsing the code, so labels with no natural lexicographic order relative to periods (e.g. SPOT among O/N=/=T/N=/=S/N) sort correctly.

ctx.random_int(0, 1000)

2.5. kind

Either SPECIAL (O/N, T/N, S/N, SPOT, TODAY, TOMORROW — no fixed offset; resolved by rule per convention) or PERIOD (regular nD=/=nW=/=nM=/=nY labels with a fixed offset from the convention's anchor).

std::string("PERIOD")

2.6. unit

Period unit for PERIOD tenors: DAY, WEEK, MONTH, or YEAR. NONE for SPECIAL tenors, which have no fixed unit/multiplier of their own.

std::string("MONTH")

2.7. multiplier

Period count for PERIOD tenors (the n in nD=/=nW=/=nM=/=nY). Null for SPECIAL tenors.

ctx.random_int(1, 30)

3. SQL

3.1. Flags

4. Insert trigger

4.1. Validations

column validation_function
kind ores_refdata_validate_tenor_kind_fn
unit ores_refdata_validate_tenor_unit_fn
change_reason_code ores_dq_validate_change_reason_fn

5. C++

5.1. Flags

5.2. Repository

5.3. Domain includes

#include <string>

5.4. Conventions

5.5. Presentation

5.5.1. Detail fields

field label widget type is_key is_required placeholder flag_source combo_domain_type combo_fetch_include combo_fetch_fn combo_watcher_name combo_code_field combo_tooltip_field combo_sort_field combo_label combo_setter_pascal badge_key
code Code codeEdit line_edit true true Enter tenor code (e.g. 1M)                      
display_name Display Name displayNameEdit line_edit   true Enter display name                      
description Description descriptionEdit text_edit     Enter a description                      
sort_order Sort Order sortOrderEdit spin_box   true                        
kind Kind kindCombo dynamic_combo   true     refdata::domain::tenor_kind   fetch_tenor_kinds tenorKindWatcher code description display_order tenor kinds KindCombo tenor_kind
unit Unit unitCombo dynamic_combo   true     refdata::domain::tenor_unit   fetch_tenor_units tenorUnitWatcher code description display_order tenor units UnitCombo tenor_unit
multiplier Multiplier multiplierEdit spin_box                            

5.5.2. Columns

enum_name field header type width is_badge badge_key formatter formatter_include
Code code Code string 100        
DisplayName display_name Display Name string 160        
Description description Description string 300        
SortOrder sort_order Sort Order int 90        
Kind kind Kind string 90 true tenor_kind    
Unit unit Unit string 90 true tenor_unit    
Version version Version int 80        
ModifiedBy modified_by Modified By string 120        
RecordedAt recorded_at Recorded At timestamp 150        

5.5.3. Related entity shortcuts

signal icon label tooltip
Conventions Table Conventions Open Tenor Conventions list
Anchors Anchor Anchors Open Tenor Anchors list

5.6. Custom repository methods

5.6.1. read_all_ordered

Reads every tenor for the tenant ordered by sort_order, for populating a ladder or a tenor picker in display order.

6. See also

  • Tenor — domain concept.
  • Pillar — the subset of tenors actually quoted as live inputs to a given curve.
  • Tenor Convention — the per-asset-class resolution rules for these labels.
  • Tenor Convention Resolution — which tenors belong to which convention, and any anchor override.

Emacs 29.3 (Org mode 9.6.15)