Экспорт портфеля DDE для SampleConsole
Atom Ответить
09.07.2010


E G

Фотография
Я пытался найти может кто сделал экспорт портфеля но не смог.
QUIKTRADER вроде эту операцию не поддерживает для SampleConsole. У
меня самого не получилось. Подскажите если кто сделал. Спасибо.

Теги:


Спасибо:



Поздравляем именинников: Станислав Гайворонский

7 Ответов
Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 09.07.2010
Ответить


А какие данные нужны из портфеля?

Спасибо:

E G

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


Да, элементарные: лимит по деньгам, открытые позиции, прибыль,
процент, текущие средства.

Автор топика
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 09.07.2010
Ответить


Стандартно есть только открытые позиции. Все остальное ручками, в
примере показал.

Спасибо:

E G

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


Вот кусок кода:

// подписывемся на событие появление портфеля
trader.ProcessUnknownDdeData += (name, rows)
=>
{
// узнаем, что пришедшие данные
отвечают за портфель
if (string.Compare(name, "portfolio",
true) == 0)
{
foreach (var row in rows)
{
var Client = "ХХХХХ";
В этой строке ошибка!!! var portfolio = portfolio.FirstOrDefault(p
=> p.Client == Client);

if (portfolio == null)
{
// portfolio = new
Portfolio {Client };

}

portfolio.Shorts =
(double)row[1];
portfolio.Longs =
(double)row[2];
portfolio.Collateral =
(double)row[3];
portfolio.Margin =
(double)row[4];
portfolio.Money =
(double)row[5];
portfolio.PnL =
(double)row[6];

Console.WriteLine("Экспорта
портфеля начинается");
Console.WriteLine("Лимит по
деньгам: {0}", portfolio.Money);
}

}
};
В чем здесь моя ошибка? Я что-то не дойду.

Автор топика
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 09.07.2010
Ответить


var portfolio = portfolio.FirstOrDefault(p => p.Client == Client);

определяется переменная и тут же она используется. вот и ошибка... я в
доке ссылку давал на учебник по C#.

Спасибо:

E G

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


проблема в том, что это строка не подходит:

var portfolio = _portfolioWindow.Portfolios.FirstOrDefault(p =>
p.Client == client);

я так понимаю раз консольное приложение, то _portfolioWindow не
работает

Автор топика
Спасибо:

E G

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


Все. Разобрался. Если кому будет надо пишите, помогу.

Автор топика
Спасибо:


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

loading
clippy