using System;
using System.Text;
// Filename: Decay.cs
// Author:Sean Kessler
// Date:06/2003
// 11/2003 modified as Per W. Stanzl to alleviate problem with potential loss of precision
namespace MarketData.MarketDataModel
{
/// Decay - decay utility class
public class Decay
{
private int days;
private int applyDays;
private float[] decays;
private float seed;
private const float SEED=.0116F;
public Decay(int days, float factor, int applyDays)
{
CreateDecay(factor, days, applyDays);
}
public Decay(int days,float factor)
{
CreateDecay(factor,days, days);
}
public Decay(int days)
{
CreateDecay(SEED,days, days);
}
public float this[int day]
{
get{return decays[day];}
set{decays[day]=value;}
}
public int Count
{
get{return decays.Length;}
}
public void Reverse()
{
float[] inverted=new float[this.decays.Length];
for(int index=0;index 0)
{
decays[0] = 1F;
if (applyDays > 0) decays[0] -= seed;
for(int index=1;index