Здравствуйте, Михаил. После тестирования в омеге написал своего робота. Но при тестировании заметил следующий момент. Рабочий ТФ: минутки.
- При запуске робота функция: GetTimeFrameCandle внутри стратегии возвращает null. Затем проходит время и возвращается нормальное значение. Почему в первый раз верулся null, а не текущая (незаконченная свеча)? Как можно получиьт текущую незаконченную свечу?
- Как получить значение свечи для другого ТФ несколько периодов назад? Например получить вчерашнюю дневную свечу пытаюсь так:
private TimeFrameCandle GetDayBefore(int daysBefore) { TimeSpan _1DtimeFrame = TimeSpan.FromDays(1); DateTime candleTime = DateTime.Now.AddDays(-1*daysBefore); TimeFrameCandle candle = null; while (candle == null) { candle = _candleManager.GetTimeFrameCandle(base.Security, _1DtimeFrame, candleTime); candleTime = candleTime.AddDays(-1); }
return candle;
}
Но candle всегда равен null. Подскажите пожалуйста как быть?
Комментарии (5)
Вход или Создать аккаунт, Войдите или зарегистрируйтесь, чтобы оставить комментарий
Видимо, еще такой экспорт по всем сделкам еще не закончился. Получать несформированную так же, но нужно именно что дождаться момента, когда есть хоть одна сделка.
Историю Квик не поддерживает. Увы.
Еще было бы здорово реализовать в библиотеки поддержку часовых поясов. Я например живу не в Москве, поэтому приходится переводить часы для правильной работы библиотеки.
Для сдвига времени есть свойство ITrader.MarketTimeOffset.
Странно как-то: кнопка "ответить" каждый день исчезает. Смог ответить только сейчас (ждал почти сутки)... Написать функцию загрузки данных с финама, думаю, будет не очень сложно или вы хотите прям из квика грузить? Кроме того можно сделать небольшой qpile скрипт, который будет выгружать требуемые данные в файл. А я пока пожалуй ограничусь тем, как сделано у вас просто читать файл с данными финама.
К сожалению не нашел такого свойства:(