Добрый день.
Такая проблемка: необходимо расчитать несколько своих индикаторов на основе данных из CandleManager. Насколько я понял с помощью RegisterTimeFrameCandles можно получить только свечи текущей сессии, а точнее только свечи на основе тех данных которые есть в таблице всех сделок а с помощью GetRangeCandles или RegisterRangeCandles свечки за исторические периоды. Так вот мне не совсем понятно каким красивым способом получить одну коллекцию со свечками вчерашних торгов и сегодняшних. И хотелось бы пример как с этими самыми RangeCandles (применительно к истории) работать, а то в SampleCandle есть RangeCandles но он тоже показывает только текущую сессию.
Kommentare (17)
Anmelden oder Konto erstellen, Melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen
http://tradecommunity.ru/blog/stocksharp/41.html
Это extension method. Определен в TraderHelper
Что-то я видимо не то делаю.
посмотрел про класс TraderHelper - он находится в сборке Ecng.Trading.Algo - подключаю эту сборку и все равно студия этот экстеншен не видит.
using Ecng.Trading.Algo; 🤨
не поверишь - есть такое и даже добавил в references сборку Ecng.Trading.Algo.dll, а все равно не пашет
а класс TraderHelper вообще видно? если вызвать статический метод GetTimeFrameCandles(ICandleManager, Security, TimeSpan, Range<DateTime>), просто для проверки?
Метод GetTimeFrameCandles именно при данном using будет.
to esper в обжект браузере видно. а в "коде" нет.. такое ощущение будто нет using_а, но он то есть.... Чуть позже попробую пересоздать проект... может глюк студии
to Михаил так есть этот юзинг
скиньте файл или весь проект посмотреть. явно какая-то локальная ошибка.
Ссылку на класс который хочу скомпилить во втором посте Михаил дал. я там ничего не менял кроме как добавил нужный юзинг. Мне кажется проблема с использование base.
Если попробовать напрямую вызвать var candleList = TraderHelper.GetTimeFrameCandles((CandleManager)base, security, timeframe, candleCount).ToList<TimeFrameCandle>(); вместо var candleList = base.GetTimeFrameCandles(security, timeframe, candleCount).ToList<TimeFrameCandle>();
то ругается типо base тут нельзя. видимо не может он экстеншены к бейсу применять почемуто. а как у автора тогда работало?
виноват, писал по памяти. вот так работает, проверил только что:
var candleList = _candleManager.GetTimeFrameCandles(security, timeframe, candleCount);
2rminko
ага поменял base на this и все заработало. странно что сам не догадался попробовать )) Спасибо!