コード例 #1
0
        /// <summary>
        /// Output all executed state switches to filepath.
        /// </summary>
        /// <param name="filepath">Filepath to store trades at.</param>
        /// <param name="stateSwitchEvents">List of state switches during the backtest.</param>
        private static void OutputStateSwitches(string filepath, List <StateSwitchEvent> stateSwitchEvents)
        {
            var builder = new StringBuilder();

            builder.AppendLine(StateSwitchEvent.GetStaticCsvHeader(Delimiter));
            foreach (var stateSwitch in stateSwitchEvents)
            {
                builder.AppendLine(stateSwitch.GetCsvRepresentation(Delimiter));
            }

            WriteAllText(filepath, builder.ToString());
        }
コード例 #2
0
        private void OnNext(Type stateSwitch)
        {
            var item = new StateSwitchEvent(
                DateTimeOffset.Now.ToUnixTimeMilliseconds(),
                stateSwitch.Name,
                Session);

            lock (Lock)
            {
                _database.StateSwitchEvents.Add(item);
                _database.SaveChanges();
            }
        }