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);
            }
        }
Exemplo n.º 2
0
        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);
        }
Exemplo n.º 3
0
 public StrategyExecuteArguments(StrategyHelper strategyHelper, IStrategy strategy)
 {
     this.strategyHelper = strategyHelper;
     this.strategy       = strategy;
 }