вопросы
Atom
03.02.2011
skuvv


1)Order.Comment присвоенное значение не меняется - в квике комментарий всегда "S#" 2)_trader_PositionsChanged event выдает повторно данные:


используется var position = obj.Last();
17:48:23.663;Position changed GZH1 начальное значение 25 текущее значение -16 blocked 0
17:48:23.663;Position changed RIH1 начальное значение -5 текущее значение 1 blocked 0
17:53:17.516;Position changed GZH1 начальное значение 25 текущее значение -16 blocked 0
17:53:17.516;Position changed RIH1 начальное значение -5 текущее значение 1 blocked 0
17:55:40.378;Position changed GZH1 начальное значение 25 текущее значение -16 blocked 0
17:55:40.378;Position changed RIH1 начальное значение -5 текущее значение 1 blocked 0

естественно никаких изменений небыло


Теги:


Спасибо:


1 2  >
Mikhail Sukhov

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


Спасибо:

skuvv

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


Спасибо за информацию. по п2 - было бы не плохо реализовать на будущее возможность включения/выключения внутри s# проверки на изменение позиции. а так получается квик маржу обновляет и отсылает все по dde...

Спасибо:

Mikhail Sukhov

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


skuvv: Спасибо за информацию. по п2 - было бы не плохо реализовать на будущее возможность включения/выключения внутри s# проверки на изменение позиции. а так получается квик маржу обновляет и отсылает все по dde...

Через QuikTrader невозможно понять, изменилось ли хоть что-то в таблице или нет. Поэтому QuikTrader на поступающие из ДДЕ данные.

Спасибо:

skuvv

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


сделать проверку типа такой:

          
  public static Dictionary<Security, Position> PositionList = new Dictionary<Security, Position>();
...
  if (obj.Count() > 0)
            {
                if (!PositionList.ContainsKey(obj.Last().Security)) PositionList.Add(obj.Last().Security,obj.Last());
                else if (PositionList[obj.Last().Security]!=obj.Last()) 
                {
                    PositionList[obj.Last().Security] == obj.Last();
                }
            }

Спасибо:

skuvv

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


ITrader.ReRegisterOrder не создает TranscationId в новом ордере Как бы это исправить [confused]

Спасибо:

Mikhail Sukhov

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


skuvv: ITrader.ReRegisterOrder не создает TranscationId в новом ордере Как бы это исправить [confused]

Версия? Плюс какой именно метод (у ITrader 2 метода с названием ReRegisterOrder)?

Спасибо:

skuvv

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


Mikhail Sukhov:

skuvv: ITrader.ReRegisterOrder не создает TranscationId в новом ордере Как бы это исправить [confused]

Версия? Плюс какой именно метод (у ITrader 2 метода с названием ReRegisterOrder)? Версия 2.6 ReRegisterOrder(Order, Double, Int32) После замены ордера не срабатывает NewOrder, хотя возможно это и не принципиально все

Спасибо:

Mikhail Sukhov

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


skuvv:

Mikhail Sukhov:

skuvv: ITrader.ReRegisterOrder не создает TranscationId в новом ордере Как бы это исправить [confused]

Версия? Плюс какой именно метод (у ITrader 2 метода с названием ReRegisterOrder)? Версия 2.6 ReRegisterOrder(Order, Double, Int32) После замены ордера не срабатывает NewOrder, хотя возможно это и не принципиально все

Принципиально... А как Вы проверяете что TransactionId не инициализируется? Биржа РТС?

Спасибо:

skuvv

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


Осталось пару неясных моментов, значит в Квике в колонке ID транзакции пусто после замены. Но Reregister возвращает order с ID транзакции. Если перезапустить программу то в ивенте "новые ордера" поступают ордера с ID транзакции = 0 Я так понимаю что s# следит за ордерами с заменой и сопоставляет замененные ордера с старыми ID транзакции.

Спасибо:

skuvv

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


И еще я заметил что классы содержащие в себе Security нельзя использовать для сравнения, например


Dictionary<string,Position>PositionList
.....
foreach (Position pos in obj)
{
if (PositionList[pos.Security.Code] != pos)
{
    PositionList[pos.Security.Code] = pos;
}
}

Всегда срабатывает из-за изменений внутри Security -( Можно ли на будущее внутрь s# добавить явную реализацию операторов ? PS хотя возможно это из за того, что Position обновляется автоматически....

Спасибо:
1 2  >

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

loading
clippy