проблема с методом GetCandles(Of TCandle)(CandleSeries, Range(Of DateTime))
Atom Ответить
01.08.2012


Den

Фотография
Уважаемые разработчики!

при переезде с 4.1.1 на 4.1.2 перестал видеться метод public static IEnumerable<TCandle> GetCandles<TCandle>(this CandleSeries series, Range<DateTime> timeRange).
А точнее не виден больше Range. Сделайте его public, пожалуйста!


Теги:


Спасибо:




4 Ответов
Alexander

Фотография
Дата: 04.08.2012
Ответить


Что не видно? Напишите подробнее ту ошибку, что выдаётся.
Всё что вы написали - является public, иначе бы не компилировался S#.
Спасибо:

Den

Фотография
Дата: 05.08.2012
Ответить


Alexander Mukhanchikov Перейти
Что не видно? Напишите подробнее ту ошибку, что выдаётся.
Всё что вы написали - является public, иначе бы не компилировался S#.


Я не правильно выразился про public, имелось в виду, что Range вообще не представлен в доке,
и похоже метод GetCandles(Range) не является public и не виден в других пакетах...

Метод GetCandles вызывается с аргументом range, который определен так:

Код
Range<DateTime> range = new Range<DateTime>() { Min = startTime, Max = DateTime.Now };


Получаю такую ошибку:

The type arguments for method 'StockSharp.Algo.Candles.CandleHelper.GetCandles<TCandle>(StockSharp.Algo.Candles.CandleSeries, System.DateTime)' cannot be inferred from the usage. Try specifying the type arguments explicitly.

Т.е. метод с Range вообще не виден, остается почему-то только с DateTime

В 4.1.1 таких проблем не было.
Автор топика
Спасибо:

Alexander

Фотография
Дата: 05.08.2012
Ответить


Почему у меня тогда в моих стратегиях следующий код работает

Код
_candleSeries.GetCandles<TimeFrameCandle>(new Range<DateTime>(firstTime, Trader.MarketTime))

?

Всё работает как часы.

Всё же вы что-то не то делаете.
Кидайте полностью вызов GetCandles и создание Range. Посмотрите под дебагером какой тип имеет range - ваш объект.
Спасибо: Den

Den

Фотография
Дата: 06.08.2012
Ответить


Alexander Mukhanchikov Перейти
Почему у меня тогда в моих стратегиях следующий код работает

Код
_candleSeries.GetCandles<TimeFrameCandle>(new Range<DateTime>(firstTime, Trader.MarketTime))

?

Всё работает как часы.

Всё же вы что-то не то делаете.
Кидайте полностью вызов GetCandles и создание Range. Посмотрите под дебагером какой тип имеет range - ваш объект.


Ваш ответ мгновенно ответил на мой вопрос.
Я не указал тип свечки при вызове GetCandles<TimeFrameCandle>(...)

Нельзя по ночам переезжать с версии на версию :)


P.S. перезд состоялся. После рефакторинга свечей реально удобней стало! Спасибо!
Автор топика
Спасибо:


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy