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 IStrategyHelper GetDefaultStrategyHelper() { if (defaultStrategyHelper != null) { return(defaultStrategyHelper); } defaultStrategyHelper = new StrategyHelper(); //初始化交易器 StrategyTraderSetting traderSetting = GetDefaultTraderSetting(); IAccount account = DataCenter.Default.AccountManager.CreateAccount(traderSetting.InitMoney); account.AccountSetting.AutoFilter = traderSetting.AutoFilter; account.AccountSetting.TradeType = traderSetting.TradeType; StrategyTrader_History trader = new StrategyTrader_History(account); defaultStrategyHelper.Trader = trader; return(defaultStrategyHelper); }
public StrategyExecuteArguments(StrategyHelper strategyHelper, IStrategy strategy) { this.strategyHelper = strategyHelper; this.strategy = strategy; }