public StrategyExecutor_CodePeriod_MainContract(IStrategyCenter strategyCenter, StrategyArguments_CodePeriod strategyArguments) : base(strategyCenter, strategyArguments) { this.strategyArguments = strategyArguments; this.PrepareStrategyHelper(); IList <ICodePeriod> codePeriods = this.strategyArguments.CodePeriod.Contracts; this.dataPackages = new List <IDataPackage_Code>(); for (int i = 0; i < codePeriods.Count; i++) { ICodePeriod codePeriod = codePeriods[i]; this.dataPackages.Add(strategyCenter.BelongDataCenter.DataPackageFactory.CreateDataPackage_Code(codePeriod.Code, codePeriod.StartDate, codePeriod.EndDate)); } this.BuildExecutorInfo(); for (int i = 0; i < dataPackages.Count; i++) { IDataPackage_Code dataPackage = dataPackages[i]; StrategyHelper executorStrategyHelper = new StrategyHelper(); executorStrategyHelper.QueryResultManager = this.strategyHelper.QueryResultManager; executorStrategyHelper.Drawer = null;//TODO executorStrategyHelper.Trader = this.strategyHelper.Trader; StrategyArguments_DataPackage strategyArgument = new StrategyArguments_DataPackage(dataPackage, strategyArguments.ReferedPeriods, strategyArguments.ForwardPeriod, executorStrategyHelper); StrategyExecutor_DataPackage executor = new StrategyExecutor_DataPackage(strategyCenter, strategyArgument, this.strategyExecutorInfo); executor.OnBarFinished += Executor_OnBarFinished; executor.OnDayFinished += Executor_OnDayFinished; this.executors.Add(executor); } }
public StrategyExecutorAbstract(IStrategyCenter strategyCenter, StrategyArgumentsAbstract strategyArguments) { this.strategyCenter = strategyCenter; this.forwardPeriod = strategyArguments.ForwardPeriod; this.referedPeriods = strategyArguments.ReferedPeriods; this.traderSetting = strategyArguments.TraderSetting; this.strategyHelper = strategyArguments.StrategyHelper; this.isSaveResult = strategyArguments.IsSaveResult; }
public StrategyExecutor_DataPackage(IStrategyCenter strategyCenter, StrategyArguments_DataPackage strategyArguments, StrategyExecutorInfo strategyExecutorInfo) : base(strategyCenter, strategyArguments) { this.dataPackage = strategyArguments.DataPackage; this.codePeriod = new CodePeriod(dataPackage.Code, dataPackage.StartDate, dataPackage.EndDate); if (strategyExecutorInfo == null) { this.InitStrategyExecutorInfo(); } else { this.strategyExecutorInfo = strategyExecutorInfo; } }
public StrategyExecutor_Multi(IStrategyCenter strategyCenter, StrategyArguments_CodePeriodList arguments) { this.strategyCenter = strategyCenter; this.arguments = arguments; IList <ICodePeriod> codePeriods = this.arguments.CodePeriodPackage.CodePeriods; for (int i = 0; i < codePeriods.Count; i++) { ICodePeriod codePeriod = codePeriods[i]; StrategyArguments_CodePeriod strategyCodePeriod = new StrategyArguments_CodePeriod(codePeriod, arguments.ReferedPeriods, arguments.ForwardPeriod); IStrategyExecutor_Single executor = strategyCenter.GetStrategyExecutorFactory().CreateExecutor_History(strategyCodePeriod); this.executors.Add(executor); } }
private void InitByCodePeriod(IStrategyCenter strategyCenter, StrategyArguments_CodePeriod strategyArguments) { ICodePeriod codePeriod = strategyArguments.CodePeriod; if (codePeriod.IsFromContracts) { this.strategyExecutor = new StrategyExecutor_CodePeriod_MainContract(strategyCenter, strategyArguments); } else { IDataPackage_Code dataPackage = strategyCenter.BelongDataCenter.DataPackageFactory.CreateDataPackage_Code(codePeriod.Code, codePeriod.StartDate, codePeriod.EndDate); StrategyArguments_DataPackage strategyDataPackage = new StrategyArguments_DataPackage(dataPackage, strategyArguments.ReferedPeriods, strategyArguments.ForwardPeriod); this.strategyExecutor = strategyCenter.GetStrategyExecutorFactory().CreateExecutor_History(strategyDataPackage); } this.strategyExecutor.OnStart += StrategyExecutor_OnStart;; this.strategyExecutor.OnBarFinished += StrategyExecutor_OnBarFinished; this.strategyExecutor.OnDayFinished += StrategyExecutor_OnDayFinished; this.strategyExecutor.OnCanceled += StrategyExecutor_OnCanceled; this.strategyExecutor.OnFinished += StrategyExecutor_OnFinished; }
public StrategyExecutorFactory(IStrategyCenter strategyCenter) { this.strategyCenter = strategyCenter; }
public StrategyExecutor_DataPackage(IStrategyCenter strategyCenter, StrategyArguments_DataPackage strategyArguments) : this(strategyCenter, strategyArguments, null) { }
public StrategyExecutor_CodePeriod(IStrategyCenter strategyCenter, StrategyArguments_CodePeriod strategyArguments) { InitByCodePeriod(strategyCenter, strategyArguments); }