отметка времени — как установить FIX :: ExpireTime в переполнении стека QuickFix

Я использую движок QuickFIx C ++
Я хочу отправить заказ GTT (Good Till Time), для которого мне нужно установить FIX :: ExpireTime в UTCTimeStampFormat. Часть времени указывает количество времени до истечения срока действия заказа. Например, для заказа, который истекает через десять
секунд, значение может быть 00000000-00: 00: 10.000. Т.е. относительное время истечения ордера в формате ГГГГММДД-чч: мм: сс.ссс.

Здесь, допустим, у меня есть переменная: int delay = 10. Т.е. мне нужно отменить ордер, если он не будет заполнен в течение 10 секунд.

Может кто-нибудь предложить, как установить выше значение (задержка) в формате 00000000-00: 00: 10.000, чтобы я мог установить FIX :: ExpireTime.

В настоящее время я использую:

FIX::UtcTimeStamp expireTime(0, 0, 10, 0, 0, 0, 0);

newOrderSingle.set(FIX::ExpireTime(expireTime.getTime()));

Но, похоже, это занимает текущее время, а не 00000000-00: 00: 10.000.

Спасибо и С уважением
Гарв

1

Решение

Как насчет установки срока действия в виде строки?

message.setField(FIX::FIELD::ExpireTime, "00000000-00:00:10.000");
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]