Стоп-лосс
Atom Ответить
21.07.2011


raf

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

Теги:


Спасибо:




29 Ответов
< 1 2 
Андрей Александрович

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


У меня возникла немного иная проблема при попытке создать StopOrder с исполнением по рыночной цене.
Никаких ошибок не происходит, но стоп-заявка в SmartTrade регистрируется как лимитированная заявка с ценой равной 150000 при наступлении цены 150000, вместо ожидаемой цены исполнения MARKET при наступленни цены 150000 (т.е. регистрируется STOP-LIMIT вместо нужной заявки STOP, хотя в документации сказано что при Order.Price = 0 тип заяки должен получиться STOP) Версия 4.1.2

Код
var stoporder = new Order
{
  Portfolio = Portfolio,
  Type = OrderTypes.Conditional,
  Volume = 1,
  Price = 0,
  Security = Security,
  Direction = OrderDirections.Buy,
  StopCondition = new SmartStopCondition {StopPrice = 150000};
}
 
trader.RegisterOrder(stoporder);


Спасибо:

Mikhail Sukhov

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


Андрей Александрович Перейти
Никаких ошибок не происходит, но стоп-заявка в SmartTrade регистрируется как лимитированная заявка с ценой равной 150000 при наступлении цены 150000, вместо ожидаемой цены исполнения MARKET при наступленни цены 150000


Мне сложно понять, что здесь написано (то ли пропущены какие-то части предложение, то ли знаки препинания расставлены хаотично)... Попытаюсь задать наводящий вопрос. Понятно, что стоп-заявка - это не лимитированная заявка и какие между ними существуют различия?

Спасибо:

Андрей Александрович

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


Терминал SmartTrade поддерживает два типа стоп заявок: STOP и STOP-LIMIT (как показано на скриншоте на первой странице данной темы). Более актуальными являются заявки типа STOP с исполнением по рынку. в документации сказано что при Order.Price = 0 тип заяки должен получаться STOP, а на деле получается STOP-LIMIT с ценой исполнения равной стоп-цене (150000 в случае описанном во фрагменте кода) . Это не вызывает серьезных трудностей поскольку можно указать цену исполнения STOP-LIMIT при которой разницы с исполнением по рынку не будет. Не думаю что способен объяснить намного лучше и на мой взгляд гораздо более продуктивным с вашей стороны было бы уделить минутку и попробовать поставить заявку с типом STOP способом который описан в документации самим. У меня этого не получилось хотя я всё делал в точности как в примере и решил что будет полезно сообщить об этом авторам. Хотя донести информацию не всегда бывает легко...
Спасибо:

Mikhail Sukhov

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


Вот наш код конвертации в Смарт типы

Код
public static StOrder_Type GetSmartOrderType(this Order order)
{
	if (order == null)
		throw new ArgumentNullException("order");

	switch (order.Type)
	{
		case OrderTypes.Limit:
			return StOrder_Type.StOrder_Type_Limit;
		case OrderTypes.Market:
			return StOrder_Type.StOrder_Type_Market;
		case OrderTypes.Conditional:
			return order.Price != 0 ? StOrder_Type.StOrder_Type_StopLimit : StOrder_Type.StOrder_Type_Stop;
		default:
			throw new ArgumentOutOfRangeException("order");
	}
}


Почему заявка отправляется не как стоп, а как стоп-лимит - не понятно. В примере SampleSmart так же? Если да, то надо отписывать в АйТи.
Спасибо:
< 1 2 

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

loading
clippy