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 ...
随机推荐
- [转载]MySQL索引原理与慢查询优化
好文,以防丢失,故转之,另对排版做简单优化.原文地址:http://ourmysql.com/archives/1401 索引目的 索引的目的在于提高查询效率,可以类比字典,如果要查"mys ...
- AI产业将更凸显个人英雄主义 周志华老师的观点是如此的有深度
今天无意间在网上看的了一则推送,<周志华:AI产业将更凸显个人英雄主义> http://tech.163.com/18/0601/13/DJ7J39US00098IEO.html 摘录一些 ...
- [linux]df 磁盘100%Used告警,du显示目录状态良好的故障排查
1.回顾: 某在线主机深夜连续接到告警系统的disk Used 超限告警. 登陆主机查看却遇到了困惑:在检查磁盘使用量 df –h 出来的磁盘使用量确实和告警信息一样,已经被100%占用,但是查看目录 ...
- Codeforces 165 E. Compatible Numbers【子集前缀和】
LINK 题目大意 给你一个数组,问你数组中的每个数是否可以在数组里面找到一个数和他and起来是0,如果可以就输出这个数,否则就输出-1 思路 首先很显然的是可以考虑找到每个数每一位都取反的数的子集 ...
- bug 报告
准备工作:首先我下载了Git Bash这个软件,利用了老师所给的git命令,批量的pull所有同学第二次作业的代码.截图如下: 一.被测试程序的作者:方铭 程序git地址:https://coding ...
- JPA中的Page与Pageable
Page是Spring Data提供的一个接口,该接口表示一部分数据的集合以及其相关的下一部分数据.数据总数等相关信息,通过该接口,我们可以得到数据的总体信息(数据总数.总页数...)以及当前数据的信 ...
- 树莓派系列教程:安装系统与配置环境,使用PuTTy与VNC图形界面远程登录
本文所需物品清单: Raspberry Pi 3 Model B 主板.SD卡与读卡器(用于烧录系统) 资料整理来源在文尾 需要下载的资源与工具: 推荐系统-Raspbian 树莓派官方深度定制的硬件 ...
- c#:Json字符串转成xml对象
没看到.net framework中有这样的功能, 懒得到处找了, 索性花点时间自己写一个 /* * Created by SharpDevelop. * Date: 2013/6/24 * User ...
- oracle 查版本号
oracle是强大的数据库,我们怎样看它的版本呢? 工具/原料 oracle 数据库, sqlplus 方法/步骤 首先进入sqlplus,cmd---plsql,登陆我们的用户,如:user/pas ...
- docker基于commit命令创建支持ssh服务的镜像
以centos为基础,目的使用ssh服务远程连接docker容器. 环境:宿主机centos7(宿主机ip地址为192.168.164.130),直接搜索docker的centos镜像,下载最新版本. ...