public Double?Mid(DateTime argDate) { myElement elem = historicalData[argDate]; Double?ask = elem["Ask"]; Double?bid = elem["Bid"]; Double?last = elem["Last"]; if (ask != null && bid != null) { return((ask + bid) * 0.5); } else if (ask == null && bid == null && last == null) { return(ask); } else { if (last != null) { return(last); } else if (bid != null) { return(bid); } else { return(ask); } } }
// Robust method to get a Price #region public Double?Price(DateTime argDate) { myElement elem = historicalData[argDate]; Double?mid = this.Mid(argDate); Double?last = this.Mid(argDate); if (last != null) { return(last); } else if (mid != null) { return(mid); } else { return(null); } }
public Double?Volume(DateTime argDate) { myElement elem = historicalData[argDate]; return(elem["Volume"]); }
public Double?AdjustedClose(DateTime argDate) { myElement elem = historicalData[argDate]; return(elem["AdjustedClose"]); }
public Double?Low(DateTime argDate) { myElement elem = historicalData[argDate]; return(elem["Low"]); }
public Double?High(DateTime argDate) { myElement elem = historicalData[argDate]; return(elem["High"]); }
// Accessing OHLC, Volume, Adjusted Close #region Methods for : Open / High / Low / Close public Double?Open(DateTime argDate) { myElement elem = historicalData[argDate]; return(elem["Open"]); }
public Double?Ask(DateTime argDate) { myElement elem = historicalData[argDate]; return(elem["Ask"]); }
// ************************************************************ // METHODS TO ACCESS HISTORICAL SINGLE PRICE POINTS // ************************************************************ // Accessing Bid, Ask, Mid #region Methods for : Bid / Ask / Mid public Double?Bid(DateTime argDate) { myElement elem = historicalData[argDate]; return(elem["Bid"]); }