public void SetUp() { leftLeg = new List <StrategyHeader>(); rightLeg = new List <StrategyHeader>(); this.leftLeg.Add(new StrategyHeader(1, "Left leg strategyHeader", "BP12345-RF-01", "RTS-12.13_FT", 10)); this.rightLeg.Add(new StrategyHeader(2, "Right leg strategyHeader", "BP12345-RF-01", "Si-12.13_FT", 50)); spreadSettings = new SpreadSettings(1.10, 1.11, 0.9); arbitrageSettings = new ArbitrageSettings(1, leftLeg, rightLeg, spreadSettings); }
public void SpreadSettings_constructor_test() { double fairPrice = 1.3589; double sellAfter = 1.4358; double buyBefore = 1.1355; SpreadSettings spreadSettings = new SpreadSettings(fairPrice, sellAfter, buyBefore); Assert.AreEqual(fairPrice, spreadSettings.FairPrice); Assert.AreEqual(sellAfter, spreadSettings.SellAfterPrice); Assert.AreEqual(buyBefore, spreadSettings.BuyBeforePrice); }
public void Configuration_SpreadSettingsFactory_returns_model_test() { string prefix = "SSTR"; IGenericFactory <SpreadSettings> factory = new SpreadSettingsFactory(prefix); SpreadSettings sSettings = factory.Make(); Assert.IsNotNull(sSettings); Assert.AreEqual(1.12, sSettings.FairPrice); Assert.AreEqual(1.28, sSettings.SellAfterPrice); Assert.AreEqual(0.91, sSettings.BuyBeforePrice); }
public BuySpreadOnQuoteChange(OrderBookContext quotesProvider, IEnumerable <StrategyHeader> leftLeg, IEnumerable <StrategyHeader> rightLeg, SpreadSettings spreadSettings, IDataContext dataContext, ObservableQueue <Signal> signalQueue, ILogger logger) { this.quotesProvider = quotesProvider; this.leftLeg = leftLeg; this.rightLeg = rightLeg; this.spreadSettings = spreadSettings; this.tradingData = dataContext; this.signalQueue = signalQueue; this.logger = logger; this.quotesProvider.OnQuotesUpdate += new SymbolDataUpdatedNotification(quotesProvider_OnQuotesUpdate); }
public void Setup() { this.leftLeg = new List <StrategyHeader>(); this.rigthLeg = new List <StrategyHeader>(); this.leftStrategy = new StrategyHeader(1, "Left leg", "BP12345-RF-01", "AB", 10); this.rightStrategy = new StrategyHeader(2, "Right leg", "BP1235-RF-01", "BA", 10); this.leftLeg.Add(this.leftStrategy); this.rigthLeg.Add(this.rightStrategy); this.spreadSettings = new SpreadSettings(); this.arbitrageSettings = new ArbitrageSettings(1, this.leftLeg, this.rigthLeg, this.spreadSettings); this.orderBook = new OrderBookContext(); this.tradingData = new TradingDataContext(); CalculateSpreadOnOrderBookChange handler = new CalculateSpreadOnOrderBookChange(this.arbitrageSettings, this.orderBook, this.tradingData, new NullLogger()); }
public void Setup() { this.qProvider = new OrderBookContext(); this.spreadSettings = new SpreadSettings(1.35, 1.48, 1.18); this.leftLeg = new List <StrategyHeader>(); this.leftLeg.Add(this.tradingData.Get <IEnumerable <StrategyHeader> >().Single(s => s.Id == 1)); this.rightLeg = new List <StrategyHeader>(); this.rightLeg.Add(this.tradingData.Get <IEnumerable <StrategyHeader> >().Single(s => s.Id == 2)); this.rightLeg.Add(this.tradingData.Get <IEnumerable <StrategyHeader> >().Single(s => s.Id == 3)); CoverSpreadOnQuoteChange handler = new CoverSpreadOnQuoteChange(this.qProvider, this.leftLeg, this.rightLeg, this.spreadSettings, this.tradingData, this.signalQueue, new NullLogger()); }