Ну в принципе, нужна просто область памяти, где можно было бы разместить свои данные, вот и все. Естественно, что в этом случае вся забота о thread safety и прочих технических вещах ложится на программиста. Я могу попробовать конечно использовать внешний storage, но тогда будет оверхед на сериализацию данных.
Мне это нужно для того, чтобы не пересчитывать на каждом тике кучу предыдущих тиков(в зависимости от объема там может быть и 1 тик и десятки тысяч).
Ну и более компактное представление тиков было бы тоже неплохо сделать, что в общем-то не сложно, если можно было бы написать свой DataSource.