public final class Helper extends Object
Modifier and Type | Field and Description |
---|---|
static double |
EPSILON_1 |
Constructor and Description |
---|
Helper() |
Modifier and Type | Method and Description |
---|---|
static List<com.opengamma.strata.collect.tuple.Pair<java.time.LocalDate,java.time.LocalDate>> |
accruals(com.opengamma.strata.collect.tuple.Pair<java.time.LocalDate,java.time.LocalDate> first,
com.opengamma.strata.collect.tuple.Pair<java.time.LocalDate,java.time.LocalDate> second)
Generate set of accruals given two intersecting intervals.
|
static Commitment |
generateCommitment(FacilityType facilityType,
java.time.LocalDate commitmentAmountStartDate,
double commitmentAmount,
List<LoanContract> contracts,
List<FacilityEvent> events)
Generate commitment schedule.
|
static List<Accrual> |
generateCommitmentFeeAccrualSchedule(Facility loan,
AccruingFee fee)
Generate commitment fee accrual schedule for each change in unfunded amount.
|
static com.opengamma.strata.collect.timeseries.LocalDateDoubleTimeSeries |
generateCommitmentSchedule(FacilityType facilityType,
java.time.LocalDate commitmentAmountStartDate,
double commitmentAmount,
List<LoanContract> contracts,
List<FacilityEvent> events)
Utility function used to generate total commitment schedule based on a given total commitment
amount as of a certain date, the type of facility, a set of non-prorated contracts, and a
schedule of commitment events.
|
static List<Accrual> |
generateContractAccrualSchedule(LoanContract contract)
Given a single loan contract, generate an equivalent set of sub-accruals from
the single contract accrual and repayment events.
|
static List<Accrual> |
generateDefaultFeeAccrualSchedule(Facility loan,
AccruingFee fee)
Default generator for fee accrual schedule generation: just return given accrual.
|
static com.opengamma.strata.collect.tuple.Pair<java.time.LocalDate,java.time.LocalDate> |
intersection(com.opengamma.strata.collect.tuple.Pair<java.time.LocalDate,java.time.LocalDate> i1,
com.opengamma.strata.collect.tuple.Pair<java.time.LocalDate,java.time.LocalDate> i2)
Return the intersection between two date intervals or null if there is
no intersection.
|
static boolean |
intersects(java.time.LocalDate date,
com.opengamma.strata.collect.tuple.Pair<java.time.LocalDate,java.time.LocalDate> interval)
Return true if date is within the interval exclusive of interval end date
|
static java.time.LocalDate |
max(java.time.LocalDate d1,
java.time.LocalDate d2)
Return the larger of two dates
|
static java.time.LocalDate |
min(java.time.LocalDate d1,
java.time.LocalDate d2)
Return the smaller of two dates
|
static double |
tsget(com.opengamma.strata.collect.timeseries.LocalDateDoubleTimeSeries ts,
java.time.LocalDate date)
Get the value of a time-series as of date
|
public static final double EPSILON_1
public static final java.time.LocalDate max(java.time.LocalDate d1, java.time.LocalDate d2)
d1
- first dated2
- second datepublic static final java.time.LocalDate min(java.time.LocalDate d1, java.time.LocalDate d2)
d1
- first dated2
- second datepublic static final com.opengamma.strata.collect.tuple.Pair<java.time.LocalDate,java.time.LocalDate> intersection(com.opengamma.strata.collect.tuple.Pair<java.time.LocalDate,java.time.LocalDate> i1, com.opengamma.strata.collect.tuple.Pair<java.time.LocalDate,java.time.LocalDate> i2)
i1
- first intervali2
- second intervalpublic static final boolean intersects(java.time.LocalDate date, com.opengamma.strata.collect.tuple.Pair<java.time.LocalDate,java.time.LocalDate> interval)
date
- date to check if within intervalinterval
- boundries of intervalpublic static final double tsget(com.opengamma.strata.collect.timeseries.LocalDateDoubleTimeSeries ts, java.time.LocalDate date)
ts
- the time seriesdate
- the datepublic static final List<com.opengamma.strata.collect.tuple.Pair<java.time.LocalDate,java.time.LocalDate>> accruals(com.opengamma.strata.collect.tuple.Pair<java.time.LocalDate,java.time.LocalDate> first, com.opengamma.strata.collect.tuple.Pair<java.time.LocalDate,java.time.LocalDate> second)
first
- first periodsecond
- second periodpublic static final List<Accrual> generateContractAccrualSchedule(LoanContract contract)
contract
- loan contractpublic static final List<Accrual> generateDefaultFeeAccrualSchedule(Facility loan, AccruingFee fee)
loan
- the facilityfee
- some fee accrualpublic static final List<Accrual> generateCommitmentFeeAccrualSchedule(Facility loan, AccruingFee fee)
loan
- the facilityfee
- commitment fee accrualpublic static com.opengamma.strata.collect.timeseries.LocalDateDoubleTimeSeries generateCommitmentSchedule(FacilityType facilityType, java.time.LocalDate commitmentAmountStartDate, double commitmentAmount, List<LoanContract> contracts, List<FacilityEvent> events)
facilityType
- type of facilitycommitmentAmountStartDate
- start datecommitmentAmount
- amount on start datecontracts
- list of contractsevents
- list of facility eventspublic static Commitment generateCommitment(FacilityType facilityType, java.time.LocalDate commitmentAmountStartDate, double commitmentAmount, List<LoanContract> contracts, List<FacilityEvent> events)
facilityType
- type of facilitycommitmentAmountStartDate
- commitment start datecommitmentAmount
- amount as of start datecontracts
- contract listevents
- facility event listCopyright © 2018. All rights reserved.