← 返回

S#.API 4.2

Выложили 4.2.0

Фичи:- <mark>События обработки данных коннекторов вызываются из одного потока.</mark>

  • Коннекторы Quik, Plaza, SmartCOM, LMAX, FIX, Blackwood переведены на работу через сообщения.
  • RealTimeEmulationTrader работает только с коннекторами переведенными на сообщения.
  • Добавлен MessagesBasketTrader для коннекторов, которые переведены на работу с сообщениями. BasketTrader не работает с коннекторами, которые переведены на сообщения.
  • Полностью переделаны MarketEmulator и EmulationTrader.
  • Для Quik добавлена поддержка T+2, для каждого вида лимита приходит отдельная позиция (поле Position.LimitType).
  • ITrader добавлена поддержка поиска портфелей.
  • Security.MinStepSize по умолчанию равен 0.01.
  • Portfolio.ExchangeBoard является необязательным.
  • Exchange.Me переименована в Exchange.Moex
  • SecurityChangeTypes переименован в Level1Fields.
  • При использовании ContinuousSecurity в правилах проверяется только текущий инструмент.
  • При ошибке снятия заявки состояние не меняется.
  • Поддержка множества счетов в одном файле лицензии.
  • В Blackwood добавлены настройки для пути к логам.
  • Добавлен расширенный редактор настроек (Xaml.PropertyGrid).
  • Добавлена панель для поиска инструментов (Xaml.SecurityLookupPanel). Баги:- Исправлен поиск инструментов для подписки на маркет данные.
  • Lmax. Ошибка загрузки инструментов с сайта.
  • Transaq. Падает с NRE на RaiseConnectionError из Connect.
  • Plaza. Ошибка с ревизиями для ClientGate.
  • Plaza. Установка размера стакана.
  • Plaza. Некорректный тип данных поля Value в PlazaCurrencyOnlineColumns.
  • SmartCOM Невозможно выполнить остановку экспорта, так как экспорт находится в состоянии Disconnected.
  • SmartCOM в примерах убрана лишняя регистрация портфелей.
  • LogControl. Не работает автовыравнивание ширины столбцов.
  • UniversalGrid. Копирование в буфер обмена.
  • UniversalGrid. Unhandled Exception: Specified cast is not valid.
  • UniversalGrid. Неверные цвета текста в строке при потере фокуса.
  • Множество мелких исправлений.

本主题对您有帮助吗?

分享主题

评论 (117)

本主题的评论已锁定

Mikhail Sukhov
Mikhail Sukhov

Немного про пункт:

События обработки маркет данных коннекторов вызываются из одного потока.

За этим пунктом скрывается наша мажорная фича 4.2. Начиная с версии 4.2.0 в StockSharp появился новый уровень - Messages. Данный уровень позволяет работать с внешними торговыми системами, используя их диалектику через общией интерфейс Messages (Сообщения). Отличие от ITrader состоит в том, что ITrader скрывает детали работы с внешней системой, в то время как Messages (через IMessageAdapter) наоборот - позволяет работать с ними.

Уровень Messages более приспособлен к HFT роботам, так как он напрямую отдает данные во внешние системы. Он не потоко безопасен, поэтому все блокировки или очереди необходимо делать самому, если будет идти работа с этим уровнем напрямую (как это делает сейчас BaseTrader через MessageProcessor). Так же внутри максимально убраны различного уровня задержки ввиде коллекций или накапливаемых очередей. В MessageAdapter торговая система вызывается из того же потока, что и вызываемый код. Аналогично работает и с IMessageAdapter.NewMessage.

На Message был переведен наш эмулятор. Он стал значительно проще и получил вид конечного автомата. Тоесть на вход подаются данные и результатом выполнения идут сразу же какие то сообщения (изменения стакана, сделки и т.д.). Тестировать эмулятор стало значительно проще (для тех, кому захочется работать с эмулятором). Более того, он получил ряд фич, такие как приоритет исполнения заявок, замешивание стакана (наружу выдается не стакан из истории или реального подключения, а именно эмуляционный, со своими заявками).

Messages более приспособлены к передаче по сети за счет своей отвязанности от контекста. Поэтому теперь стало возможных сделать физическое разнесение загрузки данных и эмулятора. Например, запустить параллельно сразу на нескольких серверах эмуляцию. При этом сами данные хранятся на сервере истории.

Адаптеры так же разделены на 2 типа. Для маркет-данных и для транзакций. Тоесть можно, к примеру, получать данные из одного датафида, а торговать через другой.

На месседжи пока переведены следующие коннекторы: Quik, SmartCOM, Plaza (оба режима), Fix, Fusion (Blackwood). В след релизе точно переведены будут Alfa, IB, OEC, Transaq. Остальное чуть позднее.

Просьба помочь с тестирование новой версии, так как переделки были значительные.

Обратная совместимость со старыми роботами практически полностью поддержана (нокоторые enum перекочевали из BusinessEntities в Messages). Использование BeginRead BeginUpdate у сущностей теперь не нужно, так как поток обновления используется в BaseTrader один.

Bond
transdex
transdex

Михаил Сухов: Нет, именно разделение датафида от транзакций - это извращение. Сделали буржуи, потому что у них бизнес разделен. Технологически - это самый что ни на есть обычный косяк в архитектуре. Практически сразу же добавляется геморрой с синхронизацией состояния заявок, получения своих позиций, сделок... Вообще сущий ад с рас синхронизацией данных, и меток времени. И которые решаются уплатой лишних пару тысяч в месяц, чтобы доапгрейдить readonly логин до нормального. Из-за пары то тысяч себе такие приключение? Увольте.

Михаил Сухов: Адаптеры так же разделены на 2 типа. Для маркет-данных и для транзакций. Тоесть можно, к примеру, получать данные из одного датафида, а торговать через другой.

Прогресс, однако... 😀

Mikhail Sukhov
Mikhail Sukhov

transdex:

Тонкая работа!👍

Но я своего мнения не поменял. Те брокера, что дают датафид, имеют и новую инфраструктуру. А те, что не дают ДФ, имеют или устаревшее или сами пишут, что в переходном состоянии. Скорее уж решение было в сторону потребности. Против тренда стоять в технологиях накладно.

Забыл написать про еще одну причину, почему месседжи возникли. Универсальный клей для разных блоков. Например, есть коннекторы, есть стратегии, есть блок для риск менеджмента, есть блок расчета ПнЛ. Это все разные блоки, и необходимо их склеить одним единым интерфейсом. IMessageAdapter в этом случае подходит как нельзя лучше. Да, это не ООП, но для взаимодействия независимых систем такое решение является стандартом.

esper
esper 作者

Выложили 4.2.1

Фичи:- Interactive Brokers TWS API обновлено до версии 9.70. Баги:- Неправильно заполняется Security.MinStepSize.

alexan3010
alexan3010

Что то у меня на коннекторе SmartCom вообще ничего не идет после обновления до 4.2. Все подключается, портфели и инструменты получаются, а данные и изменения не идут. Примеры Samples тоже ни один не работает. Какие уточнения прислать?

У меня есть простенькое приложение консольное, написанное на базе соответствующего вашего Sample. В 4.1.19 оно писалось и работает. В 4.2.1 оно затыкается на

_trader.RegisterSecurity(_ri); waitHandle.WaitOne();

то есть событие не завершается. Может быть в связи с изменениями в 4.2.1 подписываться на обновления по инструменту сейчас нужно как то по другому?

Mikhail Sukhov
Mikhail Sukhov

alexan3010: Что то у меня на коннекторе SmartCom вообще ничего не идет после обновления до 4.2. Все подключается, портфели и инструменты получаются, а данные и изменения не идут. Примеры Samples тоже ни один не работает. Какие уточнения прислать?

Скажите сначала что вы запускаете? Пример под СмартКом называется SampleSmart, а не Samples.

alexan3010
alexan3010

Запускал я все по очереди. Описывал свое приложение, на базе SampleSmart.

Сейчас с нуля набросал простенькое приложение в 4.1.19 которое коннектится, получает портфели и инструменты и начинает выводить в лист-бокс Close свечек. В 4.1.19 все нормально. Потом я выхожу из VS, подменяю библиотеку на 4.2.1, запускаю VS, открываю то приложение которое было написано 5 минут назад под 4.1.19, при компиляции ругается на отсутствие StockSharp.Messages, а также на команду _trader.ApplyWrapper(SmartComVersions.V3); Добавляю ссылку на StockSharp.Messages, комментирую предыдущую команду, где я явно указывал на версию SmartCom, приложение запускается, коннектится, получает портфель и нужные securities и дальше где по идее должна начать выкидывать обновления - ничего не происходит, то есть я так понимаю _trader.RegisterSecurity(_ri) - где то в этом месте не получает обновления по инструменту.

Может быть я что то делаю не так? То есть ошибки то никакой не выкидывает, просто не происходит то, что раньше происходило - поток данных со свечками. Сейчас вернул библиотеку обратно на 4.1.19 - добавил _trader.ApplyWrapper(SmartComVersions.V3); и все работает опять нормально. Вот кусок кода, который не отрабатывает в новой библиотеке:

_trader.RegisterSecurity(_ri); _series = new CandleSeries(typeof(TimeFrameCandle), _ri, _timeFrame); _candleManager = new CandleManager(_trader); //Заводим менеджер свечей _series = new CandleSeries(typeof(TimeFrameCandle), _ri, _timeFrame); _candleManager.Start(_series); _trader.RegisterTrades(_ri); _candleManager.Processing += (s, candle) => { if (candle.State == CandleStates.Finished) this.GuiAsync(() => MyList.Items.Add(candle.CloseTime + " " + candle.ClosePrice)); };

Mikhail Sukhov
Mikhail Sukhov

alexan3010: Запускал я все по очереди. Описывал свое приложение, на базе SampleSmart.

Давайте вернемся к стандартному примеру. Если запускать SampleSmart (без модификаций), то что в нем не работает? На каком тикере можно проверить поведение?

alexan3010
alexan3010

Ok. Библиотека 4.2.1 Пример SampleSmart из нее же, без модификаций вообще.

Висит на записи: Дожидаемся появления в программе инструмента Лукойл и портфеля BP....-MS-01

и ничего не происходит. Точками я забил свой номер договора, а так он там правильно высвечивается.

То есть коннектится, получает портфель, успешно получает инструмент, но не получает никаких изменений по нему. У меня все так же. В примере SampleCandles тоже примерно так же - коннектится, появляется инструмент RTS-12.13 пытаемся вывести по нему либо он-лайн либо историю - пустой чарт в обоих случаях. Никаких ошибок при этом не возникает.

Mikhail Sukhov
Mikhail Sukhov

alexan3010: Ok. Библиотека 4.2.1 Пример SampleSmart из нее же, без модификаций вообще.

Висит на записи: Дожидаемся появления в программе инструмента Лукойл и портфеля BP....-MS-01

Этот пример не выводит подобную запись. Вы уверены, что запускаете SampleSmart?

alexan3010
alexan3010

Действительно перепутал, это вывод SampleSmartConsole. SampleSmart выдает ошибку сразу при подключении с длинным текстом. Не знаю как вставить сюда скрин-шот, текст там длинный.

Mikhail Sukhov
Mikhail Sukhov

alexan3010: Действительно перепутал, это вывод SampleSmartConsole. SampleSmart выдает ошибку сразу при подключении с длинным текстом. Не знаю как вставить сюда скрин-шот, текст там длинный.

Ctrl+C на окно.

Eskra
Eskra

У меня ругается на Order.State == OrderStates.Active. OrderStates не находит, они где сейчас находятся? Я давно не обновлялся, может вы их давно конечно переместили

Mikhail Sukhov
Mikhail Sukhov

Eskra: У меня ругается на Order.State == OrderStates.Active. OrderStates не находит, они где сейчас находятся? Я давно не обновлялся, может вы их давно конечно переместили

Перекочевало в Messages. Как и другие енумы.

Eskra
Eskra

Михаил Сухов:

Eskra: У меня ругается на Order.State == OrderStates.Active. OrderStates не находит, они где сейчас находятся? Я давно не обновлялся, может вы их давно конечно переместили

Перекочевало в Messages. Как и другие енумы.

Разобрался, спасибо)

alexan3010
alexan3010

Вот ошибку, которую выдает SampleSmart при запуске после нажатия кнопки "Подключится", с галочкой V3, на библиотеке 4.2.1:


Ошибка обработки данных

System.Runtime.InteropServices.COMException (0x80040154): Не удалось получить фабрику класса COM для компонента с CLSID {99F5EA2E-0636-49BE-8100-8AE309B03331} из-за следующей ошибки: 80040154 Класс не зарегистрирован (Исключение из HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).

в System.Runtime.Remoting.RemotingServices.AllocateUninitializedObject(RuntimeType objectType)

в System.Runtime.Remoting.Activation.ActivationServices.CreateInstance(RuntimeType serverType)

в System.Runtime.Remoting.Activation.ActivationServices.IsCurrentContextOK(RuntimeType serverType, Object[] props, Boolean bNewObj)

в System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)

в System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)

в System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)

в System.Activator.CreateInstance()

в StockSharp.Smart.Wrapper.SmartComWrapper`1.Connect(String host, Int16 port, String login, String password)

в StockSharp.Smart.SmartComMessageAdapter.#=qLH0XZUtvNEIYz5CHR6NY4g==(ConnectMessage #=qgREprUunPmBsV8Qx7qDSNQ==)

в StockSharp.Smart.SmartComTransactionMessageAdapter.SendMessage(Message message)

в StockSharp.Algo.BaseTrader.#=qmjr2iOOuIRcGp51hPxnHCePOmtmPZaruxH8lvpV14EE=.#=q2odj0Hq4TdhRHtoVk33g$PlxCr4TPAtDtB_yfVc1WHA=.#=qPr7X1VbMuI4YnDkmCG9JA2NwLEAKtnKXL5swTJ8$bvI=()

ОК

Mikhail Sukhov
Mikhail Sukhov

alexan3010: Вот ошибку, которую выдает SampleSmart при запуске после нажатия кнопки "Подключится", с галочкой V3, на библиотеке 4.2.1:

Судя по ошибке, не установлен SmartCOM.

alexan3010
alexan3010

Смартком то был установлен, но x86. Сейчас обнаружил, что позавчера вышел новый смартком (.79) установил его (64bit), вроде заработало приложение SampleSmart - по крайней мере запускается и выводит инструменты и портфели, ту ошибку уже не выдает. Я так понял, именно этому приложению нужен обязательно смартком 64 бита, а остальным примерам - все равно на битность.

Но тем не менее, сейчас, когда SampleSmart запускается и выводит инструменты - у всех инструментов не зависимо от площадки я вижу NULL в таблице значений, то есть BID, ASK, последняя сделка и т.п. - все изменяющиеся данные NULL.

Mikhail Sukhov
Mikhail Sukhov

alexan3010: Но тем не менее, сейчас, когда SampleSmart запускается и выводит инструменты - у всех инструментов не зависимо от площадки я вижу NULL в таблице значений, то есть BID, ASK, последняя сделка и т.п. - все изменяющиеся данные NULL.

Изучайте пример. Все там есть.

alexan3010
alexan3010

В окне "Инструменты", после нажатия кнопки "Вид-Офер" вываливается вот это, причем куча окошек:


Ошибка обработки данных

System.InvalidCastException: Не удалось привести тип объекта "System.Decimal" к типу "StockSharp.BusinessEntities.Quote".

в StockSharp.Algo.Storages.Level1ChangeHelper.ApplyChanges(Security security, Level1ChangeMessage message)

в StockSharp.Algo.BaseTrader.#=qTJaw1X1C5ndS1CF6h_drqBTmvZn0r1qcAV7VXp8xss0=(Security #=qF1kBKE4Wg2s6xKyESoti7g==, Level1ChangeMessage #=qW3uLhjkl8greF8a3kdGXgw==)

в StockSharp.Algo.BaseTrader.#=qiWP8CaVPGApml_sRxReE395DviI2FRJIqJPOxDGS5Fs=[TMessage](TMessage #=qDUsyceBRGHz9BwUvIX0snw==, Func2 #=qM9HZFQeHaxZcaWFJnE349Q==, Action2 #=qcUgRaFhfuY3oNc8NA_xMQg==, Boolean #=qfq9iWYg4ysTS3YbMWVcZCXOzX_cJ4DMiToPaptxToFM=)

в StockSharp.Algo.BaseTrader.OnProcessMessage(Message message, MessageDirections direction)

в StockSharp.Smart.SmartTrader.OnProcessMessage(Message message, MessageDirections direction)

в StockSharp.Algo.BaseTrader.#=qmjr2iOOuIRcGp51hPxnHCePOmtmPZaruxH8lvpV14EE=.#=q2odj0Hq4TdhRHtoVk33g$PlxCr4TPAtDtB_yfVc1WHA=.#=qPr7X1VbMuI4YnDkmCG9JA2NwLEAKtnKXL5swTJ8$bvI=()

ОК

Mikhail Sukhov
Mikhail Sukhov

alexan3010: В окне "Инструменты", после нажатия кнопки "Вид-Офер" вываливается вот это, причем куча окошек:

А вот это уже ошибка версии 4.2. Будем лечить.

alexan3010
alexan3010

Дальше, пример SampleSmartCandles.

Подключается нормально, свечки не выводит не исторические, ни он-лайн. Просто пустой чарт, никаких ошибок. Но это вроде как и на предыдущей версии библиотеки было.

UPD: Сейчас специально скачал версии 4.1.17 и 4.1.19 - там в SampleSmartCandles все работает, свечки выводятся как он-лайн, так и исторические!

Rebelion
Rebelion

Та же петрушка с RealTimeEmulationTrader - не идёт экспорт данных, стакан через RegisterMarketDepth не регистрируется. Более того, Verifier определяет настройки корректными! В качестве терминала - Quik. Т.е. подключаюсь, делаю

realTimeTradeEmulation.RegisterSecurity(stock);
realTimeTradeEmulation.RegisterMarketDepth(stock);
realTimeTradeEmulation.RegisterTrades(stock);
realTimeTradeEmulation.RegisterPortfolio(instrument.portfolio);
```,

но на чарте пусто, не появляется стакан в квике по инструменту. В 4.1.19 тот же код пашет без проблем.


P.S. Уточнение - какие-то проблемы с Фортсом, видимо, в 4.2.1, т.к. лукойл нормально отображается...
Bond
Bond

Где документация по работе с новым API? Где примеры? Только один очень простой пример. Дока старая. Или методом научного тыка нужно изучать как работает API?

Rebelion
Rebelion

Bond: Где документация по работе с новым API? Где примеры? Только один очень простой пример. Дока старая. Или методом научного тыка нужно изучать как работает API?

Ну, или хотя бы рабочий пример по SampleSMA - текущий данные из квика не подтягивает.

Mikhail Sukhov
Mikhail Sukhov

Bond: Или методом научного тыка нужно изучать как работает API?

А чем текущая документация не устраивает?

Rebelion
Rebelion

Михаил Сухов:

Bond: Или методом научного тыка нужно изучать как работает API?

А чем текущая документация не устраивает?

Михаил, не работает пример SampleSMA. Я беру проект, собираю в Debug'е, запускаю - фиг. Если просто экзешник пускануть, то всё норм.

Mikhail Sukhov
Mikhail Sukhov

Rebelion:

Михаил Сухов:

Bond: Или методом научного тыка нужно изучать как работает API?

А чем текущая документация не устраивает?

Михаил, не работает пример SampleSMA. Я беру проект, собираю в Debug'е, запускаю - фиг. Если просто экзешник пускануть, то всё норм.

Вы себя запутали окончательно за прошлую неделю. А заодно и малосара😀

Пишите в одном топике. Я уже ответил там о том, почему не работает. Не пишите во всех топиках подряд, вы себя только путаете, и других путаете.

Bond
Bond

Хочу протестировать новый API, оценить скорость работы. А как перевести на него не понятно.

Mikhail Sukhov
Mikhail Sukhov

Bond: Хочу протестировать новый API, оценить скорость работы. А как перевести на него не понятно.

Если речь про скрин, то это ошибка выпущенной версии. Она известна, и ее мы правим.

Bond
Bond

Михаил Сухов:

Bond: Хочу протестировать новый API, оценить скорость работы. А как перевести на него не понятно.

Если речь про скрин, то это ошибка выпущенной версии. Она известна, и ее мы правим.

Ну, тогда тестировать ровным счетом нечего.

Bond
Bond

Bond: Хочу протестировать новый API, оценить скорость работы. А как перевести на него не понятно.

Ошибка из этого сообщения осталась. Добавилась новая. Теперь отказывается принимать строчку UseCandleTimeFrame. Так что тестирование по прежнему не работает.

esper
esper 作者

Bond: Ошибка из этого сообщения осталась. Добавилась новая. Теперь отказывается принимать строчку UseCandleTimeFrame. Так что тестирование по прежнему не работает. Вы смотрели пример именно для версии 4.2.1.2?

esper
esper 作者

Выложили 4.2.1.2

Фичи:- Поиск инструментов через ITrader.LookupSecurities, при наличии нескольких запросов, выполняется последовательно.

  • Plaza и Quik. Поиск инструментов выполняется среди всех полученных и установлен таймаут для поиска в 30 сек.
  • Plaza.IsFastRepl (использовать быструю репликацию, обрабатывается только часть потоков данных).
  • SmartCOM. Добавлен адрес MatriX сервера.
  • SmartCOM. Примеры собираются под AnyCpu.
  • Обновлен SciChart до версии 2.2.
  • Добавлен BollingerBandsPainter. Баги:- Ошибка записи стаканов с одинаковым временем.
  • Ошибка в обработке стоимости шага цены для SmartCOM и LMAX.
  • Котирование в API 4.2.1.
  • Plaza. Стаканы приходят множество раз.
  • SmartCOM. Не удалось привести тип объекта "System.Decimal" к типу "StockSharp.BusinessEntities.Quote".
  • SmartCOM. Порядок прихода исторических свечек.
  • Эмулятор использует переданные инструменты и портфели.
  • Эмулятор. Исправлено тестирования по свечкам.
  • Эмулятор. Не работают генераторы стаканов и сделок.
  • RtEmu. Не подписывается на получение данных.
  • UniversalGrid. Исправлена ошибка с автопрокруткой по горизонтали.
  • EquotyCurveChart автомасштабирование по оси X.
  • Множество мелких исправлений.
Rebelion
Rebelion

[*]RtEmu. Не подписывается на получение данных.

Так всё-таки в RtEmu была проблема? Или у мну руки кривые были? :-(

Rebelion
Rebelion

[*]RtEmu. Не подписывается на получение данных.

Так всё-таки в RtEmu была проблема? Или у мну руки кривые были? :-(

Не пашет RtEmu и в 4.2.1.2

esper
esper 作者

Для всех, кто пишет в этой теме:

  1. Предлагаю для каждой проблемы создавать отдельную тему, не надо сваливать все в одну кучу. Если по ошибке создали тему, пишите только в ней, не надо по одной проблеме писать везде и всюду. Эту тему позже почистим, чтобы здесь были только описания новых версий, так будет проще отслеживать изменения между ними.
  2. Описание "Шеф, всё пропало, все пропало!" не является описанием проблемы, давайте четкое описание, что именно и как не работает, давайте логи, а по возможности и готовые минимальные проекты, именно готовые рабочие примеры, а не урывки кода, по которым ничего нельзя понять. И еще, по возможности, проверяйте все на стандартных примерах. Вас много, а разработчиков S# очень мало, чем более расплывчатые описания проблем вы будете предоставлять, тем дольше они будут решаться.
alexan3010
alexan3010

Так все таки, по поводу SampleSmartCandles в 4.2.1.2, в котором на график выводятся только исторические свечки, а он-лайн изменения (и даже finished свечки) не приходят, я ответа так и не получил, тему куда то прибили. Это будет поправлено в следующей версии API?

esper
esper 作者

alexan3010: Так все таки, по поводу SampleSmartCandles в 4.2.1.2, в котором на график выводятся только исторические свечки, а он-лайн изменения (и даже finished свечки) не приходят, я ответа так и не получил, тему куда то прибили. Это будет поправлено в следующей версии API? Вашу тему никто не удалял, ее перенесли в соответствующий раздел. Как что-то прояснится с проблемой, вам сразу ответят.

alexan3010
alexan3010

Спасибо, что то не догадался в раздел SmartCom заглянуть. Но вам удалось повторить эту проблему? Вообще, как я понял, со свечками из смарта и раньше были проблемы, все таки под квик у вас больше все доработано, но это объяснимо вполне.

Я бы мог посильно посодействовать в тестинге новых версий API под SmartCom, если вам это интересно.

esper
esper 作者

Выложили 4.2.1.3

Фичи:- Transaq. TConnector обновлен до версии 5.8.2.4.

esper
esper 作者

Обновил 4.2.1.3 в связи с этим.

alexan3010
alexan3010

В 4.2.1.5 Риал-тайм свечек как не работал, так и не работает: http://stocksharp.com/forum/4186/S--4-2-1-2--SampleSmartCandles--nie-rabotaiet-RealTime/

Свечной процессинг не отрабатывает, мне кажется это довольно ощутимый косяк, чтобы игнорировать его уже которую неделю.

Да и вот похоже в этой версии добавилось: http://stocksharp.com/forum/4219/S--4-2-1-5-pieriestalo-rabotat--RegisterOrders/

esper
esper 作者

Выложили 4.2.1.7

Фичи:- IQFeed. Настройка получаемых полей для Level1.

  • По умолчанию, каждая область содержит ось X (находится в area.XAxises) и Y (находится в area.YAxises). Добавление новых осей:
var area = new ChartArea();
area.YAxises.Add(new ChartAxis { Name = "Y1", AxisAlignment = ChartAxisAlignment.Left });
  • Чтобы сделать привязку элемента графика к определенной оси, необходимо указать свойство YAxisId (например, чтобы отрисовать объем на том же графике, что и свечи, можно добавить новую ось Y1 и для ChartIndicatorElement для объема указать volumeElement.YAxisId = "Y1";)
  • Чтобы отрисовать объем в виде пузырей, необходимо создать ChartIndicatorElement со следующими параметрами:
el.DrawStyle = ChartIndicatorDrawStyles.Bubble;
el.Color = Color.FromArgb(0x47, 0x33, 0x33, 0x33);
el.IndicatorPainter = new VolumePainter
{
	BubbleAutoScale = false,
	BubbleScale = 0.0005m //кэф на который умножается объем свечи
};
esper
esper 作者

Выложили 4.2.2

Фичи:- Коннекторы Micex и AlfaDirect переведены на сообщения.

Пример отрисовки профиля::::spoiler

  • Добавление и настройка осей:
var main = new ChartArea();
			
//оси для отображения профайла объема
main.XAxises.Add(new ChartAxis
{
	Id = "X2",
	Group = "G1",
	AutoRange = false,
	AxisType = ChartAxisType.Numeric,
	AxisAlignment = ChartAxisAlignment.Left,
	FlipCoordinates = true,
	DrawMajorGridLines = false,
	DrawMajorTicks = false,
	DrawMinorGridLines = false,
	DrawMinorTicks = false,
	DrwaLables = false
});
main.YAxises.Add(new ChartAxis
{
	Id = "Y2", 
	AxisType = ChartAxisType.Numeric, 
	AxisAlignment = ChartAxisAlignment.Top, 
	FlipCoordinates = true
});

//добавляем оси X-профайла и основную Y в одну группу
var y = main.YAxises.First(a => a.Id == "Y");
y.Group = "G1";
y.AutoRange = false;
  • Чтобы отрисовать объем в виде профиля, необходимо создать VolumeProfileIndicator со следующими параметрами:
var el = new ChartIndicatorElement
{
	Color = Color.FromArgb(0x37, 0x33, 0x33, 0x33);
	IsLegend = true,
				
	Indicator = new VolumeProfileIndicator { UseTotalVolume = true, Step = 5 },
	Title = "VolumeProfile",
	DrawStyle = ChartIndicatorDrawStyles.StackedBar,
	StrokeThickness = 3,
	IndicatorPainter = new VolumeProfilePainter(),
	YAxisId = "Y2",
	XAxisId = "X2",
};
Rebelion AntonySS
esper
esper 作者

Обновили 4.2.2.1

Баги:- Не вызывается событие MarketTimeChanged.

  • Исправлен пример SampleRealTimeTesting (передача портфеля в эмулятор происходит после подключения).
alexan3010
alexan3010

После обновления до сегодняшней 4.2.2.1 при коннекте к SmartCom 3.0 стало выдавать ошибку

Ошибка соединения

System.InvalidOperationException: Лицензия не поддерживает SmartComMessageAdapter.

ОК

Что то изменилось? В 4.2.1.7 подключается нормально.

Mikhail Sukhov
Mikhail Sukhov

alexan3010: После обновления до сегодняшней 4.2.2.1 при коннекте к SmartCom 3.0 стало выдавать ошибку

Перезалил версию. Нужно обновиться.

esper
esper 作者

Выложили 4.2.2.3

Фичи:- ExchangeBoard.WorkingTime.Times заменено на ExchangeBoard.WorkingTime.Periods.

esper
esper 作者

Перезалил архивы из-за ошибок проверки лицензии.

esper
esper 作者

Выложили 4.2.2.5

Фичи:- Библиотека Smart переименована в SmartCom. Баги:- Сообщение типа Time не поддерживается IQFeed.

esper
esper 作者
Rebelion
Rebelion

esper: Выложили 4.2.2.6

Баги:- Данный ключ отсутствует в словаре.

  • Ошибка подключения через SmartCom.

esper, вечер добрый. Подскажите, а проблему с разреженным стаканом решаете или это не проблема/баг, а норма?

alexan3010
alexan3010

4.2.2.6 ошибка проверки лицензии, SmartCom 3.0.

esper
esper 作者

Выложили 4.2.2.10

Фичи:- SecurityChanges переименованы в Level1.

  • Тип инструмента, поле Security.Type, сделано nullable.
  • Для заявок добавлено поле StrategyId, которое хранит идентификатор стратегии, через которую выставлена заявка.
  • Взаимосключающие правила удаляются независимо от результата выполнения CanFinish для этих правил.
  • Для MarketEmulator добавлена буферизация данных на выходе.
  • Для настроек MarketEmulator удалены неиспользуемые свойства.
  • SciChart обновлен до версии 2.3.
  • В примерах для отображения инструментов, сделок, заявок и т.д. используются графические элементы из S# Xaml. Баги:- Небольшие исправления в генераторах данных.
  • Plaza. Исправлена отправка ответа на подписку на данные.
  • BasketMessageAdapter. Отправка ошибки для заявки если не найден адаптер для портфеля.
  • Параметры метода Start объекта HistoryEmulationConnector.
  • SciChart. При включенном перекрестии не работает прокрутка мышкой.
  • SciChart. Падает при добавлении аннотаций (линий).
  • Ошибка обработки элементов ОЛ для Connector.
  • Мелкие исправления для AlfaDirect.
  • Ошибка проверки лицензии для SmartCom.
Aleksey24
esper
esper 作者

Выложили 4.2.2.15

Фичи:- Графические компоненты, использующие платные библиотеки, вынесены в Xaml.Extended.

vsnoopy83
esper
esper 作者

Выложили 4.2.2.16

Фичи:- Коннектор ETrade переведен на сообщения.

esper
esper 作者

Выложили 4.2.2.18

Фичи:- Emulator. Блокировка денег при покупке/продаже, перерасчет текущего кол-ва денег в портфеле.

  • PnLManager. Расчет нереализованной прибыли.
  • Connector. Удалено свойство IsCreateSecurityByData.
  • Добавлена панель для работы с графиком Xaml.Extended.ChartPanel.
  • SciChart. Свечка в легенде показывается в одну строку.
  • SciChart. Добавлена область предварительного просмотра.
  • SciChart. Добавлена возможность отрисовки свечек с одинаковой датой. Баги:- SciChart. Не сохраняются аннотации.
  • Emulator. Не останавливается при отмене тестирования.
  • IQFeed. Ошибки с датами.
  • IQFeed. Получение данных для @ES#@CMEMINI.
  • Plaza2. Ошибка со статусом заявок.
devruss
devruss

esper: Выложили 4.2.2.18

Фичи:- >

  • PnLManager. Расчет нереализованной прибыли.
  • Добавлена панель для работы с графиком Xaml.Extended.ChartPanel.
  • SciChart. Свечка в легенде показывается в одну строку.
  • SciChart. Добавлена область предварительного просмотра.
  • SciChart. Добавлена возможность отрисовки свечек с одинаковой датой.

а можно краткое описание как новыми фичами пользоваться? буквально пару строк кода + скриншот фичи если она визуальная?

Спасибо!

Mikhail Sukhov
Mikhail Sukhov

devruss: а можно краткое описание как новыми фичами пользоваться? буквально пару строк кода + скриншот фичи если она визуальная? Спасибо!

Все это есть в примере в Контакте.

devruss
devruss

Михаил Сухов:

devruss: а можно краткое описание как новыми фичами пользоваться? буквально пару строк кода + скриншот фичи если она визуальная? Спасибо!

Все это есть в примере в Контакте.

Назовите пожалуйста номера примеров, где освещаются вышеперечисленные НОВЫЕ фичи?

GSC2
GSC2

В версии 4.2.2.16 SmartCom переподключение работает? Тестировал так. Подключился, вынул интернет кабель из ноута, подождал 60 сек, воткнул интернет. За это время ни одно событие Disconnect, ErrorConnection, ExportError не было вызвано. Только было сообщение в ProcessDataError, что-то типа - "неожиданное сообщение Disconnected..." На все события подписан, даже на Trader1.ReConnectionSettings.ConnectionSettings.Restored и Trader1.ReConnectionSettings.ExportSettings.Restored. Раньше в версии 4.1.19, хотя бы ErrorConnection срабатывал, позже приходило событие реконнекта, но NewTrades не обновлялись. Надо было все перезагружать.

esper
esper 作者

Выложили 4.2.2.22

Фичи:- Emulator. Проверка рабочего времени при выставлении заявок.

GSC2
GSC2

Реконнекту смарта процессе исправления? Тогда назовите версию, где реконнект работает.

esper
esper 作者

Выложили 4.2.2.24

Фичи:- Добавлен коннектор для Rss.

  • Добавлено поле News.Url, для ссылки на новость в интернете.
  • AddressComboBox. Поддержка пользовательского ввода данных.
  • MarketDepthControl. Поддержка форматирования для цены и объема.
  • Micex. Добавлено условие для стоп-заявок. Баги:- Не останавливается котирование.
  • Не переходит в Failed режим после успешного подключения.
  • Ошибка в методе QuikTrader.Dispose().
  • Lmax. Мелкие исправления.
  • Ошибки освобождения ресурсов для адаптеров сообщений.
whitebar
whitebar

esper: Выложили 4.2.2.24

Доброго времени суток!

По сравнению с версией 4.2.2.22 перестало работать событие изменения PnL стратегии. Следующий код корректно работает в 4.2.2.22 и не работает в 4.2.2.24:


            var curveItems = PnLCurveChart.CreateCurve("SMA", Colors.DarkGreen);
            
            strategy.PnLChanged += () =>
            {
                var data = new EquityData
                {
                    Time = strategy.CurrentTime,
                    Value = strategy.PnL,
                };

                strategy.AddInfoLog("Изменился PnL стратегии");
                this.GuiAsync(() => curveItems.Add(data));
            };

Используется Connector HistoryEmulationConnector. В логе ни разу не появляется сообщение "Изменился PnL стратегии". В версии 4.2.2.22 сообщение появляется регулярно

Mikhail Sukhov
Mikhail Sukhov

whitebar: о

В SampleHustoryTesting так же не меняется эквити?

whitebar
whitebar

В SampleHistoryTesting все работает. Похоже, ошибка на моей стороне.

Спасибо!

esper
esper 作者

Выложили 4.2.2.26

Фичи:- <mark>Переход на .NET 4.5.1.</mark>

Aleksey24
esper
esper 作者

Выложили 4.2.2.27

Фичи:- Добавлен коннектор BTC-e.

devruss
devruss

esper: Выложили 4.2.2.27 Фичи:- Добавлен коннектор BTC-e.

Еще раз повторю: новые фичи - это очень круто. Но если на новые фичи нет документации, то ими будут пользоваться только те, кто знает как они устроены т.е. сами разработчики, ну либо люди очень любящие логические головоломки.

Потратил 15 мин на попытку засетапить btc/usd из btc - All@btce не получает вообще никаких данных, попытка засетапить индивидуальный инструмент тоже ни к чему не приводит половина манипуляций приводит к ```plain 13:22:39.849|Error |BTCE |Ошибка при запуске источника. Источник будет остановлен.


Очень хочется увидеть хотя бы пару строчек как именно пользоваться НОВЫМИ фичами


esper
esper 作者

Выложили 4.2.3.0

Фичи:- Коннекторы Rithmic и OpenECry переведены на сообщения.

whitebar JaguarFX
esper
esper 作者

Выложили 4.2.3.1

Фичи:- Для хранения паролей используется SecureString.

vk37
esper
esper 作者

Выложили 4.2.3.4

Фичи:- OrderDirections заменено на Sides.

  • Инструмент, поле Security.MinStepSize переименовано в Security.PriceStep, MinLotSize в VolumeStep, MinStepPrice в StepPrice. Баги:- Emulator. Утечка памяти (в память считывается вся история).
  • Emulator. Ошибка повторного запуска тестирования.
  • Transaq. Тестирование версии 2.9.
Slepoy
devruss
devruss

esper: Выложили 4.2.3.4 [*]Инструмент, поле Security.MinStepSize переименовано в Security.PriceStep, MinLotSize в VolumeStep, MinStepPrice в StepPrice.

Ни старое название, ни новое не несет в себе никакого смысла. Зачем придумавать терминам новые названия, когда уже есть устоявшиеся понятия - одно из значений называется tick size, а другое tick value. Например для Emini S&P futures: tick size = 0.25, tick value = 12.50. Есть еще понятие index point value = 1/tick size * tick value = $50

esper
esper 作者

Выложили 4.2.3.7

Фичи:- Добавлен коннектор BitStamp.

esper
esper 作者

Выложили 4.2.3.8

Фичи:- Библиотеки CGate обновлены до версии 1.3.8.

  • SampleRealTimeTesting переведен на Plaza2.
  • SciChart. Добавлено пересоздание серии при изменении типа линии.
  • Для MemoryStatistics добавлено включение/выключение в процессе работы программы. Баги:- Emulator. Неверный статус заявок при ошибках регистрации.
  • На VPS сервере цены у трейдов=0.
esper
esper 作者

Выложили 4.2.3.11

Фичи:- IQFeed переведен на .NET 4.5.1.

  • Strategy. Вынесена в библиотеку Algo.Strategies.
  • Algo.History вынесен в отдельную библиотеку.
  • Micex. Добавлена поддержка интерфейса Equity23.
  • Лицензии. Детальное описание ошибок.
  • Для Level1ChangeMessage добавлено поле Time.
  • Для BasePosition добавлено поле LastChangeTime.
  • Order. ExecutionCondition переименован в TimeInForce.
  • Security, Portfolio, News. Поле ExchangeBoard переименовано в Board.
  • Поле OpenInterest сделано nullable.
  • Emulator. Добавлен запрос инструментов через ISecProvider.
  • MarketEmulator. Поддерживает расчет комиссии через CommissionManager.
  • IPnLManager. Добавлена нереализованная прибыль (UnrealizedPnL).
  • Добавлен менеджер контроля рисков.
  • SciChart. Добавление/удаление осей через контекстное меню.
  • SciChart. Отображение свечек в виде Ohlc.
  • SciChart. Формат надписей в легенде как на оси.
  • SciChart. Легенда для заявок и сделок.
  • EquityCurveChart. Добавлена легенда, возможность отображения эквити в виде Area и DashedLine.
  • OptionPositionChart. График, показывающий позицию и греки опционов относительно базового актива.
  • Удалена поддержка MS Chart. Баги:- Emulator. Ошибка остановки тестирования по свечам.
  • IQFeed. Получение исторических сделок. Как не пропустить ошибку.
  • IQFeed. Ошибка парсинга строчки.
  • Quik. Ошибка со стоп-заявками.
  • Не добавляются свечки для индексов в контейнер менеджера свечек.
  • StatisticParameterGrid. Ошибка с форматом чисел.
  • LogManager. Небольшие исправления.
  • SciChart. Не всегда показывается легенда.
  • SciChart. Ошибка с форматом надписей на оси.
JaguarFX
JaguarFX

Прошу проинформировать когда будет исправлена ошибка "Инструмент XXXXX не имеет информации о подключении", обозначенная еще по итогам тестирования S.API версии 4.2.3.0 (Link)?

Mikhail Sukhov
Mikhail Sukhov

lebedevsrg: Прошу проинформировать когда будет исправлена ошибка "Инструмент XXXXX не имеет информации о подключении", обозначенная еще по итогам тестирования S.API версии 4.2.3.0 (Link)?

В том сообщении я задал вопрос, но не получил ответа. Значит ошибка не ясна, и она не может быть исправлена.

esper
esper 作者

Выложили 4.2.3.12

Фичи:- ChartPanel. Добавлена кнопка отключения легенды. Баги:- Emulator. Исправлено вычисление планок.

Den
Den

esper: Выложили 4.2.3.12

[*]SciChart. Дата в легенде для свечек.

Здорово, что время вернулось! А не могли бы вы сделать как было изначально (4.2.3.1): Скриншот

Дело в том, что теперь легенда в одну строчку слишком длинная. А если в чарте несколько ChartArea'й и часть из них не свечки, а индикаторы, то при наведении курсора на индикатор не выводится время. Хотелось бы для ChartIndicatorElement тоже видеть время.

На мой взгляд в 4.2.3.1 было сделано просто идеально.

И если можно, для заявок и сделок в аннотации тоже выводить время или сделать аннотации конфигурируемыми.

А вообще чарт все краше и краше! :)

JaguarFX
JaguarFX

Михаил Сухов: В том сообщении я задал вопрос, но не получил ответа. Значит ошибка не ясна, и она не может быть исправлена.

Да, действительно был вопрос "Пробовали запускать SampleTransaq?" - запускал, как выяснилось к библиотеке TransaqConnector данная ошибка отношения не имеет.

Еще раз опубликовал подробную информацию об ошибке "Инструмент не имеет информации о подключении" Тут

esper
esper 作者

Выложили 4.2.3.14

Баги:- Ошибка записи неупорядоченных данных в хранилище.

esper
esper 作者

Выложили 4.2.3.20

Фичи:- BatchEmulation. Одновременная независимая эмуляция нескольких стратегий на одном наборе данных. Пример SampleHistoryTestingParallel.

  • Quik. Добавлена поддержка терминала начиная с версии 6.13.
  • Пример SampleRealTimeTesting переименован в SampleRealTimeEmulation, SampleEmulationTesting в SampleRandomEmulation.
  • SecurityPicker использует SecurityProvider для получения инструментов.
  • SecurityEditor и PortfolioEditor поддерживают автокомплит. Баги:- Ошибка освобождения ресурсов для Connector.
  • Emulator. Исправлены мелкие ошибки.
  • Plaza. Ошибка повторной перерегистрации заявки после ошибки перерегистрации.
Ольга
esper
esper 作者

Выложили 4.2.4.0

Фичи:- <mark>Quik. Добавлена поддержка подключения через Lua.</mark>

  • Level1Fields. Добавлено поле LastTradeOridin.
  • Удален метод IConnector.GetMarketTime (для получения текущего времени используется свойство CurrentTime). Баги:- Storage. Ошибка при загрузке изменений.
  • OpenECry. Исправлены мелкие ошибки.
  • Fix. Ошибка передачи опционов.

<mark>Настройка коннектора QuikLua.</mark>

esper
esper 作者

Выложили 4.2.5.0

Фичи:- QuikLua. Запрос состояния стакана при подписке на данные.

vsnoopy83
esper
esper 作者

Выложили 4.2.6.0

Фичи:- QuikLua. Таблица инструментов может иметь любое название и порядок столбцов, но для открытия стканов обязательно наличие столбцов Код класса и Код инструмента.

vsnoopy83
esper
esper 作者

Выложили 4.2.8.0

Баги:- QuikLua. Неверная информация по планкам.

vsnoopy83
esper
esper 作者

Выложили 4.2.10.0

Фичи:- Emulator. Тестирование на тиках и свечах с нулевым объемом.

  • Поле Message.Time переименовано в ServerTime, LocalTimeStamp -> LocalTime.
  • Storage. Для Level1 добавлена группировка изменений с одной датой при записи/чтении.
  • Метод Connector.CreateOrderCondition перемещен в SessionHolder.
  • Добавлена таблица OrderConditionalGrid для отображения стоп-заявок и условий.
  • Добавлен графический элемент EndPointListEditor для редактирования списка точек для подключения.
  • SampleHistoryTesting. Во время тестирования для графика используется AutoRange (показываются все свечи). Баги:- Ошибка копирования ExtensionInfo.
  • Emulator. Не переходит в Stopped при ошибках запуска.
  • Emulator. Нулевой объем в стакане.
  • Ошибка в расчетах EMA.
  • Странное поведение Level1ChangeMessage.Time.
  • Свойство Strategy.CommentOrders.
  • SampleHistoryTesting. Медленная отрисовка графика при мелком таймфрейме.
esper
esper 作者

Выложили 4.2.14.0

Фичи:- Emulator. Оптимизация изменения времени при отсутствии данных за день.

  • Для Security добавлено свойство Multiplier.
  • Micex. Добавлена обработка сессий для торговых площадок. Баги:- OrderGrid. Не показывается задержка регистрации.
  • Emulator. Ошибка округления планок.
  • Мелкие исправления в стратегиях котирования и защиты.
esper
esper 作者

Выложили 4.2.16.0

Фичи:- Transaq. Версия библиотек обновлена до v2.10.

  • Connector. Добавлен метод GetFilteredMarketDepth для получения стакана без своих заявок.
  • Connector. При выключенных UpdateSecurityLastQuotes и UpdateSecurityByLevel1 значения полей инструментов не изменяются.
  • Emulator. Изменены примеры тестирования (передача level1 данных для инструмента).
  • OrderGrid. Добавлена ссылка для копирования текста ошибки.
  • OrderWindow. Добавлены предопределенные значения цен и объема.
  • SciChart. Контекстное меню для добавления элементов показывается только в интерактивном режиме.
  • Security. Изменены значения по умолчанию для MinPrice и MaxPrice.
  • Security. Добавлено поле BinaryOptionType. Баги:- Connector. Ошибка обработки OrderFail.
  • Emulator. Ошибка с неверным временем при тестировании на тиках.
  • QuotingStrategy. Ошибка перестановки заявок.
  • MarketDepthControl. Не показывается дробная часть для цены.
esper
esper 作者

Выложили 4.2.17.0

Фичи:- Для Security и MarketDepth поле Connector не заполняется.

  • SecurityGrid. Обновление информации по инструменту выполняется с помощью IMarketDataProvider. Баги:- Transaq. Ошибка трансляции Level1 данных.
  • QuotingStrategy. Ошибка обработки цены с учетом своих заявок.
  • OrderWindow. Не работает подстановка предопределенных значений цены.
  • Connector. Не вызывается событие NewOrders.
devruss
devruss

esper: Выложили 4.2.17.0

Сам архив с новым билдом не выложен: http://gyazo.com/ea4c89b41a76599242bceaf2193b62da

esper
esper 作者

Обновил архивы.

esper
esper 作者

Выложили 4.2.18.0

Фичи:- Для торговых площадок MICEX изменено значение IsSupportAtomicReRegister на true.

  • QuotingStrategy. Добавлено свойство IsSupportAtomicReRegister.
  • Emulator. Свои сделки добавляются в общий поток сделок. Баги:- QuikLua. Ошибка с неверными номерами транзакций для заявок.
  • ProtectiveStrategy. Исправлены мелкие ошибки.
  • Strategy. При переинициализации не вызываются события PnLChanged, PositionChanged.
  • LogManager. Низкая производительность.
esper
esper 作者

Перезалил StockSharp_4.2.18_Sources.zip и StockSharp_4.2.18.zip в связи с "Не выставляются заявки на FORTS".

vsnoopy83
esper
esper 作者

Выложили 4.2.19.0

Фичи:- Emulator. Реалтайм обработка подписки/отписки маркет-даннных.

esper
esper 作者

Выложили 4.2.20.0

Фичи:- Rithmic. Добавлено получение свечек.

  • IConnector. Метод CreateOrderCondition перенесен в SessionHolder.
  • Order. Добавлен строковый идентификатор (StringId) и идентификатор торговой площадки (BoardId).
  • Trade. Добавлен строковый идентификатор (StringId).
  • SecurityPicker. Улучшена скорость отображения данных. Баги:- AlfaDirect. Неверный код валюты.
  • Проблема с Emulator.
esper
esper 作者

Выложили 4.2.22.0

Фичи:- Rithmic. Обновлен до версии 7.

  • RealTimeEmulationTrader. Возможность передачи Portfolio, который будет использоваться для эмуляции, через конструктор.
  • RealTimeEmulationTrader. Использует один набор инструментов с UnderlyingConnetor-ом.
  • IndexSecurity. Проверка наличия всех исходных данных (если данных для расчетов недостаточно, то возвращается null).
  • Метод TraderHelper.GetMarketPrice возвращает nullable значение.
  • Добавлен индикатор Envelope.
  • Все индикаторы перенесены в одно пространство имен. Баги:- Plaza. Ошибка вычисления задержки регистрации заявок.
  • Connector. Не заполняется ExtInfo для позиций и портфелей.
  • Emulator. Неверный шаг цены для инструментов.
  • Emulator. NullReferenceException при остановке тестирования.
  • SciChart. При выставлении заявки с графика появляется контекстное меню.
  • SciChart. Не работает редактирование названий серий.
esper
esper 作者

Выложили 4.2.25.0

Фичи:- IQFeed. Поддерживается протокол версии 5.1

  • IQFeed. Поддержка новых типов инструментов.
  • Connector. Добавлена генерация стакана по Level1 данным (свойство CreateDepthFromLevel1).
  • Connector. Добавлено создание объединенного инструмента, для группировки данных под одинаковым инструментам с разных площадок (свойство SessionHolder.CreateAssociatedSecurity).
  • Emulator. Добавлена поддержка тестирования на Level1 данных.
  • CandleSeries. Добавлено свойство IsCalcVolumeProfile.
  • MarketEmuSettings. Свойство UseCandlesTimeFrame сделано nullable.
  • News. Поле Time переименовано в ServerTime и добавлено поле LocalTime.
  • RemoteStorage. В поиск инструментов добавлен фильтр по ExpiryDate.
  • Indicators. Метод OnProcess возвращает IIndicatorValue.
  • ZigZag. Добавлена поддержка IsFinal.
  • OrderConditionalWindow. Добавлено поле для цены заявки.
  • ExchangeInfoProvider. Добавлен сервис-провайдер информации о площадках/биржах.
  • LicenseTool. Добавлены настройки прокси-сервера. Баги:- EquityCurveChart. Не показываются названия серий в легенде.
  • Quik. Не работает метод GetAccount.
  • Quik. В Quik Finam Demo появляется ошибка при получении портфеля.
  • QuikLua. Неверная информация по портфелям.
  • Transaq. Ошибка обработки данных.
  • Strategy. Низкая производительность при расчете PnL.
  • UniversalGrid. Низкая производительность.
  • Emulator. Поддержка выбора формата хранилища для тестирования (свойство StorageFormat).
  • Emulator. При отсутствии данных стаканы пропускаются только за текущий день.
  • Rithmic. Исправлены мелкие ошибки.
  • OptionSamples. Исправлены мелкие ошибки.
  • SampleHistTesting. Ошибка повторного запуска тестирования.
esper
esper 作者

Выложили 4.2.26.0

Фичи:- Transaq. Обновлена версия библиотек.

esper
esper 作者

Выложили 4.2.28.0

Фичи:- Добавлен новый коннектор Oanda.

esper
esper 作者

Выложили 4.2.30.0

Фичи:- QuikLua. Добавлено получение дополнительных полей для Level1 (BidsCount, AsksCount, BidsVolume, AsksVolume, OpenPrice, LowPrice, HighPrice, ClosePrice, Change, HighBidPrice, LowAskPrice, VWAP, TradesCount, Yield, AccruedCouponIncome, SettlementPrice, Volume).

esper
esper 作者

Выложили 4.2.33.0

Фичи:- Level1Grid. Добавлены дополнительные столбцы.

esper
esper 作者

Выложили 4.2.35.0

Фичи:- Chart. Добавлена обертка BufferedChart для безопасной работы с графиком из разных потоков.

Валентин Лебедев
esper
esper 作者

Выложили 4.2.40.0

Фичи:- Переход с DateTime на DateTimeOffset.

esper
esper 作者

Выложили 4.2.42.0

Фичи:- PropertyGridEx. Редактор для DateTimeOffset. Баги:- SmartCom. Ошибки обработки заявок.

  • SampleSmart. Ошибка нехватки памяти при открытии окна выставления заявки.
  • Blackwood. Мелкие исправления.
esper
esper 作者

Выложили 4.2.43.0

Баги:- QuikLua. Не приходит часть сделок.

  • Blackwood. Мелкие исправления.
Mikhail Sukhov
Mikhail Sukhov

Выложина версия 4.2.68

Список изменений.

Новую версию можно скачать или с GitHub или с Nuget.

Данный топик закрывается. Дальнейшее оповещение будет в канале Twitter и в группе ВКонтакте.