public void Transaction_do_nothing_when_file_not_exists() { ITransaction import = new ImportBarsTransaction(this.marketData.Get <ObservableCollection <Bar> >(), "no-such-file.txt"); import.Execute(); Assert.AreEqual(0, this.marketData.Get <ObservableCollection <Bar> >().Count); }
static void Main(string[] args) { TradingData.Instance.Get <ICollection <Strategy> >().Add(strategy); //BarSettings barSettings = new BarSettings(strategy, "RIH4", 3600, 3); BarSettings barSettings = new BarSettings(strategy, "SPFB.RTS-3.14", 3600, 3); TradingData.Instance.Get <ICollection <BarSettings> >().Add(barSettings); BreakOutOnBar breakOnBar = new BreakOutOnBar(strategy, TradingData.Instance, SignalQueue.Instance, DefaultLogger.Instance); StopLossOnBar stopLossOnBar = new StopLossOnBar(strategy, 100, TradingData.Instance, SignalQueue.Instance, DefaultLogger.Instance); TakeProfitOnBar takeProfitOnBar = new TakeProfitOnBar(strategy, 100, TradingData.Instance, SignalQueue.Instance, DefaultLogger.Instance); ITransaction importBars = new ImportBarsTransaction(TradingData.Instance.Get <ObservableCollection <Bar> >(), "bars.txt"); importBars.Execute(); while (true) { try { string command = Console.ReadLine(); if (command == "stop") { break; } if (command == "pnl") { Console.WriteLine(String.Format("Реализованный профит и лосс составляет {0} пунктов", TradingData.Instance.GetProfitAndLossPoints(strategy))); } } catch (System.Runtime.InteropServices.COMException e) { DefaultLogger.Instance.Log(e.Message); } } }
public void Transaction_import_bars_when_file_exists() { string path = String.Concat(ProjectRootFolderNameFactory.Make(), "\\TestData\\SPFB.RTS_130807_130807.txt"); Assert.AreEqual(0, this.marketData.Get <ObservableCollection <Bar> >().Count); ITransaction import = new ImportBarsTransaction(this.marketData.Get <ObservableCollection <Bar> >(), path); import.Execute(); Assert.AreEqual(7, this.marketData.Get <ObservableCollection <Bar> >().Count); }
static void Main(string[] args) { try { Console.BufferHeight = 300; Console.BufferWidth = 230; Console.WindowHeight = 90; Console.WindowWidth = 110; Console.WindowTop = 0; Console.WindowLeft = 0; } catch { Console.WriteLine(String.Format("Error Console.Window Size")); } Console.WriteLine(String.Format("Console.BufferHeight {0}", Console.BufferHeight)); Console.WriteLine(String.Format("Console.BufferWidth {0}", Console.BufferWidth)); Console.WriteLine(String.Format("Console.WindowHeight {0}", Console.WindowHeight)); Console.WriteLine(String.Format("Console.WindowWidth {0}", Console.WindowWidth)); Console.WriteLine(String.Format("Console.WindowTop {0}", Console.WindowTop)); Console.WriteLine(String.Format("Console.WindowLeft {0}", Console.WindowLeft)); TradingData.Instance.Get <ICollection <StrategyHeader> >().Add(strategyHeader); //BarSettings barSettings = new BarSettings(strategyHeader, "RIH4", 3600, 3); //BarSettings barSettings = new BarSettings(strategyHeader, "SPFB.RTS-3.14", 3600, 3); TradingData.Instance.Get <ICollection <BarSettings> >().Add(barSettings); BreakOutOnBar breakOnBar = new BreakOutOnBar(strategyHeader, TradingData.Instance, SignalQueue.Instance, DefaultLogger.Instance); StopLossOnBar stopLossOnBar = new StopLossOnBar(strategyHeader, 100, TradingData.Instance, SignalQueue.Instance, DefaultLogger.Instance); TakeProfitOnBar takeProfitOnBar = new TakeProfitOnBar(strategyHeader, 100, TradingData.Instance, SignalQueue.Instance, DefaultLogger.Instance); ITransaction importBars = new ImportBarsTransaction(TradingData.Instance.Get <ObservableCollection <Bar> >(), "bars.txt"); importBars.Execute(); //список доступных команд ConsoleWriteCommands(); while (true) { try { string command = Console.ReadLine(); if (command == "x") { //adapter.Stop(); //ExportData<Order>(AppSettings.GetValue<bool>("ExportOrdersOnExit")); ExportData <Trade>(AppSettings.GetValue <bool>("ExportTradesOnExit")); ExportData <Bar>(AppSettings.GetValue <bool>("ExportBarsOnExit")); break; } if (command == "h") { Console.Clear(); ConsoleWriteCommands(); } if (command == "t") { Console.Clear(); foreach (Trade item in TradingData.Instance.Get <IEnumerable <Trade> >()) { Console.WriteLine(item.ToString()); } } if (command == "b") { Console.Clear(); foreach (Bar item in TradingData.Instance.Get <IEnumerable <Bar> >().OrderBy(i => i.DateTime)) //foreach (Bar item in TradingData.Instance.Get<IEnumerable<Bar>>()) { Console.WriteLine(item.ToString()); } } if (command == "p") { Console.WriteLine(String.Format("Реализованный профит и лосс составляет {0} пунктов", TradingData.Instance.GetProfitAndLossPoints(strategyHeader))); } } catch (System.Runtime.InteropServices.COMException e) { DefaultLogger.Instance.Log(e.Message); } } }