C++ 如何在QuickFix C++;

C++ 如何在QuickFix C++;,c++,timestamp,quickfix,fix-protocol,C++,Timestamp,Quickfix,Fix Protocol,我使用的是QueFixC++引擎 我想发送GTT(有效期)订单,我需要将FIX::ExpireTime设置为UTCTIMESTAMP格式。时间部分指定订单到期前的时间量。例如,对于10分钟后到期的订单 秒,值可以是00000000-00:00:10.000。i、 e.订单的相对到期时间,格式为YYYYMMDD hh:mm:ss.sss 这里,假设我有一个变量:int delay=10。i、 如果订单在10秒内没有填写,我需要取消订单 谁能建议如何以00000000-00:00:10.000格式设

我使用的是QueFixC++引擎 我想发送GTT(有效期)订单,我需要将FIX::ExpireTime设置为UTCTIMESTAMP格式。时间部分指定订单到期前的时间量。例如,对于10分钟后到期的订单 秒,值可以是00000000-00:00:10.000。i、 e.订单的相对到期时间,格式为YYYYMMDD hh:mm:ss.sss

这里,假设我有一个变量:int delay=10。i、 如果订单在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

谢谢和问候
garv

如何将过期设置为字符串

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

你调试过了吗?是的。但我需要将YYYYMMDD字段设置为00000000。即使我设置了time_t=10,然后FIX::UtcTimeStamp expireTime(t,0),我也会得到19700101-00:00:10.000作为输出。