HistoryTestTrader GetMarketDepth


HistoryTestTrader GetMarketDepth
Atom
5/2/2011


Можно ли сделать так что бы при сохраненных заявках в quotes.bin GetMarketDepth выдавал не рандомные заявки, а последние сохраненные?

Например у меня есть сохраненный стакан на 10:30:01 и 10:30:03 и если я спрашиваю стакан за 10:30:02, а у меня такого сохраненного нет, он бы мне выдавал не рандомный стакан как сейчас, а за 10:30:01 ну или исключение выдавал. Когда есть сохраненные стаканы, рандомные данные больше вредны чем полезны.




Thanks:


Mikhail Sukhov

Avatar
Date: 5/3/2011
Reply


roman Go to
Можно ли сделать так что бы при сохраненных заявках в quotes.bin GetMarketDepth выдавал не рандомные заявки, а последние сохраненные?

Например у меня есть сохраненный стакан на 10:30:01 и 10:30:03 и если я спрашиваю стакан за 10:30:02, а у меня такого сохраненного нет, он бы мне выдавал не рандомный стакан как сейчас, а за 10:30:01 ну или исключение выдавал. Когда есть сохраненные стаканы, рандомные данные больше вредны чем полезны.



GetMarketDepth во время тестирования вызывается?
Thanks:

roman

Avatar
Date: 5/4/2011
Reply


Mikhail Sukhov Go to
roman Go to
Можно ли сделать так что бы при сохраненных заявках в quotes.bin GetMarketDepth выдавал не рандомные заявки, а последние сохраненные?

Например у меня есть сохраненный стакан на 10:30:01 и 10:30:03 и если я спрашиваю стакан за 10:30:02, а у меня такого сохраненного нет, он бы мне выдавал не рандомный стакан как сейчас, а за 10:30:01 ну или исключение выдавал. Когда есть сохраненные стаканы, рандомные данные больше вредны чем полезны.



GetMarketDepth во время тестирования вызывается?

да в стратегии
HistoryTestTrader используется
Thanks:

Mikhail Sukhov

Avatar
Date: 5/4/2011
Reply


roman Go to
да в стратегии
HistoryTestTrader используется


Видимо ликвидность у инструмента меньше секунды. Какую вы указали?
Thanks:

roman

Avatar
Date: 5/4/2011
Reply


Mikhail Sukhov Go to
roman Go to
да в стратегии
HistoryTestTrader используется


Видимо ликвидность у инструмента меньше секунды. Какую вы указали?


Код такой:
Code
var storage = new TradingStorage(new InMemoryStorage()){BasePath = @"D:\Roma\Trade\Data"};
var trader = new HistoryTestTrader(
new Dictionary<Security, TimeSpan> { { security, TimeSpan.FromMilliseconds(1000) } },
new[] { portfolio },
storage);
_manager = new TimeShiftStrategyManager(trader, new DateTime(2010, 3, 19, 10, 20, 0), new DateTime(2010, 3, 19, 11, 50, 0)) { };

_manager.StateChanged += () => { if (_manager.State == StrategyManagerStates.Stopped) MessageBox.Show("Finish"); };
_manager.TimeStep = TimeSpan.FromMilliseconds(1000);
_strategy = new TestStrategy() { };
FileStrategyLogger flogger = new FileStrategyLogger(DateTime.Now.Ticks.ToString()+"log.txt");
flogger.Strategies.Add(_strategy);
_manager.Register(_strategy, portfolio, security);
_strategy.Start();
_manager.Start();


не только целый стакан рандомный генерируется, но и существующий добивается до константной глубины рандомными заявками, если сохраненный стакан меньше

и как я понимаю с сохраненными сделками с секундной точностью бессмысленно тестировать на истории со стаканами, сохраненными с миллисекундной точностью

Thanks:


Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy