esper:
VassilSanych:
Я так понял, что основная претензия в том, что время лога определяется не единообразно:
для стратегии - по бирже, а для обычного лога - локально.
Локально оно определяется для всех источников логов, кроме эмулятора, т.к. когда используется эмулятор, то за одну локальную секунду может пройти исторический месяц, а время в логе должно соответствовать действию именно в истории.
Основная претензия в том что, при эмуляторе время в логе должно соответствовать действию именно в истории, а идет со смещением в 5 часов.
Посмотрел еще раз, LoggingHelper.TimeZoneOffset все же здесь не поможет.
в конечном счёте вызов заканчивается на TraderHelper
Для эмулятора это не совсем верно, в EmulatorTrader этот метод возврашает время, которое определяется по историческим данным. Но время, определенное по историческим данным, так же сдвигается на часовой пояс биржи. Так что можно поменять часовой пояс для биржи или использовать тестовую биржу.
LoggingHelper.TimeZoneOffset не помогает.
Поменять часовой пояс для биржи или использовать тестовую биржу. Это вот так?
_trader = new EmulationTrader(new[] { security },new[] { portfolio })
{
MarketEmulator = new MarketEmulator(new QuikTrader())
{
EmulatorTimeZone = TimeZoneInfo.CreateCustomTimeZone("Moscow", TimeSpan.FromHours(4), "Moscow", "Moscow"),
},
MarketTimeChangedInterval = timeFrame,
StorageRegistry = storageRegistry,
// необходимо включать только если есть история стаканов и нужно получить более точное тестирование
UseMarketDepth = false,
};
MarketEmulator = new MarketEmulator(new QuikTrader())
{
EmulatorTimeZone = TimeZoneInfo.CreateCustomTimeZone("Moscow", TimeSpan.FromHours(4), "Moscow", "Moscow"),
},
То я так и сделал, это помогло, чтоб сделки соответствовали истории и шли без смещения. А время в логе так и идет со смещением.
А если не так, то подскажите как? Где-то что то недопонимаю.
И еще вопрос к разработчикам. Может время бирж изначально делать через UTC, как в приведенном выше примере, ни кто бы с переводом времени не маялся, наверное, даже и не замечал, что возможна такая проблема. И Регионам хорошо и Москва не в обиде. Хотя опять же могу где-то, что то недопонимать.