Вчера скачал посл версию S# API При попытке подключения к боевому счету Transaq Finam получаю ошибку подключения
150316-151542.939 17648 [26616] Inf >> <command id="connect"> <login> XXXXXXXX </login> <password>*</password> <host>213.247.141.133</host> <port>3900</port> <loglevel>0</loglevel> <autopos>false</autopos> <micex_registers>true</micex_registers> <milliseconds>true</milliseconds> <utc_time>false</utc_time> <notes_file /> </command> 150316-151543.939 17648 [26616] Inf << <result success="true"/> 150316-151548.645 17648 [24736] Inf << <server_status connected="error">Ошибка подключения</server_status>
причем пробовал с txmlconnector.dll из stocksharp дистрибутива а также заменял txmlconnector.dll из stocksharp дистрибутива либой скачанной с finam.ru результат одинаковый: <server_status connected="error">Ошибка подключения</server_status>
При этом с txmlconnector.dll из дистрибутива удалось подключиться к демо счету Transaq.ru. Но после создании заявок, отложенных ордеров на демо счете - приложение падает с ошибкой xml-сериализации
Comments (17)
Login or Create account, Log in or register to leave a comment
Еще заметил что exe-ник (почему-то) перетирает txmlconnector.dll подкладываю txmlconnector.dll скачанный с финама, проверяю версию 2.10.8 - запускаю екзешник - меняется дата файла txmlconnector.dll - проверяю версюи - другая - 2.10.5
Ау, есть кто нить на поддержке? :)
Если вы хотите техподдержку, то она платная http://stocksharp.com/edu/ Или ждать добрых самаритян.
Нет, я не хочу платной поддержки Я хочу чтобы S# за которым наблюдаю с 2011 года хоть как-то стал пригодным к свободному использованию. Раз в год смотрю и из года в год ничего не изменяется к лучшему! На текущий момент:
И после этого вы еще заявляете: ок, мы готовы вам оказать платную поддержку. !
Мы, сторонние пользователи вашего чуда проекта с такой чудо поддержкой выступаем бета-тестерами. Причем бесплатными! Советую вашей чудо компании пересмотреть свою политику.
А с текущей политикой более желания дальше бесплатно тестировать ваш продукт нет.
И почему все сразу отвергают опцию Добрых самуритян?😂
aandr2011,
В сборке TransaqTrader библиотека txmlconnector.dll забита в ресурсы. Трейдер при старте переписывает dll-ку из ресурса на диск и оттуда грузит. Так происходит при каждом старте трейдера. Поэтому какую бы версию txmlconnector Вы на диск ни выкладывали, трейдер всё равно грузит собственную. Зачем это сделано, не знаю. Достаточно закомментировать эту строчку в исходнике TransaqTrader'а и можно использовать Вашу версию коннектора. Вполне возможно, что после этого всё заработает. У меня заработало, когда подставил коннектор от Финама.
У финама появилась новая версия?
Не проверял
Можете проверить данный коммит https://github.com/stocksharp/stocksharp/commit/1c88386bf41d6a68caf5e4ae38a50294445fb474 ? Это финамоские файлы (как и предыдущие), но последней версии. Помогает ли без перезаписи своими?
У меня подключается, это у aandr2011 не подключается. До списка заявок я правда ещё не дошёл. Не грузит одновременно исторические свечи и реального времени. Либо одно, либо другое. Исторические свечи приходят порциями от настоящего к прошлому, а не от прошлого к настоящему, как должно бы. Сижу, в вашем коде разбираюсь, точу напильник
Вы переписываете tconnector.dll своей или используете тот, что автоматически из дистрибутива?
По-всякому пробовал.
Коннектор тут вообще ни причём. Транзак-сервер присылает исторические свечи порциями от свежих к более старым. В контейнер серии они складываются по мере поступления порций. Получается, что по индексу 0 лежит свечка откуда-то из глубокой древности. Свежие же свечки лежат где-то в конце списка. Чтобы исправить ситуацию, следует накапливать порции свечек в стеке и по приходу последней порции записывать все в контейнер. Тогда свечки выстраиваются в правильно порядке, то есть по индексу 0 самая свежая, по индексу -1 предыдущая и т.д. Для этого потребовалось доработать TransaqMessageAdapter.OnCandlesMessage.
Второй момент, что после приёма исторических свечек не запускается приём свечек реального времени. Хотя должен, в енумераторе источников записано оба источника и запускаться они должны по очереди. А запускается только первый. Второй должен запускаться по приходу события Stopped, а оно никогда не наступает. Пытался найти в коде, где оно вызывается и при каких условиях срабатывает, и не нашёл. Похоже, в текущей версии срабатывание этого события не предусмотрено. Но и тут есть идея. Когда приходит последняя свечка истории, мы знаем. По этому факту можно сформировать специальную дополнительную свечу, у которой, например, все цены равны -1. В обработчике события Processing енумератора по этой свече запускать Stopped. Попробую, расскажу.
А коннектор тут ни причём.
Сделайте, пожалуйста, пулл реквест в репозитарий. Это лучше всего делать в TransaqTrader в переопределенном OnProcessMessage
👍
Вот тут вы написали:
Я про это и спрашиваю. Если использовать стандартные dll транзака, оно что, не подключается? Или все таки подключается?
C dll из ресурса не подключалось. C dll Финама подключилось. Было ли дело в версиях dll или в чём-то другом, не разбирался.
С Финамом давно работаю. Опыт научил доверять только тем версиям, что на сайте Финама лежат.
Вот я как раз про это и пишу. Посмотрите подключается ли с последними выложенными длл из ресурсов.
Подключается.
А где конкретно эта ссылка в проекте находится? К боевому серверу вроде подключение есть, т.е. через стандартный txmlconnector.dll, но мне нужно сначала оттестировать на демо-счете. А там используется другая версия библиотеки txmlconnector.dll И соответственно если подкладывать в папку с проектом новую txmlconnector.dll(для демо которая), то при запуске она затирается оригинальной.