Пример #1
0
        public void parseRoute(Route r)
        {
            log("Parse Route: " + r.field("EMSX_SEQUENCE").value() + "." + r.field("EMSX_ROUTE_ID").value());

            log("Creating newDataSet");
            DataSet newDataSet = this.rmsx.CreateDataSet("DS_RT_" + r.field("EMSX_SEQUENCE").value() + "." + r.field("EMSX_ROUTE_ID").value());

            log("Creating RouteStatus DataPoint");
            newDataSet.AddDataPoint("RouteStatus", new EMSXFieldDataPointSource(this, r.field("EMSX_STATUS")));

            log("Creating RouteOrderNumber DataPoint");
            newDataSet.AddDataPoint("RouteOrderNumber", new EMSXFieldDataPointSource(this, r.field("EMSX_SEQUENCE")));

            log("Creating RouteID DataPoint");
            newDataSet.AddDataPoint("RouteID", new EMSXFieldDataPointSource(this, r.field("EMSX_ROUTE_ID")));

            log("Creating RouteFilled DataPoint");
            newDataSet.AddDataPoint("RouteFilled", new EMSXFieldDataPointSource(this, r.field("EMSX_FILLED")));

            log("Creating RouteAmount DataPoint");
            newDataSet.AddDataPoint("RouteAmount", new EMSXFieldDataPointSource(this, r.field("EMSX_AMOUNT")));

            log("Creating RouteLastShares DataPoint");
            newDataSet.AddDataPoint("RouteLastShares", new EMSXFieldDataPointSource(this, r.field("EMSX_LAST_SHARES")));

            log("Creating LastFillShown DataPoint");
            newDataSet.AddDataPoint("LastFillShown", new GenericIntegerDataPointSource(this, 0));

            log("Executing RuleSet DemoRouteRuleSet with DataSet " + newDataSet.GetName());
            this.rmsx.GetRuleSet("DemoRouteRuleSet").Execute(newDataSet);
        }
Пример #2
0
        public void DataSetDataPointAddReturnsNewDataPoint()
        {
            RuleMSX   rmsx             = new RuleMSX();
            string    newDataSetName   = "NewDataSet";
            string    newDataPointName = "NewDataPointName";
            DataSet   ds  = rmsx.CreateDataSet(newDataSetName);
            DataPoint dpo = ds.AddDataPoint(newDataPointName);

            Assert.That(dpo.GetName(), Is.EqualTo(newDataPointName));
        }
Пример #3
0
        public void SetDataPointSourceAtDataPointCreateCheckSource()
        {
            RuleMSX         rmsx               = new RuleMSX();
            string          newDataSetName     = "NewDataSet";
            string          newDataPointName   = "NewDataPointName";
            string          testDataPointValue = "TestDataPointValue";
            DataSet         ds   = rmsx.CreateDataSet(newDataSetName);
            DataPointSource srci = new TestDataPointSource(testDataPointValue);
            DataPoint       dpo  = ds.AddDataPoint(newDataPointName, srci);
            DataPointSource srco = dpo.GetSource();

            Assert.That(srco.GetValue().ToString(), Is.EqualTo(testDataPointValue));
        }
Пример #4
0
        public void GetDataPointsReturnsCorrectDictOfPoints()
        {
            RuleMSX   rmsx             = new RuleMSX();
            string    newDataSetName   = "NewDataSet";
            string    newDataPointName = "NewDataPointName";
            DataSet   ds  = rmsx.CreateDataSet(newDataSetName);
            DataPoint dpi = ds.AddDataPoint(newDataPointName);
            Dictionary <string, DataPoint> dpd = ds.GetDataPoints();
            DataPoint dpo;

            dpd.TryGetValue(newDataPointName, out dpo);
            Assert.That(dpo.GetName(), Is.EqualTo(newDataPointName));
        }
Пример #5
0
        public void DataPointSourceSetStaleNoError()
        {
            // Call to SetStale() on DataPointSource should return no error
            RuleMSX         rmsx               = new RuleMSX();
            string          newDataSetName     = "NewDataSet";
            string          newDataPointName   = "NewDataPointName";
            string          testDataPointValue = "TestDataPointValue";
            DataSet         ds   = rmsx.CreateDataSet(newDataSetName);
            DataPoint       dpo  = ds.AddDataPoint(newDataPointName);
            DataPointSource srci = new TestDataPointSource(testDataPointValue);

            dpo.SetDataPointSource(srci);
            Assert.DoesNotThrow(() => srci.SetStale());
        }
Пример #6
0
        public void parseOrder(Order o)
        {
            DataSet newDataSet = this.rmsx.CreateDataSet("DS_OR_" + o.field("EMSX_SEQUENCE").value());

            newDataSet.AddDataPoint("OrderStatus", new EMSXFieldDataPointSource(o.field("EMSX_STATUS")));
            newDataSet.AddDataPoint("OrderNumber", new EMSXFieldDataPointSource(o.field("EMSX_SEQUENCE")));
            newDataSet.AddDataPoint("OrderWorking", new EMSXFieldDataPointSource(o.field("EMSX_WORKING")));
            newDataSet.AddDataPoint("OrderAmount", new EMSXFieldDataPointSource(o.field("EMSX_AMOUNT")));
            newDataSet.AddDataPoint("OrderIdleAmount", new EMSXFieldDataPointSource(o.field("EMSX_IDLE_AMOUNT")));
            newDataSet.AddDataPoint("OrderTicker", new EMSXFieldDataPointSource(o.field("EMSX_TICKER")));
            newDataSet.AddDataPoint("OrderSide", new EMSXFieldDataPointSource(o.field("EMSX_SIDE")));

            this.rmsx.GetRuleSet("EMSX").Execute(newDataSet);
        }
Пример #7
0
        public void parseIOI(IOI i)
        {
            DataSet newDataSet = this.rmsx.CreateDataSet("DS_IOI_" + i.field("id_value").Value());

            newDataSet.AddDataPoint("handle", new IOIFieldDataPointSource(i, i.field("id_value")));
            newDataSet.AddDataPoint("change", new IOIFieldDataPointSource(i, i.field("change")));
            newDataSet.AddDataPoint("ticker", new IOIFieldDataPointSource(i, i.field("ioi_instrument_stock_security_ticker")));
            newDataSet.AddDataPoint("type", new IOIFieldDataPointSource(i, i.field("ioi_instrument_type")));
            newDataSet.AddDataPoint("bid_quantity", new IOIFieldDataPointSource(i, i.field("ioi_bid_size_quantity")));
            newDataSet.AddDataPoint("offer_quantity", new IOIFieldDataPointSource(i, i.field("ioi_offer_size_quantity")));

            this.rmsx.GetRuleSet("IOI").Execute(newDataSet);
        }
Пример #8
0
        public void CreateConflictDataSet(IOI i, Order o)
        {
            DataSet newDataSet = this.rmsx.CreateDataSet("conflict_I" + i.field("id_value").Value() + "|O" + o.field("EMSX_SEQUENCE").value());

            log("Creating DataSet: " + newDataSet.GetName());

            newDataSet.AddDataPoint("ioiid", new IOIFieldDataPointSource(i, i.field("id_value")));
            newDataSet.AddDataPoint("ioichange", new IOIFieldDataPointSource(i, i.field("change")));
            newDataSet.AddDataPoint("ioiticker", new IOIFieldDataPointSource(i, i.field("ioi_instrument_stock_security_ticker")));
            newDataSet.AddDataPoint("ioitype", new IOIFieldDataPointSource(i, i.field("ioi_instrument_type")));
            newDataSet.AddDataPoint("ioigooduntil", new IOIFieldDataPointSource(i, i.field("ioi_goodUntil")));
            newDataSet.AddDataPoint("ioibidquantity", new IOIFieldDataPointSource(i, i.field("ioi_bid_size_quantity")));
            newDataSet.AddDataPoint("ioiofferquantity", new IOIFieldDataPointSource(i, i.field("ioi_offer_size_quantity")));
            newDataSet.AddDataPoint("ioiroutingbroker", new IOIFieldDataPointSource(i, i.field("ioi_routing_broker")));
            newDataSet.AddDataPoint("ioiisvalid", new GenericBooleanSource(false));

            newDataSet.AddDataPoint("orderStatus", new EMSXFieldDataPointSource(o.field("EMSX_STATUS")));
            newDataSet.AddDataPoint("orderNumber", new EMSXFieldDataPointSource(o.field("EMSX_SEQUENCE")));
            newDataSet.AddDataPoint("orderWorking", new EMSXFieldDataPointSource(o.field("EMSX_WORKING")));
            newDataSet.AddDataPoint("orderAmount", new EMSXFieldDataPointSource(o.field("EMSX_AMOUNT")));
            newDataSet.AddDataPoint("orderIdleAmount", new EMSXFieldDataPointSource(o.field("EMSX_IDLE_AMOUNT")));
            newDataSet.AddDataPoint("orderTicker", new EMSXFieldDataPointSource(o.field("EMSX_TICKER")));
            newDataSet.AddDataPoint("orderSide", new EMSXFieldDataPointSource(o.field("EMSX_SIDE")));
            newDataSet.AddDataPoint("orderAssetClass", new EMSXFieldDataPointSource(o.field("EMSX_ASSET_CLASS")));
            newDataSet.AddDataPoint("orderisvalid", new GenericBooleanSource(false));

            this.rmsx.GetRuleSet("AutoRouteFromIOI").Execute(newDataSet);
        }