Пример #1
0
        public override ByteBuffer Serialize()
        {
            var buf   = new ByteBuffer(256);
            var frame = new MessageHeader
            {
                msgId   = (Int16)MessageType.NewOrderBody,
                msgSeq  = SessionId,
                msgSize = (UInt16)StructSize
            };

            frame.AppendToBuffer(buf);
            buf.AppendFixedString(RequestId, encoding, 16);
            buf.AppendFixedString(ClearingAccountId, encoding, 16);
            buf.AppendFixedString(TraderAccountId, encoding, 16);
            buf.AppendInt32(InstrumentId);

            buf.AppendByte((byte)OrderType);
            buf.AppendByte((byte)TimeInForce);
            buf.AppendByte((byte)OrderSide);
            buf.AppendByte((byte)AutoCancel);

            buf.AppendInt64(Amount);
            buf.AppendInt64(Price);
            buf.AppendUint64(Flags);

            buf.AppendFixedString(Comment, encoding, 16);
            return(buf);
        }
Пример #2
0
        private void MakeRequestResponse(RejectResponse msg, int seqid, ByteBuffer buf)
        {
            var header = new MessageHeader
            {
                msgId   = (int)MessageType.RejectResponse,
                msgSize = (ushort)RejectResponse.StructSize,
                msgSeq  = seqid
            };

            header.AppendToBuffer(buf);
            buf.AppendUint64(msg.Time);
            buf.AppendFixedString(msg.RequestId, Encoding.ASCII, 16);
            buf.AppendInt16(msg.ErrorCodeInternal);
        }
Пример #3
0
        public override ByteBuffer Serialize()
        {
            var buf   = new ByteBuffer(128);
            var frame = new MessageHeader
            {
                msgId   = (Int16)MessageType.MassCancelRequest,
                msgSeq  = SessionId,
                msgSize = (UInt16)StructSize
            };

            frame.AppendToBuffer(buf);
            buf.AppendFixedString(RequestId, encoding, 16);
            buf.AppendFixedString(ClearingAccountId, encoding, 16);
            buf.AppendFixedString(TraderAccountId, encoding, 16);
            buf.AppendInt32(InstrumentId);
            buf.AppendByte((byte)CancelMode);
            return(buf);
        }