Friday, January 28, 2011

How to Set Classpath for Java on Windows Unix and Linux

What is CLASSPATH in Java 
Classpath in Java is path to directory or list of directory which is used by ClassLoaders to find and load class in Java program. Classpath can be specified using CLASSPATH environment variable which is case insensitive, -cp or -classpath command line option or Class-Path attribute in manifest.mf file inside JAR file in Java.  In this Java tutorial we will learn What is Classpath in Java, how Java resolve classpath and How Classpath works in Java along side How to set classpath for Java in windows and UNIX environment.  I have experience in finance and insurance domain and Java is heavily used in this domain for writing sophisticated Equity, Fixed income trading applications. Most of these investment banks has written test as part of there core Java interview questions and I always find at least one question related to CLASSPATH in Java on those interviews. Java CLASSPATH is one of the most important concepts in Java,  but,  I must say mostly overlooked. This should be the first thing you should learn while writing Java programs because without correct understanding of Classpath in Java you can't understand how Java locates your class files. Also don't confuse Classpath with PATH in Java, which is another environment variable used to find java binaries located in JDK installation directory, also known as JAVA_HOME. Main difference between PATH and CLASSPATH is that former is used to locate Java commands while later is used to locate Java class files.

Tuesday, January 25, 2011

Difference between FIX 4.2 vs FIX 4.4 in FIX connectivity

FIX 4.2 vs FIX 4.4
FIX protocol has evolved over time; it’s now more than a decade it’s started by Fidelity and Solomon Brothers. FIX connectivity is the most popular connectivity solution exists for trading whether its equities, futures, options or fixed income or even foreign exchange (FX). FIX protocol has dominated the market and become as standard solution for any market or broker which is trying to develop connectivity with market within a short period of time because of complexity of native exchange api and lack of support FIX protocol come as handy.

Monday, January 24, 2011

Things to note down while writing your own FIX Engine on FIX protocol


This is in continuation of my FIX protocol tutorial, i am just sharing some of thoughts which are important to remember while writing FIX engine for FIX protocol , though there are couple of professional third party FIX engines are available you may need to write your own if your firm requires.
While writing your own FIX engine I would suggest paying attention to certain points which could save lots of time during maintenance phase

Friday, January 21, 2011

Top 20 Tibco Rendezvous and EMS Interview questions and answers

Hi Guys, in this part of my Tibco Rendezvous tutorial series I am sharing some Tibco RV interview questions and answers most often asked in any TIBCO messaging interviews. These are based on fundamental TIBCO concepts and also offer some new way of learning TIBCO RV or TIBCO Rendezvous technology. Some of the TIBCO Interview questions I have already discussed in my TIBCO command series.

TIBCO Rendezvous Interview Questions

Here is the list of TIBCO interview question, I am not putting answer for these interview questions right now but will put together in some other post but these questions are really great in terms of any Tibco messaging interview. For better organization and quick access I will divide TIBCO Interview questions on various category e.g. TIBCO Rendezvous Interview questions, TIBCO EMS Interview questions, TIBCO Certified Messaging questions, TIBCO Hawk Interview questions and Miscellaneous TIBCO Interview questions. Please let me know if you want some more categories. Answers of these Tibco Interview questions can be found in different tutorials available in my blog; I will also try to post relevant links here.

This article is in continuation of my interview articles 10 Interview questions on Singleton Pattern in Java , Top 20 FIX Protocol Interview questions and Top 20 Core Java interview questions asked in Investment banks and Top 10 Java Serialization Interview questions

Friday, January 14, 2011

Tibco tutorial : RVD (Rendezeous daemon) vs RVRD (Rendezeous Routig Daemon)

RVD (Rendezvous daemon) vs RVRD (Rendezvous Routing Daemon)
RVRD (Rendezvous Routing Daemon) are simply process owned by middleware or network teams which listens multicast traffic locally and transmit it to another RVRD counter part (another host) using TCP. This remote host than re multicast this traffic to there own network. So essentially it used to bridge two different regional network e.g. London and Newyork etc.

RVRD is multicast in one end and unicast on other end so it receives messages from multiple RVD (Rendezvous Daemon) and send via TCP to another RVRD which distributes messages on different RVD (Rendezvous Daemon) on there own network e.g. say on NY network.

Tibco tutorial : Http Interface of Tibco RV

This is another post of my tibco tutorial series , if you want to read more about tibco rv or tibco ems please read there. in this post I am sharing you great tool to solve tibco rv related problems and a great interface to anaylze your Tibco RVD activities. until i know this I mostly used netstat command to figure out which topics are subscribed by my tibco RVD but after since I know about this I had helped me a lot.

Every host where tibco rvd is running expose on HTTP interface using that we can get many useful information e.g
--- How many clients are connecting to a particular service
--- Which services has been subscribed by rvd
--- Which hosts are connected to this rvd (using remote daemon).
--- How much data has been sent to received
--- Viewing tibco log to figure out any tibco issue.
--- Hwo many subject a particular service is using and what are those etc.

to check on which Http port your rvd is publishing information do this in your linux/windows host where rvd is running

ps -ef | grep rvd

this will show rvd process with parameters used for starting "-http 7582" shows that http interface is on port 7582
now just type this in your browser.

http://hostname:7582/

and you can see tibco webpage. I found it most useful tool while troubleshooting tibco rv issue.

to read more about tibco rv or tibco ems  see my tibco tutorial series

Thursday, January 13, 2011

Basics of FIX protocol and FIX Engine


FIX protocol is Industry standard protocol for electronic trading , with evolution with computer technology Trading also getting Electronic and now most of the exchanges in the world are fully electronic and concept of trading floor is taken over by computers.When I was new to FIX protocol I have searched net to find a good FIX protocol tutorial but not much is available so I am trying to write my own experience in form of short  FIX protocol tutorial.

Tuesday, January 11, 2011

FIX protocol tutorial : Fix Session is not connecting how to diagnose it ?

In this blog post of FIX protocol tutorial series I would like to share my experience with connectivity issues around Fix Engines. to exchange message or say to trade electronically clients connect to broker using FIX protocol and for that they use FIX Engine. In FIX protocol connection between two FIX Engine is refereed as FIX Session and we normally say whether FIX Session is connected or not connected. FIX Session normally have there start time , end time and EOD time (End of day time) also called TradingSession start time , Trading Session End Time and Trading Session EOD time.

Saturday, January 8, 2011

Tibco tutorial : Tibrv Errors and Exceptions

While working with tibco rv during many years I found that tibco errors are mysteriously difficult to diagnose for a newcomer and minor difference between syntax and semantics along with network specifics lead some strange error. here I am putting most common error which I have faced mainly because of some silly mistake in syntax and spent hours to figure out exact cause during my initial days.This list is by no means complete and I would encourage to put any other error you have encountered to make this list more useful. Any suggestion, input feedback always welcome.

Saturday, January 1, 2011

Tibco tutorial : Difference between Tibco EMS and Tibco RV

Both of them are product from Tibco and used extensively across global investment banks for front end to back end communication or server to server communication. though they have difference in the manner they have designed and the specification they are based upon .