コード例 #1
0
        public override void OnStrategyStart()
        {
            barsChartGroup = new Group("Bars");

            barsChartGroup.Add("Pad", 0);
            barsChartGroup.Add("SelectorKey", Instrument.Symbol);

            // add fill group

            fillChartGroup = new Group("Fills");

            fillChartGroup.Add("Pad", 0);
            fillChartGroup.Add("SelectorKey", Instrument.Symbol);

            // add equity group

            equityChartGroup = new Group("Equity");

            equityChartGroup.Add("Pad", 1);
            equityChartGroup.Add("SelectorKey", Instrument.Symbol);

            // register groups

            GroupManager.Add(barsChartGroup);
            GroupManager.Add(fillChartGroup);
            GroupManager.Add(equityChartGroup);
        }
コード例 #2
0
ファイル: GroupWizard.cs プロジェクト: ruttlej/CS7038
 void Awake()
 {
     manager = new GroupManager(caseSensitive);
     GroupManager.Group firstState = null;
     if (states != null)
     {
         foreach (string name in states)
         {
             if (!StringExt.IsNullOrWhitespace(name))
             {
                 GroupManager.Group s;
                 s = manager.Add(name);
                 if (firstState == null)
                 {
                     firstState = s;
                 }
             }
         }
     }
     if (main)
     {
         GroupManager.main = manager;
         if (firstState != null)
         {
             manager.activeGroup = firstState;
         }
     }
 }
コード例 #3
0
ファイル: Program.cs プロジェクト: vcoda/fastquant.dll
        private void AddGroups()
        {
            int pad = 0;

            foreach (Leg leg in spread.Legs)
            {
                ++pad;
                groups[leg.Instrument] = new Group[2];

                // Create bars group.
                Group barsGroup = new Group("Bars");
                barsGroup.Add("Pad", DataObjectType.Int32, pad);
                barsGroup.Add("SelectorKey", DataObjectType.String, spread.Symbol);

                // Create fills group.
                Group fillGroup = new Group("Fills");
                fillGroup.Add("Pad", DataObjectType.Int32, pad);
                fillGroup.Add("SelectorKey", DataObjectType.String, spread.Symbol);

                // Add groups to manager.
                GroupManager.Add(barsGroup);
                GroupManager.Add(fillGroup);

                groups[leg.Instrument][0] = barsGroup;
                groups[leg.Instrument][1] = fillGroup;
            }
        }
コード例 #4
0
            public void CreatesAddToGroupCommandOnAdd()
            {
                // Arrange
                var connection = new Mock<IConnection>();
                var message = default(ConnectionMessage);

                connection.Setup(m => m.Send(It.IsAny<ConnectionMessage>()))
                          .Callback<ConnectionMessage>(m =>
                          {
                              message = m;

                              Assert.Equal("c-1", m.Signal);
                              Assert.NotNull(m.Value);
                              var command = m.Value as Command;
                              Assert.NotNull(command);
                              Assert.NotNull(command.Id);
                              Assert.Equal(CommandType.AddToGroup, command.CommandType);
                              Assert.Equal("Prefix.MyGroup", command.Value);
                              Assert.True(command.WaitForAck);
                          });

                var groupManager = new GroupManager(connection.Object, "Prefix");

                // Act
                groupManager.Add("1", "MyGroup");
            }
コード例 #5
0
        private void AddGroups()
        {
            barsGroup = new Group("Bars");
            barsGroup.Add("Pad", DataObjectType.String, 0);
            barsGroup.Add("SelectorKey", Instrument.Symbol);

            amaGroup = new Group("AMA");
            amaGroup.Add("Pad", 0);
            amaGroup.Add("SelectorKey", Instrument.Symbol);
            amaGroup.Add("Color", Color.White);

            ama2Group = new Group("AMA");
            ama2Group.Add("Pad", 0);
            ama2Group.Add("SelectorKey", Instrument.Symbol);
            ama2Group.Add("Color", Color.Red);

            erGroup = new Group("ER");
            erGroup.Add("Pad", 1);
            erGroup.Add("SelectorKey", Instrument.Symbol);
            erGroup.Add("Color", Color.Yellow);

            smaGroup = new Group("SMA");
            smaGroup.Add("Pad", 0);
            smaGroup.Add("SelectorKey", Instrument.Symbol);
            smaGroup.Add("Color", Color.Green);

            GroupManager.Add(barsGroup);
            GroupManager.Add(amaGroup);
            GroupManager.Add(ama2Group);
            GroupManager.Add(erGroup);
            GroupManager.Add(smaGroup);
        }
コード例 #6
0
        private void AddGroups()
        {
            barsGroup = new Group("Bars");
            barsGroup.Add("Pad", 0);
            barsGroup.Add("SelectorKey", Instrument.Symbol);
            barsGroup.Add("Color", Color.Black);

            smdGroup = new Group("SMD");
            smdGroup.Add("Pad", 1);
            smdGroup.Add("SelectorKey", Instrument.Symbol);
            smdGroup.Add("Color", Color.Green);

            lookBackDaysGroup = new Group("TVWindow");
            lookBackDaysGroup.Add("Pad", 2);
            lookBackDaysGroup.Add("SelectorKey", Instrument.Symbol);
            lookBackDaysGroup.Add("Color", Color.Blue);

            lookBackDaysGroup2 = new Group("TVWindow");
            lookBackDaysGroup2.Add("Pad", 2);
            lookBackDaysGroup2.Add("SelectorKey", Instrument.Symbol);
            lookBackDaysGroup2.Add("Color", Color.Brown);

            GroupManager.Add(barsGroup);
            GroupManager.Add(smdGroup);
            GroupManager.Add(lookBackDaysGroup);
            GroupManager.Add(lookBackDaysGroup2);
        }
コード例 #7
0
            public void CreatesAddToGroupCommandOnAdd()
            {
                // Arrange
                var connection = new Mock <IConnection>();
                var message    = default(ConnectionMessage);

                connection.Setup(m => m.Send(It.IsAny <ConnectionMessage>()))
                .Callback <ConnectionMessage>(m =>
                {
                    message = m;

                    Assert.Equal("c-1", m.Signal);
                    Assert.NotNull(m.Value);
                    var command = m.Value as Command;
                    Assert.NotNull(command);
                    Assert.NotNull(command.Id);
                    Assert.Equal(CommandType.AddToGroup, command.CommandType);
                    Assert.Equal("Prefix.MyGroup", command.Value);
                    Assert.True(command.WaitForAck);
                });

                var groupManager = new GroupManager(connection.Object, "Prefix");

                // Act
                groupManager.Add("1", "MyGroup");
            }
コード例 #8
0
ファイル: RBreaker_Strategy.cs プロジェクト: zjtan1992/Demo
        private void AddGroups()
        {
            barsGroup = new Group("Bars");
            barsGroup.Add("Pad", 0);
            barsGroup.Add("SelectorKey", Instrument.Symbol);
            barsGroup.Add("Color", Color.Black);

            //// Create fills group.
            fillGroup = new Group("Fills");
            fillGroup.Add("Pad", 0);
            fillGroup.Add("SelectorKey", Instrument.Symbol);

            // Create equity group.
            equityGroup = new Group("Equity");
            equityGroup.Add("Pad", 1);
            equityGroup.Add("SelectorKey", Instrument.Symbol);

            ssetupGroup = new Group("观察卖出价");
            ssetupGroup.Add("Pad", 0);
            ssetupGroup.Add("SelectorKey", Instrument.Symbol);
            ssetupGroup.Add("Color", Color.Green);

            bsetupGroup = new Group("观察买入价");
            bsetupGroup.Add("Pad", 0);
            bsetupGroup.Add("SelectorKey", Instrument.Symbol);
            bsetupGroup.Add("Color", Color.Green);

            bbreakGroup = new Group("突破买入价");
            bbreakGroup.Add("Pad", 0);
            bbreakGroup.Add("SelectorKey", Instrument.Symbol);
            bbreakGroup.Add("Color", Color.Red);

            sbreakGroup = new Group("突破卖出价");
            sbreakGroup.Add("Pad", 0);
            sbreakGroup.Add("SelectorKey", Instrument.Symbol);
            sbreakGroup.Add("Color", Color.Red);

            senterGroup = new Group("反转卖出价");
            senterGroup.Add("Pad", 0);
            senterGroup.Add("SelectorKey", Instrument.Symbol);
            senterGroup.Add("Color", Color.Black);

            benterGroup = new Group("反转买入价");
            benterGroup.Add("Pad", 0);
            benterGroup.Add("SelectorKey", Instrument.Symbol);
            benterGroup.Add("Color", Color.Black);


            GroupManager.Add(barsGroup);
            GroupManager.Add(fillGroup);
            GroupManager.Add(equityGroup);
            GroupManager.Add(ssetupGroup);
            GroupManager.Add(bsetupGroup);
            GroupManager.Add(bbreakGroup);
            GroupManager.Add(sbreakGroup);
            GroupManager.Add(senterGroup);
            GroupManager.Add(benterGroup);
        }
コード例 #9
0
ファイル: GroupManagerFacts.cs プロジェクト: rustd/SignalR
            public void ThrowsIfGroupIsNull()
            {
                // Arrange
                var connection = new Mock<IConnection>();
                connection.Setup(m => m.Send(It.IsAny<ConnectionMessage>()));
                var groupManager = new GroupManager(connection.Object, "Prefix");

                // Assert
                Assert.Throws<ArgumentNullException>(() => groupManager.Add("1", null));
            }
コード例 #10
0
ファイル: Program.cs プロジェクト: vcoda/fastquant.dll
        private void AddGroups()
        {
            // Create bars group.
            barsGroup = new Group("Bars");
            barsGroup.Add("Pad", DataObjectType.String, 0);
            barsGroup.Add("SelectorKey", Instrument.Symbol);

            //// Create fills group.
            fillGroup = new Group("Fills");
            fillGroup.Add("Pad", 0);
            fillGroup.Add("SelectorKey", Instrument.Symbol);

            // Create equity group.
            equityGroup = new Group("Equity");
            equityGroup.Add("Pad", 1);
            equityGroup.Add("SelectorKey", Instrument.Symbol);

            // Create sma1 values group.
            sma1Group = new Group("SMA1");
            sma1Group.Add("Pad", 0);
            sma1Group.Add("SelectorKey", Instrument.Symbol);
            sma1Group.Add("Color", Color.Green);

            // Create sma2 values group.
            sma2Group = new Group("SMA2");
            sma2Group.Add("Pad", 0);
            sma2Group.Add("SelectorKey", Instrument.Symbol);
            sma2Group.Add("Color", Color.Red);

            // Create log monitor groups.
            closeMonitorGroup = new Group("Close");
            closeMonitorGroup.Add("LogName", "Close");
            closeMonitorGroup.Add("StrategyName", "MyStrategy");
            closeMonitorGroup.Add("Symbol", Instrument.Symbol);

            openMonitorGroup = new Group("Open");
            openMonitorGroup.Add("LogName", "Open");
            openMonitorGroup.Add("StrategyName", "MyStrategy");
            openMonitorGroup.Add("Symbol", Instrument.Symbol);

            positionMonitorGroup = new Group("Position");
            positionMonitorGroup.Add("LogName", "Position");
            positionMonitorGroup.Add("StrategyName", "MyStrategy");
            positionMonitorGroup.Add("Symbol", Instrument.Symbol);

            // Add groups to manager.
            GroupManager.Add(barsGroup);
            GroupManager.Add(fillGroup);
            GroupManager.Add(equityGroup);
            GroupManager.Add(sma1Group);
            GroupManager.Add(sma2Group);
            GroupManager.Add(closeMonitorGroup);
            GroupManager.Add(openMonitorGroup);
            GroupManager.Add(positionMonitorGroup);
        }
コード例 #11
0
            public async Task ThrowsIfConnectionIdIsNull()
            {
                // Arrange
                var connection = new Mock <IConnection>();

                connection.Setup(m => m.Send(It.IsAny <ConnectionMessage>()));
                var groupManager = new GroupManager(connection.Object, "Prefix");

                // Assert
                await Assert.ThrowsAsync <ArgumentNullException>(() => groupManager.Add(null, "SomeGroup"));
            }
コード例 #12
0
            public void ThrowsIfGroupIsNull()
            {
                // Arrange
                var connection = new Mock <IConnection>();

                connection.Setup(m => m.Send(It.IsAny <ConnectionMessage>()));
                var groupManager = new GroupManager(connection.Object, "Prefix");

                // Assert
                Assert.Throws <ArgumentNullException>(() => groupManager.Add("1", null));
            }
コード例 #13
0
ファイル: KDJ_Strategy.cs プロジェクト: zjtan1992/Demo
        private void AddGroups()
        {
            barsGroup = new Group("Bars");
            barsGroup.Add("Pad", DataObjectType.String, 0);
            barsGroup.Add("SelectorKey", Instrument.Symbol);

            kGroup = new Group("K");
            kGroup.Add("Pad", 1);
            kGroup.Add("SelectorKey", Instrument.Symbol);
            kGroup.Add("Color", Color.White);

            k2Group = new Group("K2");
            k2Group.Add("Pad", 1);
            k2Group.Add("SelectorKey", Instrument.Symbol);
            k2Group.Add("Color", Color.Red);

            dGroup = new Group("D");
            dGroup.Add("Pad", 2);
            dGroup.Add("SelectorKey", Instrument.Symbol);
            dGroup.Add("Color", Color.Yellow);

            d2Group = new Group("D2");
            d2Group.Add("Pad", 2);
            d2Group.Add("SelectorKey", Instrument.Symbol);
            d2Group.Add("Color", Color.Yellow);

            jGroup = new Group("J");
            jGroup.Add("Pad", 3);
            jGroup.Add("SelectorKey", Instrument.Symbol);
            jGroup.Add("Color", Color.Yellow);

            j2Group = new Group("J2");
            j2Group.Add("Pad", 3);
            j2Group.Add("SelectorKey", Instrument.Symbol);
            j2Group.Add("Color", Color.Red);

            GroupManager.Add(barsGroup);
            GroupManager.Add(kGroup);
            GroupManager.Add(dGroup);
            GroupManager.Add(jGroup);

            GroupManager.Add(k2Group);
            GroupManager.Add(d2Group);
            GroupManager.Add(j2Group);
        }
コード例 #14
0
        protected override void OnStrategyStart()
        {
            //
            barChartGroup = new Group("Bars");

            barChartGroup.Add("Pad", 0);
            barChartGroup.Add("SelectorKey", Instrument.Symbol);

            //
            fillChartGroup = new Group("Fills");

            fillChartGroup.Add("Pad", 0);
            fillChartGroup.Add("SelectorKey", Instrument.Symbol);

            //
            GroupManager.Add(barChartGroup);
            GroupManager.Add(fillChartGroup);
        }
コード例 #15
0
        protected override void OnStrategyStart()
        {
            //
            barChartGroup = new Group("Bars");

            barChartGroup.Add("Pad", DataObjectType.Int, 0);
            barChartGroup.Add("SelectorKey", DataObjectType.String, "VWAP " + Instrument.Symbol);

            //
            fillChartGroup = new Group("Fills");

            fillChartGroup.Add("Pad", DataObjectType.Int, 0);
            fillChartGroup.Add("SelectorKey", DataObjectType.String, "VWAP " + Instrument.Symbol);

            //
            GroupManager.Add(barChartGroup);
            GroupManager.Add(fillChartGroup);
        }
コード例 #16
0
ファイル: Backtest.cs プロジェクト: vcoda/fastquant.dll
        private void AddGroups()
        {
            // Create bars group.
            barsGroup = new Group("Bars");
            barsGroup.Add("Pad", DataObjectType.String, 0);
            barsGroup.Add("SelectorKey", Instrument.Symbol);

            // Create fills group.
            fillGroup = new Group("Fills");
            fillGroup.Add("Pad", 0);
            fillGroup.Add("SelectorKey", Instrument.Symbol);

            // Create equity group.
            equityGroup = new Group("Equity");
            equityGroup.Add("Pad", 1);
            equityGroup.Add("SelectorKey", Instrument.Symbol);

            // Create BBU group.
            bbuGroup = new Group("BBU");
            bbuGroup.Add("Pad", 0);
            bbuGroup.Add("SelectorKey", Instrument.Symbol);
            bbuGroup.Add("Color", Color.Blue);

            // Create BBL group.
            bblGroup = new Group("BBL");
            bblGroup.Add("Pad", 0);
            bblGroup.Add("SelectorKey", Instrument.Symbol);
            bblGroup.Add("Color", Color.Blue);

            // Create SMA group.
            smaGroup = new Group("SMA");
            smaGroup.Add("Pad", 0);
            smaGroup.Add("SelectorKey", Instrument.Symbol);
            smaGroup.Add("Color", Color.Yellow);

            // Add groups to manager.
            GroupManager.Add(barsGroup);
            GroupManager.Add(fillGroup);
            GroupManager.Add(equityGroup);
            GroupManager.Add(bbuGroup);
            GroupManager.Add(bblGroup);
            GroupManager.Add(smaGroup);
        }
コード例 #17
0
        private void AddGroups()
        {
            // Create bars group.
            barsGroup = new Group("Bars");
            barsGroup.Add("Pad", DataObjectType.String, 0);
            barsGroup.Add("SelectorKey", Instrument.Symbol);

            // Create fills group.
            fillGroup = new Group("Fills");
            fillGroup.Add("Pad", 0);
            fillGroup.Add("SelectorKey", Instrument.Symbol);

            // Create equity group.
            equityGroup = new Group("Equity");
            equityGroup.Add("Pad", 2);
            equityGroup.Add("SelectorKey", Instrument.Symbol);

            // Create RSI values group.
            rsiGroup = new Group("RSI");
            rsiGroup.Add("Pad", 1);
            rsiGroup.Add("SelectorKey", Instrument.Symbol);
            rsiGroup.Add("Color", Color.Blue);

            // Create BuyLevel values group.
            buyLevelGroup = new Group("BuyLevel");
            buyLevelGroup.Add("Pad", 1);
            buyLevelGroup.Add("SelectorKey", Instrument.Symbol);
            buyLevelGroup.Add("Color", Color.Red);

            // Create SellLevel values group.
            sellLevelGroup = new Group("SellLevel");
            sellLevelGroup.Add("Pad", 1);
            sellLevelGroup.Add("SelectorKey", Instrument.Symbol);
            sellLevelGroup.Add("Color", Color.Red);

            // Add groups to manager.
            GroupManager.Add(barsGroup);
            GroupManager.Add(fillGroup);
            GroupManager.Add(equityGroup);
            GroupManager.Add(rsiGroup);
            GroupManager.Add(buyLevelGroup);
            GroupManager.Add(sellLevelGroup);
        }
コード例 #18
0
        private void AddGroups()
        {
            barsGroup = new Group("Bars");
            barsGroup.Add("Pad", DataObjectType.String, 0);
            barsGroup.Add("SelectorKey", Instrument.Symbol);

            pcGroup = new Group("PC");
            pcGroup.Add("Pad", 1);
            pcGroup.Add("SelectorKey", Instrument.Symbol);
            pcGroup.Add("Color", Color.Red);

            pcValueGroup = new Group("PC.Value");
            pcValueGroup.Add("Pad", 1);
            pcValueGroup.Add("SelectorKey", Instrument.Symbol);
            pcValueGroup.Add("Color", Color.Blue);

            GroupManager.Add(barsGroup);
            GroupManager.Add(pcGroup);
            GroupManager.Add(pcValueGroup);
        }
コード例 #19
0
ファイル: BIAS_Strategy.cs プロジェクト: zjtan1992/Demo
        private void AddGroups()
        {
            barsGroup = new Group("Bars");
            barsGroup.Add("Pad", DataObjectType.String, 0);
            barsGroup.Add("SelectorKey", Instrument.Symbol);

            biasGroup = new Group("BIAS");
            biasGroup.Add("Pad", 1);
            biasGroup.Add("SelectorKey", Instrument.Symbol);
            biasGroup.Add("Color", Color.Red);

            bias2Group = new Group("BIAS2");
            bias2Group.Add("Pad", 2);
            bias2Group.Add("SelectorKey", Instrument.Symbol);
            bias2Group.Add("Color", Color.White);

            GroupManager.Add(barsGroup);
            GroupManager.Add(biasGroup);
            GroupManager.Add(bias2Group);
        }
コード例 #20
0
ファイル: Program.cs プロジェクト: vcoda/fastquant.dll
        private void AddGroups()
        {
            // Create bars group.
            barsGroup = new Group("Bars");
            barsGroup.Add("Pad", DataObjectType.String, 0);
            barsGroup.Add("SelectorKey", Instrument.Symbol);

            // Create fills group.
            fillGroup = new Group("Fills");
            fillGroup.Add("Pad", 0);
            fillGroup.Add("SelectorKey", Instrument.Symbol);

            // Create equity group.
            equityGroup = new Group("Equity");
            equityGroup.Add("Pad", Instrument.Legs.Count + 1);
            equityGroup.Add("SelectorKey", Instrument.Symbol);

            // Add groups to manager.
            GroupManager.Add(barsGroup);
            GroupManager.Add(fillGroup);
            GroupManager.Add(equityGroup);
        }
コード例 #21
0
        private void AddGroups()
        {
            // Create bars group.
            Group barGroup = new Group("Bars");

            barGroup.Add("Pad", DataObjectType.Int, legIndex + 2);
            barGroup.Add("SelectorKey", DataObjectType.String, rootInstrument.Symbol);

            // Create fills group.
            Group fillGroup = new Group("Fills");

            fillGroup.Add("Pad", DataObjectType.Int, legIndex + 2);
            fillGroup.Add("SelectorKey", DataObjectType.String, rootInstrument.Symbol);

            // Add groups to manager.
            GroupManager.Add(fillGroup);
            GroupManager.Add(barGroup);

            // Add groups to dictionary.
            fillGroups[currentFuturesContract] = fillGroup;
            barsGroups[currentFuturesContract] = barGroup;
        }
コード例 #22
0
        private void AddGroups()
        {
            // Create bars group.
            barsGroup = new Group("Bars");
            barsGroup.Add("Pad", DataObjectType.String, 0);
            barsGroup.Add("SelectorKey", Instrument.Symbol);

            // Create fills group.
            fillGroup = new Group("Fills");
            fillGroup.Add("Pad", 0);
            fillGroup.Add("SelectorKey", Instrument.Symbol);

            // Create equity group.
            equityGroup = new Group("Equity");
            equityGroup.Add("Pad", 1);
            equityGroup.Add("SelectorKey", Instrument.Symbol);

            // Create fast sma values group.
            fastSmaGroup = new Group("FastSMA");
            fastSmaGroup.Add("Pad", 0);
            fastSmaGroup.Add("SelectorKey", Instrument.Symbol);
            fastSmaGroup.Add("Color", Color.Green);

            // Create slow sma values group.
            slowSmaGroup = new Group("SlowSMA");
            slowSmaGroup.Add("Pad", 0);
            slowSmaGroup.Add("SelectorKey", Instrument.Symbol);
            slowSmaGroup.Add("Color", Color.Red);

            // Add groups to manager.
            GroupManager.Add(barsGroup);
            GroupManager.Add(fillGroup);
            GroupManager.Add(equityGroup);
            GroupManager.Add(fastSmaGroup);
            GroupManager.Add(slowSmaGroup);
        }
コード例 #23
0
ファイル: Program.cs プロジェクト: vcoda/fastquant.dll
        private void AddGroups()
        {
            // Create bars group.
            barsGroup = new Group("Bars");
            barsGroup.Add("Pad", DataObjectType.String, 0);
            barsGroup.Add("SelectorKey", Instrument.Symbol);

            // Create fills group.
            fillGroup = new Group("Fills");
            fillGroup.Add("Pad", 0);
            fillGroup.Add("SelectorKey", Instrument.Symbol);

            // Create equity group.
            equityGroup = new Group("Equity");
            equityGroup.Add("Pad", 1);
            equityGroup.Add("SelectorKey", Instrument.Symbol);

            // Create channel's highest values group.
            highestGroup = new Group("Highest");
            highestGroup.Add("Pad", 0);
            highestGroup.Add("SelectorKey", Instrument.Symbol);
            highestGroup.Add("Color", Color.Green);

            // Create channel's lowest values group.
            lowestGroup = new Group("Lowest");
            lowestGroup.Add("Pad", 0);
            lowestGroup.Add("SelectorKey", Instrument.Symbol);
            lowestGroup.Add("Color", Color.Red);

            // Add groups to manager.
            GroupManager.Add(barsGroup);
            GroupManager.Add(fillGroup);
            GroupManager.Add(equityGroup);
            GroupManager.Add(highestGroup);
            GroupManager.Add(lowestGroup);
        }
コード例 #24
0
        private void AddGroups()
        {
            bars60Group = new Group("Bars60");
            bars60Group.Add("Pad", DataObjectType.String, 0);
            bars60Group.Add("SelectorKey", Instrument.Symbol);

            bars86400Group = new Group("Bars86400");
            bars86400Group.Add("Pad", DataObjectType.String, 0);
            bars86400Group.Add("SelectorKey", Instrument.Symbol);

            smd30Group = new Group("SMD30");
            smd30Group.Add("Pad", 1);
            smd30Group.Add("SelectorKey", Instrument.Symbol);
            smd30Group.Add("Color", Color.Red);

            lbdGroup = new Group("LookBackDays");
            lbdGroup.Add("Pad", 2);
            lbdGroup.Add("SelectorKey", Instrument.Symbol);
            lbdGroup.Add("Color", Color.Green);

            buyPointGroup = new Group("BuyPoint");
            buyPointGroup.Add("Pad", 0);
            buyPointGroup.Add("SelectorKey", Instrument.Symbol);
            buyPointGroup.Add("Color", Color.Blue);

            sellPointGroup = new Group("SellPoint");
            sellPointGroup.Add("Pad", 0);
            sellPointGroup.Add("SelectorKey", Instrument.Symbol);
            sellPointGroup.Add("Color", Color.Yellow);

            longLiqPointGroup = new Group("LongLiqPoint");
            longLiqPointGroup.Add("Pad", 0);
            longLiqPointGroup.Add("SelectorKey", Instrument.Symbol);
            longLiqPointGroup.Add("Color", Color.Purple);

            shortLiqPointGroup = new Group("ShortLiqGroup");
            shortLiqPointGroup.Add("Pad", 0);
            shortLiqPointGroup.Add("SelectorKey", Instrument.Symbol);
            shortLiqPointGroup.Add("Color", Color.Pink);

            upBandGroup = new Group("UpBand(BBU)");
            upBandGroup.Add("Pad", 0);
            upBandGroup.Add("SelectorKey", Instrument.Symbol);
            upBandGroup.Add("Color", Color.Brown);

            dnBandGroup = new Group("DownBand(BBL)");
            dnBandGroup.Add("Pad", 0);
            dnBandGroup.Add("SelectorKey", Instrument.Symbol);
            dnBandGroup.Add("Color", Color.Gray);

            GroupManager.Add(bars60Group);
            GroupManager.Add(bars86400Group);
            GroupManager.Add(smd30Group);
            GroupManager.Add(lbdGroup);
            GroupManager.Add(buyPointGroup);
            GroupManager.Add(sellPointGroup);
            GroupManager.Add(longLiqPointGroup);
            GroupManager.Add(shortLiqPointGroup);
            GroupManager.Add(upBandGroup);
            GroupManager.Add(dnBandGroup);
        }
コード例 #25
0
        private void AddGroups()
        {
            barsGroup = new Group("Bars");
            barsGroup.Add("Pad", 0);
            barsGroup.Add("SelectorKey", Instrument.Symbol);
            barsGroup.Add("Color", Color.Black);

            // Create fills group.
            fillGroup = new Group("Fills");
            fillGroup.Add("Pad", 0);
            fillGroup.Add("SelectorKey", Instrument.Symbol);

            // Create equity group.
            equityGroup = new Group("Equity");
            equityGroup.Add("Pad", 1);
            equityGroup.Add("SelectorKey", Instrument.Symbol);

            hhGroup = new Group("HH");
            hhGroup.Add("Pad", 0);
            hhGroup.Add("SelectorKey", Instrument.Symbol);
            hhGroup.Add("Color", Color.Red);

            hcGroup = new Group("HC");
            hcGroup.Add("Pad", 0);
            hcGroup.Add("SelectorKey", Instrument.Symbol);
            hcGroup.Add("Color", Color.Yellow);

            lcGroup = new Group("LC");
            lcGroup.Add("Pad", 0);
            lcGroup.Add("SelectorKey", Instrument.Symbol);
            lcGroup.Add("Color", Color.Yellow);

            llGroup = new Group("LL");
            llGroup.Add("Pad", 0);
            llGroup.Add("SelectorKey", Instrument.Symbol);
            llGroup.Add("Color", Color.Red);

            rangeGroup = new Group("Range");
            rangeGroup.Add("Pad", 2);
            rangeGroup.Add("SelectorKey", Instrument.Symbol);
            rangeGroup.Add("Color", Color.Red);

            range2Group = new Group("Win");
            range2Group.Add("Pad", 3);
            range2Group.Add("SelectorKey", Instrument.Symbol);
            range2Group.Add("Color", Color.Red);

            range3Group = new Group("Loss");
            range3Group.Add("Pad", 3);
            range3Group.Add("SelectorKey", Instrument.Symbol);
            range3Group.Add("Color", Color.Green);

            GroupManager.Add(barsGroup);
            GroupManager.Add(fillGroup);
            GroupManager.Add(equityGroup);
            GroupManager.Add(hhGroup);
            GroupManager.Add(hcGroup);
            GroupManager.Add(lcGroup);
            GroupManager.Add(llGroup);
            GroupManager.Add(rangeGroup);
            GroupManager.Add(range2Group);
            GroupManager.Add(range3Group);
        }
コード例 #26
0
ファイル: ChatHub.cs プロジェクト: gamecc666/ChatRoom
        public async Task HandleClientMsg(string msg)
        {
            Console.WriteLine("统一从客户端收到的信息:" + msg);
            Message message = JsonConvert.DeserializeObject <Message>(msg);
            Client  _client = new Client(Context.ConnectionId, message.nick, message.roomno);
            string  path    = $"./ChatLogs/{message.nick}_{message.roomno}.txt";

            switch (message.action)
            {
            case (int)ActionOper.InGroupOPeration:
                int codeStatus = GroupManager.AddToRPD(message.roomno, message.password);
                if (codeStatus == (int)ActionOper.FailJoinGroup)
                {
                    string tipInfo = $"操作有误,请检查房间密码是否有误!";
                    await SendPrivateMessage(Context.UserIdentifier, tipInfo);
                }
                else
                {
                    GroupManager.Add(_client);
                    string inGroupInfo = $"用户 {message.nick} 加入房间 {message.roomno}";
                    FileHelp.CreateFile(path, inGroupInfo);
                    Console.WriteLine(inGroupInfo);
                    await Groups.AddToGroupAsync(Context.ConnectionId, message.roomno);

                    await Clients.Group(message.roomno).SendAsync("ReceiveMessage", inGroupInfo);
                }
                break;

            case (int)ActionOper.OutGroupOperation:
                GroupManager.Remove(_client);
                string outGroupInfo = $"用户 {message.nick} 离开房间 {message.roomno}";
                var    list         = GroupManager.GetClientsInGroup(message.roomno);
                if (list != null)
                {
                    foreach (var item in list)
                    {
                        string _path = $"../../../ChatLogs/{item.nickName}_{message.roomno}.txt";

                        await Task.Factory.StartNew(() =>
                        {
                            FileHelp.AppendToFile(_path, outGroupInfo);
                        });
                    }
                }

                Console.WriteLine(outGroupInfo);
                await Clients.Group(message.roomno).SendAsync("ReceiveMessage", outGroupInfo);

                await Groups.RemoveFromGroupAsync(Context.ConnectionId, message.roomno);

                break;

            case (int)ActionOper.SendGroupOperation:
                string sendGroupInfo = $"{message.nick} : {message.msg}";
                FileHelp.AppendToFile(path, sendGroupInfo);
                Console.WriteLine(sendGroupInfo);
                await Clients.Group(message.roomno).SendAsync("ReceiveMessage", sendGroupInfo);

                break;
            }
            GroupManager.OutputRoomInfo();
        }