ORE Studio 0.0.4
Loading...
Searching...
No Matches
Public Attributes | List of all members
fra_instrument Struct Referencefinal

Forward Rate Agreement (FRA) instrument. More...

#include <fra_instrument.hpp>

Collaboration diagram for fra_instrument:
Collaboration graph

Public Attributes

int version = 0
 Version number for optimistic locking and change tracking.
 
utility::uuid::tenant_id tenant_id = utility::uuid::tenant_id::system()
 Tenant identifier for multi-tenancy isolation.
 
boost::uuids::uuid instrument_id
 UUID uniquely identifying this FRA instrument.
 
boost::uuids::uuid party_id
 Party that owns this instrument.
 
std::optional< boost::uuids::uuid > trade_id
 Optional soft FK to the parent trade.
 
std::string start_date
 FRA start date.
 
std::string end_date
 FRA end date.
 
std::string currency
 ISO 4217 currency code.
 
std::string rate_index
 Floating rate index code.
 
std::string long_short
 Position direction: Long or Short.
 
double strike = 0.0
 Fixed contract rate.
 
double notional = 0.0
 Notional principal amount.
 
std::string description
 Optional free-text description.
 
std::string modified_by
 Username of the person who last modified this FRA instrument.
 
std::string performed_by
 Username of the account that performed this action.
 
std::string change_reason_code
 Code identifying the reason for the change.
 
std::string change_commentary
 Free-text commentary explaining the change.
 
std::chrono::system_clock::time_point recorded_at
 Timestamp when this version of the record was recorded.
 

Detailed Description

Forward Rate Agreement (FRA) instrument.

Represents a Forward Rate Agreement instrument that fixes a future interest rate for a notional principal amount over a specified period.

Member Data Documentation

◆ instrument_id

boost::uuids::uuid instrument_id

UUID uniquely identifying this FRA instrument.

Surrogate key for the instrument record.

◆ party_id

boost::uuids::uuid party_id

Party that owns this instrument.

Set from session variable app.current_party_id.

◆ trade_id

std::optional<boost::uuids::uuid> trade_id

Optional soft FK to the parent trade.

Links instrument to a trade if applicable.

◆ start_date

std::string start_date

FRA start date.

ISO 8601 date string (YYYY-MM-DD).

◆ end_date

std::string end_date

FRA end date.

Must be after start_date.

◆ currency

std::string currency

ISO 4217 currency code.

e.g., USD, EUR, GBP.

◆ rate_index

std::string rate_index

Floating rate index code.

e.g., LIBOR, EURIBOR, SOFR.

◆ long_short

std::string long_short

Position direction: Long or Short.

Indicates whether the party is a buyer (Long) or seller (Short).

◆ strike

double strike = 0.0

Fixed contract rate.

Expressed as a decimal fraction.

◆ notional

double notional = 0.0

Notional principal amount.

Must be positive.

◆ description

std::string description

Optional free-text description.

Human-readable notes about this instrument.

◆ change_reason_code

std::string change_reason_code

Code identifying the reason for the change.

References change_reasons table (soft FK).