Загрузка исторических данных в понедельник

Загрузка исторических данных в понедельник
Atom
4/7/2014


Задача простая - мы "разогреваем" стратегию, подгружая исторические данные перед стартом, чтобы сформировались индикаторы.
Для этого добавляем к realtime данным исторические данные из гидры.
Code

                        candleManager = new CandleManager(new TradeCandleBuilderSource(connector));
                        var cbs = new TradeStorageCandleBuilderSource { StorageRegistry = storageRegistry };
                        candleManager.Sources.OfType<TimeFrameCandleBuilder>().Single().Sources.Add(cbs);

                        candleSeries = new CandleSeries(typeof(TimeFrameCandle), security, timeFrame);
                        candleSeries.ProcessCandle += Draw;
                        
                        int numHistDays = DateTime.Today.DayOfWeek.ToString() == "Monday" ? 3 : 1;
                        candleManager.Start(candleSeries, DateTime.Now - TimeSpan.FromDays(numHistDays), DateTime.MaxValue);


Т.е. в любой день недели мы запрашиваем данные за прошлый торговый день из хранилища. Но в понедельник, так как было 2 выходных, это не работает, т.к. надо запросить данные из пятничных торгов.

В теории кусок кода выше должен работать. Но в реальности, почему-то данные за пятницу ни при каких условиях не подкачиваются (либо подкачиваются но не отображаются на графике), хотя обращение к файлам идет:
Code

FileAccess: N:\Hydra MarketData\R\RIM4@FORTS\2014_04_04\trades.bin
FileAccess: N:\Hydra MarketData\R\RIM4@FORTS\2014_04_05\trades.bin
FileAccess: N:\Hydra MarketData\R\RIM4@FORTS\2014_04_06\trades.bin
FileAccess: N:\Hydra MarketData\R\RIM4@FORTS\2014_04_07\trades.bin


Tags:


Thanks:


1 2  >
Mikhail Sukhov

Avatar
Date: 4/7/2014
Reply


Пятница это четвертое. Судя по логу был запрос
Thanks:

devruss

Avatar
Date: 4/7/2014
Reply


Михаил Сухов Go to
Пятница это четвертое. Судя по логу был запрос


Ну так я о том и говорю, что запрос был, а данные не выводятся... Более того, если поставить запрос за 10 дней назад, то обращение к файлам идет, но вывода данных нет

Я такой баг вижу каждый понедельник... во вторник данные за понедельник выводятся без проблем уже
Thanks:

Mikhail Sukhov

Avatar
Date: 4/7/2014
Reply


devruss Go to

Я такой баг вижу каждый понедельник... во вторник данные за понедельник выводятся без проблем уже


А если делать запрос напрямую к тикам через Storage API?
Thanks:

devruss

Avatar
Date: 4/7/2014
Reply


Михаил Сухов Go to
devruss Go to

Я такой баг вижу каждый понедельник... во вторник данные за понедельник выводятся без проблем уже


А если делать запрос напрямую к тикам через Storage API?


это как?

Тот способ, который выше, ты мне сам подсказал, других способов скрестить live & historical data в S# я не знаю
Thanks:

Mikhail Sukhov

Avatar
Date: 4/7/2014
Reply


devruss Go to

это как?


SampleStorage
Thanks:

devruss

Avatar
Date: 4/9/2014
Reply


Михаил Сухов Go to
devruss Go to

это как?


SampleStorage


Вот этот метод?
Code

var loadedTrades = tradeStorage.Load(DateTime.Today, DateTime.Today + TimeSpan.FromMinutes(1000));


А как потом эти тиковые сделки запихнуть в candleManager?
Thanks:

Mikhail Sukhov

Avatar
Date: 4/9/2014
Reply


devruss Go to

А как потом эти тиковые сделки запихнуть в candleManager?


В начале я бы их проэнумеровал, чтобы узнать, если ли данные.
Thanks:

devruss

Avatar
Date: 4/9/2014
Reply


Михаил Сухов Go to
devruss Go to

А как потом эти тиковые сделки запихнуть в candleManager?


В начале я бы их проэнумеровал, чтобы узнать, если ли данные.


Круто, а как это сделать?

Данные есть - так как в бэктестинге выводятся из того же стораджа и все ок
Thanks:

Mikhail Sukhov

Avatar
Date: 4/9/2014
Reply


Через foreach
Thanks:

devruss

Avatar
Date: 4/9/2014
Reply


Данные есть
Thanks:
1 2  >

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

loading
clippy