Bỏ qua

cTrader FIX engine (Quy tắc Tham gia)

Giới thiệu

Phạm vi

Thông số kỹ thuật này nhằm mục đích phục vụ các nhà phát triển phần mềm như một hướng dẫn triển khai cho API cTrader FIX engine.

Phiên bản FIX

cTrader hỗ trợ FIX phiên bản 4.4. Để biết thêm thông tin về phiên bản này, hãy tham khảo thông số kỹ thuật này.

Kết nối

Loại kết nối

Kết nối với cTrader FIX engine có sẵn qua Internet, đường hầm VPN hoặc kết nối chéo đến các cơ sở trung tâm dữ liệu của chúng tôi ở Vương quốc Anh. Liên hệ với chúng tôi để biết thêm chi tiết.

Đặt lại số thứ tự

Tất cả các bên của phiên FIX nên đặt lại số thứ tự khi thiết lập phiên FIX. Xem tin nhắn Đăng nhập.

Tin nhắn

Như được định nghĩa trong giao thức FIX, máy chủ cTrader FIX đang sử dụng hai cấp độ dữ liệu khác nhau (hệ thống và ứng dụng). Lưu ý rằng đây là tập hợp tin nhắn tối thiểu cần thiết để hỗ trợ các quy trình làm việc cần thiết. Nó có thể thay đổi theo thời gian khi cả nhu cầu kinh doanh và tiêu chuẩn FIX phát triển.

cTrader FIX engine

Tin nhắn hệ thống

  • Heartbeat (Client ↔ cTrader)
  • Test Request (Client ↔ cTrader)
  • Logon (Client → cTrader)
  • Logout (Client → cTrader)
  • Resend Request (Client ↔ cTrader)
  • Reject (Client ↔ cTrader)
  • Sequence Reset (Client ↔ cTrader)

Tin nhắn ứng dụng

  • Market Data Request (Client → cTrader)
  • Market Data Snapshot/Full Refresh (Client ← cTrader)
  • Market Data Incremental Refresh (Client ← cTrader)
  • New Order Single (Client → cTrader)
  • Order Status Request (Client → cTrader)
  • Order Mass Status Request (Client → cTrader)
  • Execution Report (Client ← cTrader)
  • Business Message Reject (Client ← cTrader)
  • Request for Positions (Client → cTrader)
  • Position Report (Client ← cTrader)
  • Order Cancel Request (Client → cTrader)
  • Order Cancel Reject (Client ← cTrader)
  • Order Cancel/Replace Request (Client → cTrader)
  • Security List Request (Client → cTrader)
  • Security List (Client ← cTrader)

Tiêu đề chuẩn

Mỗi tin nhắn quản trị hoặc ứng dụng được đứng trước bởi một tiêu đề chuẩn. Tiêu đề xác định loại tin nhắn, độ dài, đích đến, số thứ tự, điểm xuất phát và thời gian.

Tất cả các tin nhắn gửi đến cTrader nên có tiêu đề chuẩn với các trường sau:

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
8 BeginString FIX.4.4 Chuỗi Luôn không được mã hóa, phải là trường đầu tiên trong tin nhắn.
9 BodyLength Bất kỳ giá trị hợp lệ nào Số nguyên Độ dài nội dung tin nhắn. Luôn không được mã hóa, phải là trường thứ hai trong tin nhắn.
35 MsgType A Chuỗi Loại tin nhắn. Luôn không được mã hóa, phải là trường thứ ba trong tin nhắn.
49 SenderCompID Bất kỳ giá trị hợp lệ nào Chuỗi ID của bên giao dịch theo định dạng sau: <Môi trường>.<BrokerUID>.<Trader Login>, trong đó Môi trường là xác định của máy chủ, như demo hoặc live; BrokerUID được cung cấp bởi cTrader và Trader Login là định danh số của tài khoản nhà giao dịch.
56 TargetCompID CSERVER Chuỗi Mục tiêu tin nhắn. The valid value is CSERVER.
57 TargetSubID QUOTE hoặc TRADE Chuỗi Bổ sung phiên bổ sung. Các giá trị có thể là QUOTETRADE.
50 SenderSubID Không Bất kỳ giá trị hợp lệ nào Chuỗi Giá trị được gán được sử dụng để xác định người tạo tin nhắn cụ thể. Phải được đặt thành QUOTE nếu TargetSubID=QUOTE.
34 MsgSeqNum 1 Số nguyên Số thứ tự của tin nhắn.
52 SendingTime 20131129-15:40:08.155 UTCTimestamp Thời gian truyền tin nhắn luôn được biểu thị bằng UTC (Thời gian Phối hợp Quốc tế, còn được gọi là GMT).

Đoạn kết chuẩn

Mỗi tin nhắn, quản trị hoặc ứng dụng, được kết thúc bằng một đoạn kết chuẩn. Đoạn kết được sử dụng để phân tách các tin nhắn và chứa biểu diễn ba chữ số của giá trị CheckSum (tag=10).

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
10 CheckSum 054 Chuỗi Tổng kiểm tra đơn giản ba byte. Luôn là trường cuối cùng trong tin nhắn (ví dụ: phục vụ), với <SOH> cuối cùng làm dấu phân cách kết thúc tin nhắn. Nó được định nghĩa là ba ký tự (luôn không được mã hóa).

Tin nhắn phiên

Heartbeat (MsgType(35)=0)

Tin nhắn Heartbeat được gửi bởi cả cTrader và ứng dụng khách để xác nhận kết nối trực tiếp.

Ứng dụng khách của nhà cung cấp truyền một heartbeat định kỳ theo khoảng thời gian được xác định bởi trường HeartBtInt (tag=108) trong tin nhắn Đăng nhập, hoặc như một phản hồi cho tin nhắn Yêu cầu Kiểm tra.

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
112 TestReqID Không Bất kỳ giá trị hợp lệ nào Chuỗi Nếu heartbeat là kết quả của tin nhắn Yêu cầu Kiểm tra, TestReqID là bắt buộc.
Standard Trailer

Test Request (MsgType(35)=1)

Nó buộc một heartbeat từ người nhận yêu cầu. Một phản hồi được gửi từ hệ thống nhận dưới dạng tin nhắn Heartbeat chứa TestReqID.

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
112 TestReqID Bất kỳ giá trị hợp lệ nào Chuỗi ID tin nhắn heartbeat. TestReqID nên tăng dần.
Standard Trailer

Logon (bidirectional) (MsgType(35)=A)

Tin nhắn Đăng nhập được gửi từ ứng dụng phía khách hàng để bắt đầu phiên cTrader FIX, và một phản hồi được gửi bởi cTrader đến ứng dụng phía khách hàng. Khi đăng nhập hoàn tất, luồng báo giá và giao dịch có thể tiếp tục trong suốt vòng đời của phiên.

Nếu cTrader nhận được tin nhắn Đăng nhập không hợp lệ (với các trường không hợp lệ), cTrader sẽ gửi tin nhắn Đăng xuất để phản hồi.

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
98 EncryptMethod 0 Số nguyên Xác định một lược đồ mã hóa tin nhắn. Hiện tại, chỉ hỗ trợ bảo mật cấp truyền tải. Giá trị hợp lệ là 0 = NONE_OTHER (không sử dụng mã hóa).
108 HeartBtInt Bất kỳ giá trị hợp lệ nào Số nguyên Khoảng thời gian heartbeat tính bằng giây. Giá trị được đặt trong tệp config.properties (phía khách hàng) dưới dạng SERVER.POLLING.INTERVAL. Giá trị khoảng thời gian mặc định là 30 giây. Nếu HeartBtInt được đặt thành 0, không cần tin nhắn heartbeat.
141 ResetSeqNumFlag Không Y Boolean Tất cả các bên của phiên FIX nên đặt lại số thứ tự. Giá trị hợp lệ là Y (đặt lại).
553 Username Không Bất kỳ giá trị hợp lệ nào Chuỗi ID người dùng dạng số. Người dùng được liên kết với giá trị SenderCompID (tổ chức của người dùng, tag=49).
554 Password Không Bất kỳ giá trị hợp lệ nào Chuỗi Mật khẩu người dùng.
Standard Trailer

Ghi chú

Trường Username (tag=553) phải chứa giá trị đăng nhập nhà giao dịch dạng số, trong khi SenderCompID (tag=49) phải chứa môi trường, BrokerUID và đăng nhập nhà giao dịch được phân tách bằng dấu chấm (ví dụ: live.theBroker.12345).

Xem ví dụ về tin nhắn Đăng nhập bên dưới.

Yêu cầu:

8=FIX.4.4|9=126|35=A|49=live.theBroker.12345|56=CSERVER|34=1|52=20170117-08:03:04|57=TRADE|50=any_string|98=0|108=30|141=Y|553=12345|554=passw0rd!|10=131|

Phản hồi (thành công):

8=FIX.4.4|9=106|35=A|34=1|49=CSERVER|50=TRADE|52=20170117-08:03:04.509|56=live.theBroker.12345|57=any_string|98=0|108=30|141=Y|10=066|

Phản hồi (thất bại):

8=FIX.4.4|9=109|35=5|34=1|49=CSERVER|50=TRADE|52=20170117-08:03:04.509|56=live.theBroker.12345|58=InternalError: RET_INVALID_DATA|10=033|

Logout (MsgType(35)=5)

Tin nhắn Đăng xuất được gửi từ ứng dụng khách để yêu cầu kết thúc phiên với cTrader và như một phản hồi của cTrader. Đăng xuất phiên xảy ra để phản hồi khi Người tham gia Thị trường gửi tin nhắn Đăng xuất đến cTrader. Trước khi kết thúc phiên, cTrader sẽ hủy tất cả các giá vẫn đang được truyền tích cực đến bên yêu cầu. Nếu cTrader nhận được tin nhắn Đăng nhập không hợp lệ (với các trường không hợp lệ), cTrader sẽ gửi tin nhắn Đăng xuất để phản hồi với chi tiết lỗi trong trường Text (tag=58).

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
58 Text Không Bất kỳ giá trị hợp lệ nào Chuỗi Chi tiết từ chối đăng nhập. Chỉ được sử dụng cho tin nhắn từ cTrader đến khách hàng như một phản hồi tin nhắn Đăng nhập không hợp lệ.
Standard Trailer

Xem ví dụ về tin nhắn Đăng xuất bên dưới.

Yêu cầu:

8=FIX.4.4|9=86|35=5|49=live.theBroker.12345|56=CSERVER|34=161|52=20170117-09:22:33|57=TRADE|50=any_string|10=102|

Phản hồi:

8=FIX.4.4|9=90|35=5|34=160|49=CSERVER|50=TRADE|52=20170117-09:22:33.077|56=live.theBroker.12345|57=any_string|10=044|

Resend Request (MsgType(35)=2)

Tin nhắn đến/đi được sử dụng để yêu cầu gửi lại một tin nhắn (hoặc các tin nhắn), thường khi phát hiện khoảng trống trong đánh số thứ tự.

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
7 BeginSeqNo Bất kỳ giá trị hợp lệ nào Số nguyên Số thứ tự tin nhắn của bản ghi đầu tiên trong phạm vi cần được gửi lại.
16 EndSeqNo Bất kỳ giá trị hợp lệ nào Số nguyên Số thứ tự tin nhắn của bản ghi cuối cùng trong phạm vi cần được gửi lại.
Standard Trailer

Reject (bidirectional) (MsgType(35)=3)

Được gửi khi tin nhắn nhận được không thể được xử lý do vi phạm quy tắc cấp phiên. Các tin nhắn bị từ chối phải được ghi lại và số thứ tự đến phải được tăng lên.

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
45 RefSeqNum Bất kỳ giá trị hợp lệ nào SeqNum Số thứ tự của tin nhắn được tham chiếu.
58 Text Không Bất kỳ giá trị hợp lệ nào Chuỗi Một chuỗi văn bản tự do.
354 EncodedTextLen Không Bất kỳ giá trị hợp lệ nào Độ dài Độ dài của trường EncodedText (các ký tự không phải ASCII) tính bằng byte.
355 EncodedText Không Bất kỳ giá trị hợp lệ nào Dữ liệu Một biểu diễn của trường Text (tag=58), được mã hóa bằng định dạng được chỉ định trong trường MessageEncoding (tag=347) (từ tiêu đề chuẩn). Nếu sử dụng biểu diễn ASCII, nó cũng nên được chỉ định trong trường Text (tag=58).
371 RefTagID Không Bất kỳ giá trị hợp lệ nào Số nguyên Số tag của trường FIX đã khởi tạo việc từ chối tin nhắn.
372 RefMsgType Không Bất kỳ giá trị hợp lệ nào Chuỗi MsgType (tag=35) của tin nhắn FIX được tham chiếu.
373 SessionRejectReason Không Bất kỳ giá trị hợp lệ nào Số nguyên Nguyên nhân từ chối được mã hóa. Các giá trị hợp lệ là:
0 = Số tag không hợp lệ
1 = Thiếu tag bắt buộc
2 = Không có tag được định nghĩa cho loại tin nhắn này
3 = Tag không xác định
4 = Không có giá trị cho tag được chỉ định
5 = Giá trị cho tag này nằm ngoài phạm vi
6 = Định dạng dữ liệu không chính xác cho giá trị
7 = Vấn đề giải mã
8 = Lỗi chữ ký
9 = Lỗi CompID
10 = Lỗi độ chính xác SendingTime
11 = MsgType không hợp lệ
12 = Lỗi xác thực XML
13 = Tag đang được lặp lại
14 = Tag được chỉ định không đúng thứ tự
15 = Các trường nhóm lặp lại không đúng thứ tự
16 = Số lượng NumInGroup không chính xác cho nhóm lặp lại
17 = Dấu phân cách trường (ký tự SOH) được bao gồm trong giá trị không phải dữ liệu
Standard Trailer

Sequence Reset (MsgType(35)=4)

Một tin nhắn đến/đi không nên được sử dụng ở cấp độ ứng dụng. Một tin nhắn Sequence Reset chỉ có thể tăng số thứ tự.

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
123 GapFillFlag Không Yes hoặc No Chuỗi Chỉ ra rằng một tin nhắn Sequence Reset đang thay thế các tin nhắn quản trị hoặc ứng dụng sẽ không được gửi lại.
36 NewSeqNo 1 Số nguyên Một số thứ tự mới.
Standard Trailer

Thông điệp ứng dụng

Market Data Request (MsgType(35)=V)

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
262 MDReqID Bất kỳ giá trị hợp lệ nào Chuỗi ID yêu cầu báo giá duy nhất. Một ID mới cho đăng ký mới, ID giống như đã sử dụng trước đó để hủy đăng ký.
263 SubscriptionRequestType 1 hoặc 2 Ký tự 1 = Ảnh chụp nhanh cộng với cập nhật (đăng ký).
2 = Vô hiệu hóa yêu cầu ảnh chụp nhanh cộng với cập nhật trước đó (hủy đăng ký).
264 MarketDepth 0 hoặc 1 Số nguyên Sổ lệnh đầy đủ sẽ được cung cấp.
0 = Đăng ký độ sâu
1 = Đăng ký giao ngay
265 MDUpdateType Bất kỳ giá trị hợp lệ nào Số nguyên Chỉ hỗ trợ Cập nhật tăng dần.
267 NoMDEntryTypes 2 Số nguyên Luôn được đặt thành 2 (cả giá mua và giá bán sẽ được gửi).
269 MDEntryType 0 hoặc 1 Ký tự Nhóm lặp lại này chứa danh sách tất cả các loại Mục dữ liệu thị trường mà người yêu cầu muốn nhận.
0 = Bid
1 = Offer
146 NoRelatedSym Bất kỳ giá trị hợp lệ nào Số nguyên Số lượng ký hiệu được yêu cầu.
55 Symbol Bất kỳ giá trị hợp lệ nào Mua Các định danh công cụ được cung cấp bởi Spotware.
Standard Trailer

Xem các ví dụ về tin nhắn Yêu cầu dữ liệu thị trường bên dưới.

Cho Giao ngay

Yêu cầu:

8=FIX.4.4|9=131|35=V|49=live.theBroker.12345|56=CSERVER|34=3|52=20170117-10:26:54|50=QUOTE|262=876316403|263=1|264=1|265=1|146=1|55=1|267=2|269=0|269=1|10=094|

Phản hồi:

8=FIX.4.4|9=134|35=W|34=2|49=CSERVER|50=QUOTE|52=20170117-10:26:54.630|56=live.theBroker.12345|57=any_string|55=1|268=2|269=0|270=1.06625|269=1|270=1.0663|10=118|

Cho Độ sâu

Yêu cầu:

8=FIX.4.4|9=131|35=V|49=live.theBroker.12345|56=CSERVER|34=2|52=20170117-11:13:44|50=QUOTE|262=876316411|263=1|264=0|265=1|146=1|55=1|267=2|269=0|269=1|10=087|

Phản hồi:

8=FIX.4.4|9=310|35=W|34=2|49=CSERVER|50=QUOTE|52=20180925-12:05:28.284|56=live.theBroker.12345|57=Quote|55=1|268=6|269=1|270=1.11132|271=3000000|278=16|269=1|270=1.11134|271=5000000|278=17|269=1|270=1.11133|271=3000000|278=15|269=0|270=1.1112|271=2000000|278=12|269=0|270=1.11121|271=1000000|278=13|269=0|270=1.11122|271=3000000|278=14|10=247|
8=FIX.4.4|9=693|35=X|34=2|49=CSERVER|50=QUOTE|52=20170117-11:13:44.461|56=live.theBroker.12345|57=any_string|268=12|279=0|269=1|278=7475|55=1|270=1.0691|271=2000000|279=0|269=1|278=7476|55=1|270=1.06911|271=3000000|279=0|269=1|278=7484|55=1|270=1.06931|271=34579000|279=0|269=1|278=7485|55=1|270=1.06908|271=1000000|279=0|269=1|278=7483|55=1|270=1.06906|271=500000|279=0|269=1|278=7482|55=1|270=1.06907|271=500000|279=0|269=1|278=7488|55=1|270=1.06909|271=3000000|279=0|269=0|278=7468|55=1|270=1.06898|271=500000|279=0|269=0|278=7467|55=1|270=1.06874|271=32371000|279=0|269=0|278=7457|55=1|270=1.06899|271=1000000|279=0|269=0|278=7478|55=1|270=1.06896|271=7000000|279=0|269=0|278=7477|55=1|270=1.06897|271=1500000|10=111|
8=FIX.4.4|9=376|35=X|34=3|49=CSERVER|50=QUOTE|52=20170117-11:13:44.555|56=live.theBroker.12345|57=any_string|268=8|279=0|269=0|278=7491|55=1|270=1.06897|271=1000000|279=0|269=0|278=7490|55=1|270=1.06898|271=1000000|279=0|269=0|278=7489|55=1|270=1.06874|271=32373000|279=0|269=1|278=7496|55=1|270=1.06931|271=34580000|279=2|278=7477|55=1|279=2|278=7468|55=1|279=2|278=7467|55=1|279=2|278=7484|55=1|10=192|

Market Data Snapshot/Full Refresh (MsgType(35)=W)

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
262 MDReqID Bất kỳ giá trị hợp lệ nào Chuỗi ID của yêu cầu dữ liệu thị trường đã gửi trước đó.
55 Symbol Bất kỳ giá trị hợp lệ nào Mua Các định danh công cụ được cung cấp bởi Spotware.
268 NoMDEntries Bất kỳ giá trị hợp lệ nào Số nguyên Số lượng mục tiếp theo.
269 MDEntryType Không 0 hoặc 1 Ký tự Các giá trị hợp lệ là:
0 = Giá mua
1 = Giá chào bán
Chỉ yêu cầu khi NoMDEntries (tag=268) > 0.
299 QuoteEntryID Không Bất kỳ giá trị hợp lệ nào Chuỗi Một định danh duy nhất của báo giá như một phần của QuoteSet.
270 MDEntryPx Không 1.2345 Giá Giá của Mục Nhập Dữ Liệu Thị Trường. Chỉ yêu cầu khi NoMDEntries (tag=268) > 0.
271 MDEntrySize Không 500000 Khối lượng Khối lượng của Mục Nhập Dữ Liệu Thị Trường. Chỉ yêu cầu khi NoMDEntries (tag=268) > 0.
278 MDEntryID Không Bất kỳ giá trị hợp lệ nào Chuỗi Một định danh duy nhất của Mục Nhập Dữ Liệu Thị Trường.
Standard Trailer

Market Data Incremental Refresh (MsgType(35)=X)

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
262 MDReqID Bất kỳ giá trị hợp lệ nào Chuỗi ID của yêu cầu dữ liệu thị trường đã gửi trước đó.
268 NoMDEntries Bất kỳ giá trị hợp lệ nào Số nguyên Số lượng mục tiếp theo. Nhóm lặp lại này chứa danh sách tất cả các loại Mục Nhập Dữ Liệu Thị Trường mà người yêu cầu muốn nhận.
279 MDUpdateAction 0 hoặc 2 Ký tự Một loại hành động cập nhật Dữ Liệu Thị Trường. Các giá trị hợp lệ là:
0 = Mới
2 = Xóa
269 MDEntryType Không 0 hoặc 1 Ký tự Các giá trị hợp lệ là:
0 = Giá mua
1 = Giá bán
278 MDEntryID Bất kỳ giá trị hợp lệ nào Chuỗi ID của Mục Nhập Dữ Liệu Thị Trường.
55 Symbol Bất kỳ giá trị hợp lệ nào Mua Các định danh công cụ được cung cấp bởi Spotware.
270 MDEntryPx Không 1.2345 Giá Chỉ yêu cầu khi MDUpdateAction (tag=279) = 0.
271 MDEntrySize Không 10000 Nhân bản Chỉ yêu cầu khi MDUpdateAction (tag=279) = 0.
Standard Trailer

New Order Single (MsgType(35)=D)

Một thông điệp Lệnh Đơn Mới có định dạng sau.

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
11 ClOrdID Bất kỳ giá trị hợp lệ nào Chuỗi Một định danh duy nhất của lệnh được phân bổ bởi khách hàng.
55 Symbol Bất kỳ giá trị hợp lệ nào Mua Các định danh công cụ được cung cấp bởi Spotware.
54 Side 1 hoặc 2 Số nguyên 1 = Buy
2 = Sell
60 TransactTime Bất kỳ giá trị hợp lệ nào Dấu thời gian Thời gian yêu cầu được tạo bởi khách hàng.
38 OrderQty Bất kỳ giá trị hợp lệ nào SLg Số lượng cổ phiếu được đặt lệnh. Đây là số lượng cổ phiếu cho cổ phiếu hoặc dựa trên quy ước thông thường là số lượng hợp đồng cho quyền chọn, hợp đồng tương lai, trái phiếu chuyển đổi, v.v. Độ chính xác tối đa là 0,01. Trước FIX 4.2, loại của trường này là "Số nguyên".
40 OrdType 1, 2 hoặc 3 Ký tự 1 = Thị trường, lệnh sẽ được xử lý theo phương thức Thực hiện ngay hoặc Hủy (IOC) (TimeInForce, tag=59).
2 = Giới hạn, lệnh sẽ được xử lý theo phương thức Hiệu lực cho đến khi Hủy (GTC) (TimeInForce, tag=59).
3 = Dừng, lệnh sẽ được xử lý theo phương thức Hiệu lực cho đến khi Hủy (GTC) (TimeInForce, tag=59).
44 Price Không Bất kỳ giá trị hợp lệ nào Giá Giá khách hàng tồi tệ nhất mà khách hàng sẽ chấp nhận. Chỉ yêu cầu khi OrdType (tag=40) = 2, trong trường hợp này lệnh sẽ không được thực hiện trừ khi có thể đáp ứng giá này.
99 StopPx Không Bất kỳ giá trị hợp lệ nào Giá Giá kích hoạt lệnh dừng. Chỉ yêu cầu khi OrdType (tag=40) = 3, trong trường hợp này lệnh sẽ không được thực hiện trừ khi có thể đáp ứng giá này.
59 TimeInForce Không 1, 3 or 6 Chuỗi Đã lỗi thời, giá trị này sẽ bị bỏ qua. TimeInForce sẽ được phát hiện tự động tùy thuộc vào OrdType (tag=40) và ExpireTime (tag=126):
1 = Hiệu lực cho đến khi Hủy (GTC), sẽ chỉ được sử dụng cho lệnh giới hạn và lệnh dừng (OrdType, tag=40) chỉ khi ExpireTime (tag=126) không được xác định.
3 = Thực hiện ngay hoặc Hủy (IOC), sẽ chỉ được sử dụng cho lệnh thị trường (OrdType, tag=40).
6 = Hiệu lực đến Ngày (GTD), sẽ chỉ được sử dụng cho lệnh giới hạn và lệnh dừng (OrdType, tag=40) chỉ khi ExpireTime (tag=126) được xác định.
126 ExpireTime Không 20140215-07:24:55 Dấu thời gian Thời gian hết hạn theo định dạng "YYYYMMDD-HH:MM:SS". Nếu được gán, lệnh sẽ được xử lý theo phương thức GTD (TimeInForce: GTD).
721 PosMaintRptID Không Bất kỳ giá trị hợp lệ nào Chuỗi ID vị thế nơi lệnh này sẽ được đặt. Nếu không được đặt, một vị thế mới sẽ được tạo và ID của nó sẽ được trả về trong thông điệp Báo cáo Thực hiện. Nó chỉ có thể được chỉ định cho các tài khoản phòng ngừa rủi ro.
494 Designation Không Bất kỳ giá trị hợp lệ nào Chuỗi Nhãn lệnh tùy chỉnh.
Standard Trailer

Xem các ví dụ về thông điệp Lệnh Đơn Mới bên dưới.

Lệnh thị trường cho vị thế mới

Yêu cầu:

8=FIX.4.4|9=143|35=D|49=live.theBroker.12345|56=CSERVER|34=77|52=20170117-10:02:14|50=any_string|57=TRADE|11=876316397|55=1|54=1|60=20170117-10:02:14|40=1|38=10000|10=010|

Phản hồi:

8=FIX.4.4|9=197|35=8|34=77|49=CSERVER|50=TRADE|52=20170117-10:02:14.720|56=live.theBroker.12345|57=any_string|11=876316397|14=0|37=101|38=10000|39=0|40=1|54=1|55=1|59=3|60=20170117-10:02:14.591|150=0|151=10000|721=101|10=149|
8=FIX.4.4|9=206|35=8|34=78|49=CSERVER|50=TRADE|52=20170117-10:02:15.045|56=live.theBroker.12345|57=any_string|6=1.0674|11=876316397|14=10000|32=10000|37=101|38=10000|39=2|40=1|54=1|55=1|59=3|60=20170117-10:02:14.963|150=F|151=0|721=101|10=077|

Lệnh thị trường cho vị thế hiện có

Yêu cầu:

8=FIX.4.4|9=151|35=D|49=live.theBroker.12345|56=CSERVER|34=80|52=20170117-10:02:55|50=any_string|57=TRADE|11=876316398|55=1|54=1|60=20170117-10:02:55|40=1|38=10000|721=101|10=120|

Phản hồi:

8=FIX.4.4|9=197|35=8|34=80|49=CSERVER|50=TRADE|52=20170117-10:02:56.003|56=live.theBroker.12345|57=any_string|11=876316398|14=0|37=102|38=10000|39=0|40=1|54=1|55=1|59=3|60=20170117-10:02:55.984|150=0|151=10000|721=101|10=156|
8=FIX.4.4|9=207|35=8|34=81|49=CSERVER|50=TRADE|52=20170117-10:02:56.239|56=live.theBroker.12345|57=any_string|6=1.06735|11=876316398|14=10000|32=10000|37=102|38=10000|39=2|40=1|54=1|55=1|59=3|60=20170117-10:02:56.210|150=F|151=0|721=101|10=127

Lệnh giới hạn cho vị thế hiện có

Yêu cầu:

8=FIX.4.4|9=162|35=D|49=live.theBroker.12345|56=CSERVER|34=89|52=20170117-10:06:22|50=any_string|57=TRADE|11=876316400|55=1|54=2|60=20170117-10:06:22|40=2|44=1.07162|38=50000|721=101|10=122|

Phản hồi:

8=FIX.4.4|9=208|35=8|34=90|49=CSERVER|50=TRADE|52=20170117-10:06:22.466|56=live.theBroker.12345|57=any_string|11=876316400|14=0|37=104|38=50000|39=0|40=2|44=1.07162|54=2|55=1|59=1|60=20170117-10:06:22.436|150=0|151=50000|721=101|10=149|

Lệnh dừng cho vị thế mới

Yêu cầu:

8=FIX.4.4|9=153|35=D|49=live.theBroker.12345|56=CSERVER|34=9|52=20170117-12:10:48|57=TRADE|50=any_string|11=876316418|55=1|54=1|60=20170117-12:10:48|40=3|38=50000|99=1.07148|10=249|

Phản hồi:

8=FIX.4.4|9=207|35=8|34=8|49=CSERVER|50=TRADE|52=20170117-12:10:48.400|56=live.theBroker.12345|57=any_string|11=876316418|14=0|37=205|38=50000|39=0|40=3|54=1|55=1|59=1|60=20170117-12:10:48.362|99=1.07148|150=0|151=50000|721=202|10=122|

Order Status Request (MsgType(35)=H)

Một thông điệp Yêu cầu Trạng thái Lệnh được sử dụng bởi một tổ chức để tạo ra một thông điệp trạng thái lệnh từ nhà giao dịch. Để tương tác chính xác, điều rất quan trọng là phải có định danh lệnh khách hàng duy nhất (ClOrdID) cho tất cả các lệnh.

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
11 ClOrdID Bất kỳ giá trị hợp lệ nào Chuỗi Một định danh duy nhất của lệnh được phân bổ bởi khách hàng.
54 Side Không 1 hoặc 2 Số nguyên 1 = Buy
2 = Sell
Standard Trailer

Xem các ví dụ về thông điệp Yêu cầu Trạng thái Lệnh bên dưới.

Yêu cầu:

8=FIX.4.4|9=98|35=H|49=live.theBroker.12345|56=CSERVER|34=95|52=20170117-10:08:31|50=any_string|57=TRADE|11=876316400|10=191|

Phản hồi:

8=FIX.4.4|9=208|35=8|34=95|49=CSERVER|50=TRADE|52=20170117-10:08:31.819|56=live.theBroker.12345|57=any_string|11=876316400|14=0|37=104|38=50000|39=0|40=2|44=1.07162|54=2|55=1|59=1|60=20170117-10:06:22.436|150=0|151=50000|721=101|10=158|

Order Mass Status Request (MsgType(35)=AF)

Một thông điệp Yêu cầu Trạng thái Hàng loạt Lệnh yêu cầu trạng thái cho các lệnh phù hợp với tiêu chí được chỉ định trong yêu cầu. Câu trả lời sẽ được trả về dưới dạng một số thông điệp Báo cáo Thực hiện (một cho mỗi lệnh), hoặc dưới dạng thông điệp Từ chối Thông điệp Kinh doanh nếu không tìm thấy lệnh nào.

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
584 MassStatusReqID Bất kỳ giá trị hợp lệ nào Chuỗi ID duy nhất của Yêu cầu Trạng thái Hàng loạt được gán bởi khách hàng.
585 MassStatusReqType Bất kỳ giá trị hợp lệ nào Số nguyên 7 = Trạng thái cho tất cả các lệnh.
Hiện tại chỉ hỗ trợ giá trị 7.
225 IssueDate Không Bất kỳ giá trị hợp lệ nào Chuỗi Nếu được đặt, phản hồi sẽ chỉ chứa các lệnh được tạo trước ngày này.
Standard Trailer

Xem các ví dụ về tin nhắn Yêu cầu Trạng thái Hàng loạt Lệnh bên dưới.

Yêu cầu:

8=FIX.4.4|9=117|35=AF|34=3|49=live.theBroker.12345|52=20170404-07:20:55.325|56=CSERVER|57=TRADE|225=20170404-07:20:44.582|584=mZzEY|585=7|10=065|

Phản hồi:

8=FIX.4.4|9=199|35=8|34=13|49=CSERVER|50=TRADE|52=20170404-07:20:55.333|56=live.theBroker.12345|14=0|37=635|38=100000|39=0|40=2|44=1.35265|54=2|55=1|59=1|60=20170404-07:20:44.582|150=I|151=100000|584=mZzEY|721=617|911=1|10=152|

Execution Report (MsgType(35)=8)

Một tin nhắn Báo cáo Thực hiện cho một lệnh được chấp nhận có định dạng sau.

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
37 OrderID Bất kỳ giá trị hợp lệ nào Chuỗi ID lệnh cTrader.
11 ClOrdID Không Bất kỳ giá trị hợp lệ nào Chuỗi Một định danh duy nhất của lệnh được phân bổ bởi khách hàng.
911 TotNumReports Không Bất kỳ giá trị hợp lệ nào Số nguyên Tổng số báo cáo được trả về để đáp ứng tin nhắn Yêu cầu Trạng thái Hàng loạt Lệnh.
150 ExecType Bất kỳ giá trị hợp lệ nào Ký tự 0 = New
4 = Canceled
5 = Replace
8 = Rejected
C = Expired
F = Trade
I = Order Status
39 OrdStatus Bất kỳ giá trị hợp lệ nào Ký tự 0 = Mới
1 = Được khớp một phần
2 = Được khớp hoàn toàn
8 = Bị từ chối
4 = Đã hủy (khi lệnh được khớp một phần, Canceled được trả về để chỉ ra (tag=151), LeavesQty bị hủy và sẽ không được khớp sau đó).
C = Hết hạn
55 Symbol Không Bất kỳ giá trị hợp lệ nào Mua Các định danh công cụ được cung cấp bởi Spotware.
54 Side Không 1 hoặc 2 Số nguyên 1 = Mua
2 = Bán
60 TransactTime Không Bất kỳ giá trị hợp lệ nào Dấu thời gian Thời gian thực hiện giao dịch được thể hiện bởi tin nhắn Báo cáo Thực hiện (theo UTC).
6 AvgPx Không Bất kỳ giá trị hợp lệ nào Số nguyên Giá mà giao dịch được khớp. Đối với lệnh IOC hoặc GTD, đây là Giá Trung bình Theo Khối lượng Giao dịch (VWAP) của lệnh đã được khớp.
38 OrderQty Không Bất kỳ giá trị hợp lệ nào SLg Đây là số lượng cổ phiếu cho cổ phiếu hoặc dựa trên quy ước thông thường là số lượng hợp đồng cho quyền chọn, hợp đồng tương lai, trái phiếu chuyển đổi, v.v. Trước FIX 4.2, loại của trường này là "Số nguyên".
151 LeavesQty Không Bất kỳ giá trị hợp lệ nào SLg Số lượng lệnh vẫn còn cần được khớp. Các giá trị có thể là từ 0 (đã khớp hoàn toàn) đến OrderQty (đã khớp một phần).
14 CumQty Không Bất kỳ giá trị hợp lệ nào SLg Tổng số lượng lệnh đã được khớp.
32 LastQty Không Bất kỳ giá trị hợp lệ nào SLg Số lượng mua/bán của các lệnh đã được khớp trong lần khớp (cuối cùng) này.
40 OrdType Không 1 hoặc 2 Ký tự 1 = Thị trường
2 = Giới hạn
44 Price Không Bất kỳ giá trị hợp lệ nào Giá Nếu được cung cấp trong tin nhắn Lệnh Đơn Mới, nó sẽ được lặp lại trong tin nhắn Báo cáo Thực hiện này.
99 StopPx Không Bất kỳ giá trị hợp lệ nào Giá Nếu được cung cấp trong tin nhắn Lệnh Đơn Mới, nó sẽ được lặp lại trong tin nhắn Báo cáo Thực hiện này.
59 TimeInForce Không 1, 3 hoặc 6 Chuỗi 1 = Hiệu lực đến khi hủy (GTC)
3 = Khớp ngay hoặc hủy (IOC)
6 = Hiệu lực đến ngày (GTD)
126 ExpireTime Không 20140215-07:24:55 Dấu thời gian Nếu được cung cấp trong tin nhắn Lệnh Đơn Mới, nó sẽ được lặp lại trong tin nhắn Báo cáo Thực hiện này.
58 Text Không Bất kỳ giá trị hợp lệ nào Chuỗi Khi có thể, một tin nhắn sẽ giải thích Báo cáo Thực hiện.
103 OrdRejReason Không 0 Số nguyên 0 = OrdRejReason.BROKER_EXCHANGE_OPTION
721 PosMaintRptID Không Bất kỳ giá trị hợp lệ nào Chuỗi ID vị thế.
494 Designation Không Bất kỳ giá trị hợp lệ nào Chuỗi Nhãn lệnh tùy chỉnh của khách hàng.
584 MassStatusReqID Không Bất kỳ giá trị hợp lệ nào Chuỗi ID duy nhất của yêu cầu trạng thái hàng loạt được gán bởi khách hàng.
1000 AbsoluteTP Không Bất kỳ giá trị hợp lệ nào Giá Giá tuyệt đối mà tại đó lệnh chốt lời sẽ được kích hoạt.
1001 RelativeTP Không Bất kỳ giá trị hợp lệ nào Giá Khoảng cách tính bằng pip từ giá vào lệnh mà tại đó lệnh chốt lời sẽ được kích hoạt.
1002 AbsoluteSL Không Bất kỳ giá trị hợp lệ nào Giá Giá tuyệt đối mà tại đó lệnh cắt lỗ sẽ được kích hoạt.
1003 RelativeSL Không Bất kỳ giá trị hợp lệ nào Giá Khoảng cách tính bằng pip từ giá vào lệnh mà tại đó lệnh cắt lỗ sẽ được kích hoạt.
1004 TrailingSL Không N hoặc Y Boolean Chỉ ra liệu lệnh cắt lỗ có đang dịch chuyển hay không.
N = Lệnh cắt lỗ không dịch chuyển.
Y = Lệnh cắt lỗ đang dịch chuyển.
1005 TriggerMethodSL Không Bất kỳ giá trị hợp lệ nào Số nguyên Phương thức kích hoạt được chỉ định của lệnh cắt lỗ.
1 = Cắt lỗ sẽ được kích hoạt theo hướng giao dịch.
2 = Cắt lỗ sẽ được kích hoạt theo hướng ngược lại (ask cho vị thế mua và bid cho vị thế bán).
3 = Cắt lỗ sẽ được kích hoạt sau hai tick liên tiếp theo hướng giao dịch.
4 = Cắt lỗ sẽ được kích hoạt sau hai tick liên tiếp theo hướng ngược lại (tick ask thứ hai cho vị thế mua và tick bid thứ hai cho vị thế bán).
1006 GuaranteedSL Không N hoặc Y Boolean Cho biết liệu lệnh cắt lỗ có được đảm bảo hay không.
N = Cắt lỗ không được đảm bảo.
Y = Cắt lỗ được đảm bảo.
Standard Trailer

Xem ví dụ về Lệnh mới đơn lẻ ở cuối hướng dẫn.

Business Message Reject (MsgType(35)=j)

Loại thông điệp này được gửi khi hệ thống không thể xử lý yêu cầu đăng ký hoặc một lệnh không thể được thực hiện.

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
45 RefSeqNum Không Bất kỳ giá trị hợp lệ nào Số nguyên MsgSeqNum (tag=34) của thông điệp bị từ chối.
372 RefMsgType Không Bất kỳ giá trị hợp lệ nào Chuỗi MsgType (tag=35) của thông điệp FIX đang được tham chiếu.
379 BusinessRejectRefID Không Bất kỳ giá trị hợp lệ nào Chuỗi Giá trị của trường ID cấp nghiệp vụ trong thông điệp đang được tham chiếu. Bắt buộc trừ khi trường ID tương ứng không được chỉ định.
380 BusinessRejectReason 0 Số nguyên Mã để xác định lý do cho thông điệp Từ chối nghiệp vụ.
0 = Khác
58 Text Không Bất kỳ giá trị hợp lệ nào Chuỗi Nếu có thể, một thông điệp để giải thích lý do từ chối.
Standard Trailer

Xem ví dụ về thông điệp Từ chối nghiệp vụ bên dưới.

8=FIX.4.4|9=149|35=j|34=2|49=CSERVER|52=20170105-06:36:00.912|56=live.theBroker.12345|57=any_string|58=Message to explain reason for rejection|379=u4Jr7Rr5t2VS7HSP|380=0|10=123|

Request for Positions (MsgType(35)=AN)

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
710 PosReqID Bất kỳ giá trị hợp lệ nào Chuỗi ID yêu cầu duy nhất (được đặt bởi khách hàng).
721 PosMaintRptID Không Bất kỳ giá trị hợp lệ nào Chuỗi ID vị thế để yêu cầu. Nếu không được đặt, tất cả các vị thế mở sẽ được trả về.
Standard Trailer

Xem các ví dụ về thông điệp Yêu cầu vị thế bên dưới.

Yêu cầu:

8=FIX.4.4|9=100|35=AN|49=live.theBroker.12345|56=CSERVER|34=99|52=20170117-10:09:54|50=any_string|57=TRADE|710=876316401|10=103|

Phản hồi:

8=FIX.4.4|9=163|35=AP|34=98|49=CSERVER|50=TRADE|52=20170117-10:09:54.076|56=live.theBroker.12345|57=any_string|55=1|710=876316401|721=101|727=1|728=0|730=1.06671|702=1|704=0|705=30000|10=182|

Position Report (MsgType(35)=AP)

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
710 PosReqID Bất kỳ giá trị hợp lệ nào Chuỗi ID của thông điệp Yêu cầu vị thế.
721 PosMaintRptID Không Bất kỳ giá trị hợp lệ nào Chuỗi ID vị thế, không được đặt nếu PosReqResult (tag=728) không phải là VALID_REQUEST.
727 TotalNumPosReports Bất kỳ giá trị hợp lệ nào Chuỗi Tổng số Báo cáo vị thế trong một chuỗi khi PosReqResult (tag=728) là VALID_REQUEST, nếu không thì = 0.
728 PosReqResult 0 hoặc 2 Chuỗi 0 = Yêu cầu hợp lệ
2 = Không tìm thấy vị thế mở nào phù hợp với tiêu chí.
55 Symbol Không Bất kỳ giá trị hợp lệ nào Chuỗi Ký hiệu mà Báo cáo vị thế hiện tại được chuẩn bị. Không được đặt nếu PosReqResult (tag=728) không phải là VALID_REQUEST.
702 NoPositions Không 1 Chuỗi 1 khi PosReqResult (tag=728) là VALID_REQUEST, nếu không thì không được đặt.
704 LongQty Không Bất kỳ giá trị hợp lệ nào Chuỗi Khối lượng mở của vị thế trong trường hợp hướng giao dịch mua, bằng 0 trong trường hợp hướng giao dịch bán. Không được đặt nếu PosReqResult (tag=728) không phải là VALID_REQUEST.
705 ShortQty Không Bất kỳ giá trị hợp lệ nào Chuỗi Khối lượng mở của vị thế trong trường hợp hướng giao dịch bán, bằng 0 trong trường hợp hướng giao dịch mua. Không được đặt nếu PosReqResult (tag=728) không phải là VALID_REQUEST.
730 SettlPrice Không Bất kỳ giá trị hợp lệ nào Chuỗi Giá trung bình của khối lượng đã mở trong Báo cáo vị thế hiện tại.
1000 AbsoluteTP Không Bất kỳ giá trị hợp lệ nào Giá Giá tuyệt đối mà tại đó lệnh chốt lời sẽ được kích hoạt.
1002 AbsoluteSL Không Bất kỳ giá trị hợp lệ nào Giá Giá tuyệt đối mà tại đó lệnh cắt lỗ sẽ được kích hoạt.
1004 TrailingSL Không Bất kỳ giá trị hợp lệ nào Boolean Chỉ ra liệu lệnh cắt lỗ có đang dịch chuyển hay không.
N = Lệnh cắt lỗ không dịch chuyển.
Y = Lệnh cắt lỗ đang dịch chuyển.
1005 TriggerMethodSL Không Bất kỳ giá trị hợp lệ nào Số nguyên Phương thức kích hoạt được chỉ định của lệnh cắt lỗ.
1 = Cắt lỗ sẽ được kích hoạt theo hướng giao dịch.
2 = Cắt lỗ sẽ được kích hoạt theo hướng ngược lại (ask cho vị thế mua và bid cho vị thế bán).
3 = Cắt lỗ sẽ được kích hoạt sau hai tick liên tiếp theo hướng giao dịch.
4 = Cắt lỗ sẽ được kích hoạt sau hai tick liên tiếp theo hướng ngược lại (tick ask thứ hai cho vị thế mua và tick bid thứ hai cho vị thế bán).
1006 GuaranteedSL Không Bất kỳ giá trị hợp lệ nào Boolean Cho biết liệu lệnh cắt lỗ có được đảm bảo hay không.
N = Cắt lỗ không được đảm bảo.
Y = Cắt lỗ được đảm bảo.
Standard Trailer

Order Cancel Request (MsgType(35)=F)

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
41 OrigClOrdID Bất kỳ giá trị hợp lệ nào Chuỗi Một định danh duy nhất của lệnh sẽ bị hủy, được phân bổ bởi khách hàng.
37 OrderID Không Bất kỳ giá trị hợp lệ nào Chuỗi Một ID duy nhất của lệnh được trả về bởi cServer.
11 ClOrdID Bất kỳ giá trị hợp lệ nào Chuỗi Một ID duy nhất của yêu cầu hủy được phân bổ bởi khách hàng.
Standard Trailer

Xem các ví dụ về tin nhắn Yêu cầu Hủy Lệnh bên dưới.

Yêu cầu:

8=FIX.4.4|9=115|35=F|34=2|49=live.theBroker.12345|50=Trade|52=20170721-13:41:21.694|56=CSERVER|57=TRADE|11=jR8dBPcZEQa9|41=n9Tm8x1AavO5|10=182|

Phản hồi (thành công):

8=FIX.4.4|9=221|35=8|34=3|49=CSERVER|50=TRADE|52=20170721-13:41:21.784|56=live.theBroker.12345|57=Trade|11=jR8dBPcZEQa9|14=0|37=641|38=100000|39=4|40=2|41=n9Tm8x1AavO5|44=1.499|54=1|55=1|59=1|60=20170721-13:41:21.760|150=4|151=100000|721=624|10=180|

Phản hồi (thất bại):

8=FIX.4.4|9=174|35=j|34=3|49=CSERVER|50=TRADE|52=20170721-13:41:21.856|56=live.theBroker.12345|57=Trade|58=ORDER_NOT_FOUND:Order with clientOrderId=n9Tm8x1AavO5 not found.|379=jR8dBPcZEQa9|380=0|10=075|

Order Cancel Reject (MsgType(35)=9)

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
37 OrderID Bất kỳ giá trị hợp lệ nào Chuỗi Một định danh duy nhất của lệnh mà hệ thống không thể hủy.
11 ClOrdID Bất kỳ giá trị hợp lệ nào Chuỗi Một định danh duy nhất của Yêu cầu Hủy Lệnh.
41 OrigClOrdID Không Bất kỳ giá trị hợp lệ nào Chuỗi Một định danh duy nhất của lệnh đã được cố gắng hủy, được phân bổ bởi khách hàng.
39 OrdStatus Bất kỳ giá trị hợp lệ nào Ký tự 0 = Mới
1 = Được thực hiện một phần
2 = Đã thực hiện
8 = Bị từ chối
4 = Đã hủy (khi lệnh được thực hiện một phần, Canceled được trả về để chỉ ra (tag=151), LeavesQty bị hủy và sẽ không được thực hiện tiếp theo).
C = Hết hạn
434 CxlRejResponseTo 1 hoặc 2 Ký tự 1 = Từ chối hủy lệnh.
2 = Từ chối sửa đổi lệnh từ một thiết bị đầu cuối khác.
58 Text Không Bất kỳ giá trị hợp lệ nào Chuỗi Một lệnh đang được thực hiện.
Standard Trailer

Xem ví dụ về tin nhắn Từ chối Hủy Lệnh bên dưới.

Phản hồi:

8=FIX.4.4|9=156|35=9|34=3|49=CSERVER|50=TRADE|52=20181024-12:35:02.896|56=live.theBroker.12345|57=Trade|11=gBljx7YOg5jY|37=629|39=0|41=FdXLfS0tTyUL|58=Order is under execution|434=1|10=109|

Order Cancel/Replace Request (MsgType(35)=G)

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
41 OrigClOrdID Any valid value Chuỗi Một định danh duy nhất của lệnh sẽ được sửa đổi, được phân bổ bởi khách hàng.
37 OrderID Không Bất kỳ giá trị hợp lệ nào Chuỗi Một ID duy nhất của lệnh gốc sẽ được sửa đổi, được phân bổ bởi máy chủ. Phương pháp ưu tiên sử dụng.
11 ClOrdID Bất kỳ giá trị hợp lệ nào Chuỗi Một ID duy nhất của yêu cầu sửa đổi được phân bổ bởi khách hàng.
38 OrderQty Bất kỳ giá trị hợp lệ nào SLg Một số lượng hiện có hoặc mới được chỉ định để thay thế giá trị cũ.
44 Price Không Bất kỳ giá trị hợp lệ nào Giá Một giá giới hạn hiện có hoặc mới được chỉ định để thay thế giá trị cũ. Chỉ hợp lệ cho các lệnh giới hạn.
99 StopPx Không Bất kỳ giá trị hợp lệ nào Giá Một giá dừng hiện có hoặc mới được chỉ định để thay thế giá trị cũ. Chỉ hợp lệ cho các lệnh dừng.
126 ExpireTime Không 20140215-07:24:55 Dấu thời gian Thời gian hết hạn hiện có hoặc mới được chỉ định. Chỉ hợp lệ cho các lệnh chờ.
Standard Trailer

Xem các ví dụ về tin nhắn Yêu cầu Hủy/Thay thế Lệnh bên dưới.

Yêu cầu:

8=FIX.4.4|9=123|35=G|34=3|49=live.theBroker.12345|50=Trade|52=20170721-13:42:17.680|56=CSERVER|57=TRADE|11=Is03AvsknNYK|38=5000|41=n9Tm8x1AavO5|44=1.1|10=010|

Phản hồi (thành công):

8=FIX.4.4|9=192|35=8|34=3|49=CSERVER|50=TRADE|52=20170721-13:42:18.784|56=live.theBroker.12345|57=Trade|11=Is03AvsknNYK|14=0|37=629|38=5000|39=0|40=2|44=1.1|54=1|55=1|59=1|60=20170721-13:42:18.760|150=5|151=5000|721=624|10=150|

Phản hồi (thất bại):

8=FIX.4.4|9=171|35=j|34=3|49=CSERVER|50=TRADE|52=20170721-13:42:18.784|56=live.theBroker.12345|57=Trade|58=ORDER_NOT_FOUND:Order with orderId:4429421711699105367 isn't found|379=NXek3EzJvMme|380=0|10=245|

Market Data Request Reject (MsgType(35)=Y)

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
262 MDReqID Bất kỳ giá trị hợp lệ nào Chuỗi Phải tham chiếu đến MDReqID (tag=262) của yêu cầu.
281 MDReqRejReason Không Bất kỳ giá trị hợp lệ nào Số nguyên 0 = Ký hiệu không xác định
4 = SubscriptionRequestType (tag=263) không được hỗ trợ
5 = MarketDepth (tag=264) không được hỗ trợ
Standard Trailer

Xem các ví dụ về tin nhắn Từ chối Yêu cầu Dữ liệu Thị trường bên dưới.

Yêu cầu:

8=FIX.4.4|9=148|35=V|34=2|49=live.theBroker.12345|50=Quote|52=20170920-09:52:13.032|56=CSERVER|57=QUOTE|262=CS8260:sXlXex|263=1|264=0|265=1|146=1|55=CS8260|267=2|269=0|269=1|10=129|

Từ chối:

8=FIX.4.4|9=164|35=Y|34=2|49=CSERVER|50=QUOTE|52=20170920-09:52:13.036|56=live.theBroker.12345|57=Quote|58=INVALID_REQUEST: Expected numeric symbolId, but got CS8260|262=CS8260:sXlXex|281=0|10=236|

Yêu cầu:

8=FIX.4.4|9=136|35=V|34=6|49=live.theBroker.12345|50=Quote|52=20170920-09:52:13.199|56=CSERVER|57=QUOTE|262=EwOhiWvMdCpc|263=1|264=3|146=1|55=1|267=2|269=0|269=1|10=182|

Từ chối:

8=FIX.4.4|9=157|35=Y|34=6|49=CSERVER|50=QUOTE|52=20170920-09:52:13.201|56=live.theBroker.12345|57=Quote|58=INVALID_REQUEST: MarketDepth should be either 0 or 1|262=EwOhiWvMdCpc|281=5|10=088|

Security List Request (MsgType(35)=x)

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
320 SecurityReqID Bất kỳ giá trị hợp lệ nào Chuỗi Một ID duy nhất của Yêu cầu Định nghĩa Chứng khoán.
559 SecurityListRequestType 0 Số nguyên Loại Yêu cầu Danh sách Chứng khoán đang được thực hiện. Chỉ hỗ trợ 0 = Symbol (tag=55).
55 Symbol Không Bất kỳ giá trị hợp lệ nào Số nguyên Một ID để giải quyết tên ký hiệu.
Standard Trailer

Xem các ví dụ về tin nhắn Yêu cầu Danh sách Chứng khoán bên dưới.

Yêu cầu:

8=FIX.4.4|9=107|35=x|34=3|49=live.theBroker.12345|50=Trade|52=20180427-12:24:27.106|56=CSERVER|57=TRADE|55=39|320=ILCea0JkdQEm|559=0|10=248|

Phản hồi:

8=FIX.4.4|9=158|35=y|34=3|49=CSERVER|50=TRADE|52=20180427-12:24:27.107|56=live.theBroker.12345|57=Trade|320=ILCea0JkdQEm|322=responce:ILCea0JkdQEm|560=0|146=1|55=39|1007=NZDCHF|1008=4|10=088|

Security List (MsgType(35)=y)

Thẻ Tên trường Bắt buộc Giá trị Định dạng FIX Bình luận
Standard Header
320 SecurityReqID Bất kỳ giá trị hợp lệ nào Chuỗi Một ID duy nhất của Yêu cầu Định nghĩa Chứng khoán.
322 SecurityResponseID Bất kỳ giá trị hợp lệ nào Chuỗi Một ID duy nhất của phản hồi Danh sách Chứng khoán.
560 SecurityRequestResult 0 Số nguyên Kết quả trả về cho tin nhắn Yêu cầu Chứng khoán. Các giá trị hợp lệ là:
0 = Yêu cầu hợp lệ.
1 = Yêu cầu không hợp lệ hoặc không được hỗ trợ.
2 = Không tìm thấy công cụ nào phù hợp với tiêu chí lựa chọn.
3 = Không được phép truy xuất dữ liệu công cụ.
4 = Dữ liệu công cụ tạm thời không khả dụng.
5 = Yêu cầu dữ liệu công cụ không được hỗ trợ.
146 NoRelatedSym Không Bất kỳ giá trị hợp lệ nào Số nguyên Chỉ định số lượng ký hiệu (công cụ) lặp lại.
55 Symbol Không Bất kỳ giá trị hợp lệ nào Số nguyên Các định danh công cụ được cung cấp bởi Spotware.
1007 SymbolName Không Bất kỳ giá trị hợp lệ nào Chuỗi Tên ký hiệu.
1008 SymbolDigits Không Bất kỳ giá trị hợp lệ nào Số nguyên Số chữ số của ký hiệu. Các giá trị có thể từ 0 đến 5.
Standard Trailer

Xem ví dụ về tin nhắn Danh sách Chứng khoán bên dưới.

Phản hồi:

8=FIX.4.4|9=3977|35=y|34=2|49=CSERVER|50=TRADE|52=20180426-12:07:37.816|56=live.theBroker.12345|57=Trade|320=Sxo2Xlb1jzJC|322=responce:Sxo2Xlb1jzJC|560=0|146=143|55=1|1007=EURUSD|1008=5|55=2|1007=GBPUSD|1008=5|55=3|1007=EURJPY|1008=3|55=4|1007=USDJPY|1008=3|55=5|1007=AUDUSD|1008=5|55=6|1007=USDCHF|1008=5|55=7|1007=GBPJPY|1008=3|55=8|1007=USDCAD|1008=5|55=9|1007=EURGBP|1008=5|55=10|1007=EURCHF|1008=5|55=11|1007=AUDJPY|1008=2|55=12|1007=NZDUSD|1008=5|55=13|1007=CHFJPY|1008=2|55=14|1007=EURAUD|1008=4|55=15|1007=CADJPY|1008=2|55=16|1007=GBPAUD|1008=4|55=17|1007=EURCAD|1008=4|55=10001|1007=USDCFDSAX|1008=5|55=18|1007=AUDCAD|1008=4|55=10002|1007=CD3295|1008=5|55=19|1007=GBPCAD|1008=4|55=10003|1007=DU3295|1008=5|55=20|1007=AUDNZD|1008=4|55=10004|1007=CS5965|1008=2|55=21|1007=NZDJPY|1008=2|55=10005|1007=CS6014_3|1008=5|55=22|1007=USDNOK|1008=4|55=10006|1007=DU6014_3|1008=5|55=23|1007=AUDCHF|1008=4|55=10007|1007=CS6014_4|1008=5|55=24|1007=USDMXN|1008=4|55=10008|1007=DU6014_4|1008=5|55=25|1007=GBPNZD|1008=4|55=10009|1007=CS5953|1008=5|55=26|1007=EURNZD|1008=4|55=10010|1007=CS6407_01_EURUSD|1008=5|55=27|1007=CADCHF|1008=4|55=10011|1007=CS6407_01_GBPUSD|1008=5|55=28|1007=USDSGD|1008=5|55=10012|1007=CS6407_02_EURUSD|1008=5|55=29|1007=USDSEK|1008=4|55=10013|1007=CS6407_03_EURUSD|1008=5|55=30|1007=NZDCAD|1008=4|55=31|1007=EURSEK|1008=4|55=10015|1007=CS7847_01_EURUSD|1008=5|55=32|1007=GBPSGD|1008=4|55=10016|1007=CS7847_01_GBPUSD|1008=5|55=33|1007=EURNOK|1008=4|55=10017|1007=CS7847_02_EURUSD|1008=5|55=34|1007=EURHUF|1008=2|55=10018|1007=CS7847_03_EURUSD|1008=5|55=35|1007=USDPLN|1008=4|55=10019|1007=CS7847_04_GBPUSD|1008=5|55=36|1007=USDDKK|1008=4|55=10020|1007=CS9004S|1008=2|10=096|