public static OOMigrationLib.Global.Quote QuoteToQuoteNG(OptionsOracle.Core core, OOServerLib.Global.Quote ql) { if (ql == null) { return(null); } OOMigrationLib.Global.Quote qm = new OOMigrationLib.Global.Quote(); qm.price.last = ql.price.last; qm.price.change = ql.price.change; qm.price.open = ql.price.open; qm.price.low = ql.price.low; qm.price.high = ql.price.high; qm.price.bid = ql.price.bid; qm.price.ask = ql.price.ask; qm.volume.total = ql.volume.total; qm.general.dividend_rate = ql.general.dividend_rate; qm.general.dividend_list = null; qm.volatility.actual = core.StockImpliedVolatility; qm.volatility.implied = core.StockImpliedVolatility; qm.volatility.historical = core.StockImpliedVolatility; qm.underlying = ql.stock; qm.name = ql.name; qm.update_timestamp = ql.update_timestamp; qm.currency = null; qm.interest_rate = Config.Local.FederalIterest * 0.01; return(qm); }
// single position greeks public OOMigrationLib.Global.Greeks GetPositionGreeks(OOMigrationLib.Global.Position position, OOMigrationLib.Global.Quote quote, double at_underlying_price, DateTime at_date, double at_volatility) { return(Convert.GreeksToGreeksNG(core, core.om.GetPositionGreeks(position.index, at_underlying_price, at_date, at_volatility))); }
// quote data public void SetQuote(OOMigrationLib.Global.Quote quote) { throw new Exception("Unsupported Method"); }
// single position return public double GetPositionReturn(OOMigrationLib.Global.Position position, OOMigrationLib.Global.Quote quote, double at_underlying_price, DateTime at_date, double at_volatility) { return(core.om.GetPositionReturn(position.index, at_underlying_price, at_date, at_volatility)); }