суббота, 30 сентября 2023 г.

GS.Trade, TradeContext51

Serialization string in Anywhere

var x = xDoc.Descendants(root).FirstOrDefault();

TradeContext51

Init()

Dde

Dde = ConfigurationResourse1.Build<IDde, string, ITopicItem>("Dde", "Dde");

Dde.Parent = this;

Dde.Init();

http://localhost/GS.Trade.Web.Mvc.Cfg_01/CfgTrans

Strategies in TradeContext51

Strategies = ConfigurationResourse1.Build<IStrategies>("Strats", "Strategies");

                    if (Strategies == null)

                    { 

                        throw new NullReferenceException("Stategies Build Failure");

                    }

                    Strategies.Parent = this;

                    Strategies.TradeContext = this;


                    Strategies.Init(); ****** 


                    foreach (var s in Strategies.StrategyCollection)

                    {

                        try

                        {

                            TradeStorage.Register(s);

                            TradeStorage.Register(s.Position);

                            TradeStorage.RegisterTotal(s.PositionTotal);

                        }

                        catch (Exception e)

                        {

                            SendExceptionMessage3(FullName, "TradeContext", "Strategy.Register:" + s.StrategyTickerString,

                                "", e);

                            // throw;

                        }

                    }

                    Thread.Sleep(1000);


                    Strategies.StrategyTradeEntityChangedEvent += EventHub.FireEvent;

                    Strategies.ExceptionEvent += EventHub.FireEvent;

Init()

IsEvlEnabled = true;

            try

            {

             base.Init(TradeContext.EventLog);

             

            _evl = TradeContext.EventLog;

            //_evl.AddItem(EvlResult.INFO, EvlSubject.TECHNOLOGY, "Strategies",

            //    "Strategies","Init Start", Name + " " + Code, "Count: " + _strategyDictionary.Count());


            Evlm2(EvlResult.INFO, EvlSubject.TECHNOLOGY, "Strategies",

                "Strategies", "Init Start", Name + " " + Code, "Count: " + _strategyDictionary.Count());


             //TradeContext.Orders.StopOrderFilledEvent += StopOrderFilledEventHandler;

            //TradeContext.Orders.LimitOrderFilledEvent += LimitOrderFilledEventHandler;


            //DeSerializationCollection();

            // DeSerializationCollection3();

            DeSerializationCollection32();

            //var badInit = new List<string>();

            //foreach (var s in StrategyCollection)

            //{

            //    ((Strategy)s).SetParent(this);

            //    ((Strategy)s).SetTradeContext(TradeContext);

            //    s.Parent = this;

            //    ((Strategy)s).Init();


            //    if (!s.IsWrong) continue;

            //    badInit.Add(s.Key);

            //    _evl.AddItem(EvlResult.FATAL, EvlSubject.TECHNOLOGY, s.Name, s.Name, "Initialization Failure", s.ToString(), "");

            //}

            //foreach (var k in badInit) _strategyDictionary.Remove(k);


            //_evl.AddItem(EvlResult.INFO, EvlSubject.TECHNOLOGY, "Strategies",

            //    "Strategies", "Init Finish", Name + " " + Code, "Count: " + _strategyDictionary.Count());


            }

            catch (Exception e)

            {

                // throw new NullReferenceException("Strategies.Init Failure:" + e.Message);

                SendException(e);

            }

        }


Комментариев нет:

Отправить комментарий