RealTimeEmulationTrader QuikTrader TakeProfitStopLimit
Atom
12.10.2011
lshaton


Заявка, приведенная ниже регистрируется но не отрабатывает при наступлении условий. Вопрос: А работает ли TakeProfitStopLimit под RealTimeEmulationTrader ?

TargetOrder22 = new Order // CreateTakeProfitAndStopLimit() //Sell back { Type = OrderTypes.Conditional, Volume = 1, Price = _contactRIZ1.MinPrice, Security = _contactRIZ1, Direction = OrderDirections.Sell, Portfolio = MainWindow.Instance._portfolio, StopCondition = new QuikStopCondition { Type = QuikStopConditionTypes.TakeProfitStopLimit, ExpiryDate = DateTime.MaxValue, StopPrice = _contactRIZ1.ShrinkPrice(_contactRIZ1.BestAsk.Price + (decimal)dblTragetProfit), StopLimitPrice = _contactRIZ1.ShrinkPrice(_contactRIZ1.BestAsk.Price- (decimaldblTragetProfit),
Offset = new Unit((decimal)dblTragetProfit), // Величина отступа от максимума (минимума) цены последней сделки. Spread = new Unit(0), // Величина защитного спрэда //ActiveTime = new Range, ActiveTime = new Range(DateTime.Today - TimeSpan.FromDays(5), DateTime.Today + TimeSpan.FromDays(5)), }, };




Спасибо:


< 1 2 3 4  >
andrv

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


Это просто пример который идет с библиотекой

if (_isShortLessThenLong != isShortLessThenLong)
			{
				// если короткая меньше чем длинная, то продажа, иначе, покупка.
				var direction = isShortLessThenLong ? OrderDirections.Sell : OrderDirections.Buy;

				// создаем заявку
				var order = this.CreateOrder(direction, base.Security.GetMarketPrice(direction), base.Volume);

				// регистрируем заявку (обычным способом - лимитированной заявкой)
				// base.RegisterOrder(order);

				// регистрируем заявку (через котирование)
				var strategy = new MarketQuotingStrategy(order, new Unit(), new Unit());
                var st = new MyStrategy();
                
                base.ChildStrategies.Add(strategy);
                base.ChildStrategies.Add(st);               //           Добавляю защитную стратегию
                
				// запоминаем текущее положение относительно друг друга
				_isShortLessThenLong = isShortLessThenLong;
			}

			return ProcessResults.Continue;
		}

по защитной стратегии код как описано здесь http://stocksharp.com/doc/html/63952fce-6e43-4427-985a-1654e8d9cfc1.htm

Спасибо:

Alexander

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


andrv: Это просто пример который идет с библиотекой

if (_isShortLessThenLong != isShortLessThenLong) { // если короткая меньше чем длинная, то продажа, иначе, покупка. var direction = isShortLessThenLong ? OrderDirections.Sell : OrderDirections.Buy;

			// создаем заявку
			var order = this.CreateOrder(direction, base.Security.GetMarketPrice(direction), base.Volume);

			// регистрируем заявку (обычным способом - лимитированной заявкой)
			// base.RegisterOrder(order);

			// регистрируем заявку (через котирование)
			var strategy = new MarketQuotingStrategy(order, new Unit(), new Unit());
            var st = new MyStrategy();
            
            base.ChildStrategies.Add(strategy);
            base.ChildStrategies.Add(st);               //           Добавляю защитную стратегию
            
			// запоминаем текущее положение относительно друг друга
			_isShortLessThenLong = isShortLessThenLong;
		}

		return ProcessResults.Continue;
	}
> по защитной стратегии код как описано здесь http://stocksharp.com/doc/html/63952fce-6e43-4427-985a-1654e8d9cfc1.htm

И всё же - какие сделки добавляете в StopLoss?
Что конкретно не вызывается - событие NewMyTrades у базовой стратегии? И при этом сделки у базовой стратегии проходит?
Спасибо:

andrv

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


вот лог:

00:00:00.000 |            | SS              | Стратегия запущена.
11:20:00.000 |            | MQS             | Стратегия запущена.
11:20:00.000 |            | MS              | Стратегия запущена.
11:20:00.990 |            | MQS             | Регистрация новой заявки на Sell с ценой 85 и объемом 1.
11:20:00.990 |            | MQS             | Заявка 74305730 на Sell отправлена с ценой 85 объемом 1.
11:20:04.990 |            | MQS             | Цена текущей 85 и лучшей 90.
11:20:04.990 |            | MQS             | Лучший бид 84,4800000 и лучший аск 89,4800000.
11:20:04.990 |            | MQS             | Котирование заявки 74305730 на Sell с ценой 85 объемом 1.
11:20:04.990 |            | MQS             | Отмена заявки 74305730.
11:20:05.990 |            | MQS             | Отмена заявки 74305730 прошло успешно.
11:20:05.990 |            | MQS             | Регистрация новой заявки на Sell с ценой 85 и объемом 1.
11:20:05.990 |            | MQS             | Заявка 74305731 на Sell отправлена с ценой 85 объемом 1.
11:20:06.990 | Warning    | MQS             | Заявка 74305731 не имеет состояния.
11:20:07.990 | Warning    | MQS             | Заявка 74305731 не имеет состояния.

из него что стратегия запускается, но когда начинается резкое падение курса стратегия не срабатывает. отсюда вопрос на истории она вообще работает или я все таки чего-то не доделал, может там еще что дописать надо, например написать правила или еще что?

Спасибо:

Alexander

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


andrv: вот лог:

00:00:00.000 | | SS | Стратегия запущена. 11:20:00.000 | | MQS | Стратегия запущена. 11:20:00.000 | | MS | Стратегия запущена. 11:20:00.990 | | MQS | Регистрация новой заявки на Sell с ценой 85 и объемом 1. 11:20:00.990 | | MQS | Заявка 74305730 на Sell отправлена с ценой 85 объемом 1. 11:20:04.990 | | MQS | Цена текущей 85 и лучшей 90. 11:20:04.990 | | MQS | Лучший бид 84,4800000 и лучший аск 89,4800000. 11:20:04.990 | | MQS | Котирование заявки 74305730 на Sell с ценой 85 объемом 1. 11:20:04.990 | | MQS | Отмена заявки 74305730. 11:20:05.990 | | MQS | Отмена заявки 74305730 прошло успешно. 11:20:05.990 | | MQS | Регистрация новой заявки на Sell с ценой 85 и объемом 1. 11:20:05.990 | | MQS | Заявка 74305731 на Sell отправлена с ценой 85 объемом 1. 11:20:06.990 | Warning | MQS | Заявка 74305731 не имеет состояния. 11:20:07.990 | Warning | MQS | Заявка 74305731 не имеет состояния.

> 
> из него что стратегия запускается, но когда начинается резкое падение курса стратегия не срабатывает.
> отсюда вопрос на истории она вообще работает или я все таки чего-то не доделал, может там еще что дописать надо, например написать правила или еще что?


Ответьте на заданные вопросы.

1) Какая сделка передаётся в StopLossStrategy?
2) Вызывается ли событие NewMyTrades у запущенной стратегии?
3) Распечатайте все Strategy.MyTrades после окончания работы стратегии.
Спасибо:

andrv

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


на все вопросы нет я взял SempleSMA и пытаюсь понять как к ней еще можно добавить стоплос стратегию. Ведь нет не одного примера который ее реализует.

Спасибо:

Alexander

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


andrv: на все вопросы нет я взял SempleSMA и пытаюсь понять как к ней еще можно добавить стоплос стратегию. Ведь нет не одного примера который ее реализует.

Нет на последний вопрос что означает - у вас даже у SampleSMA сделок нет? А на первый что означает - вы и не пытаетесь добавить StopLossStrategy к SampleSma, т.е. никакого ордера не передаёте?

Можно как-то более конкретно ответить на вопросы. А то ответ "нет" на запрос лога вызывает удивление.

Спасибо:

esper

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


andrv: Ведь нет не одного примера который ее реализует. Как нет, а тут тогда что?

Спасибо:

andrv

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


Alexander Mukhanchikov: Ответьте на заданные вопросы.

  1. Какая сделка передаётся в StopLossStrategy?
  2. Вызывается ли событие NewMyTrades у запущенной стратегии?
  3. Распечатайте все Strategy.MyTrades после окончания работы стратегии.

последнее не понятно событие MyTrade Вызываается только в стратегии MyStrategy, но пример теста на истории какимто образом считает трэйды.

Вобщем из всего вышесказанного нужно в основной стратегии вызывать событие NewMyTrades?

Спасибо:

andrv

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


esper:

andrv: Ведь нет не одного примера который ее реализует. Как нет, а тут тогда что?

вот я ее и использовал, теперь пытаюсь понять как заставить ее работать

Спасибо:

Alexander

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


andrv:

Alexander Mukhanchikov: Ответьте на заданные вопросы.

  1. Какая сделка передаётся в StopLossStrategy?
  2. Вызывается ли событие NewMyTrades у запущенной стратегии?
  3. Распечатайте все Strategy.MyTrades после окончания работы стратегии.

последнее не понятно событие MyTrade Вызываается только в стратегии MyStrategy, но пример теста на истории какимто образом считает трэйды.

Вобщем из всего вышесказанного нужно в основной стратегии вызывать событие NewMyTrades?

Я совсем запутался.

MyStrategy - это что? Вы писали что используете SampleHistoryTestyng, там есть SmaStrategy. Где вы взяли MyStrategy? Что делает эта ваша стратегия?

Можете конкретно привести строчку где вы добавляете создаёте StopLossStrategy?

Спасибо:
< 1 2 3 4  >

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

loading
clippy