Financial Information Exchange (FIX) Protocol Interview Questions Answers[z]
Warrant is a financial product which gives right to holder to Buy or Sell underlying financial security, its similar to option with some differences e.g. Warrants are normally issued by banks while options are primarily traded in exchange.
What is mean by Settlement of Securities? When Settlement does occur?
In Simple term Settlement means money will deducted from buyers and account and security(Shares) will be credited to his account , normally Settlement occurs after few days of trade date for most of the exchange its T+3 (i.e. Three days after trade date) , T denotes Trade date means the date on which transaction has taken place.
For some of the exchanges e.g. NSE India, SEHK Hongkong its T+2.
What is NewOrderSingle, OrderCancelReplance and OrderCancel Reject message?
These are the basic, most commonly used messages in Electronic trading via FINANCIAL INFORMATION EXCHANGE (FIX) protocol.
NewOrderSingle message is denoted by MsgType=D and its used to place an Order, OrderCancelReplace Request is modification request denoted by MsgType=G in FINANCIAL INFORMATION EXCHANGE (FIX) protocol and used to modify Order e.g for changing quantity or price of Order.
OrderCancelRequest is third in this category denoted by MsgType=F in FINANCIAL INFORMATION EXCHANGE (FIX) protocol and used to cancel Order placed into Market.
What are most common issues encounter when two FIX Engine communicates ?
When Clients connect to broker via FINANCIAL INFORMATION EXCHANGE (FIX) protocol, there FIX engine connects to each other, while setting up and during further communication many issues can occur below are some of most common ones:
Issues related to network connectivity
Issues related to Firewall rules
Issue related to incorrect host/port name while connecting.
Incorrect SenderCompID and TargetCompID
Sequence Number mismatch
Issue related to FINANCIAL INFORMATION EXCHANGE (FIX) version mismatch
What do you mean by Incoming Sequence No and Outgoing Sequence No? Which tag is used to carry Sequence No?
Sequence Number is very important concept of FINANCIAL INFORMATION EXCHANGE (FIX) protocol which essentially provides it Recovery and replay functionality and ensures that no message will lose during transmission or communication. In FINANCIAL INFORMATION EXCHANGE (FIX) protocol every message contains a unique sequence number defined in tag 34. Logically we can divide sequence number into two Incoming and Outgoing Sequence number.
Incoming sequence number is the number any FIX Engine expecting from Counter Party and Outgoing sequence number is the number any FIX engine is sending to Counter Party.
What happens if Client connects with Sequence No higher than expected?
If Client FIX Engine connects to Broker Fix Engine with Sequence Number higher than expected (e.g. broker is expecting Sequence Number = 10 and Client is sending = 15). As per FINANCIAL INFORMATION EXCHANGE (FIX) protocol Broker will accept the connection and issue a Resend Request (MsgType=2) asking Client to resend missing messages (from messages 10 -15) , Now Client can either replay those messages or can issue a Gap Fill Message (MsgType=4 as per FINANCIAL INFORMATION EXCHANGE (FIX) protocol) in case replaying those messages doesn't make any sense (could be admin messages e.g. Heartbeat etc).
What do you mean by Funari Order type?
Funari is very popular Order type commonly used in Japanese and Korean market , its denoted by OrdType=I in FIX protocol , In Funari Order type Order will remain in Market as Limit Order but during Market Closing period , if there is any unexecuted quantity then it will turn into a Market Order.
What do you mean by Odd lot and Board lot?
In Exchanges every Security traded in lot e.g. lot of 1, 10 or 100 or 1000. These are called Board lots and while placing order clients need to send Order quantity multiple of Board lot. If Clients sends any Order which is not a multiple of Board lot then its called Odd lot.
What happens if Client connects with Sequence No lower than expected?
If Client FIX engine connects to broker FIX engine with Sequence No lower than expected than broker FIX engine will disconnect the connection. As per FINANCIAL INFORMATION EXCHANGE (FIX) protocol client then may try by increasing its sequence Number until broker accepts its connection.
What is the difference between PossDup and PossResend?
As per FINANCIAL INFORMATION EXCHANGE (FIX) protocol PossDupFlag (tag 43): indicates possible retransmission of message with this sequence number valid value:
Y = Possible duplicate
N = Original transmission
PossResend (tag 97): Indicates that message may contain information that has been sent under another sequence number.
Valid Values:
Y=Possible resend
N=Original transmission
In Simple terms PossDup is when you are resending a message and PossResend is when you are sending a new message with same data you have already sent in a previous message.
Let’s consider below use case for clarity with PossDup, you can send out an order with Sequence number of 10. Then you send another message with a number of 11. For some reason the counter party did not receive message 10 and will request a resend. You will then resend this same message with a sequence number of 10 marking tag 43=Y.
In case of PossResend, you may send out an order, again let's say with a sequence number of 10. After 5 seconds, you have not gotten an acknowledgement. So you may decide to try again because maybe the counterparty didn't receive or got the first time. So you will send out a message with a different sequence number like 11, which will contain all of the same data message number 10 did. You will then mark it as a PossResend. So this is saying you have already sent this order before, which Counter party may or may not have processed.
While handling of PossDups is dictated by session logic, PossResends are dictated by buisiness logic (e.g. Reject an Order if ClOrdID is duplicate etc). This is because it is up to the business layer to determine if a particular business object has been processed (by checking the order id for instance).
You have bought a stock at INR 100 and want to sell it as soon as it hits INR 110. If you want to guarantee that your sell order is filled, which of the following types of order should you place?
In this case you can not use limit order because limit order doesn't guarantee execution if there are similar LIMIT order exists then it will wait for its turn. You can not either use Market Order because it didn't give you Price guarantee and will fill on current price. Solution is to use "STOP" order with stop price 110, as soon as price reaches 110 it will get activate but in case of high volatility it can fill more or less 110 if price is moving very fast.
Which of the following orders would be automatically canceled if not executed immediately?
Fill or Kill (FOK) and Immediate or Cancel (IOC) orders are types of order which either executed immediately or get cancelled by exchange. TimeInForce (tag 59) in FINANCIAL INFORMATION EXCHANGE (FIX) protocol is used to mark an order as FOK or IOC.
What is the difference between FOK order and IOC Order?
Main difference between FOK and IOC Order is that FOK demands full execution of order i.e. all quantity has to be filled while IOC order is ready to accept partial fills also?
What is STP (Straight through Processing) Systems?
STP is abbreviation of "Straight though processing" which denotes trading systems which requires either no manual interaction or some manual interaction for whole trade life cycle e.g. everything after submission of Order e.g. processing, execution, booking, allocation, settlement occurs automatically.
NON STP systems require manual interaction on some phases of trade life cycle e.g. booking or settlement.
Read more: http://javarevisited.blogspot.com/2010/12/fix-protocol-interview-questions.html#ixzz2pmZH24Jk
Financial Information Exchange (FIX) Protocol Interview Questions Answers[z]的更多相关文章
- Common issue on financial information exchange (FIX) Connectivity[z]
FIX Protocol Session Connectivity Hi guys, in this post I would like share my experience with financ ...
- UNIX command Questions Answers asked in Interview
UNIX or Linux operating system has become default Server operating system and for whichever programm ...
- 115 Java Interview Questions and Answers – The ULTIMATE List--reference
In this tutorial we will discuss about different types of questions that can be used in a Java inter ...
- 101+ Manual and Automation Software Testing Interview Questions and Answers
101+ Manual and Automation Software Testing Interview Questions and Answers http://www.softwaretesti ...
- 69 Spring Interview Questions and Answers – The ULTIMATE List--reference
This is a summary of some of the most important questions concerning the Spring Framework, that you ...
- Top 25 Most Frequently Asked Interview Core Java Interview Questions And Answers
We are sharing 25 java interview questions , these questions are frequently asked by the recruiters. ...
- [译]Node.js Interview Questions and Answers (2017 Edition)
原文 Node.js Interview Questions for 2017 什么是error-first callback? 如何避免无止境的callback? 什么是Promises? 用什么工 ...
- 300+ Manual Testing and Selenium Interview Questions and Answers
Manual testing is a logical approach and automation testing complements it. So both are mandatory an ...
- WCF学习系列三--【WCF Interview Questions – Part 3 翻译系列】
http://www.topwcftutorials.net/2012/10/wcf-faqs-part3.html WCF Interview Questions – Part 3 This WCF ...
随机推荐
- tensorflow中tensor的静态维度和动态维度
tf中使用张量(tensor)这种数据结构来表示所有的数据,可以把张量看成是一个具有n个维度的数组或列表,张量会在各个节点之间流动,参与计算. 张量具有静态维度和动态维度. 在图构建过程中定义的张量拥 ...
- HDU 3973 AC's String 字符串哈希
HDU 3973 通过哈希函数将一个字符串转化为一个整数,通过特定的方式可以使得这个哈希值几乎没有冲突(这就是关键之处,几乎没有视为没有= =!, 其实也可以考虑实现哈希冲突时的处理,只是这道题没必要 ...
- nginx中使用 md5
core/ngx_md5.h 头文件 /* * Copyright (C) Igor Sysoev * Copyright (C) Nginx, Inc. */ #ifndef _NGX_MD5_H_ ...
- Windows 7 x64 安装 Oracle 11g Express
1. 下载 在这里下载文件: Oracle Database Express Edition 11g Release 2 for Windows x32 Oracle 不提供 window ...
- 解决PHPWind局域网不能访问问题
解决PHPWind局域网不能访问问题 windows 7环境下搭建PHPWind论坛之后,局域网内不能被访问,访问显示403:而本机访问正常 1. 本版本是windows下一键安装版,首先可以确定的是 ...
- 【python】函数名存在变量中
变量函数:意思就是将函数名存在变量中,然后根据变量值动态的调用需要的函数. LOGIN = 'xxxx' PASSWD = "xxx" URL = 'xxxxx' def hand ...
- 在pydev安装完成后在eclipse不显示的问题
Java配置: http://www.jb51.net/os/win10/370409.html http://blog.csdn.net/wwd0501/article/details/521308 ...
- IDEA中修改各个部位的字体大小
1.菜单栏 Setting -> Appearance&Behavior -> Appearance ->Override default fonts by (not rec ...
- 获取中文的首字母demo
import net.sourceforge.pinyin4j.PinyinHelper; /** * * @Title: getPinYinHeadChar * @Description: TODO ...
- centos7.3给搭建SVN服务器
centos7.3给搭建SVN服务器 1 安装svnserver yum install subversion 2 查看版本 svnserve --version 3 创建版本库 3.1 运行以下命令 ...