Beispiel #1
0
        public override void Execute()
        {
            IsProcessing = true;

            if (AppContext.FirstDataProvider != null &&
                AppContext.TradeAnalyzerControl == null)
            {
                // TO DO
            }
            else
            {
                if (!IsGetHisInfo)
                {
                    IsGetHisInfo = true;
                    string request = "";

                    Console.WriteLine(" ProviderHandler  Send ~~~~~~~~~~~  " + Protocol.M0003_1);
                    if (provider.HasLocalLastCdlTime)
                    {
                        request = NetHelper.BuildMsg(Protocol.M0003_1, new string[] { provider.Symbol.ToString(), AppUtil.IntervalToString(provider.CurrentTInterval), provider.LocalLastCdlTime.Add(AppConst.AppTimeSpans[provider.CurrentTInterval]).ToString(FORMAT) });
                    }
                    else
                    {
                        request = NetHelper.BuildMsg(Protocol.M0003_1, new string[] { provider.Symbol.ToString(), AppUtil.IntervalToString(provider.CurrentTInterval), NULL });
                    }
                    Send(request);
                }
                else if (!IsGetSignalInfo)
                {
                    IsGetSignalInfo = true;
                    Console.WriteLine(" ProviderHandler  Send ~~~~~~~~~~~   " + Protocol.C0004_2);
                    string   request = "";
                    DateTime time    = DateTime.Now;
                    //time = time.AddMonths(-6);
                    time = DateTime.Parse("2009-09-01 00:00:00");
                    if (provider.HasLocalLastSigTime)
                    {
                        request = NetHelper.BuildMsg(Protocol.C0004_2, new string[] { provider.Symbol.ToString(), AppUtil.IntervalToString(AppContext.FirstDataProvider.CurrentTInterval), provider.LocalLastSigTime.ToString(FORMAT) });
                    }
                    else
                    {
                        request = NetHelper.BuildMsg(Protocol.C0004_2, new string[] { provider.Symbol.ToString(), AppUtil.IntervalToString(AppContext.FirstDataProvider.CurrentTInterval), time.ToString(FORMAT) });
                    }
                    Send(request);
                }
                else if (!IsGetRealTimeInfo)
                {
                    IsGetRealTimeInfo = true;
                    Console.WriteLine(" ProviderHandler  Send ~~~~~~~~~~~  " + Protocol.C0003_2);
                    string request = NetHelper.BuildMsg(Protocol.C0003_2, new string[] { provider.Symbol.ToString(), AppUtil.IntervalToString(provider.CurrentTInterval), provider.StartTime.ToString(FORMAT) });
                    Send(request);
                }
            }
        }