def append_utc_timestamp(self, tag, timestamp=None, precision=3,
                             header=False):
        """Append a field with a UTCTimestamp value.

        :param tag: Integer or string FIX tag number.
        :param timestamp: Time value, see below.
        :param precision: Number of decimal places: 0, 3 (ms) or 6 (us).
        :param header: Append to FIX header if True; default to body.

        The `timestamp` value should be a datetime, such as created by
        datetime.datetime.utcnow(); a float, being the number of seconds
        since midnight 1 Jan 1970 UTC, such as returned by time.time();
        or, None, in which case datetime.datetime.utcnow() is used to
        get the current UTC time.

        Precision values other than zero (seconds), 3 (milliseconds),
        or 6 (microseconds) will raise an exception.  Note that prior
        to FIX 5.0, only values of 0 or 3 comply with the standard."""

        return self._append_utc_datetime(tag,
                                         "%Y%m%d-%H:%M:%S",
                                         timestamp,
                                         precision,
                                         header)
Append a field with a UTCTimestamp value.

        :param tag: Integer or string FIX tag number.
        :param timestamp: Time value, see below.
        :param precision: Number of decimal places: 0, 3 (ms) or 6 (us).
        :param header: Append to FIX header if True; default to body.

        The `timestamp` value should be a datetime, such as created by
        datetime.datetime.utcnow(); a float, being the number of seconds
        since midnight 1 Jan 1970 UTC, such as returned by time.time();
        or, None, in which case datetime.datetime.utcnow() is used to
        get the current UTC time.

        Precision values other than zero (seconds), 3 (milliseconds),
        or 6 (microseconds) will raise an exception.  Note that prior
        to FIX 5.0, only values of 0 or 3 comply with the standard.