dvoris
|
Date: 2/13/2012
Не помог. Сам пример понятен. TradingStorage реализует хранение свечек, стаканов, тиков. Как запихнуть туда инструменты?
Как-то использовать SecurityList? Как сохранять на диск..
|
|
|
|
Thanks:
|
|
|
|
|
|
Mikhail Sukhov
|
Date: 2/13/2012
dvoris:
Да, на i3 всё нормально, но тоже подвисает секунды 3. С базой этого можно было бы избежать
Ты предлагаешь оптимизировать эти 3 секунды?[blink] С учетом того, что справочник загружается один раз при старте робота?
|
|
|
|
Thanks:
|
|
|
|
|
|
dvoris
|
Date: 2/13/2012
.. для начала его надо хотя бы загрузить :) На i3 терпимо, но задача запускать приложения на хостингах и VDS, которые вообще не переваривают получение справочника. Да даже PIII 3 Ггц вешает.. я считаю, что не должно быть такого поведения с дефолтными примерами (см.скрин выше). Имхо - с точки зрения здравого смысла нет необходимости каждый раз дергать такой объем данных и конструировать десятки тысяч securities (больша'я часть из которых вообще истекшие).
Михаил, хоть ты подскажи, плз, я уже мозг сломал [huh]
|
|
|
|
Thanks:
|
|
|
|
|
|
Mikhail Sukhov
|
Date: 2/13/2012
dvoris:
Михаил, хоть ты подскажи, плз, я уже мозг сломал [huh]
Надо внутрях СмартКом коннектора менять. Да и в BaseTrader. А сейчас времени нет, Плазой занимаюсь. Можно обменяться тасками.[rolleyes]
|
|
|
|
Thanks:
|
|
|
|
|
|
dvoris
|
Date: 2/13/2012
0:10:21 Всего инструментов: 21793
0:10:21 Истекших инструментов:16299
[mad]
В сматркоме тоже, конечно, недостаток, что он только целиком вываливает инструменты.
Кстати, а как получают справочник в Плазе?
|
|
|
|
Thanks:
|
|
|
|
|
|
dvoris
|
Date: 2/13/2012
Может попробовать переопределить методы в SmartTrade, которые отвечают за добавление новых securities при соответствующем событии от смарткома? Фильтровать по дате экпирации и не добавлять истекших (там, например, опционные серии с 2010 года тянутся..) Уже уменьшим на 75% справочник и работу по созданию securities.
И ещё, может кто-нибудь намекнет, как сделать сериализацию Security ?
|
|
|
|
Thanks:
|
|
|
|
|
|
Mikhail Sukhov
|
Date: 2/14/2012
Протухшие инструменты можно как то через СмартТрейд удалить.
|
|
|
|
Thanks:
|
|
|
|
|
|
dvoris
|
Date: 2/14/2012
что-то беда у меня с англ.раскладкой.. речь про SmartTrader, конечно [biggrin]
|
|
|
|
Thanks:
|
|
|
|
|
|
dvoris
|
Date: 2/14/2012
Ура [cool] Подозреваю, что решение кривое, но оно работает.
Т.к. сериализовать Security у меня так и не получилось, ввёл класс SerializableSecurity. Сохраняю в файл бинарную сериализацию Hashtable из SerializableSecurity-c.
Можно сделать полную, либо маленькую базу только из актуальных неистекших инструментов.
Загрузка инструментов в Trader.Securities, насколько понимаю, невозможна снаружи, поэтому унаследовал от SmartTrader свой MySmartTrader, в котором добавил метод AddSecurity(Security s).
В методе вызывается BaseTrader.GetSecurity метод, который добавляет инструмент в Securities. Если я неправ, и можно добавить инструменты в Securities более правильно, то прошу поправить.
|
|
|
|
Thanks:
|
|
|
|
|
|
Mikhail Sukhov
|
Date: 2/14/2012
dvoris:
Если я неправ, и можно добавить инструменты в Securities более правильно, то прошу поправить.
Я бы начал со SmartTrade
|
|
|
|
Thanks:
|
|
|
|
|