Начал разбираться с библиотекой.
Возникла такая задача.
Работаю с терминалом QUIK.
Мне нужно чтобы одновременно с ОДНИМ терминалом работало две программы:
Гидра: записывает массивы исторических данных, больше от нее пока не требуется. Его задача – записать все без разрывов и остановок.
Робот или привод на базе S#. Он работает время от времени. Иногда его нужно закрывать. Иногда вместо одного привода нужно запускать другой. В общем, смысл в том что программа привода запущена не всегда.
Вопрос в том, как сделать так, чтобы это все могло работать одновременно и друг другу не мешать.
Для примера можно попытаться одновременно запустить
Samples\Quik\Sample\bin\Debug\Sample.exe
И
Hydra\Hydra\bin\Debug\Hydra.exe
Вместе они работать не будут, потому что им нужны одни и те же таблицы в квике.
Я пытаюсь сделать это путем создания разных таблиц для S# и для Гидры.
Почти получилось – инструменты и сделки работают.
Для этого я всего лишь переделал
public HydraQuikTrader(string path, string ddeServer) : base(path)
{
DdeServer = ddeServer;
SecuritiesTable.Caption = "HYDRA инструменты";
TradesTable.Caption = "HYDRA Все сделки";
base.SecurityIdGenerator.Delimiter = "$";
}
И переименовал таблицы в квике.
Но проблемы со стаканами решить не могу.
Строка base.SecurityIdGenerator.Delimiter = "$";
Проблему не решает – почему-то используется прежний разделитель "@"
Кроме того, почему-то S# не допускает двух стаканов в квике по одному инструменту, хотя это возможно.
Как поступить?