public void TestTrade() { string code = "RB1710"; int startDate = 20170601; int endDate = 20170603; StrategyReferedPeriods referedPeriods = new StrategyReferedPeriods(); referedPeriods.UseTickData = false; referedPeriods.UsedKLinePeriods.Add(KLinePeriod.KLinePeriod_1Minute); referedPeriods.UsedKLinePeriods.Add(KLinePeriod.KLinePeriod_5Minute); StrategyForwardPeriod forwardPeriod = new StrategyForwardPeriod(false, KLinePeriod.KLinePeriod_1Minute); StrategyArguments_CodePeriod strategyCodePeriod = new StrategyArguments_CodePeriod(code, startDate, endDate, referedPeriods, forwardPeriod); IStrategyExecutor_Single executor = StrategyCenter.Default.GetStrategyExecutorFactory().CreateExecutor_History(strategyCodePeriod); StrategyAbstract strategy = (StrategyAbstract)StrategyGetter.GetStrategy(typeof(MockStrategy_Trade)); executor.Strategy = strategy; executor.Run(); StrategyTrader_History trader = ((StrategyTrader_History)strategy.StrategyHelper.Trader); IList <TradeInfo> tradeInfos = trader.Account.CurrentTradeInfo; AssertUtils.PrintLineList((IList)tradeInfos); AssertUtils.AssertEqual_List("StrategyTrade", GetType(), tradeInfos); Assert.AreEqual(96250, trader.Account.Asset); //Assert.AreEqual(98870, trader.Account.Asset); //IList<OrderInfo> orderInfos = strategy.StrategyOperator.Trader.CurrentOrderInfo; //for (int i = 0; i < tradeInfos.Count; i++) //{ // Console.WriteLine(tradeInfos[i]); //} //Console.WriteLine(strategy.StrategyOperator.Trader.OwnerTrader.Account.Asset); }
public IStrategyTrader GetStrategyTrader(string code) { if (dic_Code_Trader.ContainsKey(code)) { return(dic_Code_Trader[code]); } StrategyTrader_History trader = new StrategyTrader_History(this, code); this.dic_Code_Trader.Add(code, trader); this.codes.Add(code); return(trader); }
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); }