Вопросы новичка в S# (Закрыта)
Atom
01.12.2010
ttt


Добрый день.
Очень понравилась идея использования Вашей библиотеки для реализации роботов.
Подскажите, пожалуйста:
1) Как идентифицировать заявку?
//например, выставляю заявку buy RIZ0 4 контракта по цене 160500. Каким образом далее смогу ее отслеживать?
Вариант с использованием таблицы сделок не подходит - необходимо реализовать контроль исполнения заявок пользуясь исключительно информацией из таблицы заявок.
С языком C# только начал разбираться, возможно поэтому не нашел в представленных в дистрибутиве S# проектах примеров контроля состояния заявки по ее уникальному признаку.
2) Верно ли я понимаю суть работы с Квиком: для реализации автономного робота необходимо организовать два потока на C#:
- первый: выполняет функции получения данных из Квика через DDE сервер (используя библиотеку S#);
- второй: непосредственно реализует алгоритм выставления и снятия заявок.
Можно ли обойтись одним потоком?

Теги:


Спасибо: Николай_Флёров


<< < 31 32 33 34 35  > >>
Yura

Фотография
Дата: 17.05.2011


Alexander
Yura
Yura
Yura
Yura
Yura
Какая проблема в 5-й строке? =(
Код
trader.SecuritiesChanged += trades =>
{
if (_depth == null && _lkoh != null)
{
_depth = trades.FirstOrDefault(d => d.Code == "LKOH").LastTrade;
if (_depth != null)
{
// если портфель уже появился, то извещаем об этом основной поток для выставления заявки
if (_portfolio != null)
waitHandle.Set();
}
}
};



depth это что, какой тип? Стакан? Тогда неправильное приведение типов.

А Visual Studio что говорит? Или это викторина для форумчан? :)

"Ошибка 7 Неявное преобразование типа "Ecng.Trading.BusinessEntities.Trade" в "Ecng.Trading.BusinessEntities.Security" невозможно
"В общем мне нужно получить информацию о последней сделке по указанной бумаге..как мне это сделать? =( Плиз если можно пример рабочий((я в си шарпе новичок и в стокшарпе трудно разобраться. А у _depth тип Security




Последняя сделка - это Trade, а вы пытаетесь привести её к Security.
собственно об этом Visual Studio и сообщает.

О господи, ДА ДЕТКА, пашет!! спс огромное! какое же это счастье...
Спасибо:

Yura

Фотография
Дата: 17.05.2011


Yura
Alexander
Yura
Yura
Yura
Yura
Yura
Какая проблема в 5-й строке? =(
Код
trader.SecuritiesChanged += trades =>
{
if (_depth == null && _lkoh != null)
{
_depth = trades.FirstOrDefault(d => d.Code == "LKOH").LastTrade;
if (_depth != null)
{
// если портфель уже появился, то извещаем об этом основной поток для выставления заявки
if (_portfolio != null)
waitHandle.Set();
}
}
};



depth это что, какой тип? Стакан? Тогда неправильное приведение типов.

А Visual Studio что говорит? Или это викторина для форумчан? :)

"Ошибка 7 Неявное преобразование типа "Ecng.Trading.BusinessEntities.Trade" в "Ecng.Trading.BusinessEntities.Security" невозможно
"В общем мне нужно получить информацию о последней сделке по указанной бумаге..как мне это сделать? =( Плиз если можно пример рабочий((я в си шарпе новичок и в стокшарпе трудно разобраться. А у _depth тип Security




Последняя сделка - это Trade, а вы пытаетесь привести её к Security.
собственно об этом Visual Studio и сообщает.

О господи, ДА ДЕТКА, пашет!! спс огромное! какое же это счастье...

А ещё такой вопрос. я пишу такое
Код
trader.SecuritiesChanged += trades =>
{
if (_depth == null && _lkoh != null)
{
_depth = trades.FirstOrDefault(d => d.Code == "MSICH").LastTrade.Price;

if (_depth != null)
{
// если портфель уже появился, то извещаем об этом основной поток для выставления заявки
if (_portfolio != null)
waitHandle.Set();
}
}
};

Ошибка 1 Неявное преобразование типа "decimal" в "Ecng.Trading.BusinessEntities.Trade" невозможно.
пытаюсь взять цену
_depth = trades.FirstOrDefault(d => d.Code == "MSICH").LastTrade.Price;
Спасибо:

Alexander

Фотография
Дата: 17.05.2011


Yura
Yura
Alexander
Yura
Yura
Yura
Yura
Yura
Какая проблема в 5-й строке? =(
Код
trader.SecuritiesChanged += trades =>
{
if (_depth == null && _lkoh != null)
{
_depth = trades.FirstOrDefault(d => d.Code == "LKOH").LastTrade;
if (_depth != null)
{
// если портфель уже появился, то извещаем об этом основной поток для выставления заявки
if (_portfolio != null)
waitHandle.Set();
}
}
};



depth это что, какой тип? Стакан? Тогда неправильное приведение типов.

А Visual Studio что говорит? Или это викторина для форумчан? :)

"Ошибка 7 Неявное преобразование типа "Ecng.Trading.BusinessEntities.Trade" в "Ecng.Trading.BusinessEntities.Security" невозможно
"В общем мне нужно получить информацию о последней сделке по указанной бумаге..как мне это сделать? =( Плиз если можно пример рабочий((я в си шарпе новичок и в стокшарпе трудно разобраться. А у _depth тип Security




Последняя сделка - это Trade, а вы пытаетесь привести её к Security.
собственно об этом Visual Studio и сообщает.

О господи, ДА ДЕТКА, пашет!! спс огромное! какое же это счастье...

А ещё такой вопрос. я пишу такое
Код
trader.SecuritiesChanged += trades =>
{
if (_depth == null && _lkoh != null)
{
_depth = trades.FirstOrDefault(d => d.Code == "MSICH").LastTrade.Price;

if (_depth != null)
{
// если портфель уже появился, то извещаем об этом основной поток для выставления заявки
if (_portfolio != null)
waitHandle.Set();
}
}
};

Ошибка 1 Неявное преобразование типа "decimal" в "Ecng.Trading.BusinessEntities.Trade" невозможно.
пытаюсь взять цену
_depth = trades.FirstOrDefault(d => d.Code == "MSICH").LastTrade.Price;



Таже самая ошибка. Пытаетесь привести decimal к Security. 2 разных сущности, 2 разных типа.
В инете есть много учебников по C#, стоит хотя бы про типы прочитать и про приведение :)

А то ошибки ну уж совсем начальные.
Спасибо: Yura

Yura

Фотография
Дата: 17.05.2011


Alexander
Yura
Yura
Alexander
Yura
Yura
Yura
Yura
Yura
Какая проблема в 5-й строке? =(
Код
trader.SecuritiesChanged += trades =>
{
if (_depth == null && _lkoh != null)
{
_depth = trades.FirstOrDefault(d => d.Code == "LKOH").LastTrade;
if (_depth != null)
{
// если портфель уже появился, то извещаем об этом основной поток для выставления заявки
if (_portfolio != null)
waitHandle.Set();
}
}
};



depth это что, какой тип? Стакан? Тогда неправильное приведение типов.

А Visual Studio что говорит? Или это викторина для форумчан? :)

"Ошибка 7 Неявное преобразование типа "Ecng.Trading.BusinessEntities.Trade" в "Ecng.Trading.BusinessEntities.Security" невозможно
"В общем мне нужно получить информацию о последней сделке по указанной бумаге..как мне это сделать? =( Плиз если можно пример рабочий((я в си шарпе новичок и в стокшарпе трудно разобраться. А у _depth тип Security




Последняя сделка - это Trade, а вы пытаетесь привести её к Security.
собственно об этом Visual Studio и сообщает.

О господи, ДА ДЕТКА, пашет!! спс огромное! какое же это счастье...

А ещё такой вопрос. я пишу такое
Код
trader.SecuritiesChanged += trades =>
{
if (_depth == null && _lkoh != null)
{
_depth = trades.FirstOrDefault(d => d.Code == "MSICH").LastTrade.Price;

if (_depth != null)
{
// если портфель уже появился, то извещаем об этом основной поток для выставления заявки
if (_portfolio != null)
waitHandle.Set();
}
}
};

Ошибка 1 Неявное преобразование типа "decimal" в "Ecng.Trading.BusinessEntities.Trade" невозможно.
пытаюсь взять цену
_depth = trades.FirstOrDefault(d => d.Code == "MSICH").LastTrade.Price;



Таже самая ошибка. Пытаетесь привести decimal к Security. 2 разных сущности, 2 разных типа.
В инете есть много учебников по C#, стоит хотя бы про типы прочитать и про приведение :)

А то ошибки ну уж совсем начальные.

На счет типов я понял что не совпадают. Но как так сделать чтоб вывелась цена=(
Спасибо:

Yura

Фотография
Дата: 18.05.2011


Здравствуйте.
Данные для тестирования на истории должны быть заранее скачаны и сохранены в специальном S# формате.
Что это за формат, я не могу разобраться как преобразовать в этот формат..хэлп.
Спасибо:

Alexander

Фотография
Дата: 18.05.2011


Yura
Здравствуйте.
Данные для тестирования на истории должны быть заранее скачаны и сохранены в специальном S# формате.
Что это за формат, я не могу разобраться как преобразовать в этот формат..хэлп.


Посмотрите на работу Hydra и на работу SampleHistoryTesting. Все исходники идут со Stock#
Спасибо:

Roman0

Фотография
Дата: 21.05.2011


Пожалуйста, подскажите как надежно определить, что все сделки из таблицы всех сделок получены и пошли актуальные данные, если подключиться через какое-то время после начала торгов. Наверное можно получить Security.LastTrade.Time и потом сравнивать с СandleManager.Source.Trades.Last().Time в CandlesChanged и т.д., но может быть есть какие-то еще способы? Спасибо!
Спасибо:

Yura

Фотография
Дата: 22.05.2011


Здравствуйте. Я не могу разобраться с SampleHistoryTesting. Запускаю, указываю путь к папке RIU9@RTS, нажимаю старт, пошла загрузка, нажимаю на отчет, выводится сообщение от Microsoft Excel мол неизвестный формат файла и кучу непонятных символов. В чем проблема? спасибо!
Спасибо:

Mikhail Sukhov

Фотография
Дата: 22.05.2011


Yura
Здравствуйте. Я не могу разобраться с SampleHistoryTesting. Запускаю, указываю путь к папке RIU9@RTS, нажимаю старт, пошла загрузка, нажимаю на отчет, выводится сообщение от Microsoft Excel мол неизвестный формат файла и кучу непонятных символов. В чем проблема? спасибо!


Версия последняя?
Спасибо: Yura

Yura

Фотография
Дата: 22.05.2011


Mikhail Sukhov
Yura
Здравствуйте. Я не могу разобраться с SampleHistoryTesting. Запускаю, указываю путь к папке RIU9@RTS, нажимаю старт, пошла загрузка, нажимаю на отчет, выводится сообщение от Microsoft Excel мол неизвестный формат файла и кучу непонятных символов. В чем проблема? спасибо!


Версия последняя?

скачал 3.1.9 и все заработало, Excel файл открывается.спасибо [biggrin] буду разбираться теперь с S# форматом.
Спасибо:
<< < 31 32 33 34 35  > >>

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

loading
clippy