{{Quickfixn}} re question RE: Quickfixn Digest, Vol 10, Issue 23
Jonathan Hodgson
jhodgson at temenos.com
Tue Aug 14 07:09:12 PDT 2012
Hi Mike and Grant,
Thanks for the earlier replies, I didn't reply for a while as I was trying not to ask too many questions, I think it's starting to sink in the way it works , I include the original question and answers at the end.
My objective is to be able to receive just execution reports from Bloomberg and use that data for a VB application. The Deals will be entered on a Bloomberg console and Bloomberg have told me they will send execution reports to me on a designated port and IP address. My initial understanding was to setup a tcp/ip listening socket and process the data (not using quickfix terminology here), but if I was to use the quick fix ending it looks like I could use an initiator like (using your recommendation) the program listed below and override the execution message once Bloomberg send it?
Am I understanding this correctly and how can I get the simple acceptor example to send an execution report? Is this what Bloomberg run? Is this the equivalent of your Acceptor socket???
I am using the following initiator vb.net program
Imports QuickFix
Module Module1
'QuickFIX engine environment variables
Public mySessionSettings As SessionSettings
Public myApplication As Application
Public myStoreFactory As FileStoreFactory
Public myMessageFactory As DefaultMessageFactory
Public myLogFactory As ScreenLogFactory
Public myInitiator As QuickFix.Transport.SocketInitiator
Public LoggedOn As Boolean
Sub Main()
mySessionSettings = New SessionSettings("C:\Source\Bespoke Software\TTFIX\QuickFixConsoleApp\QuickFixConsoleApplication\myconfig.cfg")
myApplication = New Application
myStoreFactory = New FileStoreFactory(mySessionSettings)
myMessageFactory = New DefaultMessageFactory
myLogFactory = New ScreenLogFactory(True, True, True)
myInitiator = New QuickFix.Transport.SocketInitiator(myApplication, myStoreFactory, mySessionSettings, myLogFactory)
myInitiator.start()
Do
'Find something to do while waiting
Loop While LoggedOn = False
End Sub
End Module
....
Public Class Application
Implements QuickFix.Application
Public Overloads Sub onMessage(ByVal message As QuickFix.FIX44.ExecutionReport, ByVal Param As QuickFix.SessionID)
System.Console.WriteLine()
'Call my VB application with deal information
End Sub
End Class
...
With the following config file
[DEFAULT]
ConnectionType=initiator
ReconnectInterval=2
FileStorePath=c:\fixfiles
StartTime=00:00:00
EndTime=00:00:00
UseDataDictionary=N
DataDictionary=C:\fixfiles\Dictionary\
HttpAcceptPort=9911
SocketConnectHost=127.0.0.1
SocketConnectPort=5001
FileLogPath=c:\fixfiles\logs\
LogoutTimeout=5
ResetOnLogon=Y
# standard config elements
[SESSION]
# inherit ConnectionType, ReconnectInterval and SenderCompID from default
BeginString=FIX.4.4
SenderCompID=CLIENT1
TargetCompID=SIMPLE
HeartBtInt=30
I am connecting to the simple client
Original question and responses
(question)
I have been asked to use the quickfix engine if possible (with the possibility to utilise the full fix engine functionality at a later date) to just receive the execution report (and interface this with an application), Is it possible to do this from within an acceptor socket. Or should I just write a simple socket program monitoring the port and stream the raw fix execution report data to my application for processing?
Thanks
Jonathan
(reply from Grant)
" I'm not clear on your question.I think you're asking if you can use the engine just to parse an Execution report, and not actually to connect to an interface, right? Yes, I think this is doable.
I'm not sure where an "acceptor socket" would it in to your question. In FIX terms, an Acceptor is a server and an Initiator is a client. If your app is going to connect to a server and listen for ExecRpts, your app is going to need to be an Initiator. Your further questions about sockets are confusing me. Are you connecting to a FIX counterparty or not?"
(reply from Mike)
"If you are connecting to bloomberg e.g. to receive dropcopies, you want to create an Initiator app. It will handle all the socket connection and FIX session protocol details for you. Take a look at the TradeClient example app that comes with QF/n to get started."
O
The information in this e-mail and any attachments is confidential and may be legally privileged.
It is intended solely for the addressee or addressees. Any use or disclosure of the contents
of this e-mail/attachments by a not intended recipient is unauthorized and may be unlawful.
If you have received this e-mail in error please notify the sender.
Please note that any views or opinions presented in this e-mail are solely those of the author and
do not necessarily represent those of TEMENOS.
We recommend that you check this e-mail and any attachments against viruses.
TEMENOS accepts no liability for any damage caused by any malicious code or virus transmitted by this e-mail.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quickfixn.com/pipermail/quickfixn-quickfixn.com/attachments/20120814/55fcaf59/attachment.htm>
More information about the Quickfixn
mailing list