quickfix-users Mailing List for QuickFIX (Page 43)
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: <mat...@hs...> - 2007-12-19 12:59:20
|
Hi, We currently have a problem with the latest release of QuickfixJ 1.3 and wonder if you could throw some light on this please. We have a set of adapters which connect to various FIX-based ECNs, and these are deployed together in a single web application. Each adapter is wrapped via Spring's MBeanExporter to be manageable, supporting start() and stop() operations. On the startup of the webapp, each adapter's start() method is invoked: all adapters start successfully. However, if we stop then restart an adapter through the JMX interface we have, an exception results: : Caused by: quickfix.ConfigError: error during session initialization at quickfix.mina.initiator.AbstractSocketInitiator.createSessions(AbstractSocketInitiator.java:138) at quickfix.mina.initiator.AbstractSocketInitiator.<init>(AbstractSocketInitiator.java:77) at quickfix.mina.initiator.AbstractSocketInitiator.<init>(AbstractSocketInitiator.java:67) at quickfix.SocketInitiator.<init>(SocketInitiator.java:47) at com.somebank.imt.trading.fix.FixClientApplication.getConnector(FixClientApplication.java:117) at com.somebank.imt.trading.fix.FixApplication.start(FixApplication.java:175) ... 38 more Caused by: java.lang.IllegalArgumentException: interface quickfix.SessionStateListener is not visible from class loader at java.lang.reflect.Proxy.getProxyClass(Proxy.java:353) at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:581) at quickfix.ListenerSupport.<init>(ListenerSupport.java:35) at quickfix.Session.<init>(Session.java:249) at quickfix.DefaultSessionFactory.create(DefaultSessionFactory.java:159) at quickfix.mina.SessionConnector.createSession(SessionConnector.java:112) at quickfix.mina.initiator.AbstractSocketInitiator.createSessions(AbstractSocketInitiator.java:132) ... 43 more I looked at the 1.3 source, in quickfix.ListenerSupport the following code is executed. (You are creating a dynamic proxy to override the toString implementation) @SuppressWarnings("unchecked") public ListenerSupport(Class<?> listenerClass) { ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); multicaster = Proxy.newProxyInstance(classLoader, new Class<?>[] { listenerClass }, new ListenerInvocationHandler()); } This is called from the quickfix.Session class when it is constructed: private final ListenerSupport stateListeners = new ListenerSupport(SessionStateListener.class); The first time this is invoked, we are in the context of a webapp classloader, so SessionStateListener is loaded into this classloader within Tomcat's classloader hierarchy. The second time this is invoked, we are in the context of an RMI JMX call. As such the context classloader off the thread is the classloader which has loaded the MBeanServer implementation, which is part of rt.jar. By this time SessionStateListener has been loaded into the webapp classloader though which is not visible to the other classloader higher in the hierarchy so our restart fails. Could you let us know how to fix this please? We do not want to lift all quickfix-based stuff higher in the hierarchy since we want our application to remain deployable as a single webapp-based unit. One other point, I notice that there is only one implementation of SessionStateListener (namely SessionAdmin): is there a good reason to load this from the context of the calling thread. Can you not do this.getClass().getClassLoader() instead? You cannot do this from within the constructor, but maybe you could have a postInit() type method where you would be able to do this. Without this, other people will face the same issue we do. Any help is greatly appreciated and if I have missed something out or am incorrect in my assumptions then many apologies! Thanks very much for your help on this and sorry for the long mail. Thanks, Matt ************************************************************ HSBC Bank plc may be solicited in the course of its placement efforts for a new issue, by investment clients of the firm for whom the Bank as a firm already provides other services. It may equally decide to allocate to its own proprietary book or with an associate of HSBC Group. This represents a potential conflict of interest. HSBC Bank plc has internal arrangements designed to ensure that the firm would give unbiased and full advice to the corporate finance client about the valuation and pricing of the offering as well as internal systems, controls and procedures to identify and manage conflicts of interest. HSBC Bank plc Registered Office: 8 Canada Square, London E14 5HQ, United Kingdom Registered in England - Number 14259 Authorised and regulated by the Financial Services Authority. ************************************************************ ----------------------------------------- SAVE PAPER - THINK BEFORE YOU PRINT! This transmission has been issued by a member of the HSBC Group "HSBC" for the information of the addressee only and should not be reproduced and/or distributed to any other person. Each page attached hereto must be read in conjunction with any disclaimer which forms part of it. Unless otherwise stated, this transmission is neither an offer nor the solicitation of an offer to sell or purchase any investment. Its contents are based on information obtained from sources believed to be reliable but HSBC makes no representation and accepts no responsibility or liability as to its completeness or accuracy. |
From: Hanan H. <han...@gm...> - 2007-12-10 20:21:47
|
Hi All, I am looking for a consulting for upgrading an existing in house automated system to a FIX based solution. The job targets are: 1. Definition of the FIX based required solution. 2. Comparing existing products VS developing using QF engine Just a few words regarding the existing| required solutions details. The Existing system description: I have multiple clients (about 10-15 ) connected to Desktop application trading system. All of the orders sending and status is done via a proprietary API (COM based). each automated system sends a few orders a second. A new FIX based solution description 1. Each Client is a FIX acceptor application Use NewOrderSingle() + SendToTarget("Your FIX server"). to send a new order Each client would have its own config file, and each client would have a SenderCompID which you specify. When the client calls the SendToTarget it would be sending it to your FIX acceptor app, which has been configured to accept connections from each of your clients. 2. The FIX server would not only be an acceptor, but it could conceivably also be configured to have its own instance of an initiator. That acceptor app could then connect as an initiator to a broker FIX server and act as a gateway to the broker for all of my clients. Best regards, Hanan Harush |
From: Check M. <meo...@gm...> - 2007-12-04 15:38:17
|
Hi All, I was going through the change log and believe it confirms the changes for dynamic session addition in QFJ Ver 1.3. But when I tried to go through the Java source I couldn't find any changes for the same. Can anybody please confirm that the Ver 1.3 includes the changes for the dynamic session addition? Is anybody actually using the same in case of an Acceptor based application? Thanks in advance. Me :) |
From: Check M. <meo...@gm...> - 2007-12-04 02:20:38
|
Hi All, I was going through the change log and believe it confirms the changes for dynamic session addition in QFJ Ver 1.3. But when I tried to go through the Java source I couldn't find any changes for the same. Can anybody please confirm that the Ver 1.3 includes the changes for the dynamic session addition? Is anybody actually using the same in case of an Acceptor based application? Thanks in advance. Me :) |
From: Mike P. <mic...@ya...> - 2007-12-03 21:09:40
|
Searched the email archives and found a couple of threads on how to handle the need for a TargetSubID on a session. Correct me if I'm wrong, but it seems like the answer is to use the toAdmin/fromAdmin()/toApp()/fromApp() methods to fill in the SubId. It seems like you could make the session definition have an _optional_ subid definition so there would not be the need to populate it through the toAdmin()/fromAdmin()/toApp()/fromApp() methods. I'm looking to write a fix gateway and it seems rather inconvienent for sessions that need a subid as required part of the session definition. Am I missing something obvious? - Mike ____________________________________________________________________________________ Looking for last minute shopping deals? Find them fast with Yahoo! Search. http://tools.search.yahoo.com/newsearch/category.php?category=shopping |
From: mpermar <mp...@gm...> - 2007-12-03 11:17:36
|
Hi all, I have been reading QuickFIX/QFJ documentation and patterns and it is clear to me that it does support server (acceptor) failover. That is I can configure on the client side reconnection to a different server in case of failure. That is great, but I was wondering now if there is any kind of patterns to perform client (initiator) failover. My idea is having several clients in an active-passive scenario so when I shut one client down another client could become the master. Is there any patterns defined in QuickFIX/QFJ to perform this? Best Regards, Martin -- View this message in context: http://www.nabble.com/Client-initiator-failover-tf4935806.html#a14127887 Sent from the QuickFIX - User mailing list archive at Nabble.com. |
From: Jerry S. <jer...@gm...> - 2007-11-29 04:23:35
|
Hi, I'm really pulling my hair out on this one - can anyone tell me exactly how to schedule reset of sequence numbers? I can make my numbers reset by using *ResetOn[Logon|Logout|Disconnect]* but this is not my use case - I need them to reset every week at a particular time. I understand how to use StartTime/StartDay etc. to govern my session lifetime but how can I actually make my sequence numbers reset when the session re-starts? Many thanks in advance... jerry |
From: Good T. <aa...@rd...> - 2007-11-26 22:06:40
|
hello We're puzzling over some quickfix behaviour and getting more puzzled as we go through the source Here are the steps for a logon in broad terms a fix session is initiatied onLogout is called ok, that means that if we need to do any kind of higher level logon stuff, we know exactly when the fix session is up now, when we log off, that seems to be a different story there are three calls that we've looked over nextLogout, disconnect, generateLogout it seems, in broad terms fix session is terminated onLogout is called that seems opposite to us, it seems like we should get onLogout called before the session is terminated so that we can do "higher level" stuff before the connection goes away (or at least attempt) is that not possible? are we missing the point? i'd expect that on a "nice" logout, we should expect onLogout to be called before the session was gone, and if it was a "bad" logout, we'd expect the call to not happen, or if it did, then the session would be "dead" anyway, any input would be helpful aaron -- Let's just be friends the type of friends that make no special effort to see each other |
From: <urb...@sb...> - 2007-11-25 15:14:51
|
Hi, My team is heading toward some 4.2 cross-platform API modeling of feed and execution we'd like to expose externally by C. We typically code C# or Java before committing to Cpp, but modeling cross-platform as API using dll/elf, means C#, Mono or QF/J-JNI, SWIG or socket bridge does not model a true API or keep us near Cpp source. We're wondering about possibly extending some of the QF dynamic functions we need, by abstracting / exposing duplicate C functions from within the Cpp source, hoping we could access the C functions more universally using Pascal or similar, to model the interfaces. *** My question is if this sounds "feasible" or if others can warn of pitfalls, at least where limited API modeling is concerned, or if there are others that have done similar and might share some experience. Our Cpp coder is swamped, so odd as the approach may sound, it would still benefit over time and flexibility. Thanks in advance for any input. Mike |
From: Thiagarajan <th...@ch...> - 2007-11-02 18:33:44
|
I am running Quick Fix source first time . It requires some settings = file as command line arguements. Can anybody send me sample configuration or Settings file with details. And also with complete execution method details. I had gone through the = documention of Quick Fix . But i am unable to run Acceptor and = Inititator. can any body help me out? Regards, Thiagarajan |
From: xiaofeng c. <xia...@ya...> - 2007-10-24 20:59:31
|
We have been encountering a fairly reproducible issue when unloading the quickfix library when there are several initiator threads. The stack info for the relevant threads is included below. When our engine tries to shut down the ThreadedSocketInitiator, the engine hangs on thread_join for thread 147418032. Thread 147418032 is hanging because it is waiting to acquire a lock; Simultaneously, thread -1210057808 is waiting to acquire the same lock. Both Threads 147418032 and -1210057808 work on (this=0x93c6340, s=2). The fact both threads are trying to remove the same connection thread makes us to think that there is some synchronization failure. We are running on the 2.4 Redhat Linux kernel. Can anyone shed some light on this issue? Thanks in advance. -Jeff Backtrace from GDB (gdb) thread apply all bt Thread 5 (Thread 147418032 (LWP 6937)): #0 0x0092c7a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2 #1 0x00b871ce in __lll_mutex_lock_wait () from /lib/tls/libpthread.so.0 #2 0x00b83e2b in _L_mutex_lock_35 () from /lib/tls/libpthread.so.0 #3 0x08c962c4 in ?? () #4 0x00543764 in ?? () from /usr/local/lib/libquickfix.so.10 #5 0xb7f768e0 in ?? () #6 0x093c6340 in ?? () #7 0x08c962e8 in ?? () #8 0x004a14bc in FIX::ThreadedSocketInitiator::removeThread (this=0x93c6340, s=2) at Mutex.h:64 #9 0x004a14bc in FIX::ThreadedSocketInitiator::removeThread (this=0x93c61a0, s=13) at Mutex.h:64 #10 0x004a59b5 in FIX::ThreadedSocketInitiator::socketThread (p=0x92a1b50) at ThreadedSocketInitiator.cpp:222 #11 0x00b82371 in start_thread () from /lib/tls/libpthread.so.0 #12 0x00c569be in clone () from /lib/tls/libc.so.6 Thread 4 (Thread -1210057808 (LWP 6938)): #0 0x0092c7a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2 #1 0x00b871ce in __lll_mutex_lock_wait () from /lib/tls/libpthread.so.0 ---Type <return> to continue, or q <return> to quit--- #2 0x00b83e2b in _L_mutex_lock_35 () from /lib/tls/libpthread.so.0 #3 0xb7dff2c4 in ?? () #4 0x00543764 in ?? () from /usr/local/lib/libquickfix.so.10 #5 0xb7f768e0 in ?? () #6 0x093c6340 in ?? () #7 0xb7dff2e8 in ?? () #8 0x004a14bc in FIX::ThreadedSocketInitiator::removeThread (this=0x93c6340, s=2) at Mutex.h:64 #9 0x004a14bc in FIX::ThreadedSocketInitiator::removeThread (this=0x93c61a0, s=14) at Mutex.h:64 #10 0x004a59b5 in FIX::ThreadedSocketInitiator::socketThread (p=0x93c14c0) at ThreadedSocketInitiator.cpp:222 #11 0x00b82371 in start_thread () from /lib/tls/libpthread.so.0 #12 0x00c569be in clone () from /lib/tls/libc.so.6 Thread 1 (Thread -1208522528 (LWP 6421)): #0 0x0092c7a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2 #1 0x00b830fd in pthread_join () from /lib/tls/libpthread.so.0 #2 0x00513993 in FIX::thread_join (thread=147418032) at Utility.cpp:489 #3 0x004a16cb in FIX::ThreadedSocketInitiator::onStop (this=0x93c61a0) at ThreadedSocketInitiator.cpp:128 #4 0x0048a011 in FIX::Initiator::stop (this=0x93c61a0, force=false) at Initiator.cpp:274 #5 0x080acdf7 in FIXEngineT::Stop (this=0x9216b58) at fixeng.cpp:1087 #6 0x0808498e in FIXDT::Term (this=0xbff0fae0) at fixd.cpp:231 #7 0x080864b9 in FIXDT::OnEndOfDay (this=0xbff0fae0) at fixd.cpp:652 #8 0x080891b9 in FIXDT::ProcessMsg (this=0xbff0fae0, bxmsg=@0xbff0f8d8) at fixd.cpp:466 #9 0x080899db in FIXDT::QueueCheck (this=0xbff0fae0) at fixd.cpp:501 #10 0x0808b26d in FIXDT::RunApp (this=0xbff0fae0) at fixd.cpp:176 #11 0x0808c2a8 in main (argc=5, argv=0xbff10484) at fixd.cpp:79 (gdb) __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com |
From: Jeffrey C. <jef...@pi...> - 2007-10-24 18:36:44
|
We have been encountering a fairly reproducible issue when unloading the quickfix library when there are several initiator threads. The stack info for the relevant threads is included below. When our engine tries to shut down the ThreadedSocketInitiator, the engine hangs on thread_join for thread 147418032. Thread 147418032 is hanging because it is waiting to acquire a lock; Simultaneously, thread -1210057808 is waiting to acquire the same lock. Both Threads 147418032 and -1210057808 work on (this=3D0x93c6340, s=3D2). =20 The fact both threads are trying to remove the same connection thread makes us to think that there is some synchronization failure. =20 We are running on the 2.4 Redhat Linux kernel. =20 Can anyone shed some light on this issue?=20 =20 Thanks in advance. =20 -Jeff =20 =20 Backtrace from GDB =20 (gdb) thread apply all bt =20 Thread 5 (Thread 147418032 (LWP 6937)): #0 0x0092c7a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2 #1 0x00b871ce in __lll_mutex_lock_wait () from /lib/tls/libpthread.so.0 #2 0x00b83e2b in _L_mutex_lock_35 () from /lib/tls/libpthread.so.0 #3 0x08c962c4 in ?? () #4 0x00543764 in ?? () from /usr/local/lib/libquickfix.so.10 #5 0xb7f768e0 in ?? () #6 0x093c6340 in ?? () #7 0x08c962e8 in ?? () #8 0x004a14bc in FIX::ThreadedSocketInitiator::removeThread (this=3D0x93c6340, s=3D2) at Mutex.h:64 #9 0x004a14bc in FIX::ThreadedSocketInitiator::removeThread (this=3D0x93c61a0, s=3D13) at Mutex.h:64 #10 0x004a59b5 in FIX::ThreadedSocketInitiator::socketThread (p=3D0x92a1b50) at ThreadedSocketInitiator.cpp:222 #11 0x00b82371 in start_thread () from /lib/tls/libpthread.so.0 #12 0x00c569be in clone () from /lib/tls/libc.so.6 =20 Thread 4 (Thread -1210057808 (LWP 6938)): #0 0x0092c7a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2 #1 0x00b871ce in __lll_mutex_lock_wait () from /lib/tls/libpthread.so.0 ---Type <return> to continue, or q <return> to quit--- #2 0x00b83e2b in _L_mutex_lock_35 () from /lib/tls/libpthread.so.0 #3 0xb7dff2c4 in ?? () #4 0x00543764 in ?? () from /usr/local/lib/libquickfix.so.10 #5 0xb7f768e0 in ?? () #6 0x093c6340 in ?? () #7 0xb7dff2e8 in ?? () #8 0x004a14bc in FIX::ThreadedSocketInitiator::removeThread (this=3D0x93c6340, s=3D2) at Mutex.h:64 #9 0x004a14bc in FIX::ThreadedSocketInitiator::removeThread (this=3D0x93c61a0, s=3D14) at Mutex.h:64 #10 0x004a59b5 in FIX::ThreadedSocketInitiator::socketThread (p=3D0x93c14c0) at ThreadedSocketInitiator.cpp:222 #11 0x00b82371 in start_thread () from /lib/tls/libpthread.so.0 #12 0x00c569be in clone () from /lib/tls/libc.so.6 =20 Thread 1 (Thread -1208522528 (LWP 6421)): #0 0x0092c7a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2 #1 0x00b830fd in pthread_join () from /lib/tls/libpthread.so.0 #2 0x00513993 in FIX::thread_join (thread=3D147418032) at = Utility.cpp:489 #3 0x004a16cb in FIX::ThreadedSocketInitiator::onStop = (this=3D0x93c61a0) at ThreadedSocketInitiator.cpp:128 #4 0x0048a011 in FIX::Initiator::stop (this=3D0x93c61a0, force=3Dfalse) = at Initiator.cpp:274 #5 0x080acdf7 in FIXEngineT::Stop (this=3D0x9216b58) at fixeng.cpp:1087 #6 0x0808498e in FIXDT::Term (this=3D0xbff0fae0) at fixd.cpp:231 #7 0x080864b9 in FIXDT::OnEndOfDay (this=3D0xbff0fae0) at fixd.cpp:652 #8 0x080891b9 in FIXDT::ProcessMsg (this=3D0xbff0fae0, = bxmsg=3D@0xbff0f8d8) at fixd.cpp:466 #9 0x080899db in FIXDT::QueueCheck (this=3D0xbff0fae0) at fixd.cpp:501 #10 0x0808b26d in FIXDT::RunApp (this=3D0xbff0fae0) at fixd.cpp:176 #11 0x0808c2a8 in main (argc=3D5, argv=3D0xbff10484) at fixd.cpp:79 (gdb) =20 Disclaimer: Any references to Pipeline performance contained herein are = based on historic performance levels which Pipeline expects to maintain = or exceed but nevertheless does not guarantee. Congested networks, price = volatility, or other extraordinary events may impede future trading = activities and degrade performance statistics. |
From: Rodrick B. <rod...@gm...> - 2007-10-21 21:58:57
|
On 10/19/07, Ted Graham <tg...@co...> wrote: > > QuickFIX Documentation: > http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > > > Can anyone recommend an exchange simulator for testing my FIX and Order > Management logic? I started using the ordermatch example, but it doesn't > even allow for CancelReplacing orders, and I'd rather have a more robust > solution. > > > > Local or hosted is fine. > > Pay or free is fine. > > > At my firm we use Aegis Client Simulator and Exchange Simulator (Xsim), these two products are probably the best in the business for FIX certification and testing, checkout www.aegisoft.com Anyone have experience with B2Bits REEF environment? > > > > Ted > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. > Still grepping through log files to find problems? Stop. > Now Search log events and configuration files using AJAX and a browser. > Download your FREE copy of Splunk now >> http://get.splunk.com/ > _______________________________________________ > Quickfix-users mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-users > > -- Rodrick R. Brown http://www.rodrickbrown.com |
From: James P M. I. <jmi...@bl...> - 2007-10-21 17:25:03
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type"> <title></title> </head> <body bgcolor="#ffffff" text="#000000"> Both ARCA and CME have development environments that you should consider using if you meet the eligibility requirements. I would add that ARCA's FIX 4.2 implementation is excellent, while CME's is a very bastardized FIX. These 2 extremes should give you some good experience with real world implementations and some of the "flavoring" that you will need to do for real apps.<br> <br> Also, if your brokers support DMA type trading through their FIX engines, then you should be able to get test sessions created with them.<br> <br> Ted Graham wrote: <blockquote cite="mid:00f901c8128b$1c492950$54db7bf0$@com" type="cite"> <pre wrap="">QuickFIX Documentation: <a class="moz-txt-link-freetext" href="http://www.quickfixengine.org/quickfix/doc/html/index.html">http://www.quickfixengine.org/quickfix/doc/html/index.html</a> QuickFIX Support: <a class="moz-txt-link-freetext" href="http://www.quickfixengine.org/services.html">http://www.quickfixengine.org/services.html</a> </pre> <br> <hr size="4" width="90%"><br> <meta http-equiv="Content-Type" content="text/html; "> <meta name="Generator" content="Microsoft Word 12 (filtered medium)"> <style> <!-- /* Font Definitions */ @font-face {font-family:"Cambria Math"; panose-1:2 4 5 3 5 4 6 3 2 4;} @font-face {font-family:Calibri; panose-1:2 15 5 2 2 2 4 3 2 4;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {margin:0in; margin-bottom:.0001pt; font-size:11.0pt; font-family:"Calibri","sans-serif";} a:link, span.MsoHyperlink {mso-style-priority:99; color:blue; text-decoration:underline;} a:visited, span.MsoHyperlinkFollowed {mso-style-priority:99; color:purple; text-decoration:underline;} span.EmailStyle17 {mso-style-type:personal-compose; font-family:"Calibri","sans-serif"; color:windowtext;} .MsoChpDefault {mso-style-type:export-only;} @page Section1 {size:8.5in 11.0in; margin:1.0in 1.0in 1.0in 1.0in;} div.Section1 {page:Section1;} --> </style> <!--[if gte mso 9]><xml> <o:shapedefaults v:ext="edit" spidmax="1026" /> </xml><![endif]--><!--[if gte mso 9]><xml> <o:shapelayout v:ext="edit"> <o:idmap v:ext="edit" data="1" /> </o:shapelayout></xml><![endif]--> <div class="Section1"> <p class="MsoNormal">Can anyone recommend an exchange simulator for testing my FIX and Order Management logic? I started using the ordermatch example, but it doesn’t even allow for CancelReplacing orders, and I’d rather have a more robust solution.<o:p></o:p></p> <p class="MsoNormal"><o:p> </o:p></p> <p class="MsoNormal">Local or hosted is fine.<o:p></o:p></p> <p class="MsoNormal">Pay or free is fine.<o:p></o:p></p> <p class="MsoNormal"><o:p> </o:p></p> <p class="MsoNormal">Anyone have experience with B2Bits REEF environment?<o:p></o:p></p> <p class="MsoNormal"><o:p> </o:p></p> <p class="MsoNormal">Ted<o:p></o:p></p> </div> <pre wrap=""> <hr size="4" width="90%"> ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> <a class="moz-txt-link-freetext" href="http://get.splunk.com/">http://get.splunk.com/</a></pre> <pre wrap=""> <hr size="4" width="90%"> _______________________________________________ Quickfix-users mailing list <a class="moz-txt-link-abbreviated" href="mailto:Qui...@li...">Qui...@li...</a> <a class="moz-txt-link-freetext" href="https://lists.sourceforge.net/lists/listinfo/quickfix-users">https://lists.sourceforge.net/lists/listinfo/quickfix-users</a> </pre> </blockquote> <pre class="moz-signature" cols="72">-- James P Michels III </pre> </body> </html> |
From: Toli K. <to...@ma...> - 2007-10-19 20:10:56
|
Ted, We've had a good experience using the TransactTools FIX certification engine at http://www.openfix.net/ . You'll have to register with them first, of course, which is sometimes convoluted and may take a week. We are also hosting a FIX exchange simulator at http://exchange.marketcetera.org, but it doesn't support currencies or cancel/replace yet either. You can generate a senderCompID for it at http://www.marketcetera.com/contacts/register , and then connect to FIX IP: exchange.marketcetera.com port: 7001 hope this helps. On 10/19/07, Ted Graham <tg...@co...> wrote: > QuickFIX/J Documentation: > http://www.quickfixj.org/documentation/ > QuickFIX/J Support: http://www.quickfixj.org/support/ > > > > > > Can anyone recommend an exchange simulator for testing my FIX and Order > Management logic? I started using the ordermatch example, but it doesn't > even allow for CancelReplacing orders, and I'd rather have a more robust > solution. > > > > Local or hosted is fine. > > Pay or free is fine. > > > > Anyone have experience with B2Bits REEF environment? > > > > Ted > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. > Still grepping through log files to find problems? Stop. > Now Search log events and configuration files using AJAX and a browser. > Download your FREE copy of Splunk now >> http://get.splunk.com/ > _______________________________________________ > Quickfixj-users mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfixj-users > > -- Toli Kuznets http://www.marketcetera.com: Open-Source Trading Platform download.run.trade. |
From: Ted G. <tg...@Co...> - 2007-10-19 20:03:38
|
Can anyone recommend an exchange simulator for testing my FIX and Order Management logic? I started using the ordermatch example, but it doesn't even allow for CancelReplacing orders, and I'd rather have a more robust solution. Local or hosted is fine. Pay or free is fine. Anyone have experience with B2Bits REEF environment? Ted |
From: Sam S. <sa...@if...> - 2007-10-18 15:16:19
|
Hi, =20 I need to a deep clone of a QuickFix message, retaining its type. I have written the following method in C#. =20 It seems to work. =20 Having examine the C++ code of the fix library and the underlying types I believe that this should do a by-value copy. =20 Please can anyone let me know if there are any problems with this, or there is a better way to do it? =20 public static QuickFix.Message DeepCopyFixMessage (QuickFix.Message inputMessage) { QuickFix.Message outputMessage; =20 outputMessage =3D (QuickFix.Message) System.Activator.CreateInstance (inputMessage.GetType ()); unsafe { outputMessage.setUnmanaged (inputMessage.unmanaged ()); } =20 return outputMessage; } Sam Smith Intelligent Financial Systems Ltd =20 |
From: James P M. I. <jmi...@bl...> - 2007-10-16 21:16:34
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type"> </head> <body bgcolor="#ffffff" text="#000000"> We wrote our own. I will say that I was happy with the way the QuickFix design allowed us to tightly couple our OMS to the message engine.<br> <br> Ted Graham wrote: <blockquote cite="mid:008401c81037$c2f54a00$48dfde00$@com" type="cite"> <pre wrap="">QuickFIX Documentation: <a class="moz-txt-link-freetext" href="http://www.quickfixengine.org/quickfix/doc/html/index.html">http://www.quickfixengine.org/quickfix/doc/html/index.html</a> QuickFIX Support: <a class="moz-txt-link-freetext" href="http://www.quickfixengine.org/services.html">http://www.quickfixengine.org/services.html</a> </pre> <br> <hr size="4" width="90%"><br> <meta http-equiv="Content-Type" content="text/html; "> <meta name="Generator" content="Microsoft Word 12 (filtered medium)"> <style> <!-- /* Font Definitions */ @font-face {font-family:"Cambria Math"; panose-1:2 4 5 3 5 4 6 3 2 4;} @font-face {font-family:Calibri; panose-1:2 15 5 2 2 2 4 3 2 4;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {margin:0in; margin-bottom:.0001pt; font-size:11.0pt; font-family:"Calibri","sans-serif";} a:link, span.MsoHyperlink {mso-style-priority:99; color:blue; text-decoration:underline;} a:visited, span.MsoHyperlinkFollowed {mso-style-priority:99; color:purple; text-decoration:underline;} span.EmailStyle17 {mso-style-type:personal-compose; font-family:"Calibri","sans-serif"; color:windowtext;} .MsoChpDefault {mso-style-type:export-only;} @page Section1 {size:8.5in 11.0in; margin:1.0in 1.0in 1.0in 1.0in;} div.Section1 {page:Section1;} --> </style> <!--[if gte mso 9]><xml> <o:shapedefaults v:ext="edit" spidmax="1026" /> </xml><![endif]--><!--[if gte mso 9]><xml> <o:shapelayout v:ext="edit"> <o:idmap v:ext="edit" data="1" /> </o:shapelayout></xml><![endif]--> <div class="Section1"> <p class="MsoNormal"><o:p> </o:p></p> <p class="MsoNormal">QuickFix is great for sending and receiving FIX messages, but it seems that order and position management is a bigger job. By this I mean:<o:p></o:p></p> <p class="MsoNormal">+ keeping track of orders, including their current state<o:p></o:p></p> <p class="MsoNormal">+ keeping track of your current position, based on fills that have come in for orders<o:p></o:p></p> <p class="MsoNormal"><o:p> </o:p></p> <p class="MsoNormal">I don’t see any support for this in QF. Am I missing it? If not, are there are tools or libraries to make this easier?<o:p></o:p></p> <p class="MsoNormal"><o:p> </o:p></p> <p class="MsoNormal">Thanks,<o:p></o:p></p> <p class="MsoNormal">Ted<o:p></o:p></p> </div> <pre wrap=""> <hr size="4" width="90%"> ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> <a class="moz-txt-link-freetext" href="http://get.splunk.com/">http://get.splunk.com/</a></pre> <pre wrap=""> <hr size="4" width="90%"> _______________________________________________ Quickfix-users mailing list <a class="moz-txt-link-abbreviated" href="mailto:Qui...@li...">Qui...@li...</a> <a class="moz-txt-link-freetext" href="https://lists.sourceforge.net/lists/listinfo/quickfix-users">https://lists.sourceforge.net/lists/listinfo/quickfix-users</a> </pre> </blockquote> </body> </html> |
From: Toli K. <to...@ma...> - 2007-10-16 21:13:12
|
Hey Ted, I don't want to sound like a "marketing drone", but this is exactly why we built Marketcetera :) QFJ is a great library for communicating with FIX destination, but it's limited to that only. Marketcetera Platform does exactly what you are asking for: it consists of an OMS, an end-user GUI that lets you trade and manage orders (http://trac.marketcetera.org/trac.fcgi/wiki/Marketcetera/Photon) and Tradebase, a positions and basic risk analysis and P&L web-app (http://trac.marketcetera.org/trac.fcgi/wiki/Marketcetera/Tradebase). It's also an open-source project, and it's built on top of Quickfix/J, as you can imagine. feel free to send me email directly if you have any questions, or take a look at http://trac.marketcetera.org/ for more information. > QuickFix is great for sending and receiving FIX messages, but it seems that > order and position management is a bigger job. By this I mean: > > + keeping track of orders, including their current state > > + keeping track of your current position, based on fills that have come in > for orders > I don't see any support for this in QF. Am I missing it? If not, are there > are tools or libraries to make this easier? -- Toli Kuznets http://www.marketcetera.com: Open-Source Trading Platform download.run.trade. |
From: Jonathan K. <jon...@gm...> - 2007-10-16 21:10:02
|
You have to write your own or buy one. I'm doing that right now -- take a look at the code for tradeclient.cpp and you can back everything in to a SQL database. On 10/16/07, Ted Graham <tg...@co...> wrote: > > QuickFIX Documentation: > http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > > > > QuickFix is great for sending and receiving FIX messages, but it seems > that order and position management is a bigger job. By this I mean: > > + keeping track of orders, including their current state > > + keeping track of your current position, based on fills that have come in > for orders > > > > I don't see any support for this in QF. Am I missing it? If not, are > there are tools or libraries to make this easier? > > > > Thanks, > > Ted > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. > Still grepping through log files to find problems? Stop. > Now Search log events and configuration files using AJAX and a browser. > Download your FREE copy of Splunk now >> http://get.splunk.com/ > _______________________________________________ > Quickfix-users mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-users > > -- -- Jonathan Kalbfeld ThoughtWave Technologies LLC www.thoughtwave.com +1 323 620 6682 |
From: Ted G. <tg...@Co...> - 2007-10-16 21:01:57
|
QuickFix is great for sending and receiving FIX messages, but it seems that order and position management is a bigger job. By this I mean: + keeping track of orders, including their current state + keeping track of your current position, based on fills that have come in for orders I don't see any support for this in QF. Am I missing it? If not, are there are tools or libraries to make this easier? Thanks, Ted |
From: Ted G. <tg...@Co...> - 2007-10-15 19:05:31
|
I'm building an arbitrage system, so responding to FIX messages quickly is essential. I don't need to process hundreds of messages a second, but I need to respond to the messages that arrive very quickly. I wrote a simple Initiator client that just logs in. Once Logon is complete, I change the client's heartbeat interval to be very long, so the client quits sending HeartBeats. Therefore the server will send a TestRequest every few seconds, and QuickFix will respond with a heartbeat. I'm interested in the turnaround time to do that message processing. I used Wireshark to capture the network traffic so I could see how long it takes the client to respond. To make the times as fast as possible, I've done the following: + The Log level is WARN, so nothing is being logged + Using the MemoryStore for messages + UseDataDictionary, ValidateFieldsHaveValues, CheckCompID and CheckLatency are all turned off + SocketTcpNoDelay is turned on I did this for QuickFix, QuickFix/JNI, QuickFix from C# and QuickFix/J. I was pleased with how easy it was to get this test running using the various flavors of QuickFix. The average time to respond in MICROseconds is as follows: QuickFix: 235 QuickFix/JNI: 550 QuickFix/C#: 483 QuickFix/J: 501 I don't think the JVI vs .NET vs QuickFixJ differences are significant, but the C++ times are significantly faster than anything else. For the two Java apps, I spent some time tuning the JVM's params; I also tried the JRockit JVM. My question for the group: Is there an architectural reason why QuickFix outperforms QuickFix/J? Or is this a case of C++ being faster than Java in this problem domain (network programming and byte manipulation)? Thanks, Ted |
From: abaraff <ab...@ra...> - 2007-10-11 12:40:31
|
I=E2=80=99m in the process of building my first FIX application, but I=E2= =80=99m running in to some trouble getting connectivity to my broker=E2=80=99s system. I=E2= =80=99ve implemented a pretty basic SocketInitiator C# application that looks like this: public class Program { protected static QuickFix.SocketInitiator _initiator; protected static QuickFix.Application _application; protected static QuickFix.FileLogFactory _logFactory; protected static QuickFix.MessageFactory _messageFactory; protected static QuickFix.SessionSettings _settings; protected static QuickFix.FileStoreFactory _storeFactory; /// <summary> /// The main entry point for the application. /// </summary> [STAThread] static void Main() { _settings =3D new QuickFix.SessionSettings("sessionsettings.txt= "); _application =3D new QuickFixApp(); _storeFactory =3D new QuickFix.FileStoreFactory(_settings); _logFactory =3D new QuickFix.FileLogFactory(_settings); _messageFactory =3D new QuickFix.DefaultMessageFactory(); _initiator =3D new QuickFix.SocketInitiator(_application, _storeFactory, _settings, _logFactory, _messageFactory ); _initiator.start(); for (int i =3D 0; i < 20; i++) { System.Threading.Thread.Sleep(1000); =20 System.Diagnostics.Debug.WriteLine(_initiator.isLoggedOn().ToString()); } _initiator.stop();=20 } class QuickFixApp : QuickFix.Application { public void fromAdmin(Message p1, SessionID p2) { System.Diagnostics.Debug.WriteLine("fromAdmin\tMessage\t" + p1.ToString()); System.Diagnostics.Debug.WriteLine("fromAdmin\tSession\t" + p2.ToString()); } public void fromApp(Message p1, SessionID p2) { System.Diagnostics.Debug.WriteLine("fromApp\t" + p1.ToString())= ; System.Diagnostics.Debug.WriteLine("fromApp\tSession\t" + p2.ToString()); } public void onCreate(SessionID p1) { System.Diagnostics.Debug.WriteLine("onCreate\t" + p1.ToString()); } public void onLogon(SessionID p1) { System.Diagnostics.Debug.WriteLine("onLogon\t" + p1.ToString())= ; } public void onLogout(SessionID p1) { System.Diagnostics.Debug.WriteLine("onLogout\t" + p1.ToString()); } public void toAdmin(Message p1, SessionID p2) { System.Diagnostics.Debug.WriteLine("toAdmin\tMessage\t" + p1.ToString()); System.Diagnostics.Debug.WriteLine("toAdmin\tSession\t" + p2.ToString()); } public void toApp(Message p1, SessionID p2) { System.Diagnostics.Debug.WriteLine("toApp\t" + p1.ToString()); System.Diagnostics.Debug.WriteLine("toApp\tSession\t" + p2.ToString()); } } When I run it I get an onCreate event that prints out my BeginString:SenderCompID->TargetCompID. Then I never get another event, no= r does isLoggedOn() return true at any point. My event log file has three lines: 20071010-22:32:28 : Created session 20071010-22:32:28 : Connecting to <Remote Machine's IP> on port <Remote Machine's Port> 20071010-22:40:53 : Created session That's it. Is my app ever getting a connection to the remote computer? At what point is this stuff breaking down? I'd like to be able to tell the guys at the brokerage exactly where I'm stuck but it's tough with so little experience. Thanks, Anthony=20 --=20 View this message in context: http://www.nabble.com/Problem-connecting-to-b= roker-tf4606964.html#a13154911 Sent from the QuickFIX - User mailing list archive at Nabble.com. |
From: Oksana C. <ch...@to...> - 2007-10-10 13:38:02
|
Hi, I'm Oksana Chucha from Tocarema company. I'm starting to use QuickFix library and I have some questions about its = possibility: 1) There is the queue in Session, function nextQueued allows to get = messages from it. But I see QuickFix put there messages only at = ResendReply(in Session::doTargetTooHigh). What is the exact purpose of = this queue?=20 SessionState:: typedef std::map < int, Message > Messages; SessionState::Messages m_queue; Can we use it to keep all messages, not only which we get on Resend? If = so, how these messages can be put into this queue (out of QuickFix = code), because Session::m_state is not public member and there is not = public function which can return it. 2) I tried to use object from Queue.h : I see template class Queue has = function Queue::wait(), which executes function Event::wait(). But there = should be parameter wait(double s): we don't have Event::wait(VOID). Oksana Tocarema Technology |
From: Rodrick B. <rod...@gm...> - 2007-10-04 11:43:16
|
On 10/3/07, John Doe <sla...@gm...> wrote: > QuickFIX Documentation: > http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: > http://www.quickfixengine.org/services.html > > > Hi all, > I've been playing with the quickfix engine a bit but was not able to find > any info about how to create a Publisher/Subscriber > channel. I mean one publisher and N > subscribers, publisher sending market data feeds over > multicast. Is it at all possible? The FIX Protocol official > page has some docs on multicast but in > majority it's about recommendations not how to implement > the multicast communication in practice. > > Any hint/advice appreciated. > > Thanks in advance. > > Regards, > John Doe > If its not part of the FIX API specification you wont find much support in QuickFix. > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. > Still grepping through log files to find problems? Stop. > Now Search log events and configuration files using AJAX and a browser. > Download your FREE copy of Splunk now >> http://get.splunk.com/ > _______________________________________________ > Quickfix-users mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-users > > -- Rodrick R. Brown http://www.rodrickbrown.com |