Не приходят позиции по опционам
Atom
02.12.2010


Совсем не приходят ...

Код такой:

_trader.NewPositions += positions =>
{
string s = "";
foreach (Position p in positions)
{
s += p.Security.Code + " " + p.CurrentValue.ToString();
}
MessageBox.Show(s);
_positions.AddRange(positions);

};


......................................
Стартуется экспорт так:

_trader.Terminal.StartDde(_trader.DerivativePositionsTable, _trader.SecuritiesTable);


Позиции по GZZ0 приходят а по разным опционам - нет. Добавил все их в таблицу инструментов. Что сделать. Пробовал Квик по-разному настраивать - не помогло. S# 2.6.
А так должно быть что если фьючи не добавлять в таблицу инструментов то позиции по ним не придут ?


Mikhail Sukhov

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


MCTuTeJ|19951995
Совсем не приходят ...

Код такой:

_trader.NewPositions += positions =>
{
string s = "";
foreach (Position p in positions)
{
s += p.Security.Code + " " + p.CurrentValue.ToString();
}
MessageBox.Show(s);
_positions.AddRange(positions);

};



Пользовательский интерфейс (GUI)
Спасибо:

MCTuTeJ|19951995

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


Почитал, попробовал, - не помогло ...
По прежнему приходят только два фьюча, а 4 опциона не приходят ...
Делаю так:
_trader.NewPositions += positions =>
{
string s = "";
foreach (Position p in positions)
{
s += p.Security.Code + " ";
}
this.GuiSync(() => MessageBox.Show(s));
this.GuiSync(()=>_positions.AddRange(positions));

};
Спасибо:

MCTuTeJ|19951995

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


update: Они приходят но где-то минуты через 3-4 после начала экспорта...
Много раз попробовал запустить программу и заметил, что позиции всегда приходят по разному - иногда все сразу после запуска, иногда через несколько минут, иногда по очереди с большими промежутками ...

Ничего лишнего вроде за собой не тяну, машина мощная, не загружена ...
Спасибо:

Mikhail Sukhov

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


MCTuTeJ|19951995
update: Они приходят но где-то минуты через 3-4 после начала экспорта...
Много раз попробовал запустить программу и заметил, что позиции всегда приходят по разному - иногда все сразу после запуска, иногда через несколько минут, иногда по очереди с большими промежутками ...

Ничего лишнего вроде за собой не тяну, машина мощная, не загружена ...


Как вариант - начать экспортировать только инструменты и позиции. Постепенно прибавлять логики и найти причину торможения.
Спасибо:

MCTuTeJ|19951995

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


Mikhail Sukhov


Как вариант - начать экспортировать только инструменты и позиции. Постепенно прибавлять логики и найти причину торможения.


Так и делаю, логики никакой нет. Только по двум таблицам экспорт ...
Сейчас пробую DDeCustomTable использовать, но там студия ругается на NotifyPropertyChanged(string)


Спасибо:

MCTuTeJ|19951995

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


Сделал так:

[DdeCustomTable("Позиции по деривативам")]
[Ignore(FieldName = "IsDisposed")]
public class CustomPosition:INotifyPropertyChanged
{
private void NotifyPropertyChanged(String info)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(info));
}
}
[DdeCustomColumn("Код инструмента", Order = 1)]
[Identity]
public string SecurityCode { get; set; }

public event PropertyChangedEventHandler PropertyChanged;
private int _currentValue;
[DdeCustomColumn("Тек. чист. поз.", Order = 3)]
public int CurrentValue
{
get { return _currentValue; }
set
{
_currentValue = value;

NotifyPropertyChanged("CurrentValue");
}
}
}

Спасибо Эмэсдээну... Это будет работать ?
Спасибо:

MCTuTeJ|19951995

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


Так не работает ...
в обработчик .ProcessCustomTables вообще не заходит ...
Спасибо:

MCTuTeJ|19951995

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


Всё, проблема решена - переименовал таблицу в "Позиции" и всё стало сразу же приходить.
Спасибо:


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

loading
clippy