Котирование TakeProfit & StopLoss
Atom Ответить
04.07.2011


Какие параметры для защитных стратегий необходимо установить, чтобы для выставленных ими заявок использовалось котирование?

Задаю такие параметры:
Код
BestPriceOffset = 1m,
UseMarketQuoting = true,

но никакого эффекта это не дает, версия 3.2.3

Теги:


Спасибо:




10 Ответов
Mikhail Sukhov

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


Лог.BigGrin
Спасибо:

esper

Фотография
Программист
Дата: 05.07.2011
Ответить


Код
// выставляет тейк-профит в n пунктов
var takeProfit = new TakeProfitStrategy(t, new Unit(Settings.TakeProfit))
{
	BestPriceOffset = 1m,
	PriceOffset = 1m,
	UseMarketQuoting = true,

};

// выставляет стоп-лосс в m пунктов
var stopLoss = new StopLossStrategy(t, new Unit(Settings.StopLoss))
{
	BestPriceOffset = 1m,
	PriceOffset = 1m,
	UseMarketQuoting = true,

};


Цитата:
VS 05.07.2011 07:19:57.000 Стратегия запущена.
VS 05.07.2011 07:19:57.690 New order: Sell code:SBER03 price:94,80 volume:1
VS 05.07.2011 07:19:58.682 New deal: Sell code:SBER03 price:94,8 volume:1
VS 05.07.2011 07:19:58.702 [BS] Стратегия запущена.
VS 05.07.2011 07:19:58.702 [BS] [BS] Стратегия запущена.
VS 05.07.2011 07:19:58.702 [BS] [BS] [TPS] Стратегия запущена.
VS 05.07.2011 07:19:58.702 [BS] [BS] [SLS] Стратегия запущена.
VS 05.07.2011 07:23:47.992 [BS] [BS] [TPS] Регистрация новой заявки на Buy с ценой 94,70 и объемом 1.
VS 05.07.2011 07:23:47.992 [BS] [BS] [TPS] Заявка 26290346 на Buy отправлена с ценой 94,70 объемом 1.
VS 05.07.2011 07:23:48.072 New order: Buy code:SBER03 price:94,70 volume:1
VS 05.07.2011 07:23:48.593 [BS] [BS] [TPS] Позиция изменилась на 1.
VS 05.07.2011 07:23:48.593 [BS] [BS] [TPS] Заканчиваем котирование с неисполненным объемом равный 0.
VS 05.07.2011 07:23:48.603 [BS] [BS] Стратегия останавливается.
VS 05.07.2011 07:23:48.603 [BS] [BS] [SLS] Стратегия останавливается.
VS 05.07.2011 07:23:48.603 [BS] [BS] Стратегия остановлена.
VS 05.07.2011 07:23:48.603 [BS] [BS] [TPS] Стратегия остановлена.
VS 05.07.2011 07:23:48.603 [BS] [BS] [SLS] Стратегия остановлена.
VS 05.07.2011 07:23:48.623 New deal: Buy code:SBER03 price:94,7 volume:1
VS 05.07.2011 07:24:37.533 Стратегия останавливается.
VS 05.07.2011 07:24:37.583 [BS] Стратегия останавливается.
VS 05.07.2011 07:24:37.583 Стратегия остановлена.
VS 05.07.2011 07:24:37.583 [BS] Стратегия остановлена.


В данном случае заявка исполнилась, но если цена ушла в сторону, то заявка может висеть до тех пор, пока не будет спроса/предложения по выставленной цене
Автор топика
Спасибо:

esper

Фотография
Программист
Дата: 05.07.2011
Ответить


Заявка была выставлена, цена сходила вниз до 94, вернулась назад и только тогда исполнилась
Цитата:
VS 05.07.2011 07:57:12.729 New order: Buy code:SBER03 price:94,76 volume:1
VS 05.07.2011 07:57:13.620 New deal: Buy code:SBER03 price:94,76 volume:1
VS 05.07.2011 07:57:13.620 [BS] Стратегия запущена.
VS 05.07.2011 07:57:13.620 [BS] [BS] Стратегия запущена.
VS 05.07.2011 07:57:13.620 [BS] [BS] [TPS] Стратегия запущена.
VS 05.07.2011 07:57:13.620 [BS] [BS] [SLS] Стратегия запущена.
VS 05.07.2011 07:57:55.046 [BS] [BS] [SLS] Регистрация новой заявки на Sell с ценой 94,71 и объемом 1.
VS 05.07.2011 07:57:55.046 [BS] [BS] [SLS] Заявка 26812012 на Sell отправлена с ценой 94,71 объемом 1.
VS 05.07.2011 07:57:55.066 New order: Sell code:SBER03 price:94,71 volume:1
--- заявка была высталена 2 минуты ---
VS 05.07.2011 07:59:37.603 [BS] [BS] [SLS] Позиция изменилась на -1.
VS 05.07.2011 07:59:37.603 [BS] [BS] [SLS] Заканчиваем котирование с неисполненным объемом равный 0.
VS 05.07.2011 07:59:37.603 [BS] [BS] Стратегия останавливается.
VS 05.07.2011 07:59:37.603 [BS] [BS] [TPS] Стратегия останавливается.
VS 05.07.2011 07:59:37.603 [BS] [BS] Стратегия остановлена.
VS 05.07.2011 07:59:37.603 [BS] [BS] [TPS] Стратегия остановлена.
VS 05.07.2011 07:59:37.603 [BS] [BS] [SLS] Стратегия остановлена.
Автор топика
Спасибо:

esper

Фотография
Программист
Дата: 11.07.2011
Ответить


Никто не сталкивался с котированием в защитных стратегиях?Confused
Автор топика
Спасибо:

Alexander

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


Да многие пользуются, просто сразу не понятно в чём проблема.
Спасибо:

Alexander

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


Найдено, исправлено.
Будет в 3.2.5
Спасибо:

esper

Фотография
Программист
Дата: 13.07.2011
Ответить


Alexander Перейти
Найдено, исправлено.
Будет в 3.2.5

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

esper

Фотография
Программист
Дата: 17.07.2011
Ответить


В 3.2.5 котирование запускается, но каждый раз останавливатся с неисполненным объемом:

Цитата:
VS 17.07.2011 12:49:03.812 Стратегия запущена.
VS 17.07.2011 12:49:04.875 New order: Buy code:SBER03 price:93.11 volume:1
VS 17.07.2011 12:49:05.796 New deal: Buy code:SBER03 price:93.11 volume:1
VS 17.07.2011 12:49:05.859 [BS] Стратегия запущена.
VS 17.07.2011 12:49:05.921 [BS] [BS] Стратегия запущена.
VS 17.07.2011 12:49:05.968 [BS] [BS] [TPS] Стратегия запущена.
VS 17.07.2011 12:49:06.000 [BS] [BS] [SLS] Стратегия запущена.
VS 17.07.2011 12:50:21.656 [BS] [BS] [SLS] Регистрация новой заявки на Sell с ценой 93.06 и объемом 1.
VS 17.07.2011 12:50:21.687 [BS] [BS] [SLS] [MQS] Стратегия запущена.
VS 17.07.2011 12:50:21.718 [BS] [BS] [SLS] Заявка 0 на Sell отправлена с ценой 93.06 объемом 1.
VS 17.07.2011 12:50:21.750 [BS] [BS] [SLS] Заканчиваем котирование с неисполненным объемом равный 1.
VS 17.07.2011 12:50:21.781 [BS] Стратегия останавливается.
VS 17.07.2011 12:50:21.812 [BS] Стратегия остановлена.
VS 17.07.2011 12:50:21.859 [BS] [BS] Стратегия остановлена.
VS 17.07.2011 12:50:21.890 [BS] [BS] [TPS] Стратегия остановлена.
VS 17.07.2011 12:50:21.937 [BS] [BS] [SLS] Стратегия остановлена.
VS 17.07.2011 12:50:21.968 [BS] [BS] [SLS] [MQS] Стратегия остановлена.
VS 17.07.2011 13:19:17.984 Стратегия останавливается.
VS 17.07.2011 13:19:18.296 Стратегия остановлена.


Защитные стратегии запускаются следующим образом:
Код
// для каждой сделки добавляем для защиты по пакетной стратегии
batch.ChildStrategies.AddRange(list.Select(t =>
{
	var s = new BatchStrategy(BatchFinishModes.First);

	// выставляет тейк-профит в n пунктов
	var takeProfit = new TakeProfitStrategy(t, new Unit(_settings.TakeProfit))
	{
		BestPriceOffset = 1m,
		PriceOffset = 0m,
		//IsTrailing = true,
		UseMarketQuoting = true,

	};

	// выставляет стоп-лосс в m пунктов
	var stopLoss = new StopLossStrategy(t, new Unit(_settings.StopLoss))
	{
		BestPriceOffset = 1m,
		PriceOffset = 0m,
		//IsTrailing = true,
		UseMarketQuoting = true,

	};

	s.ChildStrategies.Add(takeProfit);
	s.ChildStrategies.Add(stopLoss);

	return s;
}).Cast<Strategy>());
Автор топика
Спасибо:

Alexander

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


esper Перейти
В 3.2.5 котирование запускается, но каждый раз останавливатся с неисполненным объемом:
...


Проблему подтверждаю.

Дело в котировании по рынку. Выход пока - не пользоваться таким котированием. :)
К 3.2.6 попробую придумать фикс.

Спасибо за фидбэк.
Спасибо:

Alexander

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


Починил, будет в 3.2.6
Спасибо:


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

loading
clippy