using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace MarketData.MarketDataModel { public class SignHolder { public enum SignValue { Positive, Negative, Undefined }; private double currentValue; private double previousValue; public SignHolder() { currentValue = previousValue = 0.00; } public void SetValue(double value) { if (value == 0.00) { previousValue = currentValue; return; } previousValue = currentValue; currentValue = value; } public bool SignChange { get { if (previousValue < 0.00 && currentValue > 0.00) return true; if (previousValue > 0.00 && currentValue < 0.00) return true; return false; } } public double PreviousValue { get { return previousValue; } } public double CurrentValue { get { return currentValue; } } public String GetValueString() { StringBuilder sb = new StringBuilder(); sb.Append("[").Append(previousValue).Append("->").Append(currentValue).Append("]"); return sb.ToString(); } } }