def test_bar_processor(self): config = SimConfig() processor = BarProcessor() order = ModelFactory.build_new_order_request(timestamp=0, cl_id='test', cl_ord_id="1", inst_id="1", action=Buy, type=Limit, qty=1000, limit_price=18.5) bar = ModelFactory.build_bar(timestamp=0, inst_id="1", open=18, high=19, low=17, close=17.5, vol=1000) self.assertEqual(17.5, processor.get_price(order, bar, config)) self.assertEqual(1000, processor.get_qty(order, bar, config)) config2 = SimConfig(fill_on_bar_mode=SimConfig.FillMode.NEXT_OPEN) self.assertEqual(18, processor.get_price(order, bar, config2)) self.assertEqual(1000, processor.get_qty(order, bar, config2))
def test_bar_processor(self): config = SimConfig() processor = BarProcessor() order = NewOrderRequest(cl_id='test', cl_ord_id=1, inst_id=1, action=OrdAction.BUY, type=OrdType.LIMIT, qty=1000, limit_price=18.5) bar = Bar(open=18, high=19, low=17, close=17.5, vol=1000) self.assertEqual(17.5, processor.get_price(order, bar, config)) self.assertEqual(1000, processor.get_qty(order, bar, config)) config2 = SimConfig(fill_on_bar_mode=SimConfig.FillMode.NEXT_OPEN) self.assertEqual(18, processor.get_price(order, bar, config2)) self.assertEqual(1000, processor.get_qty(order, bar, config2))