Посоветуйте как правильно организовать стратегии:

Посоветуйте как правильно организовать стратегии:
Atom
21.10.2011
lesser


Хочу реализовать такую стратегию:

  1. в зависимости от значания индекса сделать выборку по инструментам для торговли и сформировать несколько списков инструментов

  2. по каждому списку инструментов запустить отдельную стратегию

  3. проверять значение индекса и если нужно переформировать списки инструментов

  4. проверять списки на счет того правильная ли стратегия работает на инструментах в них

Причем позиции , ордера и P/L по всему этому нужно считать как для одной стратегии.

И еще маленький вопрос знатокам C# , как по простому записать в код такое:

есть Collection1 = ThreadSafeObservableCollection<Security> Collection2 = ThreadSafeObservableCollection<Position> Collection3 = ThreadSafeObservableCollection<Security>

если в Collection2 есть позиция с полем Security и в тоже время такой Security нет в Collection1 , то внести эту Security в Collection3 .

Спасибо.


Теги:


Спасибо:


< 1 2 3 4  >
lesser

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


Подскажите, плиз, почему может не срабатывать такое правило :

MainSystem.Rules.Add(MainSystem.Security.Changed().Do(Step1));

Спасибо:

lesser

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


Непойму , я как то неправильно задал вопрос , или на него так трудно ответить ?

Секурити стратегии изменяется постоянно но событие не срабативает , знаю по том что поставил точку остановки в функции которую вызивает событие и есче ни разу программа не останавливалась .

Спасибо:

esper

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


Что такое MainSystem? Как создается и инициализируется?

Спасибо:

lesser

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


Strategy MainSystem = new Strategy();

        MainSystem.Security = sec;
        MainSystem.Trader = _trader;
        MainSystem.Portfolio = account;
        MainSystem.RemoveChildStrategies = true;

        MainSystem.Rules.Add(MainSystem.Security.Changed().Do(Step1));

        MainSystem.Rules.Add(MainSystem.Started().Do(StartTrade));
        MainSystem.Rules.Add(MainSystem.Stopping().Do(StopTrade));


        MainSystem.Start();
Спасибо:

esper

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


Секурити стратегии изменяется постоянно Как смотрите что оно меняется?

Спасибо:

lesser

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


ето фьючерс...

стоп , вы имеете в виду что это событие произойдет когда я сделаю MainSystem.Security = sec1;

какже мне вызвать событие когда просто цена sec изменится ?

Спасибо:

lesser

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


но в примере записано :

а также правило на событие изменения фьючерсного контракта (его цены):

this .When(base.Security.Changed()) .Do(ReHedge);

Спасибо:

esper

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


lesser: стоп , вы имеете в виду что это событие произойдет когда я сделаю MainSystem.Security = sec1; Нет, установка инструмента для стратегии не вызывает это событие. Это событие вызывается когда меняются данные в таблице инструментов, они у вас меняются?

Спасибо:

lesser

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


Делаю ,

_trader.NewTrades += trades => this.GuiAsync(() =>

this.Instrument.Text = sec.LastTrade.Price.ToString();

Значение в текстовом поле програмки меняется

Спасибо:

esper

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


LastTrade.Price, скорее всего, берется из Таблицы всех сделок, а не из инструментов. Какие настройки у таблицы инструменты? Если в ней только стандартные столбцы, то событие вызываться не будет.

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

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

loading
clippy