quickfix-users Mailing List for QuickFIX (Page 26)
Brought to you by:
orenmnero
You can subscribe to this list here.
2002 |
Jan
|
Feb
(4) |
Mar
(6) |
Apr
(2) |
May
(4) |
Jun
(1) |
Jul
(1) |
Aug
(2) |
Sep
(11) |
Oct
(3) |
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2003 |
Jan
(7) |
Feb
(3) |
Mar
(10) |
Apr
(40) |
May
(63) |
Jun
(12) |
Jul
(26) |
Aug
(13) |
Sep
(6) |
Oct
(13) |
Nov
(17) |
Dec
(28) |
2004 |
Jan
(13) |
Feb
(6) |
Mar
(9) |
Apr
(20) |
May
(15) |
Jun
(29) |
Jul
(22) |
Aug
(11) |
Sep
(32) |
Oct
(34) |
Nov
(22) |
Dec
(33) |
2005 |
Jan
(17) |
Feb
(8) |
Mar
(3) |
Apr
(20) |
May
(19) |
Jun
(29) |
Jul
(30) |
Aug
(10) |
Sep
(24) |
Oct
|
Nov
(17) |
Dec
(11) |
2006 |
Jan
(32) |
Feb
(54) |
Mar
(34) |
Apr
(43) |
May
(14) |
Jun
(11) |
Jul
(10) |
Aug
(43) |
Sep
(37) |
Oct
(44) |
Nov
(16) |
Dec
(11) |
2007 |
Jan
(26) |
Feb
(5) |
Mar
(23) |
Apr
(3) |
May
(22) |
Jun
(17) |
Jul
(22) |
Aug
(34) |
Sep
(17) |
Oct
(18) |
Nov
(4) |
Dec
(8) |
2008 |
Jan
(28) |
Feb
(28) |
Mar
(23) |
Apr
(37) |
May
(53) |
Jun
(20) |
Jul
(30) |
Aug
(12) |
Sep
(19) |
Oct
(16) |
Nov
(15) |
Dec
(10) |
2009 |
Jan
(19) |
Feb
(8) |
Mar
(21) |
Apr
(8) |
May
(15) |
Jun
(22) |
Jul
(34) |
Aug
(18) |
Sep
(23) |
Oct
(26) |
Nov
(16) |
Dec
(13) |
2010 |
Jan
(38) |
Feb
(17) |
Mar
(39) |
Apr
(34) |
May
(5) |
Jun
(15) |
Jul
(7) |
Aug
(18) |
Sep
(4) |
Oct
(16) |
Nov
(3) |
Dec
(17) |
2011 |
Jan
(28) |
Feb
(12) |
Mar
(36) |
Apr
(9) |
May
(26) |
Jun
(27) |
Jul
(6) |
Aug
(10) |
Sep
(6) |
Oct
(1) |
Nov
(1) |
Dec
|
2012 |
Jan
(3) |
Feb
(4) |
Mar
|
Apr
(7) |
May
(9) |
Jun
(4) |
Jul
(2) |
Aug
(1) |
Sep
|
Oct
(9) |
Nov
(10) |
Dec
(8) |
2013 |
Jan
(3) |
Feb
(2) |
Mar
(7) |
Apr
(2) |
May
|
Jun
(7) |
Jul
(22) |
Aug
(5) |
Sep
(3) |
Oct
(3) |
Nov
(3) |
Dec
(2) |
2014 |
Jan
(4) |
Feb
|
Mar
(7) |
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(7) |
Sep
(1) |
Oct
|
Nov
|
Dec
(1) |
2015 |
Jan
|
Feb
|
Mar
(3) |
Apr
|
May
|
Jun
(3) |
Jul
|
Aug
|
Sep
|
Oct
(4) |
Nov
(4) |
Dec
|
2016 |
Jan
(1) |
Feb
|
Mar
(3) |
Apr
|
May
|
Jun
|
Jul
(5) |
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
2017 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(2) |
Jul
(1) |
Aug
|
Sep
(1) |
Oct
(5) |
Nov
(1) |
Dec
|
2019 |
Jan
|
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2020 |
Jan
|
Feb
|
Mar
(3) |
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(1) |
Sep
(1) |
Oct
|
Nov
|
Dec
|
2023 |
Jan
|
Feb
|
Mar
(4) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Dale W. <wi...@oc...> - 2009-09-01 14:33:23
|
Hi rodrigo, r.goncalves wrote: > Hi, > it am trying to build qfix on mingw on windows, but apparently there > are incompatible issues since the source files target the VS C++ IDE. > Can i compile it on mingw? What i found is that mingw lacks the > necessary socket.h and inet.h: > > include/quickfix/Utility.h:30:20: config.h: No such file or directory > include/quickfix/Utility.h:69:24: sys/socket.h: No such file or directory > include/quickfix/Utility.h:70:23: sys/ioctl.h: No such file or directory > include/quickfix/Utility.h:73:24: netinet/in.h: No such file or directory > include/quickfix/Utility.h:74:25: netinet/tcp.h: No such file or directory > include/quickfix/Utility.h:75:23: arpa/inet.h: No such file or directory > include/quickfix/Utility.h:76:19: netdb.h: No such file or directory > include/quickfix/Utility.h:79:21: pthread.h: No such file or directory > > Any ideas on how to do that? I haven't tried building QuickFIX on mingw because for me it's easier to use the free Express versions of the Microsoft compilers than to try to fight the battles necessary to run MinGW. However what I have discovered in other projects is that because MinGW is built on top of the Microsoft C runtime library rather than having it's own C library there are some issues that you have to address. For example, from the MinGW wiki: Pthreads is part of /POSIX/ and /Windows/ isn't a /POSIX/ system. However, there is a third party library on sourceware.org <http://sourceware.org> named pthreads-win32 <http://sourceware.org/pthreads-win32>. Sourceware.org provides its own lists and MinGW does not support it but you are free to use it with MinGW at your own risk. Because QuickFIX C++ on a *nix build uses posix, you'll need this library. You'll also need to find similar support for sockets. Googling mingw+sockets provides quite a few links to the discussions about how to handle sockets in the MinGW environment. Unfortunately you are probably looking at source code changes to get this working. Dale |
From: r.goncalves <rod...@gm...> - 2009-08-31 22:40:01
|
Hi, it am trying to build qfix on mingw on windows, but apparently there are incompatible issues since the source files target the VS C++ IDE. Can i compile it on mingw? What i found is that mingw lacks the necessary socket.h and inet.h: include/quickfix/Utility.h:30:20: config.h: No such file or directory include/quickfix/Utility.h:69:24: sys/socket.h: No such file or directory include/quickfix/Utility.h:70:23: sys/ioctl.h: No such file or directory include/quickfix/Utility.h:73:24: netinet/in.h: No such file or directory include/quickfix/Utility.h:74:25: netinet/tcp.h: No such file or directory include/quickfix/Utility.h:75:23: arpa/inet.h: No such file or directory include/quickfix/Utility.h:76:19: netdb.h: No such file or directory include/quickfix/Utility.h:79:21: pthread.h: No such file or directory Any ideas on how to do that? Many thanks rodrigo ps: sorry for double-posting (also posted to the dev list) but since i really need this solved asap and wasn't really sure in which list to post, decided to go for both. thanks anyway. |
From: Glyn W. <gly...@br...> - 2009-08-27 14:27:12
|
Hi I am building my first quickfix app. When I try to start a SocketInitiator I get the exception ConfigError: Configuration failed. But no more details than that. In case it was an issue with my config file I also used the example one banzai.cfg. Same problem "Configuration failed". I have done a System.out of the SessionSettings object and can see that the file has been loaded correctly. With no more than "Configuration failed" to go on I'm not sure what the error could be. The stack trace is: quickfix.ConfigError: Configuration failed at quickfix.SocketInitiator.create(Native Method) at quickfix.SocketInitiator.<init>(Unknown Source) at com.fixi.fix.quickfix.QuickfixInitiator.<init>(QuickfixInitiator.java:43) at com.fixi.fix.FixEngine.startEngine(FixEngine.java:54) The code I am using is: if (filename == null) { throw new InvalidSettingsFileException("No settings file detected"); } app = new QuickfixApplication(); SessionSettings settings = null; try { settings = new SessionSettings(new FileInputStream(filename)); } catch (FileNotFoundException fnfe) { throw new InvalidSettingsFileException("Settings file " + filename + " not found"); } System.out.println("DEBUG: settings: " + settings + " size: " + settings.size()); MessageStoreFactory storeFactory = new FileStoreFactory(settings); LogFactory logFactory = new FileLogFactory(settings); MessageFactory messageFactory = new DefaultMessageFactory(); SocketInitiator intiator = new SocketInitiator (app, storeFactory, settings, logFactory, messageFactory); intiator.start(); while(running) { // do something } intiator.stop(); The System.out shows that the settings file is loaded: DEBUG: settings: [DEFAULT] CONNECTIONTYPE=initiator ENDTIME=00:00:00 FILESTOREPATH=store HEARTBTINT=30 SOCKETCONNECTHOST=localhost STARTTIME=00:00:00 USEDATADICTIONARY=N [SESSION] BEGINSTRING=FIX.4.2 SENDERCOMPID=CLIENT1 SOCKETCONNECTPORT=5001 TARGETCOMPID=EXECUTOR [SESSION] BEGINSTRING=FIX.4.2 SENDERCOMPID=CLIENT1 SOCKETCONNECTPORT=5002 TARGETCOMPID=ORDERMATCH [SESSION] BEGINSTRING=FIX.4.2 SENDERCOMPID=CLIENT2 SOCKETCONNECTPORT=5001 TARGETCOMPID=EXECUTOR [SESSION] BEGINSTRING=FIX.4.2 SENDERCOMPID=CLIENT2 SOCKETCONNECTPORT=5002 TARGETCOMPID=ORDERMATCH DEBUG: settings: [DEFAULT] CONNECTIONTYPE=initiator ENDTIME=00:00:00 FILESTOREPATH=store HEARTBTINT=30 SOCKETCONNECTHOST=localhost STARTTIME=00:00:00 USEDATADICTIONARY=N [SESSION] BEGINSTRING=FIX.4.2 SENDERCOMPID=CLIENT1 SOCKETCONNECTPORT=5001 TARGETCOMPID=EXECUTOR [SESSION] BEGINSTRING=FIX.4.2 SENDERCOMPID=CLIENT1 SOCKETCONNECTPORT=5002 TARGETCOMPID=ORDERMATCH [SESSION] BEGINSTRING=FIX.4.2 SENDERCOMPID=CLIENT2 SOCKETCONNECTPORT=5001 TARGETCOMPID=EXECUTOR [SESSION] BEGINSTRING=FIX.4.2 SENDERCOMPID=CLIENT2 SOCKETCONNECTPORT=5002 TARGETCOMPID=ORDERMATCH size: 4 |
From: <nos...@fr...> - 2009-08-25 07:16:40
|
Do i have to add something in the configuration file ? Just to be clear, I am talking about failed logins on on tcp/ip level, not fix rejection messages. fromAdmin is NOT triggered when socket connection is rejected nor when it times out ... 2009/8/24 Grant Birchmeier <gbi...@co...> > You can detect failed logins in the fromAdmin() function. > > > On Mon, Aug 24, 2009 at 10:52 AM, <nos...@fr...> wrote: > > QuickFIX Documentation: > http://www.quickfixengine.org/quickfix/doc/html/index.html > > QuickFIX Support: http://www.quickfixengine.org/services.html > > > > > > Hi, > > i am using quickfix_net library, how do i handle failed login attempts in > my application ? In the default interface none of the events are triggered > when fix server is down or not responding... > > > > namespace QuickFix > > > > { > > public interface Application > > { > > public void onCreate(SessionID sessionID); > > public void onLogon(SessionID sessionID); > > public void onLogout(SessionID sessionID); > > public void toAdmin(Message message, SessionID sessionID); > > > > public void toApp(Message message, SessionID sessionID); > > public void fromAdmin(Message message, SessionID sessionID); > > public void fromApp(Message message, SessionID sessionID); > > } > > } > > > > nos...@fr... > > > > > > > > > ------------------------------------------------------------------------------ > > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 > 30-Day > > trial. Simplify your report design, integration and deployment - and > focus on > > what you do best, core application coding. Discover what's new with > > Crystal Reports now. http://p.sf.net/sfu/bobj-july > > _______________________________________________ > > Quickfix-users mailing list > > Qui...@li... > > https://lists.sourceforge.net/lists/listinfo/quickfix-users > > > > > |
From: Grant B. <gbi...@co...> - 2009-08-24 16:22:30
|
You can detect failed logins in the fromAdmin() function. On Mon, Aug 24, 2009 at 10:52 AM, <nos...@fr...> wrote: > QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > > Hi, > i am using quickfix_net library, how do i handle failed login attempts in my application ? In the default interface none of the events are triggered when fix server is down or not responding... > > namespace QuickFix > > { > public interface Application > { > public void onCreate(SessionID sessionID); > public void onLogon(SessionID sessionID); > public void onLogout(SessionID sessionID); > public void toAdmin(Message message, SessionID sessionID); > > public void toApp(Message message, SessionID sessionID); > public void fromAdmin(Message message, SessionID sessionID); > public void fromApp(Message message, SessionID sessionID); > } > } > > nos...@fr... > > > > ------------------------------------------------------------------------------ > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day > trial. Simplify your report design, integration and deployment - and focus on > what you do best, core application coding. Discover what's new with > Crystal Reports now. http://p.sf.net/sfu/bobj-july > _______________________________________________ > Quickfix-users mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-users > > |
From: <nos...@fr...> - 2009-08-24 15:53:09
|
Hi, i am using quickfix_net library, how do i handle failed login attempts in my application ? In the default interface none of the events are triggered when fix server is down or not responding... * namespace QuickFix { public interface Application { public void onCreate(SessionID sessionID); public void onLogon(SessionID sessionID); public void onLogout(SessionID sessionID); public void toAdmin(Message message, SessionID sessionID); public void toApp(Message message, SessionID sessionID); public void fromAdmin(Message message, SessionID sessionID); public void fromApp(Message message, SessionID sessionID); } } * nos...@fr... |
From: Hamza K. <h.k...@gm...> - 2009-08-18 14:38:25
|
Greetings, I have built a Web application [Initiator] on IIS using MS .Net framework with QuickFix libraries versions 1.0.2447.42059 & 1.0.3512.29706, but when I try to start the initiator, I am getting this error below: * **Cannot pass a GCHandle across AppDomains. Parameter name: handle Source="mscorlib" ParamName="handle" StackTrace: at System.Runtime.InteropServices.GCHandle.InternalCheckDomain(IntPtr handle) at System.Runtime.InteropServices.GCHandle.FromIntPtr(IntPtr value) at System.Runtime.InteropServices.GCHandle.op_Explicit(IntPtr value) at gcroot<QuickFix::Log ^>.->(gcroot<QuickFix::Log ^>* ) at Log.onEvent(Log* , basic_string<char\,std::char_traits<char>\,std::allocator<char> >* string)* Please note that I have written the same code in a Windows application, and everything is working fine - only the problem is occurring in the Web application. And I have tried also using multi-threading, but the problem still persists. Do you know anything about this problem. Thank you. Best Regards, Hamza A. Kamaleddine Software Developer & Analyst Netiks International s.a.l. www.netiks.com Mobile: +961 70975590 ---- Mail Disclaimer ---- This email and any files transmitted with it are confidential and are intended solely for the addressee(s). Any views or opinions expressed are solely those of the author and do not necessarily represent those of Netiks International sal unless otherwise specifically stated. If you are not the intended recipient of this e-mail, please delete it immediately from your system and notify the sender of the wrong delivery and the mail deletion. Finally, the recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email. ---- End of Disclaimer ---- |
From: Hei C. <str...@ya...> - 2009-08-11 01:55:47
|
Hi, Is there a way to turn on and off FIX message logging without changing the code? I am using the latest C++ version of quickfix. Thanks in advance. Cheers, Hei |
From: Grant B. <gbi...@co...> - 2009-08-10 14:04:59
|
There is not enough information in your mail to know what's happening. Take a look at the FIX log. There should be a response to your initial login message or a field in the logout message that should describe why the login is not succeeding. If a login fails, QuickFIX automatically reattempts after some amount of time has elapsed (configured by the ReconnectInterval setting). You are probably seeing multiple logins because your initial login attempt is failing and QF is retrying. -Grant On Mon, Aug 10, 2009 at 7:24 AM, bornlibra23<awa...@ns...> wrote: > QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > > Thanks EclipseCap > I am almost through with the login process. The only thing I am unable to > figure out is why is the engine sending multiple login messages? > 20090810-10:38:45 : Connecting to 172.20.23.44 on port 9651 > 20090810-10:38:45 : Initiated logon request > 20090810-10:38:47 : Received logout request > 20090810-10:38:47 : Sending logout response > 20090810-10:38:47 : Disconnecting > 20090810-10:38:47 : Logon state is not valid for message > Thanks > bornlibra23 > -- > View this message in context: http://www.nabble.com/Why-Are-Multiple-Login-Messages-Are-Being-Generated--tp24898775p24898775.html > Sent from the QuickFIX - User mailing list archive at Nabble.com. > > > ------------------------------------------------------------------------------ > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day > trial. Simplify your report design, integration and deployment - and focus on > what you do best, core application coding. Discover what's new with > Crystal Reports now. http://p.sf.net/sfu/bobj-july > _______________________________________________ > Quickfix-users mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-users > |
From: bornlibra23 <awa...@ns...> - 2009-08-10 12:32:03
|
Thanks EclipseCap I am almost through with the login process. The only thing I am unable to figure out is why is the engine sending multiple login messages? 20090810-10:38:45 : Connecting to 172.20.23.44 on port 9651 20090810-10:38:45 : Initiated logon request 20090810-10:38:47 : Received logout request 20090810-10:38:47 : Sending logout response 20090810-10:38:47 : Disconnecting 20090810-10:38:47 : Logon state is not valid for message Thanks bornlibra23 -- View this message in context: http://www.nabble.com/Why-Are-Multiple-Login-Messages-Are-Being-Generated--tp24898775p24898775.html Sent from the QuickFIX - User mailing list archive at Nabble.com. |
From: bornlibra23 <awa...@ns...> - 2009-08-10 12:31:59
|
Thanks EclipseCap I am almost through with the login process. The only thing I am unable to figure out is why is the engine sending multiple login messages? 20090810-10:38:45 : Connecting to 172.20.23.44 on port 9651 20090810-10:38:45 : Initiated logon request 20090810-10:38:47 : Received logout request 20090810-10:38:47 : Sending logout response 20090810-10:38:47 : Disconnecting 20090810-10:38:47 : Logon state is not valid for message Thanks bornlibra23 -- View this message in context: http://www.nabble.com/Create-Logon-Message-tp24809985p24898755.html Sent from the QuickFIX - User mailing list archive at Nabble.com. |
From: Neeraj R. <rn...@ya...> - 2009-08-10 01:03:31
|
We were able to work around the timezone problem by starting the process with environment variable TZ set, e.g TZ=GMT This won't work if same process needs to support multiple time zones, but we just start different process for each timezone. thanks Neeraj --- On Tue, 7/14/09, Neeraj Rai <rn...@ya...> wrote: > From: Neeraj Rai <rn...@ya...> > Subject: Quickfix C++ timezone question > To: qui...@li... > Date: Tuesday, July 14, 2009, 10:59 PM > Hi , > > We use C++ version of quickfix. I have seen a few posts > about the timezones > and a nabble post from 2008 about no timezone support > http://www.nabble.com/TimeZone-in-quickfix.ini-td15607075.html > > 1. Has the support been added yet ? I don't see it in > docs. > only in java docs. > 2. if we submit a patch for the same, is there a chance of > it being > accepted ? I saw a patch submital for week long > session but not sure > if it was accepted. > 3. It is also not clear if new versions are being released > because for > 2 years and 2 employers I have been using 1.12.4 > Please throw some light on the status and process. > > thanks > Neeraj > > > > > > |
From: EclipseCap <tob...@ec...> - 2009-08-06 13:50:34
|
A lot of that stuff is language dependent and not really a QFIX thing. For starters I believe QFix should run within its own thread as part of its startup process. So when a callback fires from the QFix side it is on the QFix's thread. In C# when going to call code on my side I do a this.BeginInvoke which should put the function you are going to call on the message queue of the thread on your side. This only applies for C# so if you are using another language I can't be of much help. public void FIXOrderFillUpdate(FIXOrderFillMessage FillMessage) { if (delFIXOrderFillUpdate != null && InvokeRequired == true) { this.BeginInvoke(delFIXOrderFillUpdate, FillMessage); } } delFIXOrderFillUpdate is a delegate I created earlier. bornlibra23 wrote: > > I have another question. How can I have callbacks delivered & executed in > a separate thread than the one that created the quickfix objects? > Thanks > bornlibra23 > -- View this message in context: http://www.nabble.com/Create-Logon-Message-tp24809985p24846833.html Sent from the QuickFIX - User mailing list archive at Nabble.com. |
From: bornlibra23 <awa...@ns...> - 2009-08-06 11:27:33
|
I have another question. How can I have callbacks delivered & executed in a separate thread than the one that created the quickfix objects? Thanks bornlibra23 -- View this message in context: http://www.nabble.com/Create-Logon-Message-tp24809985p24844703.html Sent from the QuickFIX - User mailing list archive at Nabble.com. |
From: bornlibra23 <awa...@ns...> - 2009-08-06 05:31:39
|
Hello EclipseCap Greetings, Thanks For The Heads Up. Doesnt Quickfix provide a way to disable autologon? That is as soon as a session is created it will not try to logon. That is a quite a lot of code you provided. Also is there a callback that is used to notify of errors during logon? Thanks bornlibra23 -- View this message in context: http://www.nabble.com/Create-Logon-Message-tp24809985p24840416.html Sent from the QuickFIX - User mailing list archive at Nabble.com. |
From: EclipseCap <tob...@ec...> - 2009-08-04 15:12:31
|
Greetings, I am currently working on something kind of like that. I am using c# if that makes any difference for you. I am going to post the code from my app. It will not compile as it is missing a lot of the classes behind it. But I think if you look at the examples provided and then my code you should be able to piece it together. The trick is to do all of your setup during the construction, but not to start the initiator until you have all of your sessions setup. So once all of the setup is completed you simply execute m_Initiator.start() and it should try to startup any connections you have readied. In the EnableSession function there is a line Enable.logon() and Enable.logout(). You can call those before m_Initiator.start() fires. If you call .logout before it .start() then the logged out connection won't even try. Logon and Logout are kind of bad names really. logon/logout is more like a state. While in logon it will try to connect forever until it succeeds not just try once and return. This code is the constructor code. I wrote it to create a list of sessions based upon rows in a database rather than a setup file. m_Settings = new SessionSettings(); //------------------------------------------------------------------------------------- // Get all of the default values set. Then we build each session. //------------------------------------------------------------------------------------- QuickFix.Dictionary defaultDic = m_Settings.get(); defaultDic.setString("ConnectionType", "initiator"); defaultDic.setString("HeartBtInt", "30"); defaultDic.setString("ReconnectInterval", "1"); defaultDic.setString("FileStorePath", "store"); defaultDic.setString("FileLogPath", "log"); defaultDic.setString("StartTime", "00:00:00"); defaultDic.setString("EndTime", "00:00:00"); defaultDic.setString("UseDataDictionary", "N"); defaultDic.setString("HttpAcceptPort", "8080"); m_Settings.set(defaultDic); foreach(SessionData sessionData in m_Hub.DataManager.Sessions.SessionDataList) { //--------------------------------------------------------------------------------- // Setting this session id will fire off session data callbacks. //--------------------------------------------------------------------------------- sessionData.SessionID = BuildSession(sessionData); } m_Application = new FixApplication(); //---------------------------------------------------------------------------------------- // You can probably skip this as it is all about setting up the callbacks from FIX. //---------------------------------------------------------------------------------------- m_Application.FIXLoginStatusUpdateEvent += new FIXLoginStatusEventHandler(Application_LoginStatusUpdate); m_Application.FIXOrderStatusUpdateEvent += new FIXOrderStatusUpdate(Application_FIXOrderStatusUpdate); m_Application.FIXOrderFillUpdateEvent += new FIXOrderFillUpdate(Application_FIXOrderFillUpdate); m_Application.FIXOrderNewUpdateEvent += new FIXOrderNewUpdate(Application_FIXOrderNewUpdate); m_Application.FIXOrderCancelUpdateEvent += new FIXOrderCancelUpdate(Application_FIXOrderCancelUpdate); m_Application.FIXCancelRejectUpdateEvent += new FIXCancelRejectUpdate(Application_FIXCancelRejectUpdateEvent); //---------------------------------------------------------------------------------------- m_StoreFactory = new FileStoreFactory(m_Settings); m_MessageFactory = new DefaultMessageFactory(); m_Initiator = new SocketInitiator(m_Application, m_StoreFactory, m_Settings, m_MessageFactory); //------------------------------------------------------------------------------------- // Enable/Disable sessions. //------------------------------------------------------------------------------------- foreach (SessionData sessionData in m_Hub.DataManager.Sessions.SessionDataList) { EnableSession(sessionData.SessionID, sessionData.Enabled); } private bool EnableSession(string sessionID, bool sessionEnable) { bool retval = false; SessionID ID = new SessionID(); ID.fromString(sessionID.ToString()); if (Session.doesSessionExist(ID) == true) { retval = true; Session Enable = Session.lookupSession(ID); if (sessionEnable == true) { Enable.logon(); } else { Enable.logout(); } } return retval; } public string BuildSession(SessionData sessionData) { QuickFix.Dictionary defaultDic = m_Settings.get(); //------------------------------------------------------------------------------------- // Iterate through the datamanager and build our list of sessions. //------------------------------------------------------------------------------------- SessionID sID = new SessionID(new BeginString(sessionData.FixVersion), new SenderCompID(sessionData.SenderCompID), new TargetCompID(sessionData.TargetCompID)); //------------------------------------------------------------------------------------- // Add all of our session values as well. //------------------------------------------------------------------------------------- foreach (int TagID in sessionData.SessionConnection.SessionValues.Keys) { SessionValue sessionValue = sessionData.SessionConnection.SessionValues[TagID]; if(sessionValue != null) defaultDic.setString(sessionValue.Tag, sessionValue.Value); } m_Settings.set(sID, defaultDic); return sID.toString(); } Feel free to send me a message if you have questions. I can't say I am expert but at least I'm willing to help. -- View this message in context: http://www.nabble.com/Create-Logon-Message-tp24809985p24810491.html Sent from the QuickFIX - User mailing list archive at Nabble.com. |
From: bornlibra23 <awa...@ns...> - 2009-08-04 14:44:03
|
Hello People Can somebody help me with creating a logon message manually while disabling the auto logon feature. I need to have application control over logon. Thanks bornlibra23 -- View this message in context: http://www.nabble.com/Create-Logon-Message-tp24809985p24809985.html Sent from the QuickFIX - User mailing list archive at Nabble.com. |
From: Hei C. <str...@ya...> - 2009-08-04 00:49:34
|
Hi, I am using the latest quickfix (C++ version). I just wonder whether I can configure quickfix to selectively log the FIX messages. Thanks in advance. Cheers, Hei |
From: Brian S. <bri...@go...> - 2009-07-29 19:23:40
|
Hi I would like to start testing quickfix with Python on Windows. Are there any plans to provide a new python package for windows? Thanks Brian |
From: Doug M. <dou...@gm...> - 2009-07-27 19:52:49
|
I am having trouble parsing a Quote message using a c# version of QuickFix. An example message I have received is: 8=FIX.4.4 9=207 35=S 49=JTEST1 56=J_UAT_1 34=23 52=20090727-18:58:58 131=0 5271=InstrumentValuationResponse 555=1 600=NG 611=20091200 608=OCXXXX 1188=0.5775604818 7966=0.7208459105 612=4.9 681=1.098108096 1=dm1 10=021 I have the following method for reading the message: public override void onMessage(QuickFix44.Quote message, SessionID session) { int numLegs = message.getNoLegs().getValue(); for (uint n = 1; n<=numLegs; n++) { QuickFix44.Quote.NoLegs group = new QuickFix44.Quote.NoLegs(); message.getGroup(n, group); I correctly determine that the numLegs = 1. However, when I call message.getGroup, I get a FieldNotFound exception. If I am not using a data dictionary, I see the following in my event log: 20090727-18:59:05 : Message 23 Rejected: Conditionally Required Field Missing:555 Though, the 555 field is in the message. I suspect the problem has to do with the user defined fields, 1188 and/or 7966. I tried using a data dictionary, I modified the supplied fix44.xml dictionary to add fields for 1188 and 7966 and included them in the InsturmentLeg component. I also added the 5271 user defined field to the Quote message in the dictionary. After those changes, when using the data dictionary, the Quote message is rejected and I see the following in the event log: 20090727-18:48:53 : Message 3 Rejected: Tag not defined for this message type:612 612 is the LegStrikePrice, which should be supported on an InsturmentLeg, so I'm not sure why that is occuring? Is there anything else I need to do to handle these user defined fields? Am I doing something wrong in the onMessage method? Or is the message I am receiving badly formed? Is there anything else I should try to debug this? Thanks |
From: sumit a. <aro...@ya...> - 2009-07-24 08:49:30
|
Yes, use it in DEFAULT section. --- On Fri, 7/24/09, Hei Chan <str...@ya...> wrote: From: Hei Chan <str...@ya...> Subject: [Quickfix-users] FileLogPath? To: qui...@li... Date: Friday, July 24, 2009, 3:44 AM QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/index.html QuickFIX Support: http://www.quickfixengine.org/services.html Does it have to be in the DEFAULT section? When I put it in the SESSION level section, I can't start my app. It said, "Configuration failed: FileLogPath not defined" Thanks in advance. Cheers, Hei -----Inline Attachment Follows----- ------------------------------------------------------------------------------ -----Inline Attachment Follows----- _______________________________________________ Quickfix-users mailing list Qui...@li... https://lists.sourceforge.net/lists/listinfo/quickfix-users |
From: Hei C. <str...@ya...> - 2009-07-24 08:31:12
|
Nevermind. I had the same senderID, targetID, and beginString in 2 setting properties files (1 file for each connection). I didn't know that the underneath implementation used senderID, targetID, beginString and qualifier as the key. Sorry. ________________________________ From: Hei Chan <str...@ya...> To: qui...@li... Sent: Friday, July 24, 2009 1:14:10 AM Subject: [Quickfix-users] Session.m_sessionID is wrong somehow? QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/index.html QuickFIX Support: http://www.quickfixengine.org/services.html Hi, I am trying to maintain 2 FIX connections at the same time to 2 different ports. One of my classes inherits FIX::Application, and my FIX::Application::onLogon(const FIX::SessionID& sessionID) looks like: myClass::onLogon(const FIX::SessionID& sessionID) { FIX::Session* s = FIX::Session::lookupSession(*pSessionID); printf("onLogon sessionID=%p, session=%p, session.m_sessionID=%p\n", pSessionID, s, &s->getSessionID()); } When the first connection is established, the log looks okay: onLogon sessionID=0x9acef94, session=0x9acef90, session.m_sessionID=0x9acef94 However, when the second connection is established, the log looks very odd: onLogon sessionID=0x9c1744c, session=0x9acef90, session.m_sessionID=0x9acef94 For some unknown reasons, the second session's sessionID is the first session's sessionID. Any input is welcome. Thanks in advance. Cheers, Hei |
From: Hei C. <str...@ya...> - 2009-07-24 08:14:22
|
Hi, I am trying to maintain 2 FIX connections at the same time to 2 different ports. One of my classes inherits FIX::Application, and my FIX::Application::onLogon(const FIX::SessionID& sessionID) looks like: myClass::onLogon(const FIX::SessionID& sessionID) { FIX::Session* s = FIX::Session::lookupSession(*pSessionID); printf("onLogon sessionID=%p, session=%p, session.m_sessionID=%p\n", pSessionID, s, &s->getSessionID()); } When the first connection is established, the log looks okay: onLogon sessionID=0x9acef94, session=0x9acef90, session.m_sessionID=0x9acef94 However, when the second connection is established, the log looks very odd: onLogon sessionID=0x9c1744c, session=0x9acef90, session.m_sessionID=0x9acef94 For some unknown reasons, the second session's sessionID is the first session's sessionID. Any input is welcome. Thanks in advance. Cheers, Hei |
From: Hei C. <str...@ya...> - 2009-07-23 22:14:26
|
Does it have to be in the DEFAULT section? When I put it in the SESSION level section, I can't start my app. It said, "Configuration failed: FileLogPath not defined" Thanks in advance. Cheers, Hei |
From: <or...@qu...> - 2009-07-22 16:19:46
|
Hello Amit, QuickFIX is released under an Apache style license. This is compatible with software released under GPL. > -------- Original Message -------- > Subject: [Quickfix-developers] Contribute/License > From: amit khandelwal <kha...@gm...> > Date: Wed, July 22, 2009 9:58 am > To: qui...@li..., quickfix-users > <qui...@li...> > > > QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html<hr>I am developing a tool to read (quickfix) log files and upload the order > flow related information from that to a mysql database. The front end to > this will be a php based application which will give the client/trader the > ability to find out the number of IOC orders, Limit orders blah blah. If > there is enough interest for something like this I can release this tool for > the community under GPL. I see that quickfix already has a license of it > own. Are there issues related to licensing? > > Cheers, > Amit Khandelwal > > > -- > ------------------------------------------------------------------- > Ph : (973)-896-8208 > Email: kha...@gm... > Web: http://khandelwal.amit.googlepages.com/home > -------------------------------------------------------------------<hr>------------------------------------------------------------------------------<hr>_______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers |