public override RunResultClass getDateSerialResult(string secCode, DateTime begt, DateTime endt, params object[] DataPoints) { RunResultClass ret = new RunResultClass(); MTable tab = new MTable(); Type t = Type.GetType(GuildName + "GuidClass"); Assembly assembly = Assembly.GetExecutingAssembly(); //MutliReturnValueGuidClass gd = assembly.CreateInstance(t.Name) as MutliReturnValueGuidClass; MutliReturnValueGuidClass gd = GuidBaseClass.CreateGuideInstance(GuildName) as MutliReturnValueGuidClass; //MACDGuidClass gd = new MACDGuidClass(MACDType.MACD); gd.cycle = this.cycle; gd.priceAdj = this.prcAdj; DateSerialGuidBuilder_ForWD gb = null; for (int i = 0; i < ValueNames.Length; i++) { gd.ReturnValueName = ValueNames[i]; gb = new DateSerialGuidBuilder_ForWD(w, gd); MTable tmp = gb.getRecords(secCode, begt, endt); tab.AddColumnByArray(ValueNames[i], tmp, GuildName); } ret.Notice.Success = true; ret.Result = tab; return(ret); }
protected BaseDataTable SelectTable;//证券清单 public RunResultClass Execute() { RunResultClass ret = new RunResultClass(); RunNoticeClass msg = InParamsCheck(InParam); if (!msg.Success) { ret.Notice = msg; return(ret); } msg = new RunNoticeClass(); msg = BaseFilter(); if (!msg.Success) { ret.Notice = msg; return(ret); } msg = BaseFilter(); if (!msg.Success) { ret.Notice = msg; return(ret); } return(ExecSelect()); }
public override RunResultClass getSetDataResult(string[] secCodes, DateTime dt) { RunResultClass ret = new RunResultClass(); MTable tab = new MTable(); // //MutliReturnValueGuidClass gd = assembly.CreateInstance(ct.FullName) as MutliReturnValueGuidClass; MutliReturnValueGuidClass gd = GuidBaseClass.CreateGuideInstance(GuildName) as MutliReturnValueGuidClass; //MACDGuidClass gd = new MACDGuidClass(MACDType.MACD); gd.cycle = this.cycle; gd.priceAdj = this.prcAdj; GuidBuilder_ForWD gb = null; for (int i = 0; i < ValueNames.Length; i++) { gd.ReturnValueName = ValueNames[i]; gb = new GuidBuilder_ForWD(w, gd); MTable tmp = gb.getRecords(secCodes, dt); tab.AddColumnByArray(ValueNames[i], tmp, GuildName); } ret.Notice.Success = true; ret.Result = tab; return(ret); }
public static MTable getBkList(MongoDataReader w, string sec, DateTime dt, bool FilterTheNoPrice) { SecIndexClass sic = new SecIndexClass(sec); secIndexBuilder sib = new secIndexBuilder(w, sic); MTable mt = sib.getBkList(dt); if (mt == null || mt.Count == 0) { return(mt); } BaseDataProcess_ForMG bdp = new BaseDataProcess_ForMG(w); string[] seccodes = mt["wind_code"].ToList <string>().ToArray(); RunResultClass rc = bdp.getSetDataResult(seccodes, "close", dt); MTable ret = new MTable(); List <DataRow> NewDrs = new List <DataRow>(); for (int i = 0; i < rc.Result.Count; i++) { DataRow retdr = mt.GetTable().Rows[i]; DataRow dr = rc.Result.GetTable().Rows[i]; if (dr.IsNull("CLOSE") && FilterTheNoPrice) { continue; } NewDrs.Add(retdr); } ret.FillList(NewDrs.ToArray()); return(ret); }
public RunResultClass LastProcess(MTable mt) { RunResultClass ret = new RunResultClass(); ret.Result = mt[string.Format(":{0}", InParam.TopN - 1), "*"]; return(ret); }
public static MTable GetMutliSetData(MongoDataReader w, string[] code, DateTime endt, Cycle cyc, PriceAdj prcAdj, bool IncludeBaseData, string args) { RunNoticeClass ret = new RunNoticeClass(); MTable mtab = new MTable(); if (IncludeBaseData) { BaseDataProcess bp = new BaseDataProcess_ForMG(w, cyc, prcAdj); RunResultClass bret = bp.getSetDataResult(code, endt, new object[0] { }); if (!bret.Notice.Success) { mtab.Union(bret.Result); //return new BaseDataTable(); } } Dictionary <string, HashSet <string> > guids = getMutliValueGuid(args.Split(',')); foreach (string key in guids.Keys) { MutliValueGuidProcess_ForMG cgp = new MutliValueGuidProcess_ForMG(w, key, guids[key].ToArray <string>()); cgp.cycle = cyc; cgp.prcAdj = prcAdj; RunResultClass cret = cgp.getSetDataResult(code, endt, new object[0] { }); mtab.Union(cret.Result); } return(mtab); }
public RunResultClass ExecSelect() { RunResultClass ret = new RunResultClass(); for (int i = 0; i < this.SelectTable.Count; i++) { CommSecurityProcessClass spc = SingleSecPreProcess((BaseDataItemClass)this.SelectTable[i]); this.SelectTable[i, "Enable"] = spc.Enable; } return(LastProcess(this.SelectTable)); }
public static BaseDataTable GetBaseData(MongoDataReader w, string[] codes, DateTime endt, Cycle cyc, PriceAdj prcAdj, params object[] args) { RunNoticeClass ret = new RunNoticeClass(); //MACDGuidProcess mp = new MACDGuidProcess(gb.w); //RunResultClass ret = mp.getDateSerialResult("000100.SZ",Convert.ToDateTime("2017/7/7"), DateTime.Today); BaseDataProcess bp = new BaseDataProcess_ForMG(w, cyc, prcAdj); RunResultClass bret = bp.getSetDataResult(codes, endt, args); if (!bret.Notice.Success) { return(new BaseDataTable()); } return(new BaseDataTable(bret.Result)); }
public override RunResultClass GetSetBaseData(string[] secCodes, DateTime EndT, params object[] datapointnames) { RunResultClass ret = new RunResultClass(); BaseDataPointGuidClass gd = null; if (datapointnames.Length == 0) { gd = new BaseDataPointGuidClass(true); } else { gd = new BaseDataPointGuidClass(datapointnames); } GuidBuilder_ForWD gb = new GuidBuilder_ForWD(w, gd); gd.cycle = this.cycle; gd.priceAdj = this.prcAdj; ret.Result = gb.getRecords(secCodes, EndT); ret.Result.AddColumnByArray <DateTime>("DateTime", EndT); ret.Notice.Success = true; return(ret); }
public override RunResultClass getDateSerialResult(string secCode, DateTime begt, DateTime endt, params object[] DataPoints) { RunResultClass ret = new RunResultClass(); MTable tab = new MTable(); BaseDataPointGuidClass gd; if (DataPoints.Length > 0) { gd = new BaseDataPointGuidClass(DataPoints); } else { gd = new BaseDataPointGuidClass(true); } gd.cycle = this.cycle; gd.priceAdj = this.prcAdj; DateSerialGuidBuilder_ForWD gb = new DateSerialGuidBuilder_ForWD(w, gd); tab = gb.getRecords(secCode, begt, endt); ret.Result = tab; ret.Notice.Success = true; return(ret); }