MCTuTeJ|19951995
|
Date: 3/14/2011
А у всех в Win7 справка криво работает ? Её нужно в корень копировать (или чтобы путь был без спецальных символов и русских букв).
|
|
|
|
Thanks:
|
|
|
|
|
|
Mikhail Sukhov
|
Date: 3/14/2011
MCTuTeJ|19951995:
Ну да, сделал вроде всё как описано - колонки в конец и потом
Trader.SecuritiesTable.Columns.Add(DdeSecurityColumns.Volatility);
Trader.SecuritiesTable.Columns.Add(DdeSecurityColumns.SettlementDate);
Trader.SecuritiesTable.Columns.Add(DdeSecurityColumns.ExpiryDate);
У меня в разделе Модификация стандартных таблиц версии 2.6 написано совсем другое:
// создаем шлюз к Quik-у
_trader = new QuikTrader(this.Path.Text);
var columns = _trader.SecuritiesTable.Columns;
// вставляем колонку Время последнего изменения по индексу колонки Время последней сделки
// последняя при это перемещается "вперед"
columns.Insert(columns.IndexOf(DdeSecurityColumns.LastTradeTime), DdeSecurityColumns.LastChangeTime);
|
|
|
|
Thanks:
|
|
|
|
|
|
skuvv
|
Date: 3/14/2011
skuvv:
Mikhail Sukhov:
skuvv:
По поводу ReRegisterOrder, при использовании такого кода:
Ecng.Trading.BusinessEntities.Order _order = order.Clone();
_order.Volume = newQty;
_order.Price = newPrice;
_trader.ReRegisterOrder(order, _order);
> > > получаю отклоненный ордер с сообщением "Сообщение [FORTS] Ошибка в задании входных параметров.. New Order1 ID: 0, new Order2 ID:0"
> >
> > Подозреваю, что какие то параметры неправильные. newQty и newPrice проверьте.
> v3.0.13 ошибка ушла.
> замененный ордер не заполняет поле OrderStatus, и всегда ==null
> [](http://fastpic.ru/)
> PS для стоп-ордеров статус корректный
Подтверждаю в 3.0.16 ошибка исправлена,
Появилась новая, при использовании для снятия ордера команды TraderHelper, он фризит все потоки(на 20 секунд) и соответсвенно до таймаута не может получить новые события(dde вывод тоже висит)
try
{
TraderHelper.GuarantyCancelOrder(order);
}
catch (Exception ex)
{
Console.WriteLine(Time.ToString(timefmt) + " ***Cancelling order Reject*** "+ex.ToString());
}
Как только срабатывает эксепшн, собятия начинают приходить
|
|
|
|
Thanks:
|
|
|
|
|
|
MCTuTeJ|19951995
|
Date: 3/14/2011
Mikhail Sukhov:
MCTuTeJ|19951995:
Ну да, сделал вроде всё как описано - колонки в конец и потом
Trader.SecuritiesTable.Columns.Add(DdeSecurityColumns.Volatility);
Trader.SecuritiesTable.Columns.Add(DdeSecurityColumns.SettlementDate);
Trader.SecuritiesTable.Columns.Add(DdeSecurityColumns.ExpiryDate);
>
> У меня в разделе Модификация стандартных таблиц версии 2.6 написано совсем другое:
>
> ```
// создаем шлюз к Quik-у
_trader = new QuikTrader(this.Path.Text);
var columns = _trader.SecuritiesTable.Columns;
// вставляем колонку Время последнего изменения по индексу колонки Время последней сделки
// последняя при это перемещается "вперед"
columns.Insert(columns.IndexOf(DdeSecurityColumns.LastTradeTime), DdeSecurityColumns.LastChangeTime);
Там же вроде указано несколько вариантов...
Использую описанный выше - волатильность и дата эксперации нормально работают.
|
|
|
|
Thanks:
|
|
|
|
|
|
VsevolodG
|
Date: 3/14/2011
Здравствуйте!
Мне нужно сделать робота со следующим алгоритмом:
- При запуске выставляются две заявки на покупку и на продажу
- После двух подряд покупок или продаж выставлять стоп-лимиты
- Когда срабатывает стоп-лимит выставлять тейк-профит на обратную сделку
На основе примеров я создал подключение к Quik. Дальше сразу же затык на получении текущей цены бумаги, на основании которой выставлять первые две заявки.
После выставления заявок, как я понимаю, необходимо отслеживать событие NewTrades. Я прав?
Уточните, пожалуйста, как узнать текущую цену бумаги (которая отображается на "графике цены и объема"). А также правильным ли путем я иду или надо создавать какие-то стратегии?
|
|
|
|
Thanks:
|
|
|
|
|
|
MCTuTeJ|19951995
|
Date: 3/14/2011
Не знаю как у других, но для меня стратегии существенно упростили работу со s#.
|
|
|
|
Thanks:
|
|
|
|
|
|
Mikhail Sukhov
|
Date: 3/15/2011
skuvv:
Появилась новая, при использовании для снятия ордера команды TraderHelper, он фризит все потоки(на 20 секунд) и соответсвенно до таймаута не может получить новые события(dde вывод тоже висит)
А как проверялось что и другие потоки замирали? Вообще фриз происходит только на текущий поток. GuarantyCancel напрямую вызывался из кода или через котирование?
|
|
|
|
Thanks:
|
|
|
|
|
|
skuvv
|
Date: 3/15/2011
Mikhail Sukhov:
skuvv:
Появилась новая, при использовании для снятия ордера команды TraderHelper, он фризит все потоки(на 20 секунд) и соответсвенно до таймаута не может получить новые события(dde вывод тоже висит)
А как проверялось что и другие потоки замирали? Вообще фриз происходит только на текущий поток. GuarantyCancel напрямую вызывался из кода или через котирование?
Вызывался из основного потока и соответсвенно весь мой GUI замирал.
По логам никаких ивентов в этот промежуток небыло, зато сразу после фриза, накопленные данные пачкой выливаются из квика(сильный пик активности)
|
|
|
|
Thanks:
|
|
|
|
|
|
Mikhail Sukhov
|
Date: 3/15/2011
skuvv:
Mikhail Sukhov:
skuvv:
Появилась новая, при использовании для снятия ордера команды TraderHelper, он фризит все потоки(на 20 секунд) и соответсвенно до таймаута не может получить новые события(dde вывод тоже висит)
А как проверялось что и другие потоки замирали? Вообще фриз происходит только на текущий поток. GuarantyCancel напрямую вызывался из кода или через котирование?
Вызывался из основного потока и соответсвенно весь мой GUI замирал.
По логам никаких ивентов в этот промежуток небыло, зато сразу после фриза, накопленные данные пачкой выливаются из квика(сильный пик активности)
- Из GUI потока торговлю делать не нужно.
- Потому что наверняка вы из других обработчиков делаете GuiSync. А так как GUI поток заблокирован из-за неправильного пункта 1, то виснут и сами обработчики.
|
|
|
|
Thanks:
|
|
|
|
|
|
IlyaILH
|
Date: 3/15/2011
Добрый день.
Приступил к изучению S# в связи с этим у меня возник вопрос:
при экспорте custom table все нормально работает, когда в таблице одна бумага, но как работать с несколькими бумагами
так, например, при завпросе code инструмента выдается только код 1-го по списку инструмента.
Заранее благодарен за помощь.
|
|
|
|
Thanks:
|
|
|
|
|