Transaq Finam - не подключается
Atom Ответить
16.03.2015


Вчера скачал посл версию 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-сериализации
Logs.zip 1 KB (0)

Теги:


Спасибо:




17 Ответов
aandr2011

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


Еще заметил что exe-ник (почему-то) перетирает txmlconnector.dll
подкладываю txmlconnector.dll скачанный с финама, проверяю версию 2.10.8 - запускаю екзешник - меняется дата файла txmlconnector.dll - проверяю версюи - другая - 2.10.5
Автор топика
Спасибо:

aandr2011

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


Ау, есть кто нить на поддержке? :)
Автор топика
Спасибо:

Mikhail Sukhov

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


aandr2011 Перейти
Ау, есть кто нить на поддержке? :)


Если вы хотите техподдержку, то она платная https://stocksharp.ru/edu/ Или ждать добрых самаритян.
Спасибо:

aandr2011

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


Нет, я не хочу платной поддержки
Я хочу чтобы S# за которым наблюдаю с 2011 года хоть как-то стал пригодным к свободному использованию. Раз в год смотрю и из года в год ничего не изменяется к лучшему!
На текущий момент:
1) S# Аpi - скачал посл версюю. проект не собирается. ( благо есть навыки и советы на вашем форуме - собрал. Причем советы уже не первой свежести!!! - ошибки солюшена так до сих пор не поправлены.
2) Собрал проект - не работает коннект к финаму. К да Transaq.ru коннектится. но падает при получении списка заявок.

И после этого вы еще заявляете: ок, мы готовы вам оказать платную поддержку. !

Мы, сторонние пользователи вашего чуда проекта с такой чудо поддержкой выступаем бета-тестерами. Причем бесплатными!
Советую вашей чудо компании пересмотреть свою политику.

А с текущей политикой более желания дальше бесплатно тестировать ваш продукт нет.
Автор топика
Спасибо: Mikhail Sukhov devruss

Mikhail Sukhov

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


И почему все сразу отвергают опцию Добрых самуритян?LOL
Спасибо:

aq2003

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


aandr2011,

В сборке TransaqTrader библиотека txmlconnector.dll забита в ресурсы. Трейдер при старте переписывает dll-ку из ресурса на диск и оттуда грузит. Так происходит при каждом старте трейдера. Поэтому какую бы версию txmlconnector Вы на диск ни выкладывали, трейдер всё равно грузит собственную. Зачем это сделано, не знаю. Достаточно закомментировать эту строчку в исходнике TransaqTrader'а и можно использовать Вашу версию коннектора. Вполне возможно, что после этого всё заработает. У меня заработало, когда подставил коннектор от Финама.
Спасибо:

Mikhail Sukhov

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


У финама появилась новая версия?
Спасибо:

aq2003

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


Не проверял
Спасибо:

Mikhail Sukhov

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


Можете проверить данный коммит https://github.com/stock...caf5e4ae38a50294445fb474 ? Это финамоские файлы (как и предыдущие), но последней версии. Помогает ли без перезаписи своими?
Спасибо:

aq2003

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


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

Mikhail Sukhov

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


aq2003 Перейти
У меня подключается


Вы переписываете tconnector.dll своей или используете тот, что автоматически из дистрибутива?
Спасибо:

aq2003

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


По-всякому пробовал.

Коннектор тут вообще ни причём. Транзак-сервер присылает исторические свечи порциями от свежих к более старым. В контейнер серии они складываются по мере поступления порций. Получается, что по индексу 0 лежит свечка откуда-то из глубокой древности. Свежие же свечки лежат где-то в конце списка. Чтобы исправить ситуацию, следует накапливать порции свечек в стеке и по приходу последней порции записывать все в контейнер. Тогда свечки выстраиваются в правильно порядке, то есть по индексу 0 самая свежая, по индексу -1 предыдущая и т.д. Для этого потребовалось доработать TransaqMessageAdapter.OnCandlesMessage.

Второй момент, что после приёма исторических свечек не запускается приём свечек реального времени. Хотя должен, в енумераторе источников записано оба источника и запускаться они должны по очереди. А запускается только первый. Второй должен запускаться по приходу события Stopped, а оно никогда не наступает. Пытался найти в коде, где оно вызывается и при каких условиях срабатывает, и не нашёл. Похоже, в текущей версии срабатывание этого события не предусмотрено. Но и тут есть идея. Когда приходит последняя свечка истории, мы знаем. По этому факту можно сформировать специальную дополнительную свечу, у которой, например, все цены равны -1. В обработчике события Processing енумератора по этой свече запускать Stopped. Попробую, расскажу.

А коннектор тут ни причём.
Спасибо:

Mikhail Sukhov

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


aq2003 Перейти
Транзак-сервер присылает исторические свечи порциями от свежих к более старым. В контейнер серии они складываются по мере поступления порций. Получается, что по индексу 0 лежит свечка откуда-то из глубокой древности. Свежие же свечки лежат где-то в конце списка. Чтобы исправить ситуацию, следует накапливать порции свечек в стеке и по приходу последней порции записывать все в контейнер. Тогда свечки выстраиваются в правильно порядке, то есть по индексу 0 самая свежая, по индексу -1 предыдущая и т.д. Для этого потребовалось доработать TransaqMessageAdapter.OnCandlesMessage.


Сделайте, пожалуйста, пулл реквест в репозитарий. Это лучше всего делать в TransaqTrader в переопределенном OnProcessMessage

aq2003 Перейти

Попробую, расскажу.


ThumpUp

aq2003 Перейти

А коннектор тут ни причём.


Вот тут вы написали:

Цитата:
У меня заработало, когда подставил коннектор от Финама


Я про это и спрашиваю. Если использовать стандартные dll транзака, оно что, не подключается? Или все таки подключается?
Спасибо:

aq2003

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


Mikhail Sukhov Перейти

Я про это и спрашиваю. Если использовать стандартные dll транзака, оно что, не подключается? Или все таки подключается?


C dll из ресурса не подключалось. C dll Финама подключилось. Было ли дело в версиях dll или в чём-то другом, не разбирался.

С Финамом давно работаю. Опыт научил доверять только тем версиям, что на сайте Финама лежат.
Спасибо:

Mikhail Sukhov

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


Вот я как раз про это и пишу. Посмотрите подключается ли с последними выложенными длл из ресурсов.
Спасибо:

aq2003

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


Подключается.
Спасибо: Mikhail Sukhov

GB1B

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


Цитата:

В сборке TransaqTrader библиотека txmlconnector.dll забита в ресурсы. Трейдер при старте переписывает dll-ку из ресурса на диск и оттуда грузит. Так происходит при каждом старте трейдера. Поэтому какую бы версию txmlconnector Вы на диск ни выкладывали, трейдер всё равно грузит собственную. Зачем это сделано, не знаю. Достаточно закомментировать эту строчку в исходнике TransaqTrader'а и можно использовать Вашу версию коннектора. Вполне возможно, что после этого всё заработает. У меня заработало, когда подставил коннектор от Финама.


А где конкретно эта ссылка в проекте находится?
К боевому серверу вроде подключение есть, т.е. через стандартный txmlconnector.dll, но мне нужно сначала оттестировать на демо-счете. А там используется другая версия библиотеки txmlconnector.dll И соответственно если подкладывать в папку с проектом новую txmlconnector.dll(для демо которая), то при запуске она затирается оригинальной.
Спасибо:


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

loading
clippy