Добрый день.
Вопрос - собственно subj. Как правильно переопределить генератор свечек?
Зачем - хочу попробовать стратегию с нескольких тайм-фреймов. Для этого Builder должен создавать все виды требуемых свечек. Или нужно сделать несколько параллельных билдеров. Собственно написать код - не проблема. Важно не делать лисапед, а использовать по максимум готовый функционал.
Спасибо =)
Комментарии (13)
Вход или Создать аккаунт, Войдите или зарегистрируйтесь, чтобы оставить комментарий
Почему просто в CandleManager не зарегистрировать все нужные типы/таймфреймы свечек?
Теперь другая проблема - как заставить CandleManager выдать последнюю свечу? Для примера - создаю CandleBuilder с начала дня до его окончания (с 00:00:00 до 00:00:00 следующего дня) Если указать TimeFrame 5-min то выдаст все свечки, кроме последней (с 23:55 по 00:00), а если указать тайм-фрейм один день, то ни какого ответа нет. Может есть возможность принудительно закрыть финальную свечу?
Получаю свечки через CandleFinished.
Последнюю свечку и не получите, так как сделки после окончания сессии не существует
Почему бы их не выгрузить?
Попытка получить свечку через GetCurrentTimeFrameCandle не проходит - летит эксепшен "Инструмент не имеет информацию о шлюзе.".
А как подпихнуть в CandleManager еще один такт данных?
Можете сами сгенерить сделку с такими же параметрами как последняя(которую вы уже имеете), но с другим временем и закроете последнюю свечу
Что еще можно сделать?
а как создавался менеджер? должно быть candleManager = new CandleManager(Trader);
begin и end указывают соответственно начало и конец данных, которые обрабатываю в цикле.
Может стоит с другого конца зайти - как вытащить из гидры все данные по инструменту в виде свечек различного размера?
Кажется вы еще не используете 4.1, GetCurrentTimeFrameCandle вызывается через candleSeries.GetCurrentTimeFrameCandle
На счет гидры не знаю, так как не пользуюсь