public void ProcessLoading(object obj, System.Timers.ElapsedEventArgs e) { if (loadingForm != null && !loadingForm.IsDisposed) { MsgUpdatedDelegate d = new MsgUpdatedDelegate(ProgresstUpdate); int status = loadingForm.GetLoadingStatus(); if (status < 10)// && AppClient.IsReady) { loadingForm.BeginInvoke(d, 10); } else if (status < 20 && AppContext.IsGetSymbols) { loadingForm.BeginInvoke(d, 20); } else if (status < 30 && AppContext.IsGetDSInfo) { loadingForm.BeginInvoke(d, 30); } else if (status >= 30 && status < 40)//&& DSClient.IsReady) { loadingForm.BeginInvoke(d, 40); } else if (status >= 40 && status < 50 && AppContext.IsGetInitProviderFile) { loadingForm.BeginInvoke(d, 50); } else if (status >= 50 && status < 60 && AppContext.IsGetInitProviderRtd) { loadingForm.BeginInvoke(d, 60); } else if (status >= 60 && status < 70 && AppContext.IsGetInitProviderSignals) { AppContext.FirstDataProvider.InitStart(); loadingForm.BeginInvoke(d, 70); } else if (status >= 70 && status < 80 && AppContext.IsGetSymbolPrices) { loadingForm.BeginInvoke(d, 80); } else if (status >= 80 && status < 90 && AppContext.IsGetSignalList) { loadingForm.BeginInvoke(d, 90); } //else if (status >= 85 && status < 95 && AppContext.IsLoadInitProviderFile) //{ // AppContext.FirstDataProvider.InitStart(); // loadingForm.BeginInvoke(d, 95); //} else if (status >= 90 && status < 100 && AppContext.IsFirstProviderInit) { timer.Stop(); loadingForm.BeginInvoke(d, 100); AppContext.IsLoading = false; } } }
private void SignalProcess(Signal signal, Protocol protocol) { Console.WriteLine(" Before Invoke control update ...... " + signal); bool dupli = false; bool isValid = false; for (int i = 0; i < AppContext.SignalDatas.Count; i++) { Signal sig = AppContext.SignalDatas[i]; if (signal.Equals(sig)) { if (signal.Arrow == sig.Arrow && protocol == Protocol.K0004_1) { dupli = true; } else if (signal.StopLoss == sig.StopLoss && protocol == Protocol.K0004_2) { dupli = true; } else if (signal.GainTip == sig.GainTip && protocol == Protocol.K0004_3) { dupli = true; } else if (signal.StopGain == sig.StopGain && protocol == Protocol.K0004_4) { dupli = true; } else if (signal.ProfitPrice == sig.ProfitPrice && protocol == Protocol.K0004_5) { dupli = true; } else { if (signal.StopLoss != 0) { sig.StopLoss = signal.StopLoss; sig.StopLossTime = signal.StopLossTime; sig.StopLossBidPrice = signal.StopLossBidPrice; isValid = true; } else if (signal.GainTip != 0) { sig.GainTip = signal.GainTip; sig.GainTipPrice = signal.GainTipPrice; sig.GainTipTime = signal.GainTipTime; isValid = true; } else if (signal.StopGain != 0) { sig.StopGain = signal.StopGain; sig.StopGainPrice = signal.StopGainPrice; sig.StopGainTime = signal.StopGainTime; isValid = true; } else if (signal.ProfitPrice > 0) { sig.Profit = signal.Profit; sig.ProfitPrice = signal.ProfitPrice; sig.ProfitTime = signal.ProfitTime; isValid = true; DataProvider provider = DataService.GetProviderBySymbol(signal.Symbol); if (provider != null && !provider.DataCache.SignalUnits[provider.CurrentTInterval].Contains(sig)) { provider.DataCache.SignalUnits[provider.CurrentTInterval].Add(sig); } } AppContext.SignalDatas[i] = sig; LogUtil.Info(" AppContext.SignalDatas[i] " + i + " " + AppContext.SignalDatas[i]); } LogUtil.Info(" dupli ============== " + dupli); break; } if (i == AppContext.SignalDatas.Count - 1 && !dupli) { isValid = true; } } if (!dupli) { if (protocol == Protocol.K0004_1) { AppContext.SignalDatas.Add(signal); } if (isValid) { Dictionary <Protocol, Signal> protocolSignal = new Dictionary <Protocol, Signal>(); protocolSignal.Add(protocol, signal); MsgUpdatedDelegate d = null; if (protocol != Protocol.K0004_5) { d = new MsgUpdatedDelegate(ProviderUpdate); d.Invoke(protocolSignal); } if (protocol != Protocol.K0004_2 && protocol != Protocol.K0004_3) { d = new MsgUpdatedDelegate(SignalListUpdate); signalListView.BeginInvoke(d, protocolSignal); } if (protocol == Protocol.K0004_5 || protocol == Protocol.K0004_1) { d = new MsgUpdatedDelegate(PriceListUpdate); priceListView.BeginInvoke(d, protocolSignal); } if (protocol == Protocol.K0004_5 || protocol == Protocol.K0004_1) { d = new MsgUpdatedDelegate(StatlListUpdate); statListView.BeginInvoke(d, protocolSignal); } } } }
private void SignalProcess(Signal signal, Protocol protocol) { Console.WriteLine(" Before Invoke control update ...... " + signal); bool dupli = false; bool isValid = false; for (int i = 0; i < AppContext.SignalDatas.Count; i++) { Signal sig = AppContext.SignalDatas[i]; if (signal.Equals(sig)) { if (signal.Arrow == sig.Arrow && protocol == Protocol.K0004_1) { dupli = true; } else if (signal.StopLoss == sig.StopLoss && protocol == Protocol.K0004_2) { dupli = true; } else if (signal.GainTip == sig.GainTip && protocol == Protocol.K0004_3) { dupli = true; } else if (signal.StopGain == sig.StopGain && protocol == Protocol.K0004_4) { dupli = true; } else if (signal.ProfitPrice == sig.ProfitPrice && protocol == Protocol.K0004_5) { dupli = true; } else { if (signal.StopLoss != 0) { sig.StopLoss = signal.StopLoss; sig.StopLossTime = signal.StopLossTime; sig.StopLossBidPrice = signal.StopLossBidPrice; isValid = true; } else if (signal.GainTip != 0) { sig.GainTip = signal.GainTip; sig.GainTipPrice = signal.GainTipPrice; sig.GainTipTime = signal.GainTipTime; isValid = true; } else if (signal.StopGain != 0) { sig.StopGain = signal.StopGain; sig.StopGainPrice = signal.StopGainPrice; sig.StopGainTime = signal.StopGainTime; isValid = true; } else if (signal.ProfitPrice > 0) { sig.Profit = signal.Profit; sig.ProfitPrice = signal.ProfitPrice; sig.ProfitTime = signal.ProfitTime; isValid = true; DataProvider provider = DataService.GetProviderBySymbol(signal.Symbol); if (provider != null && !provider.DataCache.SignalUnits[provider.CurrentTInterval].Contains(sig)) { provider.DataCache.SignalUnits[provider.CurrentTInterval].Add(sig); } } AppContext.SignalDatas[i] = sig; LogUtil.Info(" AppContext.SignalDatas[i] " + i +" "+AppContext.SignalDatas[i]); } LogUtil.Info(" dupli ============== " + dupli); break; } if (i == AppContext.SignalDatas.Count - 1 && !dupli) { isValid = true; } } if (!dupli) { if (protocol == Protocol.K0004_1) AppContext.SignalDatas.Add(signal); if (isValid) { Dictionary<Protocol, Signal> protocolSignal = new Dictionary<Protocol, Signal>(); protocolSignal.Add(protocol, signal); MsgUpdatedDelegate d = null; if (protocol != Protocol.K0004_5) { d = new MsgUpdatedDelegate(ProviderUpdate); d.Invoke(protocolSignal); } if (protocol != Protocol.K0004_2 && protocol != Protocol.K0004_3) { d = new MsgUpdatedDelegate(SignalListUpdate); signalListView.BeginInvoke(d, protocolSignal); } if (protocol == Protocol.K0004_5 || protocol == Protocol.K0004_1) { d = new MsgUpdatedDelegate(PriceListUpdate); priceListView.BeginInvoke(d, protocolSignal); } if (protocol == Protocol.K0004_5 || protocol == Protocol.K0004_1) { d = new MsgUpdatedDelegate(StatlListUpdate); statListView.BeginInvoke(d, protocolSignal); } } } }