def get_fix_message()

in fix_session.py [0:0]


    def get_fix_message(self):
        request = fix.Message()
        request.getHeader().setField(fix.BeginString(fix.BeginString_FIX44))
        request.getHeader().setField(fix.MsgType(fix.MsgType_NewOrderSingle))

        assert self.id
        request.setField(fix.ClOrdID(self.id))

        assert self.symbol
        request.setField(fix.Symbol(self.symbol))

        assert self.side
        request.setField(fix.Side(self.side))

        assert self.quantity
        request.setField(fix.OrderQty(self.quantity))

        if self.price is not None:
            request.setField(fix.Price(self.price))
        elif self.order_type == fix.OrdType_LIMIT:
            raise Exception("Must specify price for LIMIT order")

        assert self.order_type
        request.setField(fix.OrdType(self.order_type))

        assert self.time_in_force
        request.setField(fix.TimeInForce(self.time_in_force))

        if self.account:
            request.setField(fix.Account(self.account))

        if self.destination is not None:
            request.setField(fix.ExecBroker(self.destination))

        if self.exchange is not None:
            request.setField(fix.ExDestination(self.exchange))

        request.setField(fix.TransactTime())

        for key in self.custom_fields:
            request.setField(key, self.custom_fields[key])

        request.setField(fix.SenderCompID("TRADER"))

        return request