SergeyEgorov
SergeyEgorov личный блог
18 декабря 2013, 09:08

Где робот хранит свои данные?

Класс, представляющий основную структуру данных торгующего робота, называется TradingDataContext (контекст торговых данных). Внутри этого контекста содержится вся необходимая для торговли информация, описания и настройки торговых алгоритмов, сигналы, заявки, сделки. Следующее видео представляет собой двадцатиминутную шпаргалку, демонстрирующую способы получения доступа к коллекциям объектов, помещенных в контексте торговых данных, в зависимости от того, какие манипуляции вы собираетесь производить с этими данными.


Контекст торговых данных реализует интерфейс:

public interface DataContext
{
    T Get<T>();
}

Поэтому у вас есть по-меньшей мере три способа обращения к коллекциям и наборам, содержащимся в контексте торговых данных:

/// Получите ссылку на контекст торговых данных
DataContext tradingDataContext = TradingData.Instance;

/// Если вам нужно только читать данные из коллекции, используйте такой вызов
IEnumerable<Tick> ticks = tradingDataContext.Get<IEnumerable<Tick>>();

/// Если вы хотите изменять содержимое коллекции, добавляя или удаляя ее элементы
/// но чтобы при этом не срабатывали алгоритмы, наблюдающие изменение коллекции
/// используйте следующий вызов
ICollection<Bar> bars = tradingDataContext.Get<ICollection<Bar>>();

/// Если вы хотите изменять содержимое коллекции, заставляя при этом срабатывать
/// алгоритмы, наблюдающие за ее содержимым, используйте такой вызов
ObservableCollection<Trade> trades = tradingDataContext.Get<ObservableCollection<Trade>>();

7 Комментариев
  • Spekyl
    18 декабря 2013, 09:50
    Я один видео по программированию никогда не смотрю? Как и по настройке всяких программ…
  • vfreeman
    18 декабря 2013, 10:23
    что это за фреймворк? чем отличается, например, от s#?
    видео не смотрел…
  • denbkh
    19 декабря 2013, 03:51
    Качнул исходники, судя по качеству кода s# даже и рядом не стоял. По функционалу пока разбираюсь, но первое впечатление крайне положительное.
  • denbkh
    19 декабря 2013, 06:13
    Вы наверно меня не так поняли, я имел ввиду что у вас как раз с кодом все очень даже ок, на мой взгляд, по сравнению с вышеупомянутой библиотекой. Юнит тесты, нормальная связность компонентов. Когда я последний раз смотрел S# у них даже в библиотеку подключения к SmartCom'у было притянуто столько всего включая XAML, что без кучи ихних зависимостей поюзать ее невозможно.
    Ну и надо не забывать что у s# исходники за бабло или для особо приближенных. А отладка ихнего обфусцированного кода то еще удовольствие, да :)

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн