private void ForwardToday_KLineData(KLineData_RealTime klineData, KLinePeriod period) { ITickBar nextTickBar = currentTickData.GetBar(currentTickData.BarPos + 1); //日线,肯定不会跳到下一个bar if (period == KLinePeriod.KLinePeriod_1Day) { dic_KLinePeriod_IsEnd[period] = false; klineData.SetRealTimeData(GetKLineBar(klineData, nextTickBar)); return; } double time = nextTickBar.Time; int nextKLineIndex = FindNextKLineIndex(klineData, time); if (nextKLineIndex == klineData.BarPos) { dic_KLinePeriod_IsEnd[period] = false; klineData.SetRealTimeData(GetKLineBar(klineData, nextTickBar)); } else { dic_KLinePeriod_IsEnd[period] = true; klineData.SetRealTimeData(GetKLineBar(nextTickBar), nextKLineIndex); } }
private void btView_Click(object sender, EventArgs e) { DialogResult result = openFileDialog1.ShowDialog(); if (result == DialogResult.OK) { string fileName = openFileDialog1.FileName; if (fileName.ToLower().EndsWith("tick")) { TickDataStore_File_Single store = new TickDataStore_File_Single(fileName); TickData tickData = store.Load(); tbContent.Clear(); StringBuilder sb = new StringBuilder(); for (int i = 0; i < tickData.Length; i++) { sb.AppendLine(tickData.GetBar(i).ToString()); } tbContent.AppendText(sb.ToString()); } else if (fileName.ToLower().EndsWith("kline")) { KLineDataStore_File_Single store = new KLineDataStore_File_Single(fileName); IKLineData tickData = store.LoadAll(); tbContent.Clear(); StringBuilder sb = new StringBuilder(); for (int i = 0; i < tickData.Length; i++) { sb.AppendLine(tickData.GetBar(i).ToString()); } tbContent.AppendText(sb.ToString()); } else if (fileName.ToLower().EndsWith("csv")) { tbContent.Text = File.ReadAllText(fileName); } else { MessageBox.Show("不支持的格式"); return; } tbFileName.Text = fileName; } }