|
From: Felipe W. <fel...@gm...> - 2021-04-14 22:37:01
|
Hi Chris, I've tested the QFJ schedule and everything worked perfectly! I used this configuration: StartTime=07:00:00, EndTime=21:00:00, TimeZone=America/Sao_Paulo, Weekdays=Monday,Tuesday,Wednesday,Thursday,Friday, QFJ is awesome, it prints on the event log the complete information about the FIX session: Session FIX.4.4:FOO->BAR schedule is monday, tuesday, wednesday, thursday, friday, 10:00:00-UTC - 00:00:00-UTC (monday, tuesday, wednesday, thursday, friday, 07:00:00-BRT - 21:00:00-BRT) As my counterparty occasionally asks me to do some mock tests on the weekends, I intend to create an option in my system to programmatically change my SessionSettings. For instance, on a Saturday, with my Initiator stopped, I'll change my SessionSettings and then start the Initiator. When the mock tests are done, I'll change my SessionSettings to the previous configuration. I could stop my application and make a new deployment with the new configuration that would allow QFJ to run on the weekend, but in that way I would need to go through a bureaucratic process at my company. Thanks again! Em seg., 12 de abr. de 2021 às 20:46, Felipe Windmoller < fel...@gm...> escreveu: > Hello Chris, > > Thanks for the complete answer and sharing your experience. > > I'll use the option you recommended, that is to use TimeZone, StartTime > and EndTime. > > As my counterparty also "recommends that customers remain disconnected > during the weekends, unless when participating in scheduled mock tests.", > I'll also use the Weekdays parameter. > > About my counterparty sequence reset, their documentation says: > > *All FIX session schedules for Entry Point are activated on a daily basis > and, at the end of the session, the connection is terminated by the Border > Gateway and the sequence number is reset. This means that at the beginning > of every new session, the expected sequence number is 1. Note that there > will be no logout message when the session is terminated. Instead, users > will detect a hard disconnection.* > > Cheers, > Felipe Windmoller > > Em seg., 12 de abr. de 2021 às 20:22, Christoph John < > chr...@ma...> escreveu: > >> BTW, your counterparty also needs to reset at the correct time so I guess >> they would also like to know when you actually reset. Otherwise "funny" >> things can happen. >> We had a counterparty which did not disconnect the session when their >> EndTime was reached but reset at the next intra-day disconnection. So most >> of the time everything worked but when there was a disconnection during the >> day (e.g. network problems) they started of at seqnum 1 mid-day which of >> course lead to problems since the sessions were constantly disconnecting >> due to too low seqnums... >> >> Cheers, >> Chris. >> >> On 13.04.21 01:16, Christoph John wrote: >> >> Hi, >> >> QFJ will reset the sequence number on the start of the session when it >> finds that the session storage is from an old session. It does determine >> this by using the StartTime and EndTime. See >> DefaultSessionSchedule.isSameSession(). >> So I can only encourage you to unify the TimeZone, StartTime, EndTime >> with your counterparty because that will do everything automatically for >> you. From my experience with the counterparties I've worked with this is no >> problem and some of them use a different time zone than our servers are in. >> >> If you still want to manage all that by yourself (not recommended), you >> could set NonStopSession=Y which will never reset the session >> automatically. You'll then need to have some kind of persistent flag in >> your application to determine if you already reset your session that day. >> >> Cheers, >> Chris. >> >> >> On 13.04.21 01:03, Felipe Windmoller wrote: >> >> QuickFIX/J Documentation: http://www.quickfixj.org/documentation/ >> QuickFIX/J Support: http://www.quickfixj.org/support/ >> >> >> Hello everybody! >> >> I must connect to a session on a daily basis and at the beginning of >> every new session, I must start with sequence number 1. >> >> I'm afraid of using the StartTime and EndTime parameters because there >> can be issues between the time zone configuration of my server and the >> acceptor. So, I intend to do a manual schedule to logon and logout. >> >> As my application can be restarted during the day by the server, I can't >> use the *ResetOnLogon* or the other *ResetOn* parameters. >> >> I tested QuickFIX/J and it looks like that every time that I start a >> session and the date of the session storage is older than the current day >> (in other words, the first logon of the day), QuickFIX/J is automatically >> setting the sequence number to 1. >> >> Did I understand that correctly? Will QuickFIX/J always begin the first >> daily session with the sequence number 1? >> >> Thanks a lot, >> Felipe Henrique Gross Windmoller >> >> >> >> >> >> _______________________________________________ >> Quickfixj-users mailing lis...@li...://lists.sourceforge.net/lists/listinfo/quickfixj-users >> >> >> -- >> Christoph John >> Software Engineering >> T +49 241 557...@ma... >> >> MACD GmbH >> Oppenhoffallee 103 >> 52066 Aachen, Germanywww.macd.com >> >> Amtsgericht Aachen: HRB 8151 >> Ust.-Id: DE 813021663 >> Geschäftsführer: George Macdonald >> >> >> -- >> Christoph John >> Software Engineering >> T +49 241 557...@ma... >> >> MACD GmbH >> Oppenhoffallee 103 >> 52066 Aachen, Germanywww.macd.com >> >> Amtsgericht Aachen: HRB 8151 >> Ust.-Id: DE 813021663 >> Geschäftsführer: George Macdonald >> >> |