Вопросы новичка в S# (Закрыта)
Atom
01.12.2010
ttt


Добрый день.
Очень понравилась идея использования Вашей библиотеки для реализации роботов.
Подскажите, пожалуйста:
1) Как идентифицировать заявку?
//например, выставляю заявку buy RIZ0 4 контракта по цене 160500. Каким образом далее смогу ее отслеживать?
Вариант с использованием таблицы сделок не подходит - необходимо реализовать контроль исполнения заявок пользуясь исключительно информацией из таблицы заявок.
С языком C# только начал разбираться, возможно поэтому не нашел в представленных в дистрибутиве S# проектах примеров контроля состояния заявки по ее уникальному признаку.
2) Верно ли я понимаю суть работы с Квиком: для реализации автономного робота необходимо организовать два потока на C#:
- первый: выполняет функции получения данных из Квика через DDE сервер (используя библиотеку S#);
- второй: непосредственно реализует алгоритм выставления и снятия заявок.
Можно ли обойтись одним потоком?

Теги:


Спасибо: Николай_Флёров


<< < 46 47 48 49 50  > >>
Alexander

Фотография
Дата: 25.08.2011


l-way
Здравствуйте

Есть ли ограничение на число экспортируемых стаканов? У меня больше 7 не работает


ProcessDataError что говорит?
В Квике стаканы открываются после 7го?
Спасибо:

Maxim K.

Фотография
Дата: 25.08.2011


Mikhail Sukhov
Maxim K.
Возник такой вопрос: поддерживает ли библиотека транзакции,связанные с внебиржевыми заявками (NEW_NEG_DEAL и подобные) ?
Если нет, то вопрос такой - на каком этапе происходит подключение TRANS2QUIK.DLL ?


http://stocksharp.com/do...7d-9e03-a218796163af.htm

То есть нужно, например, регистрировать заявку как обычную, но потом в FormatTransaction переставлять Action, ClassCode, и т.д. на нужное ? Или я не так понял ?
Спасибо:

Mikhail Sukhov

Фотография
Дата: 25.08.2011


Maxim K.

То есть нужно, например, регистрировать заявку как обычную, но потом в FormatTransaction переставлять Action, ClassCode, и т.д. на нужное ? Или я не так понял ?


Да.
Спасибо:

l-way

Фотография
Дата: 25.08.2011


Alexander
l-way
Здравствуйте

Есть ли ограничение на число экспортируемых стаканов? У меня больше 7 не работает


ProcessDataError что говорит?
В Квике стаканы открываются после 7го?


Вылетает ArgumentException на методе QuikTrader.RegisterQuotes(security). Текст ошибки: Окно с заголовком "RSU1@RTS" не было найдено. При этом стакан в квик открывается.
Запускал несколько раз. Из них пару раз ошибка сработала не после 7, а на 3 и 4 стакане. То есть дело не в ограничение.

Я RegisterQuotes запускаю в OnNewSecurities. Может быть в этом дело?
Спасибо:

l-way

Фотография
Дата: 25.08.2011


В квике при этом в окне сообщений появляется следующие сообщения:

"DDE сервер wrapper. Документ 'стакан[SRU1@RTS]'.Таблица 'SRU1@RTS'. Произошла ошибка: Ошибка при передаче таблицы, вывод приостановлен. Исчерпано время для обмена данными: сервер слишком перегружен."

"DDE сервер 'wrapper'.Документ 'все сделки[]'. Таблица 'Все сделки'. Произошла ошибка: Ошибка при передаче таблицы, неверные параметры."

Verifier пишет -все нормально.




Спасибо:

RomSunZ

Фотография
Дата: 25.08.2011


Здраствуйте.
Помогите разобраться с AmCharts.
Я в примере SampleCandles поменял xaml код графика, взяв его из примера SampleAlfaCandles.
Далее добавил функцию в окне графика:
Код

        public void DrawCandles(IEnumerable<Candle> candles)
        {
            _candles.AddRange(candles);
            stockChart1.DataSets[0].ItemsSource = _candles;
        }

В обработчике событий NewCandles и CandlesChanged в главном окне прописал
Код

		private void DrawCandles1(CandleToken token, IEnumerable<Candle> candles)
		{
			this.GuiAsync(() =>
			{
				var wnd = _chartWindows.TryGetValue(token);
                                if (wnd != null)
                                wnd.DrawCandles(candles);
			});
		}



Все остальное оставил как было. После запуска экспорта и открытия графика у меня сразу отрисовывется несколько свечек (видимо которые приходят по DDE от момента вызова _chartWindows.Show() до первого вызова DrawCandles), а потом добавление новых на график не идет.
События обрабатываются нормально, количество элементов в _candles увеличивается, но новые свечки на графике не появляются. Подскажите, что нужно добавить, чтобы график обновлялся с приходом новых данных?

Нашел ответ на форуме amCharts:
You can manually call DataSet.ProcessDataBoundItems() method to force processing of bound data items.
Спасибо:

Maxim K.

Фотография
Дата: 26.08.2011


Можно ли как-нибудь средствами библиотеки получать информацию об отправленной транзакции ? Какой-нибудь аналог TRANS2QUIK_TRANSACTIONS_REPLY_CALLBACK ?
Спасибо:

Mikhail Sukhov

Фотография
Дата: 26.08.2011


Maxim K.
Можно ли как-нибудь средствами библиотеки получать информацию об отправленной транзакции ? Какой-нибудь аналог TRANS2QUIK_TRANSACTIONS_REPLY_CALLBACK ?


Вы думаете в терминал Квика, где сделано процедурно. А нужно думать в терминал ООП. ITrader.OrdersChaged ITrader.OrdersFailed.
Спасибо:

Maxim K.

Фотография
Дата: 26.08.2011


Mikhail Sukhov
Maxim K.
Можно ли как-нибудь средствами библиотеки получать информацию об отправленной транзакции ? Какой-нибудь аналог TRANS2QUIK_TRANSACTIONS_REPLY_CALLBACK ?


Вы думаете в терминал Квика, где сделано процедурно. А нужно думать в терминал ООП. ITrader.OrdersChaged ITrader.OrdersFailed.

Просто s#, на сколько я понимаю, на данный момент не предоставляет функционала для работы с РПС. Сейчас, чтобы поставить заявку РПС, я отправляю их как обычные, в FormatTransaction отслеживаю их и меняю Action на нужное. Но дело в том, что я не знаю как получить результат транзакции - была она принята, исполнена, отвергнута или что-нибудь еще с ней случилось, а мне нужно получать эту информацию.

upd: правильно ли я понимаю, что OrdersChanged следит за таблицей "Заявки", а OrdersFailed делает как раз то что мне нужно -
анализирует результат транзакции ?
Спасибо:

Mikhail Sukhov

Фотография
Дата: 26.08.2011


Maxim K.
Просто s#, на сколько я понимаю, на данный момент не предоставляет функционала для работы с РПС. Сейчас, чтобы поставить заявку РПС, я отправляю их как обычные, в FormatTransaction отслеживаю их и меняю Action на нужное. Но дело в том, что я не знаю как получить результат транзакции - была она принята, исполнена, отвергнута или что-нибудь еще с ней случилось, а мне нужно получать эту информацию.


Все как с обычными заявками.
Спасибо: Maxim K.
<< < 46 47 48 49 50  > >>

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

loading
clippy