///// <summary> ///// пример ///// </summary> ///// <param name="args"></param> //override public void Do(string[] args) //{ // //TradeConsole.ConsoleSetSize(); // //TradeConsole.LogAssemblyInfo(assemblies); // //список доступных команд // TradeConsole.ConsoleWriteCommands(); // Initialize(); // SetupStrategy(args); // base.Do(args); //} /// <summary> /// пример переопределения /// Program.Sample1.Initialize() /// </summary> override public void Initialize() { Console.WriteLine("Program.Sample1.Initialize()"); marketDataProvider = new MarketDataProvider(); rawTradingDataProvider = new RawTradingDataProvider(DefaultLogger.Instance); symbolsDataProvider = new SymbolsDataProvider(); traderBase = new TraderBase(new SmartComOrderManager()); adapter = new SmartComAdapter(); SmartComHandlers.Instance.Add <_IStClient_DisconnectedEventHandler>(IsDisconnected); SmartComHandlers.Instance.Add <_IStClient_ConnectedEventHandler>(IsConnected); sendItemTrade = new SendItemOnTrade(TradingData.Instance, DefaultLogger.Instance); //ObservableQueue<Order> orderQueue = TradingData.Instance.Get<ObservableQueue<Order>>(); //ObservableHashSet<Order> orderQueue = TradingData.Instance.Get<ObservableHashSet<Order>>(); //sendItemOrder = new SendItemOnOrder(TradingData.Instance.Get<ObservableQueue<Order>>()); //Отправляем данные клиентам { //sendItemBar.AddItemHandler(TradeConsole.ConsoleWriteLineBar); sendItemTrade.AddItemHandler(TradeConsole.ConsoleWriteLineTrade); //senderItemOrder.AddedItemHandler(TradeHubStarter.sendOrder); if (AppSettings.GetValue <bool>("SignalHub")) { //отправляем через signalR //sendItemBar.AddItemHandler(TradeHubStarter.sendBar); sendItemTrade.AddItemHandler(TradeHubStarter.sendTrade); } } }
public void Setup() { this.tradingData = new TradingDataContext(); this.signalQueue = new ObservableQueue <Signal>(); this.orderQueue = new ObservableQueue <Order>(); this.orderManager = new MockOrderManager(); TraderBase traderBase = new TraderBase(this.tradingData, this.signalQueue, this.orderQueue, this.orderManager, new AlwaysTimeToTradeSchedule(), new NullLogger()); }
/// <summary> /// пример переопределения /// BackTest Sample1 Initialize() /// </summary> override public void Initialize() { Console.WriteLine("BackTest.Converter.Initialize()"); //marketDataProvider = new MarketDataProvider(); //rawTradingDataProvider = new RawTradingDataProvider(DefaultLogger.Instance); //symbolsDataProvider = new SymbolsDataProvider(); orderManager = new TRL.Emulation.BacktestOrderManager(TradingData.Instance, DefaultLogger.Instance); traderBase = new TraderBase(orderManager); }
public void Setup() { this.tradingData = new TradingDataContext(); this.signalQueue = new ObservableQueue <Signal>(); this.orderQueue = new ObservableQueue <Order>(); this.orderManager = new MockOrderManager(); TraderBase traderBase = new TraderBase(this.tradingData, this.signalQueue, this.orderQueue, this.orderManager, new AlwaysTimeToTradeSchedule(), new NullLogger()); this.strategyHeader = new StrategyHeader(1, "strategyHeader", "BP12345-RF-01", "RTS-9.13_FT", 10); AddStrategy(this.strategyHeader); }
public void Setup() { this.tradingData = new TradingDataContext(); this.signalQueue = new ObservableQueue <Signal>(); this.orderQueue = new ObservableQueue <Order>(); this.orderManager = new MockOrderManager(); this.tb = new TraderBase(this.tradingData, this.signalQueue, this.orderQueue, this.orderManager, new AlwaysTimeToTradeSchedule(), new NullLogger()); StrategyHeader strategyHeader = new StrategyHeader(1, "Strategy Description", "BP12345-RF-01", "RTS-9.13_FT", 10); this.tradingData.Get <ICollection <StrategyHeader> >().Add(strategyHeader); StopPointsSettings spSettings = new StopPointsSettings(strategyHeader, 50, false); this.tradingData.Get <ICollection <StopPointsSettings> >().Add(spSettings); StopLossOrderSettings sloSettings = new StopLossOrderSettings(strategyHeader, 100); this.tradingData.Get <ICollection <StopLossOrderSettings> >().Add(sloSettings); ProfitPointsSettings ppSettings = new ProfitPointsSettings(strategyHeader, 100, false); this.tradingData.Get <ICollection <ProfitPointsSettings> >().Add(ppSettings); TakeProfitOrderSettings tpoSettings = new TakeProfitOrderSettings(strategyHeader, 100); this.tradingData.Get <ICollection <TakeProfitOrderSettings> >().Add(tpoSettings); StrategyStopLossByPointsOnTick stopLossHandler = new StrategyStopLossByPointsOnTick(strategyHeader, this.tradingData, this.signalQueue, new NullLogger()); StrategyTakeProfitByPointsOnTick takeProfitHandler = new StrategyTakeProfitByPointsOnTick(strategyHeader, this.tradingData, this.signalQueue, new NullLogger()); PlaceStrategyStopLossByPointsOnTrade placeStopOnTradeHandler = new PlaceStrategyStopLossByPointsOnTrade(strategyHeader, this.tradingData, this.signalQueue, new NullLogger()); PlaceStrategyTakeProfitByPointsOnTrade placeTakeProfitOnTradeHandler = new PlaceStrategyTakeProfitByPointsOnTrade(strategyHeader, this.tradingData, this.signalQueue, new NullLogger()); Assert.AreEqual(0, this.tradingData.Get <IEnumerable <Signal> >().Count()); Assert.AreEqual(0, this.tradingData.Get <IEnumerable <Order> >().Count()); Assert.AreEqual(0, this.tradingData.Get <IEnumerable <Trade> >().Count()); Assert.AreEqual(0, this.tradingData.Get <IEnumerable <Position> >().Count()); Assert.AreEqual(0, this.signalQueue.Count); Assert.AreEqual(0, this.orderQueue.Count); }
public TraderBaseInitializer() { this.tradingData = SampleTradingDataContextFactory.Make(); this.signalQueue = new ObservableQueue <Signal>(); this.orderQueue = new ObservableQueue <Order>(); this.orderManager = new MockOrderManager(); this.traderBase = new TraderBase(this.tradingData, this.signalQueue, this.orderQueue, this.orderManager, new AlwaysTimeToTradeSchedule(), new NullLogger()); }
///// <summary> ///// пример ///// </summary> ///// <param name="args"></param> //override public void Do(string[] args) //{ // //TradeConsole.ConsoleSetSize(); // //TradeConsole.LogAssemblyInfo(assemblies); // //список доступных команд // TradeConsole.ConsoleWriteCommands(); // Initialize(); // SetupStrategy(args); // base.Do(args); //} /// <summary> /// пример переопределения /// BackTest Sample1 Initialize() /// </summary> override public void Initialize() { Console.WriteLine("BackTest.Sample1.Initialize()"); marketDataProvider = new MarketDataProvider(); rawTradingDataProvider = new RawTradingDataProvider(DefaultLogger.Instance); symbolsDataProvider = new SymbolsDataProvider(); orderManager = new TRL.Emulation.BacktestOrderManager(TradingData.Instance, DefaultLogger.Instance); //private static SmartComAdapter adapter = // new SmartComAdapter(); traderBase = new TraderBase(orderManager); //new TraderBase(new SmartComOrderManager()); //strategySettings = new StrategySettings(1, // "ReversMaOnBar strategy", // AppSettings.GetStringValue("Portfolio"), // AppSettings.GetStringValue("Symbol"), // AppSettings.GetValue<double>("Amount")); //barSettings = new BarSettings( // strategySettings, // strategySettings.Symbol, // AppSettings.GetValue<int>("Interval"), // AppSettings.GetValue<int>("Period")); //assemblies = { "Interop.SmartCOM3Lib.dll", "TRL.Common.dll", "TRL.Connect.Smartcom.dll" }; }