예제 #1
0
 public override void SetRequiredDates(MarketObservable index, List <Date> requiredDates)
 {
     allDates.AddRange(requiredDates);
 }
예제 #2
0
 public override List <Date> GetRequiredIndexDates(MarketObservable index)
 {
     return(new List <Date>());
 }
예제 #3
0
 public override void SetIndexValues(MarketObservable index, double[] indexValues)
 {
 }
예제 #4
0
 /// <summary>
 /// The dates at which the provided index is required to calculate cashflows.  This will be called
 /// repeatedly so if possible pre-calculate in <see cref="SetValueDate(Date)"/>.
 /// </summary>
 /// <param name="index"></param>
 /// <returns></returns>
 public abstract List <Date> GetRequiredIndexDates(MarketObservable index);
예제 #5
0
 /// <summary>
 /// Precursor to calling <see cref="GetCFs"/>.  Done in a separate step in case the indices come from
 /// multiple sources.
 /// </summary>
 /// <param name="index"></param>
 /// <param name="indexValues"></param>
 public abstract void SetIndexValues(MarketObservable index, double[] indexValues);
예제 #6
0
 /// <summary>
 /// The floating rate fixing dates that correspond to payment dates strictly after the value date.
 /// </summary>
 /// <param name="index">Will be the same index as returned by <see cref="GetRequiredIndices"/>.</param>
 /// <returns></returns>
 public override List <Date> GetRequiredIndexDates(MarketObservable index)
 {
     return(_futureIndexDates);
 }
예제 #7
0
 public override void SetIndexValues(MarketObservable index, double[] indexValues)
 {
     // Nothing to do. Product has no state.
 }
예제 #8
0
 public override void SetRequiredDates(MarketObservable index, List<Date> requiredDates)
 {
     if (_allDates == null) _allDates = requiredDates;
     else
         _allDates.AddRange(requiredDates);
 }
예제 #9
0
 public override bool ProvidesIndex(MarketObservable index)
 {
     return _floatRateIndices.Contains(index);
 }
예제 #10
0
 public override void SetIndexValues(MarketObservable index, double[] indices)
 {
     _fwdPrice = indices[0];
 }