private void button7_Click(object sender, EventArgs e) { if (repository == null) { repository = new IndicatorRepository(textBox2.Text); repository.Initilization(); } SecurityPropertiesSet securities = repository.Securities; List <String> codes = securities.Codes; int num = 0; foreach (String code in codes) { if (code == null || code == "") { continue; } TimeSerialsDataSet tsd = repository[code]; if (tsd == null || tsd.DayKLine == null || tsd.DayKLine.Count <= 0) { continue; } showText(code + "..."); tsd.CubeCreate(Utility.Collections.Time.TimeUnit.day); tsd.FundTrendCreate(Utility.Collections.Time.TimeUnit.day); tsd.CubeCreate(Utility.Collections.Time.TimeUnit.week); tsd.FundTrendCreate(Utility.Collections.Time.TimeUnit.week); num += 1; } showText(""); MessageBox.Show("生成完成,共有" + num.ToString() + "个股票生成数据"); }
/// <summary> /// 生成指标数据 /// </summary> /// <returns></returns> public bool doGenerateIndicator() { showBeginMessage("开始生成指标..."); if (repository == null) { repository = new IndicatorRepository(FileUtils.GetDirectory(props.Get <String>("repository"))); repository.Initilization(); } try { List <String> codes = repository.Securities.Codes; foreach (String code in codes) { TimeSerialsDataSet ds = repository[code]; if (ds == null) { continue; } showProgressMessage(code); KLine kline = ds.DayKLine; TradingLine tradeLine = ds.DayTradeLine; ds.Create("kline", TimeUnit.week); ds.Create("kline", TimeUnit.month); ds.CubeCreate(); ds.CubeCreate(TimeUnit.week); ds.CubeCreate(TimeUnit.month); ds.FundTrendCreate(TimeUnit.day); ds.FundTrendCreate(TimeUnit.week); ds.FundTrendCreate(TimeUnit.month); ds.FundTrendCrossCreate(TimeUnit.day); ds.FundTrendCrossCreate(TimeUnit.week); ds.FundTrendCrossCreate(TimeUnit.month); } showResultMessage(""); return(true); } catch (Exception e) { showResultMessage("生成指标失败", -1, e.Message); return(false); } }