Исторические данные проигрываются.
Но когда вместо исторических данных пытаюсь использовать случайные, то данные не генерятся.
Пример - в коде вместо этого:
var storage = new TradingStorage(new InMemoryStorage())
{
BasePath = @"C:\MyProjects\HistoryData",
};
var trader = new HistoryEmulationTrader(
new Dictionary<Security, TimeSpan> {
{ securityA, TimeSpan.FromSeconds(1) },
{ securityB, TimeSpan.FromSeconds(1) }},
new[] { portfolio },
storage);
пытался сделать:
var trader = new RandomEmulationTrader(
new Dictionary<Security, TimeSpan> {
{ securityA, TimeSpan.FromSeconds(1) },
{ securityB, TimeSpan.FromSeconds(1) }},
new[] { portfolio });
при этом все остальное оставив без изменений.
Нужно ли еще что-то менять чтобы заработал генератор случайных данных?
PS. вместо ((( и ))) должны быть угловые скобки - форум не переваривает их что очень неудобно для вставки кода.
Kommentare (2)
Anmelden oder Konto erstellen, Melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen
Лучше использовать 3.2. Там много поменялось для эмуляции.
и правда - после мучительной установки и правки кода на 3.2 - мои тесты заработали, и 3.2 мне гораздо больше нравится - логичнее стало, что-ли.
спасибо большое!
PS. а проблема была в том что я не вызывал у стратегии base.OnRunning(). и мне кажется тут есть небольшая логическая недоработка - нужно либо у всех перегруженных методов обязывать вызывать базовый (у OnProcess, например, тоже) либо ни у кого (вся унаследованная логика может вызываеться сама перед или после вызова этих виртуальных методов).