в DdeMyTradeColumns нет OrderDirection
Atom
21.05.2010


Приветствую!

Не нашёл в DdeMyTradeColumns поля OrderDirection
как добавить экспорт OrderDirection для СВОИХ сделок?

С уважением!

Теги:


Спасибо:


ustas

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


забыл указать QUIK stock# 1.8

Спасибо:

ustas

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


Пытался сдeлать так:
Добавил в QUIK "мои сделки" поле Операция" последней

в код добавил

using Wintellect.PowerCollections;
...
подписался на появление моих сделок

trader.NewMyTrades += myTrades =>
{

foreach (var myTrade in myTrades)
{

var trade = myTrade.Trade;
Console.WriteLine("{5} {0} по цене {1}
по бумаге {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

Спасибо:

ustas

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


Но, увы!

при появлении моих сделок поле trade.OrderDirection НЕ заполняется

Спасибо и с уважением!

Спасибо:

Mikhail Sukhov

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


А в таблицу Квика колонка добавлена?

Спасибо:

ustas

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


Да первым делом!

Если Вы про это

Спасибо:

Mikhail Sukhov

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


ITrader.ProcessDataError что говорит?

Спасибо:

ustas

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


Вот вывод 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, Func`2 handler)
в Ecng.Trading.BusinessEntities.BaseTrader.GetTrade(Int64 id,
Func`2 createT
ade)
в Ecng.Trading.Quik.QuikTrader.♥?.☻(Func`2 ☻)
в Ecng.Trading.Quik.DdeTable.☻(IList`1 ☻, Action`1 ♥)
в Ecng.Trading.Quik.QuikTrader.☻(String ☻, IList`1 ♥)
в Ecng.Common.DelegateHelper.SafeInvoke[T1,T2](Action`2 handler, T1
arg1, T2
arg2)
в.♥()

Спасибо:

Mikhail Sukhov

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


Все, теперь понял в чем дело. Путаница между Мои сделки и Все сделки.
Мои сделки - это то, что было получено в результате собственных
заявок. Все сделки - это то, что течет с биржи. Соответственно, для
того, чтобы определить направление в собствено сделке ничего
дополнительно экспортировать не нужно. 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.

Спасибо:

ustas

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


Да, действительно MyTrade.Order.Direction работает

Спасибо и с уважением!

Спасибо:


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

loading
clippy