Обновление Транзак до версии 2.16.1
Atom Ответить
14.09.2015


Финам обновляет Транзак коннектор до версии 2.16.1. Обновление примечательно тем, что нет обратной совместимости (клиенты на пред версии работать не будут начиная с 19-го числа). Коммит для лечения https://github.com/Stock...83ecb3662b97c2798363cbd6

Теги:


Спасибо:




44 Ответов
< 1 2 
RomSunZ

Фотография
Программист
Дата: 28.10.2015
Ответить


Mikhail Sukhov Перейти
RomSunZ Перейти
Mikhail Sukhov Перейти
RomSunZ Перейти
Mikhail Sukhov Перейти
Подебажьте, да и найдите проблему.


Ну так я и додебажил до ProcessPtrResult, дальше некуда...


И что там выводится?


Код

        String errStr = Marshal.PtrToStringAnsi(pResult);
        String errStr1 = Marshal.PtrToStringAuto(pResult);
        String errStr3 = Marshal.PtrToStringUni(pResult);
 
        var result = _encoding.ToString(pResult).Replace("&", "&amp;");

PtrToStringAnsi выводит вопросительные знаки
PtrToStringAuto и PtrToStringUni выводит иероглифы
_encoding.ToString выводит вопросительные знаки


А какая в итоге ошибка?


В итоге ошибка с кодировкой, вместо русского текста выводит вопросительные знаки: <result success="false"><message>??????? ????? ?????????????? ??????.</message></result>
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 28.10.2015
Ответить


Полная информация о .NET исключении.
Автор топика
Спасибо:

RomSunZ

Фотография
Программист
Дата: 28.10.2015
Ответить


Mikhail Sukhov Перейти
Полная информация о .NET исключении.


Михаил, нет никаких исключений. При преобразование IntPtr в string не может сопоставить кодировку и выдает вместо кириллицы вопросительные знаки. Я попросил тех, кто пользуется данным коннектором проверить получают ли они нормальный русский текст или тоже получают "??????? ????? ?????????????? ??????." вместо текста.
Спасибо:

sazon

Фотография
Дата: 02.11.2015
Ответить


Уважаемые представители StockSharp-a. Возник следующий вопрос: если я подписываюсь через метод TransaqTrader::SubscribeMarketData(...) на получение сделок по нескольким инструментам, то сделки мне должны приходить начиная с какого момента, с момента подписки или начиная с 10::00? На данный момент S# в случае подписи на два инструмента, для одного выдает данные с начала дня, для другого с момент подписи. Мне кажется это странным. Попробовал поэкспериментировать с вашими исходниками, забив значение "tradeno" равным единице (об этом есть информация в документации для txmlconnector) в XmlSerializeHelper::SerializeSubscribeTicks(...) и все запахало так, как и думал. Судя по логам от TC у вам при подписке на очередной инструмент для предыдущих инструментов "tradeno" переопределяется на ноль, с единицы.

123115.051665 [8576] [13916] <cmd> [I] <command id="subscribe_ticks" filter="true">

<security secid="16920" tradeno="1" />

</command>
123115.063675 [8576] [13916] <res> [R] <result success="true"/>
123115.074682 [8576] [13916] <cmd> [I] <command id="subscribe_ticks" filter="true">

<security secid="16920" tradeno="0" />

<security secid="2831" tradeno="1" />

</command>
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 02.11.2015
Ответить


На примере воспроизводится?
Автор топика
Спасибо:

sazon

Фотография
Дата: 02.11.2015
Ответить


Mikhail Sukhov Перейти
На примере воспроизводится?


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

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 02.11.2015
Ответить


sazon Перейти
Mikhail Sukhov Перейти
На примере воспроизводится?


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


Поппобуйте на примере это проделать. Думаю ошибка в вашем коде и то что вы выше написали о номерах тиков не соответчвует коду коннектора.
Автор топика
Спасибо:

sazon

Фотография
Дата: 03.11.2015
Ответить


Mikhail Sukhov Перейти
sazon Перейти
Mikhail Sukhov Перейти
На примере воспроизводится?


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


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


В примере в обработчике установки соединения добавил подписку на два инструмента через "Trader.SubscribeMarketData(security, StockSharp.Messages.MarketDataTypes.Trades)" и навесил запись в текстовый файл всех сделок.Тоже самое, для одного инструмента с 10-00, для другого с момента подписки.
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 05.11.2015
Ответить


Транзак с новой версией 2.18.1

https://github.com/Stock...876bdfe867afb3ae87356d4a

Какие-то небольшие фиксы в коннекторе. Проверить, понятно, лучше заранее.
Автор топика
Спасибо:

sazon

Фотография
Дата: 11.11.2015
Ответить


Не знаю, как в последней версии, но в предыдущей не работала разность между локальным и текущим временем, все время оно равнялось null. Хотя во время отладки вашего коннектора выяснилось, что разность при соответствующем запросе возвращается.
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 11.11.2015
Ответить


sazon Перейти
Не знаю, как в последней версии, но в предыдущей не работала разность между локальным и текущим временем, все время оно равнялось null. Хотя во время отладки вашего коннектора выяснилось, что разность при соответствующем запросе возвращается.


https://github.com/Stock...aster/Connectors/Transaq
Автор топика
Спасибо:

titan

Фотография
Курсы
Дата: 11.11.2015
Ответить


sazon Перейти
Не знаю, как в последней версии, но в предыдущей не работала разность между локальным и текущим временем, все время оно равнялось null. Хотя во время отладки вашего коннектора выяснилось, что разность при соответствующем запросе возвращается.


А к чему это может приводить????На команду Trader.Connect, Trader поменял свойство ConnectionState в Connecting и прикинулся веником...
Спасибо:

sazon

Фотография
Дата: 11.11.2015
Ответить


titan Перейти
sazon Перейти
Не знаю, как в последней версии, но в предыдущей не работала разность между локальным и текущим временем, все время оно равнялось null. Хотя во время отладки вашего коннектора выяснилось, что разность при соответствующем запросе возвращается.


А к чему это может приводить????На команду Trader.Connect, Trader поменял свойство ConnectionState в Connecting и прикинулся веником...


Если честно, то не понял.
Спасибо:

titan

Фотография
Курсы
Дата: 12.11.2015
Ответить


...разность между локальным и текущим временем, все время оно равнялось null...На что это может повлиять?
Спасибо:

sazon

Фотография
Дата: 12.11.2015
Ответить


titan Перейти
...разность между локальным и текущим временем, все время оно равнялось null...На что это может повлиять?

Мне нужна именно эта разность, и ТС ее предоставляет через свой API. В стокшарпе ее нет, она null.
Спасибо:

titan

Фотография
Курсы
Дата: 12.11.2015
Ответить


sazon Перейти
titan Перейти
...разность между локальным и текущим временем, все время оно равнялось null...На что это может повлиять?

Мне нужна именно эта разность, и ТС ее предоставляет через свой API. В стокшарпе ее нет, она null.


ммм..ясн...А как параметр называется разность между локальным и текущим временем, который все время равнялся null?любопытства ради...
Спасибо:

sazon

Фотография
Дата: 12.11.2015
Ответить


titan Перейти
sazon Перейти
titan Перейти
...разность между локальным и текущим временем, все время оно равнялось null...На что это может повлиять?

Мне нужна именно эта разность, и ТС ее предоставляет через свой API. В стокшарпе ее нет, она null.


ммм..ясн...А как параметр называется разность между локальным и текущим временем, который все время равнялся null?любопытства ради...


Свойство: ServerTimeDiff. Дело в том, что там эта разность возвращается при инициализации 'TransaqTrader'-a, просто ее никак не используют, при отладке коннектора это видно. Я для себя поправил в исходниках, но в новой версии, как говорят, все поправлено.
Спасибо:

sazon

Фотография
Дата: 16.11.2015
Ответить


есть большое подозрение, что не работает обновление позиции
Спасибо:

nil69

Фотография
Дата: 23.11.2015
Ответить


Вечер добрый! Может кто подскажет в чем проблема сей ошибки
Версия 4.3.13

"StockSharp.Transaq.Native.ApiException: <error>Не удалось инициализировать библиотеку. does not exist
</error>
в StockSharp.Transaq.Native.ApiClient.CheckErrorResult(IntPtr ptr)
в StockSharp.Transaq.Native.ApiClient..ctor(Action`1 callback, String dllPath, Boolean overrideDll, Boolean isHft, String path, ApiLogLevels logLevel)
в StockSharp.Transaq.TransaqMessageAdapter.Connect()
в StockSharp.Transaq.TransaqMessageAdapter.OnSendInMessage(Message message)
в StockSharp.Messages.MessageAdapter.SendInMessage(Message message)"

Я видел, что эта проблема уже поднималась в этой ветке, но к сожалению работающего варианта так и не нашел - ссылки на яндекс архив уже не актуальны, а с созданием папки "StockSharp.Transaq" с последующим копированием библиотеки не увенчались успехом. Заранее благодарен, за любую подсказку.

>>>>>>>>>>>> В общем решил проблему сам, ибо код с "коробки" не рабочий, ввиду того, что автор пытается писать логи в несуществующую папку Debug/StockSharp.Transaq/Logs/ . Прошу меня извинить, если метод решения этой проблемы уже где - то расписан, но даже если так, негоже оставлять такой костыль в рабочей веткеSmile
Спасибо:
< 1 2 

Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy