Mikhail Sukhov
|
Date: 3/29/2011
MCTuTeJ|19951995:
Михаил,а
ReRegisterOrder(order,()=>newPrice,()=>newVolume,true)
> это тоже самое, что и
> ```
Trader.CancelOrder(order);
Order newOrder = new Order();
newOrder.Portfolio=order.Portfolio;
newOrder.Security = order.Security;
newOrder.Price = newPrice;
newOrder.Direction= order.Direction;
newOrder.Volume= newVolume;
Trader.RegisterOrder;
?
Для ФОРТС нет. Для всего остального да.
|
|
|
|
Thanks:
|
|
|
|
|
|
Mikhail Sukhov
|
Date: 3/29/2011
MCTuTeJ|19951995:
Проблема в том, что иногда заявка исполняется после проверки на исполнение, в результате чего происходит ошибка - программа пытается передвинуть исполненную заявку. Не подскажете как это лечится ?
Отменять, дожидаться отмены, выставлять новую.
|
|
|
|
|
|
|
Mikhail Sukhov
|
Date: 3/29/2011
D_Alex:
ODE0�
в таком случае обработка этих событий идет как-то в 2 потока, или по очереди?
Сами потоки ITrader в двух работают, так как синхронизация с ГУИ сделана асинхронно (GuiAsync).
|
|
|
|
|
|
|
MCTuTeJ|19951995
|
Date: 3/29/2011
Mikhail Sukhov:
MCTuTeJ|19951995:
Проблема в том, что иногда заявка исполняется после проверки на исполнение, в результате чего происходит ошибка - программа пытается передвинуть исполненную заявку. Не подскажете как это лечится ?
Отменять, дожидаться отмены, выставлять новую.
Но если к моменту отмены она уже будет исполнена всё равно ведь будет ошибка ?
|
|
|
|
Thanks:
|
|
|
|
|
|
Mikhail Sukhov
|
Date: 3/29/2011
MCTuTeJ|19951995:
Mikhail Sukhov:
MCTuTeJ|19951995:
Проблема в том, что иногда заявка исполняется после проверки на исполнение, в результате чего происходит ошибка - программа пытается передвинуть исполненную заявку. Не подскажете как это лечится ?
Отменять, дожидаться отмены, выставлять новую.
Но если к моменту отмены она уже будет исполнена всё равно ведь будет ошибка ?
Конечно. И этот случай следовательно нужно обрабатывать.
|
|
|
|
Thanks:
|
|
|
|
|
|
a.dobryn
|
Date: 3/29/2011
Mikhail Sukhov:
D_Alex:
ODE0�
в таком случае обработка этих событий идет как-то в 2 потока, или по очереди?
Сами потоки ITrader в двух работают, так как синхронизация с ГУИ сделана асинхронно (GuiAsync).
просто в программе по NewTrades происходит куча действий, в том числе и проверка, есть ли новые сделки (по _myTradesWindow.Trades, а они не всегда обновляются). Может быть такое, что при постоянной обработке NewTrades обработка NewMyTrades просто не успевает выполниться?
|
|
|
|
Thanks:
|
|
|
|
|
|
Mikhail Sukhov
|
Date: 3/29/2011
D_Alex:
просто в программе по NewTrades происходит куча действий, в том числе и проверка, есть ли новые сделки (по _myTradesWindow.Trades, а они не всегда обновляются). Может быть такое, что при постоянной обработке NewTrades обработка NewMyTrades просто не успевает выполниться?
Сами они между собой не синхронизируются внутри QuikTrader. А вот в обработчиках у вас вполне может. Отключайте что-то, смотрите.
|
|
|
|
|
|
|
IlyaILH
|
Date: 3/29/2011
Mikhail Sukhov:
IlyaILH:
Trader.NewSecurities += securities =>
{
foreach (Security tool in securities)
{
MessageBox.Show(tool.Id +" "+ tool.State.ToString());
}
};
На этот код, мне выводится не понятно что, но предположительно данные из таблицы Все сделки.
Выделенное можете как-то подробнее описать? Код выводит идентификатор инструмента и его состояние. Причем здесь сделки?
Я получаю следующие сообщения по вышестоящему коду:
VDSB@EQNE Trading
LK20000BF1@RTS Trading и т.д.
По видимому, это действительно код и состояние, но у меня в таблице инструменты таких бумаг нет (у меня только сбер и лукойл). И я заметил что, как только у меня появляется сообщение, сразу же эта VDSB проходит в таблице всех сделок, т.е я и подумал, что информация оттуда идет.
|
|
|
|
Thanks:
|
|
|
|
|
|
Mikhail Sukhov
|
Date: 3/29/2011
IlyaILH:
Я получаю следующие сообщения по вышестоящему коду:
VDSB@EQNE Trading
LK20000BF1@RTS Trading и т.д.
По видимому, это действительно код и состояние, но у меня в таблице инструменты таких бумаг нет (у меня только сбер и лукойл). И я заметил что, как только у меня появляется сообщение, сразу же эта VDSB проходит в таблице всех сделок, т.е я и подумал, что информация оттуда идет.
Понял. Информация об инструментах идет отовсюду. В том числе и из таблицы сделок.
|
|
|
|
Thanks:
|
|
|
|
|
|
Vyacheslav
|
Date: 3/29/2011
Михаил, спасибо за Ваш огромный труд!
Только начал изучать S#.
Сразу вопрос: запускаю sampleconsole.exe, однако возникают ошибки:
:[Введите номер счета, через который будет выставлена заявка: NL0011100043
Производим подключение...
Подключение было произведено успешно.
Дожидаемся появления в программе инструмента Лукойл и портфеля NL0011100043...
Инструмент Лукойл появился.
Портфель NL0011100043 появился.
Первоначальное значение середины спреда 0
System.ArgumentException: Транзакции 'ACCOUNT=NL0011100043; CLIENT_CODE=S#; TRAN
S_ID=83785079; CLASSCODE=QJSIM; SECCODE=LKOH; QUANTITY=1; OPERATION=B; TYPE=L; A
CTION=NEW_ORDER; PRICE=0; EXECUTION_CONDITION=PUT_IN_QUEUE;' не была зарегистрир
ована. Причина 'Цена заявки должна быть положительна'.
Parameter name: transactionTxt
at #=qoXwOPiKu6rKxfqRbyQH_8kmNOB382r_Z62UoStG__20=.#=qqqjfNu5FDvUnmIHLI7eIpqU
LYCdQ6s45iJpvRMufTTo=(String #=qMyxjjZn7gcLlgrKmKE6fdw==, OrderStatus& #=qfMzUMV
woA9vTKeRIC2yVBg==, UInt32& #=qx89Qmj8$YdXkVw2g47iBHA==, Int64& #=qru3jL$hLUeCws
hCq6a0lcA==, String& #=qJTAyuLuvPwQ9HQzhdHWM2g==)
at Ecng.Trading.Quik.QuikTrader.#=q54MTj4O0HyGlsuBk4LMgvyLClWnXw07g5l8N_CZjZX
o=(Order #=qfB2F85tURLB4YdJcjKMYgg==, TransactionBuilder #=qk_SbqcrTyofJ_NTgcHp8
Fg==)
at Ecng.Trading.Quik.QuikTrader.OnRegisterOrder(Order order)
at Ecng.Trading.Algo.BaseTrader.RegisterOrder(Order order)
at SampleConsole.Program.Main() in E:\StockSharpReleases\StockSharp_3.0.19\So
urces\SampleConsole\Program.cs:line 143
C:\StockSharp_3.0.19\Exe\SampleConsole>]
QUIK также выбрасывает сообщение:
DDE сервер 'wrapper'.Документ 'стакан [LKOH-QJSIM]'.
Таблица 'LKOH-QJSIM'. Произошла ошибка: Ошибка при передаче таблицы,
вывод приостановлен. Неверные параметры.
Использую Ваш info.wnd
Verifier показывает отсутствие ошибок.
S# 3.0.19, QUIK-JUNIOR 5.21
Однако, такое чувство, что нет экспорта стакана по DDE.
Что делать?
|
|
|
|
Thanks:
|
|
|
|
|