Как переопределить генератор свечек?


Как переопределить генератор свечек?
Atom
6/9/2012


Добрый день.

Вопрос - собственно subj. Как правильно переопределить генератор свечек?

Зачем - хочу попробовать стратегию с нескольких тайм-фреймов. Для этого Builder должен создавать все виды требуемых свечек. Или нужно сделать несколько параллельных билдеров. Собственно написать код - не проблема. Важно не делать лисапед, а использовать по максимум готовый функционал.

Спасибо =)

Tags:


Thanks:


1 2  >
esper

Avatar
Date: 6/9/2012
Reply


Почему просто в CandleManager не зарегистрировать все нужные типы/таймфреймы свечек?
Thanks: VoDA

VoDA

Avatar
Date: 6/19/2012
Reply


esper Go to
Почему просто в CandleManager не зарегистрировать все нужные типы/таймфреймы свечек?

В принципе так и сделал.

Теперь другая проблема - как заставить CandleManager выдать последнюю свечу? Для примера - создаю CandleBuilder с начала дня до его окончания (с 00:00:00 до 00:00:00 следующего дня)
Если указать TimeFrame 5-min то выдаст все свечки, кроме последней (с 23:55 по 00:00), а если указать тайм-фрейм один день, то ни какого ответа нет. Может есть возможность принудительно закрыть финальную свечу?

Получаю свечки через CandleFinished.
Thanks:

OvcharenkoVI

Avatar
Date: 6/19/2012
Reply


Последнюю свечку и не получите, так как сделки после окончания сессии не существует
Thanks:

OvcharenkoVI

Avatar
Date: 6/19/2012
Reply


Можете сами сгенерить сделку с такими же параметрами как последняя(которую вы уже имеете), но с другим временем и закроете последнюю свечу
Thanks: VoDA

VoDA

Avatar
Date: 6/19/2012
Reply


OvcharenkoVI Go to
Последнюю свечку и не получите, так как сделки после окончания сессии не существует
Сессии - нет, но данные то есть!

Почему бы их не выгрузить?

Попытка получить свечку через GetCurrentTimeFrameCandle не проходит - летит эксепшен "Инструмент не имеет информацию о шлюзе.".

А как подпихнуть в CandleManager еще один такт данных?
Thanks:

VoDA

Avatar
Date: 6/19/2012
Reply


OvcharenkoVI Go to
Можете сами сгенерить сделку с такими же параметрами как последняя(которую вы уже имеете), но с другим временем и закроете последнюю свечу

А как подложить сделку под CandleManager?
Thanks:

VoDA

Avatar
Date: 6/19/2012
Reply


OvcharenkoVI Go to
Можете сами сгенерить сделку с такими же параметрами как последняя(которую вы уже имеете), но с другим временем и закроете последнюю свечу

Продолжаю войну с CandleManager. При попытке воспользоваться token, который возвращает RegisterTimeFrameCandles, в методе GetCurrentTimeFrameCandle дает ошибку "Value cannot be null. Parameter name: trader".

Что еще можно сделать?
Thanks:

OvcharenkoVI

Avatar
Date: 6/19/2012
Reply


VoDA Go to
OvcharenkoVI Go to
Можете сами сгенерить сделку с такими же параметрами как последняя(которую вы уже имеете), но с другим временем и закроете последнюю свечу

Продолжаю войну с CandleManager. При попытке воспользоваться token, который возвращает RegisterTimeFrameCandles, в методе GetCurrentTimeFrameCandle дает ошибку "Value cannot be null. Parameter name: trader".

Что еще можно сделать?


а как создавался менеджер? должно быть candleManager = new CandleManager(Trader);
Thanks:

VoDA

Avatar
Date: 6/19/2012
Reply


OvcharenkoVI Go to
а как создавался менеджер? должно быть candleManager = new CandleManager(Trader);
по примеру:
Code
var storage = new TradingStorage(new InMemoryStorage())
                              {
                                  BasePath = _dataFolder.Text,
                              };

var builder = new CandleBuilder(new TradeStorageCandleBuilderSource(storage)
{
    From = begin,
    To = end,
    IsSyncProcess = true,
})
                                  {
                                      IsSyncRegister = true,
                                  };


begin и end указывают соответственно начало и конец данных, которые обрабатываю в цикле.
Thanks:

VoDA

Avatar
Date: 6/19/2012
Reply


Может стоит с другого конца зайти - как вытащить из гидры все данные по инструменту в виде свечек различного размера?
Thanks:
1 2  >

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

loading
clippy