Две (и более) программы, работающие одновременно через SmartCOM

Две (и более) программы, работающие одновременно через SmartCOM
Atom
3/22/2011
Vadimus


Привет, всем! Решил пополнить ряды писателей на S# ;)

Такая ситуация.
Использую стороннюю программу, работающую через SmartCOM 2.0.
Нужно одновременно запускать своё ПО, которое будет тоже использовать SmartCOM.
Возможно ли такое?

В поддержке SmartCOM сказали, что нельзя, т.к. поток данных один и события будут некорректно обрабатываться. Предложили пускать одну из программ под виртуальной машиной, но мне такой подход не нравится!

P.S. извините за невнимательность, если эта тема уже поднималась

Tags:


Thanks:


Mikhail Sukhov

Avatar
Date: 3/22/2011
Reply


Vadimus
Привет, всем! Решил пополнить ряды писателей на S# ;)

Такая ситуация.
Использую стороннюю программу, работающую через SmartCOM 2.0.
Нужно одновременно запускать своё ПО, которое будет тоже использовать SmartCOM.
Возможно ли такое?


Нет. Решается только через доп логин и виртуалку. Увы, ограничения по смарту мощные.

Vadimus

В поддержке SmartCOM сказали, что нельзя, т.к. поток данных один и события будут некорректно обрабатываться. Предложили пускать одну из программ под виртуальной машиной, но мне такой подход не нравится!


Я понимаю вас как никто другой. Но что делать? Переводите свое ПО на S#. Там есть SmartComWrapper (считайте, голый Смарт). Думаю за день можно осилить.
Thanks:

Vadimus

Avatar
Date: 3/23/2011
Reply


Mikhail Sukhov
Нет. Решается только через доп логин и виртуалку. Увы, ограничения по смарту мощные.

Неужели, если у народа несколько роботов, то столько же и виртуальных машин поднято?! Как-то коряво получается.

Mikhail Sukhov
Я понимаю вас как никто другой. Но что делать? Переводите свое ПО на S#. Там есть SmartComWrapper (считайте, голый Смарт). Думаю за день можно осилить.

Задача стоит в том, чтобы на ряду с использованием сторонней программы, работающей через SmartCOM, написать свой торговый тренажер. Для этого S# и его возможность тестирования на рыночных данных очень подходит, поэтому я и собираюсь его использовать. Всё правда придётся переписывать, т.к. логика реализована на VB, но это не проблема, а вот невозможность работы без виртуалок, это мне не нравится. Ломаю голову над переименовыванием служб, чтобы более одной службы SmartCOM2 можно было запустить, но вот как заставить dll'ки обращатсья к конкретной службе пока не придумал.

Thanks:

Mikhail Sukhov

Avatar
Date: 3/23/2011
Reply


Vadimus
Mikhail Sukhov
Нет. Решается только через доп логин и виртуалку. Увы, ограничения по смарту мощные.

Неужели, если у народа несколько роботов, то столько же и виртуальных машин поднято?! Как-то коряво получается.


Конечно нет. Если несколько роботов (в S# это называется стратегиями), то и работают они с центральной шиной. Так же как и к Квике. Подозреваю, что и в других АПИ такая же картина.
Thanks:

Vadimus

Avatar
Date: 3/23/2011
Reply


Получается, что несколько роботов работают только в пределах одной программы? А если в разных программах, то кто именно из них отвечает за главный connect?
Thanks:

Mikhail Sukhov

Avatar
Date: 3/23/2011
Reply


Vadimus
Получается, что несколько роботов работают только в пределах одной программы? А если в разных программах, то кто именно из них отвечает за главный connect?


Если разные программы, то это уже создание отдельного сервера (своего собственного). Только есть ли смысл в разных прогах писать?
Thanks: Vadimus

Vadimus

Avatar
Date: 3/23/2011
Reply


В общем концепция ясна, будем подстраиваться под существующие ограничения.
Thanks:

Alexander

Avatar
Date: 3/23/2011
Reply


Не понял, а кто мешает через один смартком посылать сигналы по разным субсчетам внутри одного счёта.
при этом на каждом субсчёте будет крутиться своя стратегия - посылаться заявки через SmartTrader.

Или это не возможно?

P.S. Пишу под квик, под смарт - лишь наблюдатель. [rolleyes]
Thanks:

Vadimus

Avatar
Date: 3/23/2011
Reply


Задача была описана в первом посте. Из своей программы понятное дело можно наплодить кучу счетов.
Thanks:


Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy