public SimAccount(string accountId, string description, decimal startingbalance, int leverage) { _id = accountId; Desc = description; _startingbalance = startingbalance; Leverage = leverage; _securities = new SecurityTracker(); _currentpositions = new PositionTracker(this); }
public SimAccount(string accountId, string description, decimal startingbalance, int leverage, string name) { _id = accountId; Desc = description; _startingbalance = startingbalance; Leverage = leverage; _securities = new SecurityTracker <SecurityImpl>(name); _currentpositions = new PositionTracker(this); _pipvalueconversionsymbols = Util.GetPipValueSymbolCrosses(Currency); _positionvalueconversionsymbols = Util.GetPositionValueSymbolCrosses(Currency); }
/// <summary> /// Returns the TIK file filter based on the samples used in this backtest /// </summary> /// <param name="baseFolder"></param> /// <param name="symbol"></param> /// <param name="filter"></param> /// <param name="startdate"></param> /// <param name="enddate"></param> /// <returns></returns> private static string[] GetTIKFiles(string baseFolder, ISecurityTracker securities, out TickFileFilter filter, int startdate, int enddate) { List <string> files = new List <string>(); //Create filter with the symbols as requested List <string> symbols = new List <string>(); foreach (var sec in securities.ToArray()) { symbols.Add(sec.Name); } filter = new TickFileFilter(symbols); //Add the initial timeperiod DateTime ct = Util.Qld2Dt(startdate); TimeSpan periodlenght = Util.Qld2Dt(enddate) - Util.Qld2Dt(startdate); //Filter the period for (int i = 0; i < periodlenght.TotalDays; i++) { filter.DateFilter(int.Parse(ct.AddDays(i).ToString("yyyyMMdd")), DateMatchType.Day); } //settings filter.IsDateMatchUnion = true; filter.DefaultDeny = true; //Select tickfiles foreach (var xdate in filter.DateList) { foreach (var symbol in filter.SymbolList) { //Check if file exists in the zip file FileInfo fi = new FileInfo(baseFolder + string.Format("\\{0}.zip", symbol)); if (!fi.Exists) { throw new FileNotFoundException("Could not find tik archive"); } using (ZipFile zip = ZipFile.Read(fi.FullName)) { if (!zip.ContainsEntry(symbol.ToUpper() + xdate.Date + ".TIK")) { continue; } } string file = fi.FullName + @"\" + symbol.ToUpper() + xdate.Date + ".TIK"; files.Add(file); } } return(files.ToArray()); }
public void RequestBroker_Default_Succeed(SecurityType type, string name) { //Arrange sut = new SecurityTracker(); //Act var security = sut[name, type]; //Assert security.Should().NotBeNull(); security.Name.Should().Be(name); security.Type.Should().Be(type); }
public TestSecurityTracker() { sut = new SecurityTracker(); }