Запуск дде вывода без коннекта к Quik
Atom
03.02.2011


Здравствуйте.
Возможно ли запустить дде вывод без предварительного коннекта к терминалу?
Хочу использовать S# просто для сбора нужной информации в таблицах..

И предложение: может быть на форуме стоит завести ветку, в которой можно будет спрашивать общие вопросы по квику, смарту и т.д. ?
Просто есть еще один вопрос, но не знаю куда задать)))

Вопрос следующий: может кто-нибудь подсказать, откуда(из каких таблиц) в квике можно достать информацию о балансе счета, который будет, если закрыть все текущие позиции по текущим котировкам? Т.е. нужна цифра=текущим денежным средствам+плавающий PnL по фортсу и ммвб
Что касается ММВБ, если я не ошибаюсь, нам нужно из таблицы "Клиентский портфель" взять столбец "Текущие средства", правильно?
А вот с фортсом вообще лично у меня непонятка. Может кто-нибудь подсказать?

Теги:


Спасибо:


1 2  >
Mikhail Sukhov

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


Andrey R. Перейти

И предложение: может быть на форуме стоит завести ветку, в которой можно будет спрашивать общие вопросы по квику, смарту и т.д. ?
Просто есть еще один вопрос, но не знаю куда задать)))


Как минимум не в топике "Запуск дде вывода без коннекта к Quik"[wink]
Спасибо:

Watson

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


1. В квике делаем таблицу из Торговля - Фьючерсы - Ограничения по клиентским счетам
2. Выводим в свою программу. За основу можно взять пример SampleDdeCustomTable
3. Учитываем особенность, что после вечернего клиринга у нас появляется три строчки, две из которых на утро пропадают.
Спасибо:

Andrey R.

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


С этим всем разобрался, а касательно первого вопроса есть ответ?


>>Возможно ли запустить дде вывод без предварительного коннекта к терминалу?
>>Хочу использовать S# просто для сбора нужной информации в таблицах..
Спасибо:

Maxim

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


Andrey R. Перейти
С этим всем разобрался, а касательно первого вопроса есть ответ?


>>Возможно ли запустить дде вывод без предварительного коннекта к терминалу?
>>Хочу использовать S# просто для сбора нужной информации в таблицах..



Присоединяюсь к вопросу.

Если Квик не соединен с сервером, при попытке установить соединение QuikTrader.Connect()
происходит ошибка: Exception message: Код ошибки DllConnected Сообщение Терминал не подключен к серверу..

Но.
Если S# был подключен к Квик во время торгов. В конце рабочего дня Квик потерял соединение с сервером,
а наутро следующего восстановил связь с сервером. При этих действиях S# не потерял связь с Квиком.

Из этого можно сделать вывод, что связь S# с Квиком в отсутствии связи с сервером возможна.

Михаил, правильно ли я понимаю ситуацию или где то ошибаюсь?
Возможно ли реализовать возможность подключения S# к Квику в отсутствии связи с сервером?
Спасибо:

dart

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


Maxim Перейти

Возможно ли реализовать возможность подключения S# к Квику в отсутствии связи с сервером?

Присоединяюсь к вопросу. Для меня вопрос в удобстве работы с S#.
Например, брокер включает свой сервер только за 20 мин до начала торгов. То есть если мне надо запустить робота до начала торгов (а так часто нужно, к примеру поменял параметры системы и перезапускаю), то вынужден быть у рабочего компа скажем в 9:40.
Спасибо:

Alexander

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


dart Перейти
Maxim Перейти

Возможно ли реализовать возможность подключения S# к Квику в отсутствии связи с сервером?

Присоединяюсь к вопросу. Для меня вопрос в удобстве работы с S#.
Например, брокер включает свой сервер только за 20 мин до начала торгов. То есть если мне надо запустить робота до начала торгов (а так часто нужно, к примеру поменял параметры системы и перезапускаю), то вынужден быть у рабочего компа скажем в 9:40.



А кто мешает сделать это средствами C#?

Код
private DispatcherTimer _startStopTimer;

private void InitAndStartTimer()
{
_startStopTimer = new DispatcherTimer {Interval = new TimeSpan(0, 10, 0), Tag = false};
_startStopTimer.Tick += StartStopTimerTick;
_startStopTimer.Start();
}

private void StartStopTimerTick(object sender, EventArgs e)
{
var started = (bool)_startStopTimer.Tag;
if (!started &&
DateTime.Now.Hour == 9 && DateTime.Now.Minute >= 45)
{
ManageConnect();
return;
}
}


Ну а в событиях Connected \ Disconnected проставляйте необходимый Tag у _startStopTimer
Спасибо:

Maxim

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


Alexander Перейти

А кто мешает сделать это средствами C#?


Никто не мешает.
Но с таким подходом зачем пользоваться S#?
Можно ведь весь код самому писать.

Да чего там мелочится, можно и ОС написать побыстренькому [smile]
Шучу.

Библиотека для того и существует, что бы можно было не изобретать велосипед,
а пользоваться уже созданным кодом. Если Михаил скажет, что данный функционал
не будет реализован в библиотеке или будет реализован, но когда не известно,
тогда можно писать свое решение в коде. Если же Михаил скажет, что скоро
этот функционал будет, то можно и подождать.
Спасибо:

Mikhail Sukhov

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


Maxim Перейти
Если же Михаил скажет, что скоро этот функционал будет, то можно и подождать.


Скоро точно не будет. Есть другие танкоопасные направления, где 10 строчками пользовательского кода не решить проблему.
Спасибо:

Alexander

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


В 3.2 уже работает - пользуйтесь, кому было необходимо. [cool]
Спасибо:

Maxim

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


День добрый.
Реанимирую эту ветку форума.

Выше я спрашивал следующее:
Maxim

Если Квик не соединен с сервером, при попытке установить соединение QuikTrader.Connect()
происходит ошибка: Exception message: Код ошибки DllConnected Сообщение Терминал не подключен к серверу..

Но.
Если S# был подключен к Квик во время торгов. В конце рабочего дня Квик потерял соединение с сервером,
а наутро следующего восстановил связь с сервером. При этих действиях S# не потерял связь с Квиком.

Из этого можно сделать вывод, что связь S# с Квиком в отсутствии связи с сервером возможна.

Михаил, правильно ли я понимаю ситуацию или где то ошибаюсь?
Возможно ли реализовать возможность подключения S# к Квику в отсутствии связи с сервером?



В результате Alexander Mukhanchikov предложил реализовать таймер и периодически пытаться подключится к Квик.
А позже сообщил, что этот механизм уже реализован в 3.2
Насколько я понимаю, он реализован в виде BaseTrader.ReConnectionSettings.

Это все хорошо, но не совсем отвечает на поставленный мной вопрос.

Повторю суть моего вопроса:
можно ли подключаться к Квику и работать с ним, когда Квик не подключен к серверу?
Например, запрашивать данные, которые остались в его таблицах.

Возможно ли это вообще?
Или это никак в принципе нельзя реализовать?
Или это уже все есть и я пропустил? (Использую старую версию 3.1.8, возможно в новой версии это все уже есть [smile] )


UPD
в этом посте есть такая фраза
http://stocksharp.com/posts/m/11466/

«Quik: Запуск дде вывода без коннекта к Quik»

Это как раз то, о чем я спрашивал? Или что то другое?
Спасибо:
1 2  >

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

loading
clippy