Вот вывод ProcessDataError (ниже)
напоминаю что речь о "МОИХ" а не "всех" сделках
Спасибо и суважением!
System.InvalidOperationException: Данные для таблицы 'все сделки'
экспортировал
сь в меньшем формате. Не было найдено значение для колонки
'OrderDirection'. Ко
ичество колонок равно '8', индекс колонки '8'.
в Ecng.Trading.Quik.DdeTable.☻.☻(DdeTableColumn ☻)
в Ecng.Trading.Quik.QuikTrader.♥?.☻.☻(Int64 ☻)
в
Ecng.Trading.BusinessEntities.BaseTrader.<>c__DisplayClass2f.<GetTrade>b__
e(Int64 key)
в Ecng.Collections.CollectionHelper.SafeAdd[K,V](IDictionary2 dictionary, K key, Func2 handler)
в Ecng.Trading.BusinessEntities.BaseTrader.GetTrade(Int64 id,
Func2 createT ade) в Ecng.Trading.Quik.QuikTrader.♥?.☻(Func2 ☻)
в Ecng.Trading.Quik.DdeTable.☻(IList1 ☻, Action1 ♥)
в Ecng.Trading.Quik.QuikTrader.☻(String ☻, IList1 ♥) в Ecng.Common.DelegateHelper.SafeInvoke[T1,T2](Action2 handler, T1
arg1, T2
arg2)
в.♥()
Все, теперь понял в чем дело. Путаница между Мои сделки и Все сделки.
Мои сделки - это то, что было получено в результате собственных
заявок. Все сделки - это то, что течет с биржи. Соответственно, для
того, чтобы определить направление в собствено сделке ничего
дополнительно экспортировать не нужно. MyTrade.Order.Direction - вот
оно направление.
Но бывает так, что необходимо получить направление из таблицы Все
сделки. В данном случае тоже нет необходимости что-то менять, так как
оно и так по умолчанию экспортируется (начиная с 1.8, как писал здесь
И последнее. Нельзя добавлять чужую колонку в таблицу. Тоесть, нельзя
делать так:
var columns = trader.MyTradesTable.Columns;
columns.Add(DdeTradeColumns.OrderDirection);
MyTradesTable имеет собственные колонки - DdeMyTradeColumns.
Comments (9)
Login or Create account, Log in or register to leave a comment
забыл указать QUIK stock# 1.8
Пытался сдeлать так: Добавил в QUIK "мои сделки" поле Операция" последней
в код добавил
using Wintellect.PowerCollections; ... подписался на появление моих сделок
по бумаге {2} по объему {3} в {4}", trade.Id, trade.Price, trade.Security.Code, trade.Volume, trade.Time, trade.OrderDirection); } };
и добавил поле
var columns = trader.MyTradesTable.Columns; columns.Add(DdeTradeColumns.OrderDirection);
Но, увы при появлении моих сделок поле trade.OrderDirection
Но, увы!
при появлении моих сделок поле trade.OrderDirection НЕ заполняется
Спасибо и с уважением!
А в таблицу Квика колонка добавлена?
Да первым делом!
Если Вы про это
ITrader.ProcessDataError что говорит?
Вот вывод ProcessDataError (ниже) напоминаю что речь о "МОИХ" а не "всех" сделках
Спасибо и суважением!
System.InvalidOperationException: Данные для таблицы 'все сделки' экспортировал сь в меньшем формате. Не было найдено значение для колонки 'OrderDirection'. Ко ичество колонок равно '8', индекс колонки '8'. в Ecng.Trading.Quik.DdeTable.☻.☻(DdeTableColumn ☻) в Ecng.Trading.Quik.QuikTrader.♥?.☻.☻(Int64 ☻) в Ecng.Trading.BusinessEntities.BaseTrader.<>c__DisplayClass2f.<GetTrade>b__ e(Int64 key) в Ecng.Collections.CollectionHelper.SafeAdd[K,V](IDictionary
2 dictionary, K key, Func2 handler) в Ecng.Trading.BusinessEntities.BaseTrader.GetTrade(Int64 id, Func2 createT ade) в Ecng.Trading.Quik.QuikTrader.♥?.☻(Func2 ☻) в Ecng.Trading.Quik.DdeTable.☻(IList1 ☻, Action1 ♥) в Ecng.Trading.Quik.QuikTrader.☻(String ☻, IList1 ♥) в Ecng.Common.DelegateHelper.SafeInvoke[T1,T2](Action2 handler, T1 arg1, T2 arg2) в.♥()Все, теперь понял в чем дело. Путаница между Мои сделки и Все сделки. Мои сделки - это то, что было получено в результате собственных заявок. Все сделки - это то, что течет с биржи. Соответственно, для того, чтобы определить направление в собствено сделке ничего дополнительно экспортировать не нужно. MyTrade.Order.Direction - вот оно направление.
Но бывает так, что необходимо получить направление из таблицы Все сделки. В данном случае тоже нет необходимости что-то менять, так как оно и так по умолчанию экспортируется (начиная с 1.8, как писал здесь
http://stockmarketdotnet.blogspot.com/2010/03/stock-18.htmlв пункте 14).
Вообщем, вот настройки для 1.8http://stocksharp.com/doc/help/html/5c13da7b-b6e4-4fd4-958a-66c93c58b941.htm
И последнее. Нельзя добавлять чужую колонку в таблицу. Тоесть, нельзя делать так: var columns = trader.MyTradesTable.Columns; columns.Add(DdeTradeColumns.OrderDirection);
MyTradesTable имеет собственные колонки - DdeMyTradeColumns.
Да, действительно MyTrade.Order.Direction работает
Спасибо и с уважением!