quickfix-developers Mailing List for QuickFIX (Page 10)
Brought to you by:
orenmnero
You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
|
Feb
(5) |
Mar
(16) |
Apr
(15) |
May
(17) |
Jun
(33) |
Jul
(35) |
Aug
(34) |
Sep
(19) |
Oct
(40) |
Nov
(51) |
Dec
(43) |
2003 |
Jan
(45) |
Feb
(79) |
Mar
(124) |
Apr
(121) |
May
(132) |
Jun
(77) |
Jul
(110) |
Aug
(57) |
Sep
(48) |
Oct
(83) |
Nov
(60) |
Dec
(40) |
2004 |
Jan
(67) |
Feb
(72) |
Mar
(74) |
Apr
(87) |
May
(70) |
Jun
(96) |
Jul
(75) |
Aug
(147) |
Sep
(128) |
Oct
(83) |
Nov
(67) |
Dec
(42) |
2005 |
Jan
(110) |
Feb
(84) |
Mar
(68) |
Apr
(55) |
May
(51) |
Jun
(192) |
Jul
(111) |
Aug
(100) |
Sep
(79) |
Oct
(127) |
Nov
(73) |
Dec
(112) |
2006 |
Jan
(95) |
Feb
(120) |
Mar
(138) |
Apr
(127) |
May
(124) |
Jun
(97) |
Jul
(103) |
Aug
(88) |
Sep
(138) |
Oct
(91) |
Nov
(112) |
Dec
(57) |
2007 |
Jan
(55) |
Feb
(35) |
Mar
(56) |
Apr
(16) |
May
(20) |
Jun
(77) |
Jul
(43) |
Aug
(47) |
Sep
(29) |
Oct
(54) |
Nov
(39) |
Dec
(40) |
2008 |
Jan
(69) |
Feb
(79) |
Mar
(122) |
Apr
(106) |
May
(114) |
Jun
(76) |
Jul
(83) |
Aug
(71) |
Sep
(53) |
Oct
(75) |
Nov
(54) |
Dec
(43) |
2009 |
Jan
(32) |
Feb
(31) |
Mar
(64) |
Apr
(48) |
May
(38) |
Jun
(43) |
Jul
(35) |
Aug
(15) |
Sep
(52) |
Oct
(62) |
Nov
(62) |
Dec
(21) |
2010 |
Jan
(44) |
Feb
(10) |
Mar
(47) |
Apr
(22) |
May
(5) |
Jun
(54) |
Jul
(19) |
Aug
(54) |
Sep
(16) |
Oct
(15) |
Nov
(7) |
Dec
(8) |
2011 |
Jan
(18) |
Feb
(9) |
Mar
(5) |
Apr
(5) |
May
(41) |
Jun
(40) |
Jul
(29) |
Aug
(17) |
Sep
(12) |
Oct
(23) |
Nov
(22) |
Dec
(11) |
2012 |
Jan
(8) |
Feb
(24) |
Mar
(5) |
Apr
(5) |
May
(6) |
Jun
(5) |
Jul
(5) |
Aug
(5) |
Sep
(2) |
Oct
(9) |
Nov
(2) |
Dec
(18) |
2013 |
Jan
(25) |
Feb
(16) |
Mar
(8) |
Apr
(2) |
May
(16) |
Jun
(17) |
Jul
(2) |
Aug
(13) |
Sep
(3) |
Oct
(4) |
Nov
(1) |
Dec
|
2014 |
Jan
(2) |
Feb
|
Mar
(22) |
Apr
(9) |
May
(3) |
Jun
(1) |
Jul
(5) |
Aug
(11) |
Sep
(18) |
Oct
(4) |
Nov
(4) |
Dec
(3) |
2015 |
Jan
(2) |
Feb
|
Mar
|
Apr
(3) |
May
(4) |
Jun
(37) |
Jul
|
Aug
(4) |
Sep
(6) |
Oct
(1) |
Nov
(4) |
Dec
(2) |
2016 |
Jan
(9) |
Feb
(3) |
Mar
(7) |
Apr
(1) |
May
(8) |
Jun
|
Jul
|
Aug
|
Sep
(7) |
Oct
(3) |
Nov
(16) |
Dec
|
2017 |
Jan
(1) |
Feb
(15) |
Mar
(2) |
Apr
(12) |
May
(4) |
Jun
(7) |
Jul
(5) |
Aug
|
Sep
|
Oct
|
Nov
(23) |
Dec
(8) |
2018 |
Jan
(2) |
Feb
(4) |
Mar
(2) |
Apr
(8) |
May
(3) |
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
2019 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(1) |
Sep
|
Oct
(5) |
Nov
(3) |
Dec
|
2020 |
Jan
|
Feb
(4) |
Mar
(3) |
Apr
|
May
|
Jun
|
Jul
(12) |
Aug
(5) |
Sep
(3) |
Oct
(1) |
Nov
|
Dec
(1) |
2021 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
2022 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2025 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Grant B. <gbi...@co...> - 2015-06-16 13:38:28
|
Good catch, Hei! I forgot about how repeating group indexing starts with 1 (for some inane reason). Jaryl, I think you are getting different messages, some have the value and some do not. Remember how earlier you pasted a message that didn't have it? On Mon, Jun 15, 2015 at 11:02 PM, <ja...@sk...> wrote: > QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/ > > I am able to extract the value, however I do not understand the logic > behind it. > > Additionally, I would require a few tries before I'm able to get the > value. Is this a problem on the server side? > > Thank you so much, Mr Chan > > On 2015-06-16 09:06, Hei Chan wrote: > > change to getGroup(1,....) > > > > sometimes, reading the source helps a lot :) > > > > On Tuesday, June 16, 2015 1:21 AM, "ja...@sk..." > > <ja...@sk...> wrote: > > > > QuickFIX Documentation: > > http://www.quickfixengine.org/quickfix/doc/html/ [1] > > > > Sorry again, I believe to have copied an irrelevant message. I will > > use > > the most recent message where I have succeeded in receiving field 270 > > instead. > > > > 8=FIX.4.2☺ 9=168☺ 35=W☺ 49=CQG_Gateway☺ > > 56=sktradingFC☺ 34=2☺ 57=TestFIXMarketData☺ > > 52=20150615-15:56:20.567☺ 262=MARKETDATAID☺ 55=F.US.GCEQ15☺ > > 387=104656☺ 268=1☺ 269=0☺ 290=1☺ > > 270=1188.6000☺ 271=26☺ 10=123 > > > > Even when 268=1 here, I have received this message Conditionally > > Required Field Missing (268) > > > > I'm not sure what I have changed to make field 270 disappear, will > > look > > into that. > > > > On 2015-06-16 01:00, Grant Birchmeier wrote: > >> 1) Add UseDataDictionary=Y to your config > >> > >> 2) You'll notice that 270 isn't in that message, and 268 is in fact > >> set to 0. > >> > >> On Mon, Jun 15, 2015 at 11:55 AM, <ja...@sk...> wrote: > >> > >>> (Sorry, didn't include CC) > >>> > >>> Currently, my config is as shown. There is nothing much critical as > >>> this is a demo server. > >>> > >>> # default settings for sessions > >>> [DEFAULT] > >>> ConnectionType=initiator > >>> ReconnectInterval=60 > >>> SenderCompID=************ > >>> FileStorePath = incoming > >>> FileLogPath = outgoing > >>> > >>> [SESSION] > >>> BeginString=FIX.4.2 > >>> TargetCompID=********** > >>> StartTime=00:00:00 > >>> EndTime=23:59:00 > >>> # overide default setting for RecconnectInterval > >>> ReconnectInterval=30 > >>> HeartBtInt=30 > >>> SocketConnectPort=6912 > >>> SocketConnectHost=208.48.16.202 [1] > >>> DataDictionary=E:Downloadsquickfix-1.14.3quickfixspecFIX42.xml > >>> > >>> I have printed out to console, and this is the reply. > >>> > >>> 8=FIX.4.2 9=135 35=W 34=5 49=********* > >>> 52=20150615-16:41:40.872 56=********* > >>> 57=********** 55=F.US.GCEQ15 262=MARKETDATAID 268=0 > >>> 387=110170 10=113 > >>> > >>> On 2015-06-16 00:35, Grant Birchmeier wrote: > >>> (Please keep your mails on the list, thanks.) > >>> > >>> Something's not right. I need to know the following: > >>> > >>> 1) Show me your config. (Mask any sensitive info, please.) > >>> > >>> 2) In the first line of your OnMessage(MDSFR), print out "message" > >>> to > >>> console. Paste it in your reply. (If you can, please change the > >>> field separators to something visible.) > >>> > >>> -Grant > >>> > >>> On Mon, Jun 15, 2015 at 11:27 AM, <ja...@sk...> wrote: > >>> > >>> Yes I have tried using message.get(NoMDEntries) to get the value of > >>> 268, however, when I printed it out, the value is 0. What I'm > >>> trying > >>> to achieve is to get the value of 270, MDEntryPx, but I am unable > >>> to > >>> do a simple message.get(MDEntryPx), due to it being in a group. > >>> > >>> > >> > > > http://btobits.com/fixopaedia/fixdic42/message_Market_Data_Snapshot_Full_Refresh_W_.html > > [2] > >>> [2] > >>> [1] > >>> > >>> I am unable to understand why I can't extract the field directly. > >>> > >>> On 2015-06-16 00:18, Grant Birchmeier wrote: > >>> > >>> You should be able to simply call "message.get(NoMDEntries)" to get > >>> the value of 268 (where NoMDEntries is a FIX::NoMDEntries, of > >>> course). > >>> > >>> Is that what you tried? > >>> > >>> On Mon, Jun 15, 2015 at 11:00 AM, <ja...@sk...> wrote: > >>> > >>> Yes, I do understand that I'm trying to extract field 268, which is > >>> the NoMDEntries. However, I'm not sure why it is not set in this > >>> case, and when I print out the value of NoMDEntries, it gave me 0. > >>> What I really need is in field 270, MDEntryPx, but I'm not able to > >>> retrieve this information. Apparently, I'm able to receive the > >>> field > >>> 270 from the Market Data Snapshot request reply, but not field 268, > >>> which I have to refer to as a group in order to retrieve it. I am > >>> able to provide the message given by the server. > >>> > >>> 15:56:20.567 262=MARKETDATAID 55=F.US.GCEQ15 387=104656 268=1 > >>> 269=0 290=1 270=1188.6000 271=26 10=123 > >>> I am using the below code to retrieve field 270. > >>> > >>> void Application::onMessage > >>> (const FIX42::MarketDataSnapshotFullRefresh& message, const > >>> FIX::SessionID&) { > >>> > >>> FIX42::MarketDataSnapshotFullRefresh::NoMDEntries group; > >>> FIX::MDEntryType MDEntryType; > >>> FIX::MDEntryPx MDEntryPx; > >>> FIX::MDEntrySize MDEntrySize; > >>> FIX::OrderID orderID; > >>> > >>> message.getGroup(0, group); > >>> group.get(MDEntryType); > >>> group.get(MDEntryPx); > >>> group.get(MDEntrySize); > >>> group.get(orderID); > >>> > >>> } > >>> > >>> However, I am unable to retrieve the value in field 270. Please > >>> advise. > >>> > >>> -- > >>> > >>> Grant Birchmeier > >>> > >>> CONNAMARA SYSTEMS, LLC > >>> > >>> MADE-TO-MEASURE TRADING SOLUTIONS. > >>> Exactly what you need. No more. No less. > >>> > >>> http://connamara.com [3][3] [2] [1] > >>> > >>> Links: > >>> ------ > >>> [1] http://connamara.com [3][3] [2] > >>> > >>> -- > >>> > >>> Grant Birchmeier > >>> > >>> CONNAMARA SYSTEMS, LLC > >>> > >>> MADE-TO-MEASURE TRADING SOLUTIONS. > >>> Exactly what you need. No more. No less. > >>> > >>> http://connamara.com [3][3] [2] > >>> > >>> Links: > >>> ------ > >>> [1] > >>> > >> > > > http://btobits.com/fixopaedia/fixdic42/message_Market_Data_Snapshot_Full_Refresh_W_.html > > [2] > >>> [2] > >>> [2] http://connamara.com [3][3] > >> > >> -- > >> > >> Grant Birchmeier > >> > >> CONNAMARA SYSTEMS, LLC > >> > >> MADE-TO-MEASURE TRADING SOLUTIONS. > >> Exactly what you need. No more. No less. > >> > >> http://connamara.com [3][3] > >> > >> > >> Links: > >> ------ > >> [1] tel:208.48.16.202 > > > >> [2] > >> > > > http://btobits.com/fixopaedia/fixdic42/message_Market_Data_Snapshot_Full_Refresh_W_.html > > [2] > >> [3] http://connamara.com [3] > > > > > ------------------------------------------------------------------------------ > > _______________________________________________ > > Quickfix-developers mailing list > > Qui...@li... > > https://lists.sourceforge.net/lists/listinfo/quickfix-developers [4] > > > > > > > > Links: > > ------ > > [1] http://www.quickfixengine.org/quickfix/doc/html/ > > [2] > > > http://btobits.com/fixopaedia/fixdic42/message_Market_Data_Snapshot_Full_Refresh_W_.html > > [3] http://connamara.com/ > > [4] https://lists.sourceforge.net/lists/listinfo/quickfix-developers > > > ------------------------------------------------------------------------------ > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers > -- Grant Birchmeier *Connamara Systems, LLC* *Made-To-Measure Trading Solutions.* Exactly what you need. No more. No less. http://connamara.com |
From: Dilipsinh B. <dil...@si...> - 2015-06-16 10:38:50
|
Yes, I am trying to implement FIX bridge with quickfix, but as I said before, am new to FIX, don't know how to place market order with limits as in MT4 client... Regards Dilip |
From: Dilipsinh B. <dil...@si...> - 2015-06-16 05:34:37
|
Hello all, I created code as below: settings = new FIX::SessionSettings("MT4FIX.cfg"); storeFactory = new FIX::FileStoreFactory(*settings); logFactory = new FIX::FileLogFactory(*settings); initiator = new FIX::SocketInitiator(fixApp, *storeFactory, *settings, *logFactory); 'Tradeclient' example runs perfect with 'MT4FIX.cfg'... Application builds successful, but on debugging application, got exception on 'initiator'. And on running EXE directly gives "APPCRASH" error... Need help.. Regards Dilip |
From: Dilipsinh B. <dil...@si...> - 2015-06-16 05:23:47
|
Yes, I am trying to implement FIX bridge with quickfix, but as I said before, am new to FIX, don't know how to place market order with limits as in MT4 client... Regards Dilip |
From: <ja...@sk...> - 2015-06-16 04:03:18
|
I am able to extract the value, however I do not understand the logic behind it. Additionally, I would require a few tries before I'm able to get the value. Is this a problem on the server side? Thank you so much, Mr Chan On 2015-06-16 09:06, Hei Chan wrote: > change to getGroup(1,....) > > sometimes, reading the source helps a lot :) > > On Tuesday, June 16, 2015 1:21 AM, "ja...@sk..." > <ja...@sk...> wrote: > > QuickFIX Documentation: > http://www.quickfixengine.org/quickfix/doc/html/ [1] > > Sorry again, I believe to have copied an irrelevant message. I will > use > the most recent message where I have succeeded in receiving field 270 > instead. > > 8=FIX.4.2☺ 9=168☺ 35=W☺ 49=CQG_Gateway☺ > 56=sktradingFC☺ 34=2☺ 57=TestFIXMarketData☺ > 52=20150615-15:56:20.567☺ 262=MARKETDATAID☺ 55=F.US.GCEQ15☺ > 387=104656☺ 268=1☺ 269=0☺ 290=1☺ > 270=1188.6000☺ 271=26☺ 10=123 > > Even when 268=1 here, I have received this message Conditionally > Required Field Missing (268) > > I'm not sure what I have changed to make field 270 disappear, will > look > into that. > > On 2015-06-16 01:00, Grant Birchmeier wrote: >> 1) Add UseDataDictionary=Y to your config >> >> 2) You'll notice that 270 isn't in that message, and 268 is in fact >> set to 0. >> >> On Mon, Jun 15, 2015 at 11:55 AM, <ja...@sk...> wrote: >> >>> (Sorry, didn't include CC) >>> >>> Currently, my config is as shown. There is nothing much critical as >>> this is a demo server. >>> >>> # default settings for sessions >>> [DEFAULT] >>> ConnectionType=initiator >>> ReconnectInterval=60 >>> SenderCompID=************ >>> FileStorePath = incoming >>> FileLogPath = outgoing >>> >>> [SESSION] >>> BeginString=FIX.4.2 >>> TargetCompID=********** >>> StartTime=00:00:00 >>> EndTime=23:59:00 >>> # overide default setting for RecconnectInterval >>> ReconnectInterval=30 >>> HeartBtInt=30 >>> SocketConnectPort=6912 >>> SocketConnectHost=208.48.16.202 [1] >>> DataDictionary=E:Downloadsquickfix-1.14.3quickfixspecFIX42.xml >>> >>> I have printed out to console, and this is the reply. >>> >>> 8=FIX.4.2 9=135 35=W 34=5 49=********* >>> 52=20150615-16:41:40.872 56=********* >>> 57=********** 55=F.US.GCEQ15 262=MARKETDATAID 268=0 >>> 387=110170 10=113 >>> >>> On 2015-06-16 00:35, Grant Birchmeier wrote: >>> (Please keep your mails on the list, thanks.) >>> >>> Something's not right. I need to know the following: >>> >>> 1) Show me your config. (Mask any sensitive info, please.) >>> >>> 2) In the first line of your OnMessage(MDSFR), print out "message" >>> to >>> console. Paste it in your reply. (If you can, please change the >>> field separators to something visible.) >>> >>> -Grant >>> >>> On Mon, Jun 15, 2015 at 11:27 AM, <ja...@sk...> wrote: >>> >>> Yes I have tried using message.get(NoMDEntries) to get the value of >>> 268, however, when I printed it out, the value is 0. What I'm >>> trying >>> to achieve is to get the value of 270, MDEntryPx, but I am unable >>> to >>> do a simple message.get(MDEntryPx), due to it being in a group. >>> >>> >> > http://btobits.com/fixopaedia/fixdic42/message_Market_Data_Snapshot_Full_Refresh_W_.html > [2] >>> [2] >>> [1] >>> >>> I am unable to understand why I can't extract the field directly. >>> >>> On 2015-06-16 00:18, Grant Birchmeier wrote: >>> >>> You should be able to simply call "message.get(NoMDEntries)" to get >>> the value of 268 (where NoMDEntries is a FIX::NoMDEntries, of >>> course). >>> >>> Is that what you tried? >>> >>> On Mon, Jun 15, 2015 at 11:00 AM, <ja...@sk...> wrote: >>> >>> Yes, I do understand that I'm trying to extract field 268, which is >>> the NoMDEntries. However, I'm not sure why it is not set in this >>> case, and when I print out the value of NoMDEntries, it gave me 0. >>> What I really need is in field 270, MDEntryPx, but I'm not able to >>> retrieve this information. Apparently, I'm able to receive the >>> field >>> 270 from the Market Data Snapshot request reply, but not field 268, >>> which I have to refer to as a group in order to retrieve it. I am >>> able to provide the message given by the server. >>> >>> 15:56:20.567 262=MARKETDATAID 55=F.US.GCEQ15 387=104656 268=1 >>> 269=0 290=1 270=1188.6000 271=26 10=123 >>> I am using the below code to retrieve field 270. >>> >>> void Application::onMessage >>> (const FIX42::MarketDataSnapshotFullRefresh& message, const >>> FIX::SessionID&) { >>> >>> FIX42::MarketDataSnapshotFullRefresh::NoMDEntries group; >>> FIX::MDEntryType MDEntryType; >>> FIX::MDEntryPx MDEntryPx; >>> FIX::MDEntrySize MDEntrySize; >>> FIX::OrderID orderID; >>> >>> message.getGroup(0, group); >>> group.get(MDEntryType); >>> group.get(MDEntryPx); >>> group.get(MDEntrySize); >>> group.get(orderID); >>> >>> } >>> >>> However, I am unable to retrieve the value in field 270. Please >>> advise. >>> >>> -- >>> >>> Grant Birchmeier >>> >>> CONNAMARA SYSTEMS, LLC >>> >>> MADE-TO-MEASURE TRADING SOLUTIONS. >>> Exactly what you need. No more. No less. >>> >>> http://connamara.com [3][3] [2] [1] >>> >>> Links: >>> ------ >>> [1] http://connamara.com [3][3] [2] >>> >>> -- >>> >>> Grant Birchmeier >>> >>> CONNAMARA SYSTEMS, LLC >>> >>> MADE-TO-MEASURE TRADING SOLUTIONS. >>> Exactly what you need. No more. No less. >>> >>> http://connamara.com [3][3] [2] >>> >>> Links: >>> ------ >>> [1] >>> >> > http://btobits.com/fixopaedia/fixdic42/message_Market_Data_Snapshot_Full_Refresh_W_.html > [2] >>> [2] >>> [2] http://connamara.com [3][3] >> >> -- >> >> Grant Birchmeier >> >> CONNAMARA SYSTEMS, LLC >> >> MADE-TO-MEASURE TRADING SOLUTIONS. >> Exactly what you need. No more. No less. >> >> http://connamara.com [3][3] >> >> >> Links: >> ------ >> [1] tel:208.48.16.202 > >> [2] >> > http://btobits.com/fixopaedia/fixdic42/message_Market_Data_Snapshot_Full_Refresh_W_.html > [2] >> [3] http://connamara.com [3] > > ------------------------------------------------------------------------------ > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers [4] > > > > Links: > ------ > [1] http://www.quickfixengine.org/quickfix/doc/html/ > [2] > http://btobits.com/fixopaedia/fixdic42/message_Market_Data_Snapshot_Full_Refresh_W_.html > [3] http://connamara.com/ > [4] https://lists.sourceforge.net/lists/listinfo/quickfix-developers |
From: Hei C. <str...@ya...> - 2015-06-16 01:06:24
|
change to getGroup(1,....) sometimes, reading the source helps a lot :) On Tuesday, June 16, 2015 1:21 AM, "ja...@sk..." <ja...@sk...> wrote: QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/ Sorry again, I believe to have copied an irrelevant message. I will use the most recent message where I have succeeded in receiving field 270 instead. 8=FIX.4.2☺ 9=168☺ 35=W☺ 49=CQG_Gateway☺ 56=sktradingFC☺ 34=2☺ 57=TestFIXMarketData☺ 52=20150615-15:56:20.567☺ 262=MARKETDATAID☺ 55=F.US.GCEQ15☺ 387=104656☺ 268=1☺ 269=0☺ 290=1☺ 270=1188.6000☺ 271=26☺ 10=123 Even when 268=1 here, I have received this message Conditionally Required Field Missing (268) I'm not sure what I have changed to make field 270 disappear, will look into that. On 2015-06-16 01:00, Grant Birchmeier wrote: > 1) Add UseDataDictionary=Y to your config > > 2) You'll notice that 270 isn't in that message, and 268 is in fact > set to 0. > > On Mon, Jun 15, 2015 at 11:55 AM, <ja...@sk...> wrote: > >> (Sorry, didn't include CC) >> >> Currently, my config is as shown. There is nothing much critical as >> this is a demo server. >> >> # default settings for sessions >> [DEFAULT] >> ConnectionType=initiator >> ReconnectInterval=60 >> SenderCompID=************ >> FileStorePath = incoming >> FileLogPath = outgoing >> >> [SESSION] >> BeginString=FIX.4.2 >> TargetCompID=********** >> StartTime=00:00:00 >> EndTime=23:59:00 >> # overide default setting for RecconnectInterval >> ReconnectInterval=30 >> HeartBtInt=30 >> SocketConnectPort=6912 >> SocketConnectHost=208.48.16.202 [1] >> DataDictionary=E:Downloadsquickfix-1.14.3quickfixspecFIX42.xml >> >> I have printed out to console, and this is the reply. >> >> 8=FIX.4.2 9=135 35=W 34=5 49=********* >> 52=20150615-16:41:40.872 56=********* >> 57=********** 55=F.US.GCEQ15 262=MARKETDATAID 268=0 >> 387=110170 10=113 >> >> On 2015-06-16 00:35, Grant Birchmeier wrote: >> (Please keep your mails on the list, thanks.) >> >> Something's not right. I need to know the following: >> >> 1) Show me your config. (Mask any sensitive info, please.) >> >> 2) In the first line of your OnMessage(MDSFR), print out "message" >> to >> console. Paste it in your reply. (If you can, please change the >> field separators to something visible.) >> >> -Grant >> >> On Mon, Jun 15, 2015 at 11:27 AM, <ja...@sk...> wrote: >> >> Yes I have tried using message.get(NoMDEntries) to get the value of >> 268, however, when I printed it out, the value is 0. What I'm >> trying >> to achieve is to get the value of 270, MDEntryPx, but I am unable >> to >> do a simple message.get(MDEntryPx), due to it being in a group. >> >> > http://btobits.com/fixopaedia/fixdic42/message_Market_Data_Snapshot_Full_Refresh_W_.html >> [2] >> [1] >> >> I am unable to understand why I can't extract the field directly. >> >> On 2015-06-16 00:18, Grant Birchmeier wrote: >> >> You should be able to simply call "message.get(NoMDEntries)" to get >> the value of 268 (where NoMDEntries is a FIX::NoMDEntries, of >> course). >> >> Is that what you tried? >> >> On Mon, Jun 15, 2015 at 11:00 AM, <ja...@sk...> wrote: >> >> Yes, I do understand that I'm trying to extract field 268, which is >> the NoMDEntries. However, I'm not sure why it is not set in this >> case, and when I print out the value of NoMDEntries, it gave me 0. >> What I really need is in field 270, MDEntryPx, but I'm not able to >> retrieve this information. Apparently, I'm able to receive the >> field >> 270 from the Market Data Snapshot request reply, but not field 268, >> which I have to refer to as a group in order to retrieve it. I am >> able to provide the message given by the server. >> >> 15:56:20.567 262=MARKETDATAID 55=F.US.GCEQ15 387=104656 268=1 >> 269=0 290=1 270=1188.6000 271=26 10=123 >> I am using the below code to retrieve field 270. >> >> void Application::onMessage >> (const FIX42::MarketDataSnapshotFullRefresh& message, const >> FIX::SessionID&) { >> >> FIX42::MarketDataSnapshotFullRefresh::NoMDEntries group; >> FIX::MDEntryType MDEntryType; >> FIX::MDEntryPx MDEntryPx; >> FIX::MDEntrySize MDEntrySize; >> FIX::OrderID orderID; >> >> message.getGroup(0, group); >> group.get(MDEntryType); >> group.get(MDEntryPx); >> group.get(MDEntrySize); >> group.get(orderID); >> >> } >> >> However, I am unable to retrieve the value in field 270. Please >> advise. >> >> -- >> >> Grant Birchmeier >> >> CONNAMARA SYSTEMS, LLC >> >> MADE-TO-MEASURE TRADING SOLUTIONS. >> Exactly what you need. No more. No less. >> >> http://connamara.com [3] [2] [1] >> >> Links: >> ------ >> [1] http://connamara.com [3] [2] >> >> -- >> >> Grant Birchmeier >> >> CONNAMARA SYSTEMS, LLC >> >> MADE-TO-MEASURE TRADING SOLUTIONS. >> Exactly what you need. No more. No less. >> >> http://connamara.com [3] [2] >> >> Links: >> ------ >> [1] >> > http://btobits.com/fixopaedia/fixdic42/message_Market_Data_Snapshot_Full_Refresh_W_.html >> [2] >> [2] http://connamara.com [3] > > -- > > Grant Birchmeier > > CONNAMARA SYSTEMS, LLC > > MADE-TO-MEASURE TRADING SOLUTIONS. > Exactly what you need. No more. No less. > > http://connamara.com [3] > > > Links: > ------ > [1] tel:208.48.16.202 > [2] > http://btobits.com/fixopaedia/fixdic42/message_Market_Data_Snapshot_Full_Refresh_W_.html > [3] http://connamara.com ------------------------------------------------------------------------------ _______________________________________________ Quickfix-developers mailing list Qui...@li... https://lists.sourceforge.net/lists/listinfo/quickfix-developers |
From: <ja...@sk...> - 2015-06-15 17:17:22
|
Sorry again, I believe to have copied an irrelevant message. I will use the most recent message where I have succeeded in receiving field 270 instead. 8=FIX.4.2☺ 9=168☺ 35=W☺ 49=CQG_Gateway☺ 56=sktradingFC☺ 34=2☺ 57=TestFIXMarketData☺ 52=20150615-15:56:20.567☺ 262=MARKETDATAID☺ 55=F.US.GCEQ15☺ 387=104656☺ 268=1☺ 269=0☺ 290=1☺ 270=1188.6000☺ 271=26☺ 10=123 Even when 268=1 here, I have received this message Conditionally Required Field Missing (268) I'm not sure what I have changed to make field 270 disappear, will look into that. On 2015-06-16 01:00, Grant Birchmeier wrote: > 1) Add UseDataDictionary=Y to your config > > 2) You'll notice that 270 isn't in that message, and 268 is in fact > set to 0. > > On Mon, Jun 15, 2015 at 11:55 AM, <ja...@sk...> wrote: > >> (Sorry, didn't include CC) >> >> Currently, my config is as shown. There is nothing much critical as >> this is a demo server. >> >> # default settings for sessions >> [DEFAULT] >> ConnectionType=initiator >> ReconnectInterval=60 >> SenderCompID=************ >> FileStorePath = incoming >> FileLogPath = outgoing >> >> [SESSION] >> BeginString=FIX.4.2 >> TargetCompID=********** >> StartTime=00:00:00 >> EndTime=23:59:00 >> # overide default setting for RecconnectInterval >> ReconnectInterval=30 >> HeartBtInt=30 >> SocketConnectPort=6912 >> SocketConnectHost=208.48.16.202 [1] >> DataDictionary=E:Downloadsquickfix-1.14.3quickfixspecFIX42.xml >> >> I have printed out to console, and this is the reply. >> >> 8=FIX.4.2 9=135 35=W 34=5 49=********* >> 52=20150615-16:41:40.872 56=********* >> 57=********** 55=F.US.GCEQ15 262=MARKETDATAID 268=0 >> 387=110170 10=113 >> >> On 2015-06-16 00:35, Grant Birchmeier wrote: >> (Please keep your mails on the list, thanks.) >> >> Something's not right. I need to know the following: >> >> 1) Show me your config. (Mask any sensitive info, please.) >> >> 2) In the first line of your OnMessage(MDSFR), print out "message" >> to >> console. Paste it in your reply. (If you can, please change the >> field separators to something visible.) >> >> -Grant >> >> On Mon, Jun 15, 2015 at 11:27 AM, <ja...@sk...> wrote: >> >> Yes I have tried using message.get(NoMDEntries) to get the value of >> 268, however, when I printed it out, the value is 0. What I'm >> trying >> to achieve is to get the value of 270, MDEntryPx, but I am unable >> to >> do a simple message.get(MDEntryPx), due to it being in a group. >> >> > http://btobits.com/fixopaedia/fixdic42/message_Market_Data_Snapshot_Full_Refresh_W_.html >> [2] >> [1] >> >> I am unable to understand why I can't extract the field directly. >> >> On 2015-06-16 00:18, Grant Birchmeier wrote: >> >> You should be able to simply call "message.get(NoMDEntries)" to get >> the value of 268 (where NoMDEntries is a FIX::NoMDEntries, of >> course). >> >> Is that what you tried? >> >> On Mon, Jun 15, 2015 at 11:00 AM, <ja...@sk...> wrote: >> >> Yes, I do understand that I'm trying to extract field 268, which is >> the NoMDEntries. However, I'm not sure why it is not set in this >> case, and when I print out the value of NoMDEntries, it gave me 0. >> What I really need is in field 270, MDEntryPx, but I'm not able to >> retrieve this information. Apparently, I'm able to receive the >> field >> 270 from the Market Data Snapshot request reply, but not field 268, >> which I have to refer to as a group in order to retrieve it. I am >> able to provide the message given by the server. >> >> 15:56:20.567 262=MARKETDATAID 55=F.US.GCEQ15 387=104656 268=1 >> 269=0 290=1 270=1188.6000 271=26 10=123 >> I am using the below code to retrieve field 270. >> >> void Application::onMessage >> (const FIX42::MarketDataSnapshotFullRefresh& message, const >> FIX::SessionID&) { >> >> FIX42::MarketDataSnapshotFullRefresh::NoMDEntries group; >> FIX::MDEntryType MDEntryType; >> FIX::MDEntryPx MDEntryPx; >> FIX::MDEntrySize MDEntrySize; >> FIX::OrderID orderID; >> >> message.getGroup(0, group); >> group.get(MDEntryType); >> group.get(MDEntryPx); >> group.get(MDEntrySize); >> group.get(orderID); >> >> } >> >> However, I am unable to retrieve the value in field 270. Please >> advise. >> >> -- >> >> Grant Birchmeier >> >> CONNAMARA SYSTEMS, LLC >> >> MADE-TO-MEASURE TRADING SOLUTIONS. >> Exactly what you need. No more. No less. >> >> http://connamara.com [3] [2] [1] >> >> Links: >> ------ >> [1] http://connamara.com [3] [2] >> >> -- >> >> Grant Birchmeier >> >> CONNAMARA SYSTEMS, LLC >> >> MADE-TO-MEASURE TRADING SOLUTIONS. >> Exactly what you need. No more. No less. >> >> http://connamara.com [3] [2] >> >> Links: >> ------ >> [1] >> > http://btobits.com/fixopaedia/fixdic42/message_Market_Data_Snapshot_Full_Refresh_W_.html >> [2] >> [2] http://connamara.com [3] > > -- > > Grant Birchmeier > > CONNAMARA SYSTEMS, LLC > > MADE-TO-MEASURE TRADING SOLUTIONS. > Exactly what you need. No more. No less. > > http://connamara.com [3] > > > Links: > ------ > [1] tel:208.48.16.202 > [2] > http://btobits.com/fixopaedia/fixdic42/message_Market_Data_Snapshot_Full_Refresh_W_.html > [3] http://connamara.com |
From: Grant B. <gbi...@co...> - 2015-06-15 17:01:21
|
1) Add UseDataDictionary=Y to your config 2) You'll notice that 270 isn't in that message, and 268 is in fact set to 0. On Mon, Jun 15, 2015 at 11:55 AM, <ja...@sk...> wrote: > (Sorry, didn't include CC) > > Currently, my config is as shown. There is nothing much critical as this > is a demo server. > > # default settings for sessions > [DEFAULT] > ConnectionType=initiator > ReconnectInterval=60 > SenderCompID=************ > FileStorePath = incoming > FileLogPath = outgoing > > [SESSION] > BeginString=FIX.4.2 > TargetCompID=********** > StartTime=00:00:00 > EndTime=23:59:00 > # overide default setting for RecconnectInterval > ReconnectInterval=30 > HeartBtInt=30 > SocketConnectPort=6912 > SocketConnectHost=208.48.16.202 > DataDictionary=E:\Downloads\quickfix-1.14.3\quickfix\spec\FIX42.xml > > I have printed out to console, and this is the reply. > > 8=FIX.4.2[image: ☺] 9=135[image: ☺] 35=W[image: ☺] 34=5[image: > ☺] 49=*********[image: ☺] 52=20150615-16:41:40.872[image: ☺] > 56=*********[image: ☺] > 57=**********[image: ☺] 55=F.US.GCEQ15[image: ☺] > 262=MARKETDATAID[image: ☺] 268=0[image: ☺] 387=110170[image: ☺] > 10=113[image: ☺] > > > On 2015-06-16 00:35, Grant Birchmeier wrote: > >> (Please keep your mails on the list, thanks.) >> >> Something's not right. I need to know the following: >> >> 1) Show me your config. (Mask any sensitive info, please.) >> >> 2) In the first line of your OnMessage(MDSFR), print out "message" to >> console. Paste it in your reply. (If you can, please change the >> field separators to something visible.) >> >> -Grant >> >> On Mon, Jun 15, 2015 at 11:27 AM, <ja...@sk...> wrote: >> >> Yes I have tried using message.get(NoMDEntries) to get the value of >>> 268, however, when I printed it out, the value is 0. What I'm trying >>> to achieve is to get the value of 270, MDEntryPx, but I am unable to >>> do a simple message.get(MDEntryPx), due to it being in a group. >>> >>> >>> >> http://btobits.com/fixopaedia/fixdic42/message_Market_Data_Snapshot_Full_Refresh_W_.html >> >>> [1] >>> >>> >>> I am unable to understand why I can't extract the field directly. >>> >>> On 2015-06-16 00:18, Grant Birchmeier wrote: >>> >>> You should be able to simply call "message.get(NoMDEntries)" to get >>> the value of 268 (where NoMDEntries is a FIX::NoMDEntries, of >>> course). >>> >>> Is that what you tried? >>> >>> On Mon, Jun 15, 2015 at 11:00 AM, <ja...@sk...> wrote: >>> >>> Yes, I do understand that I'm trying to extract field 268, which is >>> the NoMDEntries. However, I'm not sure why it is not set in this >>> case, and when I print out the value of NoMDEntries, it gave me 0. >>> What I really need is in field 270, MDEntryPx, but I'm not able to >>> retrieve this information. Apparently, I'm able to receive the >>> field >>> 270 from the Market Data Snapshot request reply, but not field 268, >>> which I have to refer to as a group in order to retrieve it. I am >>> able to provide the message given by the server. >>> >>> 15:56:20.567 262=MARKETDATAID 55=F.US.GCEQ15 387=104656 268=1 >>> 269=0 290=1 270=1188.6000 271=26 10=123 >>> I am using the below code to retrieve field 270. >>> >>> void Application::onMessage >>> (const FIX42::MarketDataSnapshotFullRefresh& message, const >>> FIX::SessionID&) { >>> >>> FIX42::MarketDataSnapshotFullRefresh::NoMDEntries group; >>> FIX::MDEntryType MDEntryType; >>> FIX::MDEntryPx MDEntryPx; >>> FIX::MDEntrySize MDEntrySize; >>> FIX::OrderID orderID; >>> >>> message.getGroup(0, group); >>> group.get(MDEntryType); >>> group.get(MDEntryPx); >>> group.get(MDEntrySize); >>> group.get(orderID); >>> >>> } >>> >>> However, I am unable to retrieve the value in field 270. Please >>> advise. >>> >>> -- >>> >>> Grant Birchmeier >>> >>> CONNAMARA SYSTEMS, LLC >>> >>> MADE-TO-MEASURE TRADING SOLUTIONS. >>> Exactly what you need. No more. No less. >>> >>> http://connamara.com [2] [1] >>> >>> Links: >>> ------ >>> [1] http://connamara.com [2] >>> >> >> -- >> >> Grant Birchmeier >> >> CONNAMARA SYSTEMS, LLC >> >> MADE-TO-MEASURE TRADING SOLUTIONS. >> Exactly what you need. No more. No less. >> >> http://connamara.com [2] >> >> >> Links: >> ------ >> [1] >> >> http://btobits.com/fixopaedia/fixdic42/message_Market_Data_Snapshot_Full_Refresh_W_.html >> [2] http://connamara.com >> > > -- Grant Birchmeier *Connamara Systems, LLC* *Made-To-Measure Trading Solutions.* Exactly what you need. No more. No less. http://connamara.com |
From: <ja...@sk...> - 2015-06-15 16:56:08
|
(Sorry, didn't include CC) Currently, my config is as shown. There is nothing much critical as this is a demo server. # default settings for sessions [DEFAULT] ConnectionType=initiator ReconnectInterval=60 SenderCompID=************ FileStorePath = incoming FileLogPath = outgoing [SESSION] BeginString=FIX.4.2 TargetCompID=********** StartTime=00:00:00 EndTime=23:59:00 # overide default setting for RecconnectInterval ReconnectInterval=30 HeartBtInt=30 SocketConnectPort=6912 SocketConnectHost=208.48.16.202 DataDictionary=E:\Downloads\quickfix-1.14.3\quickfix\spec\FIX42.xml I have printed out to console, and this is the reply. 8=FIX.4.2☺ 9=135☺ 35=W☺ 34=5☺ 49=*********☺ 52=20150615-16:41:40.872☺ 56=*********☺ 57=**********☺ 55=F.US.GCEQ15☺ 262=MARKETDATAID☺ 268=0☺ 387=110170☺ 10=113☺ On 2015-06-16 00:35, Grant Birchmeier wrote: > (Please keep your mails on the list, thanks.) > > Something's not right. I need to know the following: > > 1) Show me your config. (Mask any sensitive info, please.) > > 2) In the first line of your OnMessage(MDSFR), print out "message" to > console. Paste it in your reply. (If you can, please change the > field separators to something visible.) > > -Grant > > On Mon, Jun 15, 2015 at 11:27 AM, <ja...@sk...> wrote: > >> Yes I have tried using message.get(NoMDEntries) to get the value of >> 268, however, when I printed it out, the value is 0. What I'm trying >> to achieve is to get the value of 270, MDEntryPx, but I am unable to >> do a simple message.get(MDEntryPx), due to it being in a group. >> >> > http://btobits.com/fixopaedia/fixdic42/message_Market_Data_Snapshot_Full_Refresh_W_.html >> [1] >> >> I am unable to understand why I can't extract the field directly. >> >> On 2015-06-16 00:18, Grant Birchmeier wrote: >> >> You should be able to simply call "message.get(NoMDEntries)" to get >> the value of 268 (where NoMDEntries is a FIX::NoMDEntries, of >> course). >> >> Is that what you tried? >> >> On Mon, Jun 15, 2015 at 11:00 AM, <ja...@sk...> wrote: >> >> Yes, I do understand that I'm trying to extract field 268, which is >> the NoMDEntries. However, I'm not sure why it is not set in this >> case, and when I print out the value of NoMDEntries, it gave me 0. >> What I really need is in field 270, MDEntryPx, but I'm not able to >> retrieve this information. Apparently, I'm able to receive the >> field >> 270 from the Market Data Snapshot request reply, but not field 268, >> which I have to refer to as a group in order to retrieve it. I am >> able to provide the message given by the server. >> >> 15:56:20.567 262=MARKETDATAID 55=F.US.GCEQ15 387=104656 268=1 >> 269=0 290=1 270=1188.6000 271=26 10=123 >> I am using the below code to retrieve field 270. >> >> void Application::onMessage >> (const FIX42::MarketDataSnapshotFullRefresh& message, const >> FIX::SessionID&) { >> >> FIX42::MarketDataSnapshotFullRefresh::NoMDEntries group; >> FIX::MDEntryType MDEntryType; >> FIX::MDEntryPx MDEntryPx; >> FIX::MDEntrySize MDEntrySize; >> FIX::OrderID orderID; >> >> message.getGroup(0, group); >> group.get(MDEntryType); >> group.get(MDEntryPx); >> group.get(MDEntrySize); >> group.get(orderID); >> >> } >> >> However, I am unable to retrieve the value in field 270. Please >> advise. >> >> -- >> >> Grant Birchmeier >> >> CONNAMARA SYSTEMS, LLC >> >> MADE-TO-MEASURE TRADING SOLUTIONS. >> Exactly what you need. No more. No less. >> >> http://connamara.com [2] [1] >> >> Links: >> ------ >> [1] http://connamara.com [2] > > -- > > Grant Birchmeier > > CONNAMARA SYSTEMS, LLC > > MADE-TO-MEASURE TRADING SOLUTIONS. > Exactly what you need. No more. No less. > > http://connamara.com [2] > > > Links: > ------ > [1] > http://btobits.com/fixopaedia/fixdic42/message_Market_Data_Snapshot_Full_Refresh_W_.html > [2] http://connamara.com |
From: Grant B. <gbi...@co...> - 2015-06-15 16:41:21
|
You should be able to simply call "message.get(NoMDEntries)" to get the value of 268 (where NoMDEntries is a FIX::NoMDEntries, of course). Is that what you tried? On Mon, Jun 15, 2015 at 11:00 AM, <ja...@sk...> wrote: > Yes, I do understand that I'm trying to extract field 268, which is the > NoMDEntries. However, I'm not sure why it is not set in this case, and when > I print out the value of NoMDEntries, it gave me 0. What I really need is > in field 270, MDEntryPx, but I'm not able to retrieve this information. > Apparently, I'm able to receive the field 270 from the Market Data Snapshot > request reply, but not field 268, which I have to refer to as a group in > order to retrieve it. I am able to provide the message given by the server. > > 15:56:20.567 262=MARKETDATAID 55=F.US.GCEQ15 387=104656 268=1 269=0 > 290=1 270=1188.6000 271=26 10=123 > I am using the below code to retrieve field 270. > > void Application::onMessage > (const FIX42::MarketDataSnapshotFullRefresh& message, const > FIX::SessionID&) { > > FIX42::MarketDataSnapshotFullRefresh::NoMDEntries group; > FIX::MDEntryType MDEntryType; > FIX::MDEntryPx MDEntryPx; > FIX::MDEntrySize MDEntrySize; > FIX::OrderID orderID; > > message.getGroup(0, group); > group.get(MDEntryType); > group.get(MDEntryPx); > group.get(MDEntrySize); > group.get(orderID); > > } > > However, I am unable to retrieve the value in field 270. Please advise. > > -- Grant Birchmeier *Connamara Systems, LLC* *Made-To-Measure Trading Solutions.* Exactly what you need. No more. No less. http://connamara.com |
From: Grant B. <gbi...@co...> - 2015-06-15 16:35:53
|
(Please keep your mails on the list, thanks.) Something's not right. I need to know the following: 1) Show me your config. (Mask any sensitive info, please.) 2) In the first line of your OnMessage(MDSFR), print out "message" to console. Paste it in your reply. (If you can, please change the field separators to something visible.) -Grant On Mon, Jun 15, 2015 at 11:27 AM, <ja...@sk...> wrote: > Yes I have tried using message.get(NoMDEntries) to get the value of 268, > however, when I printed it out, the value is 0. What I'm trying to achieve > is to get the value of 270, MDEntryPx, but I am unable to do a simple > message.get(MDEntryPx), due to it being in a group. > > > http://btobits.com/fixopaedia/fixdic42/message_Market_Data_Snapshot_Full_Refresh_W_.html > > I am unable to understand why I can't extract the field directly. > > > On 2015-06-16 00:18, Grant Birchmeier wrote: > >> You should be able to simply call "message.get(NoMDEntries)" to get >> the value of 268 (where NoMDEntries is a FIX::NoMDEntries, of course). >> >> Is that what you tried? >> >> On Mon, Jun 15, 2015 at 11:00 AM, <ja...@sk...> wrote: >> >> Yes, I do understand that I'm trying to extract field 268, which is >>> the NoMDEntries. However, I'm not sure why it is not set in this >>> case, and when I print out the value of NoMDEntries, it gave me 0. >>> What I really need is in field 270, MDEntryPx, but I'm not able to >>> retrieve this information. Apparently, I'm able to receive the field >>> 270 from the Market Data Snapshot request reply, but not field 268, >>> which I have to refer to as a group in order to retrieve it. I am >>> able to provide the message given by the server. >>> >>> 15:56:20.567 262=MARKETDATAID 55=F.US.GCEQ15 387=104656 268=1 >>> 269=0 290=1 270=1188.6000 271=26 10=123 >>> I am using the below code to retrieve field 270. >>> >>> void Application::onMessage >>> (const FIX42::MarketDataSnapshotFullRefresh& message, const >>> FIX::SessionID&) { >>> >>> FIX42::MarketDataSnapshotFullRefresh::NoMDEntries group; >>> FIX::MDEntryType MDEntryType; >>> FIX::MDEntryPx MDEntryPx; >>> FIX::MDEntrySize MDEntrySize; >>> FIX::OrderID orderID; >>> >>> message.getGroup(0, group); >>> group.get(MDEntryType); >>> group.get(MDEntryPx); >>> group.get(MDEntrySize); >>> group.get(orderID); >>> >>> } >>> >>> However, I am unable to retrieve the value in field 270. Please >>> advise. >>> >> >> -- >> >> Grant Birchmeier >> >> CONNAMARA SYSTEMS, LLC >> >> MADE-TO-MEASURE TRADING SOLUTIONS. >> Exactly what you need. No more. No less. >> >> http://connamara.com [1] >> >> >> Links: >> ------ >> [1] http://connamara.com >> > -- Grant Birchmeier *Connamara Systems, LLC* *Made-To-Measure Trading Solutions.* Exactly what you need. No more. No less. http://connamara.com |
From: <ja...@sk...> - 2015-06-15 16:01:09
|
Yes, I do understand that I'm trying to extract field 268, which is the NoMDEntries. However, I'm not sure why it is not set in this case, and when I print out the value of NoMDEntries, it gave me 0. What I really need is in field 270, MDEntryPx, but I'm not able to retrieve this information. Apparently, I'm able to receive the field 270 from the Market Data Snapshot request reply, but not field 268, which I have to refer to as a group in order to retrieve it. I am able to provide the message given by the server. 15:56:20.567 262=MARKETDATAID 55=F.US.GCEQ15 387=104656 268=1 269=0 290=1 270=1188.6000 271=26 10=123 I am using the below code to retrieve field 270. void Application::onMessage (const FIX42::MarketDataSnapshotFullRefresh& message, const FIX::SessionID&) { FIX42::MarketDataSnapshotFullRefresh::NoMDEntries group; FIX::MDEntryType MDEntryType; FIX::MDEntryPx MDEntryPx; FIX::MDEntrySize MDEntrySize; FIX::OrderID orderID; message.getGroup(0, group); group.get(MDEntryType); group.get(MDEntryPx); group.get(MDEntrySize); group.get(orderID); } However, I am unable to retrieve the value in field 270. Please advise. On 2015-06-15 22:52, Grant Birchmeier wrote: > "conditionally required field missing" means that YOU are trying to > extract a field that is not in the message. This field is apparently > optional for the message you are decoding. Since you've tried to > extract it and it's not there, QF assumes that YOU are requiring it, > hence "conditionally required". > > Without seeing your code or your message, I can't tell you much. You > need to look at the message you actually received. Is 268 actually > there? > > On Mon, Jun 15, 2015 at 6:47 AM, <ja...@sk...> wrote: > >> QuickFIX Documentation: >> http://www.quickfixengine.org/quickfix/doc/html/ [1] >> >> I have followed your advice on including the header file and also >> followed the example on receiving messages in the documentation. >> However, I have the problem of conditionally required field missing >> (268). >> I have googled the problem and a similar issue was found here. >> > http://stackoverflow.com/questions/26937458/quickfix-error-58-conditionally-required-field-missing-268 >> [2] >> Will it be possible to get only the field 270 from the reply >> message, or >> what should I need to do in order to just get the market value? >> >> On 2015-06-12 04:32, or...@qu... wrote: >>> For your first example, I think you are probably just not >> including the >>> proper header file for that message. >>> >>> #include <quickfix/fix42/MarketDataSnapshotFullRefresh.h> >>> >>> The message cracker just uses forward declarations, you need to >> include >>> the header to actually use the object. >>> >>> For your second example, field 270 is not a header field, nor can >> it be >>> accessed directly from the message since it is a repeating group. >>> Instead of dealing with this however, I would recommend just >> including >>> the proper header file and continue on with your first approach. >>> >>> >>>> -------- Original Message -------- >>>> Subject: [Quickfix-developers] Simple beginner questions >>>> From: ja...@sk... >>>> Date: Thu, June 11, 2015 3:17 pm >>>> To: qui...@li... >>>> >>>> >>>> QuickFIX Documentation: >>>> http://www.quickfixengine.org/quickfix/doc/html/ [1] >>>> >>>> Hi, >>>> >>>> Currently I'm trying to obtain the market value of a symbol from >> a >>>> reply >>>> message from a server, however, I'm not sure on how to obtain >> the >>>> value >>>> in field 270(MDEntryPx). >>>> >>>> void Application::onMessage >>>> (const FIX42::MarketDataSnapshotFullRefresh& message, const >>>> FIX::SessionID&) { >>>> FIX::NoMDEntries noMDEntries; >>>> message.get(noMDEntries); // incomplete type is not allowed >>>> } >>>> >>>> when I typed in the above code in my application.cpp, I could >> not >>>> compile due to the error commented. >>>> >>>> >>>> void Application::fromApp(const FIX::Message& message, const >>>> FIX::SessionID& sessionID) >>>> throw(FIX::FieldNotFound, FIX::IncorrectDataFormat, >>>> FIX::IncorrectTagValue, FIX::UnsupportedMessageType) >>>> { >>>> crack(message, sessionID); >>>> std::cout << std::endl << "IN: " << message << std::endl; >>>> FIX::MsgType msgType; >>>> message.getHeader().getField(msgType); >>>> if (msgType.getValue() == "W"){ >>>> std::string value = message.getHeader().getField(270); >> //MDEntryPx >>>> mkval = std::stod(value); //mkval is a double >>>> } >>>> } >>>> >>>> when I used the above code, I could compile and run, but when it >>>> reached >>>> the line std::string value = >>>> message.getHeader().getField(270); >>>> I received an toApp message with 58=Conditionally Required Field >>>> Missing >>>> <270> >>>> >>>> May I know what I can change in order to be able to store the >> symbol >>>> price into a double object? >>>> >>>> >>>> >> > ------------------------------------------------------------------------------ >>>> _______________________________________________ >>>> Quickfix-developers mailing list >>>> Qui...@li... >>>> https://lists.sourceforge.net/lists/listinfo/quickfix-developers >> [3] >> >> > ------------------------------------------------------------------------------ >> _______________________________________________ >> Quickfix-developers mailing list >> Qui...@li... >> https://lists.sourceforge.net/lists/listinfo/quickfix-developers >> [3] > > -- > > Grant Birchmeier > > CONNAMARA SYSTEMS, LLC > > MADE-TO-MEASURE TRADING SOLUTIONS. > Exactly what you need. No more. No less. > > http://connamara.com [4] > > > Links: > ------ > [1] http://www.quickfixengine.org/quickfix/doc/html/ > [2] > http://stackoverflow.com/questions/26937458/quickfix-error-58-conditionally-required-field-missing-268 > [3] https://lists.sourceforge.net/lists/listinfo/quickfix-developers > [4] http://connamara.com |
From: Grant B. <gbi...@co...> - 2015-06-15 14:52:47
|
"conditionally required field missing" means that YOU are trying to extract a field that is not in the message. This field is apparently optional for the message you are decoding. Since you've tried to extract it and it's not there, QF assumes that YOU are requiring it, hence "conditionally required". Without seeing your code or your message, I can't tell you much. You need to look at the message you actually received. Is 268 actually there? On Mon, Jun 15, 2015 at 6:47 AM, <ja...@sk...> wrote: > QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/ > > I have followed your advice on including the header file and also > followed the example on receiving messages in the documentation. > However, I have the problem of conditionally required field missing > (268). > I have googled the problem and a similar issue was found here. > > http://stackoverflow.com/questions/26937458/quickfix-error-58-conditionally-required-field-missing-268 > Will it be possible to get only the field 270 from the reply message, or > what should I need to do in order to just get the market value? > > On 2015-06-12 04:32, or...@qu... wrote: > > For your first example, I think you are probably just not including the > > proper header file for that message. > > > > #include <quickfix/fix42/MarketDataSnapshotFullRefresh.h> > > > > The message cracker just uses forward declarations, you need to include > > the header to actually use the object. > > > > For your second example, field 270 is not a header field, nor can it be > > accessed directly from the message since it is a repeating group. > > Instead of dealing with this however, I would recommend just including > > the proper header file and continue on with your first approach. > > > > > >> -------- Original Message -------- > >> Subject: [Quickfix-developers] Simple beginner questions > >> From: ja...@sk... > >> Date: Thu, June 11, 2015 3:17 pm > >> To: qui...@li... > >> > >> > >> QuickFIX Documentation: > >> http://www.quickfixengine.org/quickfix/doc/html/ > >> > >> Hi, > >> > >> Currently I'm trying to obtain the market value of a symbol from a > >> reply > >> message from a server, however, I'm not sure on how to obtain the > >> value > >> in field 270(MDEntryPx). > >> > >> void Application::onMessage > >> (const FIX42::MarketDataSnapshotFullRefresh& message, const > >> FIX::SessionID&) { > >> FIX::NoMDEntries noMDEntries; > >> message.get(noMDEntries); // incomplete type is not allowed > >> } > >> > >> when I typed in the above code in my application.cpp, I could not > >> compile due to the error commented. > >> > >> > >> void Application::fromApp(const FIX::Message& message, const > >> FIX::SessionID& sessionID) > >> throw(FIX::FieldNotFound, FIX::IncorrectDataFormat, > >> FIX::IncorrectTagValue, FIX::UnsupportedMessageType) > >> { > >> crack(message, sessionID); > >> std::cout << std::endl << "IN: " << message << std::endl; > >> FIX::MsgType msgType; > >> message.getHeader().getField(msgType); > >> if (msgType.getValue() == "W"){ > >> std::string value = message.getHeader().getField(270); //MDEntryPx > >> mkval = std::stod(value); //mkval is a double > >> } > >> } > >> > >> when I used the above code, I could compile and run, but when it > >> reached > >> the line std::string value = > >> message.getHeader().getField(270); > >> I received an toApp message with 58=Conditionally Required Field > >> Missing > >> <270> > >> > >> May I know what I can change in order to be able to store the symbol > >> price into a double object? > >> > >> > >> > ------------------------------------------------------------------------------ > >> _______________________________________________ > >> Quickfix-developers mailing list > >> Qui...@li... > >> https://lists.sourceforge.net/lists/listinfo/quickfix-developers > > > ------------------------------------------------------------------------------ > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers > -- Grant Birchmeier *Connamara Systems, LLC* *Made-To-Measure Trading Solutions.* Exactly what you need. No more. No less. http://connamara.com |
From: <ja...@sk...> - 2015-06-15 11:47:39
|
I have followed your advice on including the header file and also followed the example on receiving messages in the documentation. However, I have the problem of conditionally required field missing (268). I have googled the problem and a similar issue was found here. http://stackoverflow.com/questions/26937458/quickfix-error-58-conditionally-required-field-missing-268 Will it be possible to get only the field 270 from the reply message, or what should I need to do in order to just get the market value? On 2015-06-12 04:32, or...@qu... wrote: > For your first example, I think you are probably just not including the > proper header file for that message. > > #include <quickfix/fix42/MarketDataSnapshotFullRefresh.h> > > The message cracker just uses forward declarations, you need to include > the header to actually use the object. > > For your second example, field 270 is not a header field, nor can it be > accessed directly from the message since it is a repeating group. > Instead of dealing with this however, I would recommend just including > the proper header file and continue on with your first approach. > > >> -------- Original Message -------- >> Subject: [Quickfix-developers] Simple beginner questions >> From: ja...@sk... >> Date: Thu, June 11, 2015 3:17 pm >> To: qui...@li... >> >> >> QuickFIX Documentation: >> http://www.quickfixengine.org/quickfix/doc/html/ >> >> Hi, >> >> Currently I'm trying to obtain the market value of a symbol from a >> reply >> message from a server, however, I'm not sure on how to obtain the >> value >> in field 270(MDEntryPx). >> >> void Application::onMessage >> (const FIX42::MarketDataSnapshotFullRefresh& message, const >> FIX::SessionID&) { >> FIX::NoMDEntries noMDEntries; >> message.get(noMDEntries); // incomplete type is not allowed >> } >> >> when I typed in the above code in my application.cpp, I could not >> compile due to the error commented. >> >> >> void Application::fromApp(const FIX::Message& message, const >> FIX::SessionID& sessionID) >> throw(FIX::FieldNotFound, FIX::IncorrectDataFormat, >> FIX::IncorrectTagValue, FIX::UnsupportedMessageType) >> { >> crack(message, sessionID); >> std::cout << std::endl << "IN: " << message << std::endl; >> FIX::MsgType msgType; >> message.getHeader().getField(msgType); >> if (msgType.getValue() == "W"){ >> std::string value = message.getHeader().getField(270); //MDEntryPx >> mkval = std::stod(value); //mkval is a double >> } >> } >> >> when I used the above code, I could compile and run, but when it >> reached >> the line std::string value = >> message.getHeader().getField(270); >> I received an toApp message with 58=Conditionally Required Field >> Missing >> <270> >> >> May I know what I can change in order to be able to store the symbol >> price into a double object? >> >> >> ------------------------------------------------------------------------------ >> _______________________________________________ >> Quickfix-developers mailing list >> Qui...@li... >> https://lists.sourceforge.net/lists/listinfo/quickfix-developers |
From: Christopher T. <ch...@bw...> - 2015-06-12 15:21:26
|
MT4 doesn't use the FIX protocol, so unless you want to write a bridge of some kind, this won't work. On 12/06/15 16:56, Grant Birchmeier wrote: > QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/ > > > > I think the first thing you should do is write a simple QF application > that will logon to a server. > > Please see the example apps. > > Once you have an app that can logon and exchange heartbeats, you'll > understand your project much better. > > On Fri, Jun 12, 2015 at 4:50 AM, Dilipsinh Bheda > <dil...@si... > <mailto:dil...@si...>> wrote: > > QuickFIX Documentation: > http://www.quickfixengine.org/quickfix/doc/html/ > > > Hello all, > > I am new to Trading and FIX, assigned work to implement FIX > protocol to place order from MT4 client to server. > > MT4 client provides facility to > > 1, place Buy/Sell order (with Limits) > > 2, modify that order > > 3, close that order > > Now, my question is how can I create market order in FIX with such > Limits at once. (not found any such help with examples).. > > Regards > > Dilipsinh > > > ------------------------------------------------------------------------------ > > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > <mailto:Qui...@li...> > https://lists.sourceforge.net/lists/listinfo/quickfix-developers > > > > > -- > Grant Birchmeier > *Connamara Systems, LLC* > *Made-To-Measure Trading Solutions.* > Exactly what you need. No more. No less.* > * > http://connamara.com > > > ------------------------------------------------------------------------------ > > > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers |
From: Grant B. <gbi...@co...> - 2015-06-12 15:03:48
|
I think the first thing you should do is write a simple QF application that will logon to a server. Please see the example apps. Once you have an app that can logon and exchange heartbeats, you'll understand your project much better. On Fri, Jun 12, 2015 at 4:50 AM, Dilipsinh Bheda < dil...@si...> wrote: > QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/ > > > Hello all, > > > > I am new to Trading and FIX, assigned work to implement FIX protocol to > place order from MT4 client to server. > > > > MT4 client provides facility to > > 1, place Buy/Sell order (with Limits) > > 2, modify that order > > 3, close that order > > > > Now, my question is how can I create market order in FIX with such Limits > at once. (not found any such help with examples).. > > > > Regards > > Dilipsinh > > > ------------------------------------------------------------------------------ > > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers > -- Grant Birchmeier *Connamara Systems, LLC* *Made-To-Measure Trading Solutions.* Exactly what you need. No more. No less. http://connamara.com |
From: Dilipsinh B. <dil...@si...> - 2015-06-12 10:05:34
|
Hello all, I am new to Trading and FIX, assigned work to implement FIX protocol to place order from MT4 client to server. MT4 client provides facility to 1, place Buy/Sell order (with Limits) 2, modify that order 3, close that order Now, my question is how can I create market order in FIX with such Limits at once. (not found any such help with examples).. Regards Dilipsinh |
From: <or...@qu...> - 2015-06-11 20:49:07
|
For your first example, I think you are probably just not including the proper header file for that message. #include <quickfix/fix42/MarketDataSnapshotFullRefresh.h> The message cracker just uses forward declarations, you need to include the header to actually use the object. For your second example, field 270 is not a header field, nor can it be accessed directly from the message since it is a repeating group. Instead of dealing with this however, I would recommend just including the proper header file and continue on with your first approach. > -------- Original Message -------- > Subject: [Quickfix-developers] Simple beginner questions > From: ja...@sk... > Date: Thu, June 11, 2015 3:17 pm > To: qui...@li... > > > QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/ > > Hi, > > Currently I'm trying to obtain the market value of a symbol from a reply > message from a server, however, I'm not sure on how to obtain the value > in field 270(MDEntryPx). > > void Application::onMessage > (const FIX42::MarketDataSnapshotFullRefresh& message, const > FIX::SessionID&) { > FIX::NoMDEntries noMDEntries; > message.get(noMDEntries); // incomplete type is not allowed > } > > when I typed in the above code in my application.cpp, I could not > compile due to the error commented. > > > void Application::fromApp(const FIX::Message& message, const > FIX::SessionID& sessionID) > throw(FIX::FieldNotFound, FIX::IncorrectDataFormat, > FIX::IncorrectTagValue, FIX::UnsupportedMessageType) > { > crack(message, sessionID); > std::cout << std::endl << "IN: " << message << std::endl; > FIX::MsgType msgType; > message.getHeader().getField(msgType); > if (msgType.getValue() == "W"){ > std::string value = message.getHeader().getField(270); //MDEntryPx > mkval = std::stod(value); //mkval is a double > } > } > > when I used the above code, I could compile and run, but when it reached > the line std::string value = message.getHeader().getField(270); > I received an toApp message with 58=Conditionally Required Field Missing > <270> > > May I know what I can change in order to be able to store the symbol > price into a double object? > > > ------------------------------------------------------------------------------ > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers |
From: <ja...@sk...> - 2015-06-11 20:18:01
|
Hi, Currently I'm trying to obtain the market value of a symbol from a reply message from a server, however, I'm not sure on how to obtain the value in field 270(MDEntryPx). void Application::onMessage (const FIX42::MarketDataSnapshotFullRefresh& message, const FIX::SessionID&) { FIX::NoMDEntries noMDEntries; message.get(noMDEntries); // incomplete type is not allowed } when I typed in the above code in my application.cpp, I could not compile due to the error commented. void Application::fromApp(const FIX::Message& message, const FIX::SessionID& sessionID) throw(FIX::FieldNotFound, FIX::IncorrectDataFormat, FIX::IncorrectTagValue, FIX::UnsupportedMessageType) { crack(message, sessionID); std::cout << std::endl << "IN: " << message << std::endl; FIX::MsgType msgType; message.getHeader().getField(msgType); if (msgType.getValue() == "W"){ std::string value = message.getHeader().getField(270); //MDEntryPx mkval = std::stod(value); //mkval is a double } } when I used the above code, I could compile and run, but when it reached the line std::string value = message.getHeader().getField(270); I received an toApp message with 58=Conditionally Required Field Missing <270> May I know what I can change in order to be able to store the symbol price into a double object? |
From: Grant B. <gbi...@co...> - 2015-06-05 17:18:43
|
You do not need to manually construct a Logon message. Session-management messages (Logon, Logout, Heartbeat, etc) are constructed and sent automatically by the engine. Their contents are based on your config file. You really need to spend more time reading the docs and looking at the example programs. Docs: http://www.quickfixengine.org/quickfix/doc/html/ Examples: https://github.com/quickfix/quickfix/tree/master/examples The config file expects only specific configuration settings. You can't just throw any FIX field in there; those will be ignored. The list of valid settings is here: http://www.quickfixengine.org/quickfix/doc/html/configuration.html In some instances, you may need to insert extra fields in the Logon message (such as your RawData and RawDataLength params); you can do that via the toApp() callback. I don't have a handy C++ example, but here is a C# one that will be similar: https://github.com/connamara/quickfixn/wiki/User-FAQ I'm not sure about SenderSubID. Hei Chan says it is ignored in the config, and I don't see it in the list of config settings, so he may be right. That would surprise me, though, as I know some counterparties use it. It might just be missing from the config docs... -Grant On Thu, Jun 4, 2015 at 11:36 PM, <ja...@sk...> wrote: > QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/ > > Hi all, > > I'm trying to send a Logon message to a server, but I require additional > values such as SenderSubID, RawDataLength, RawData and ResetSeqNumFlag. > I have included the SenderSubID and RawData(password) into the > config.cfg file but it doesn't work. May I know how can I resolve this > issue? > > > ------------------------------------------------------------------------------ > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers > -- Grant Birchmeier *Connamara Systems, LLC* *Made-To-Measure Trading Solutions.* Exactly what you need. No more. No less. http://connamara.com |
From: Hei C. <str...@ya...> - 2015-06-05 06:20:49
|
You might want to take a look at some examples (I think they are in the package). Here is what QF will process from its setting file:Configuring QuickFIX | | | | | | | | | Configuring QuickFIXID Description Valid Values Default Session BeginString Version of FIX this session should use FIXT.1.1 FIX.4.4 FIX.4.3 FIX.4.2 FIX.4.1 FIX.4.0 SenderCompID Your ID as associated with this FIX session | | | | View on www.quickfixengine.org | Preview by Yahoo | | | | | Others like SenderSubID, etc won't be processed by QF. On Friday, June 5, 2015 1:14 PM, "ja...@sk..." <ja...@sk...> wrote: QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/ Hi all, I'm trying to send a Logon message to a server, but I require additional values such as SenderSubID, RawDataLength, RawData and ResetSeqNumFlag. I have included the SenderSubID and RawData(password) into the config.cfg file but it doesn't work. May I know how can I resolve this issue? ------------------------------------------------------------------------------ _______________________________________________ Quickfix-developers mailing list Qui...@li... https://lists.sourceforge.net/lists/listinfo/quickfix-developers |
From: <ja...@sk...> - 2015-06-05 05:03:43
|
Hi all, I'm trying to send a Logon message to a server, but I require additional values such as SenderSubID, RawDataLength, RawData and ResetSeqNumFlag. I have included the SenderSubID and RawData(password) into the config.cfg file but it doesn't work. May I know how can I resolve this issue? |
From: Leung, V. <vi...@ca...> - 2015-05-01 14:45:56
|
Hi, Is anyone familiar with using QuickFIX and Python on Windows? I keep on getting the following errors after running 'pip install quickfix' test_std_tr1_shared_ptr.cpp(1) : fatal error C1083: Cannot open include file: 'tr1/memory': No such file or directory ... cl : Command line warning D9002 : ignoring unknown option '-std=c++0x' test_std_shared_ptr.cpp(5) : error C2039: 'shared_ptr' : is not a member of 'std' test_std_shared_ptr.cpp(5) : error C2065: 'shared_ptr' : undeclared identifier test_std_shared_ptr.cpp(5) : error C2062: type 'int' unexpected ... C++\Acceptor.cpp(21) : fatal error C1083: Cannot open include file: 'stdafx.h': No such file or directory My understanding is that the computer basically has issues compiling quickfix, but I also have done so in Visual Studio on the same computer. My guess is that Visual C++ for Python compiler and what I usually run in Visual Studio is different. Can anyone shed some light on how I can connect different files to make this work? Thanks. -Vince CONFIDENTIAL: This e-mail, including its contents and attachments, if any, are confidential. If you are not the named recipient please notify the sender and immediately delete it. You may not disseminate, distribute, or forward this e-mail message or disclose its contents to anybody else. Copyright and any other intellectual property rights in its contents are the sole property of Cantor Fitzgerald and its affiliates. E-mail transmission cannot be guaranteed to be secure or error-free. The sender therefore does not accept liability for any errors or omissions in the contents of this message, which arise as a result of e-mail transmission. If verification is required please request a hard-copy version. Although we routinely screen for viruses, addressees should check this e-mail and any attachments for viruses. We make no representation or warranty as to the absence of viruses in this e-mail or any attachments. Please note that to ensure regulatory compliance and for the protection of our customers and business, we may monitor and read e-mails sent to and from our server(s). Any prices or data contained herein are indicative and subject to change without notice; its accuracy is not guaranteed and should not be relied on. Reliance may not be placed on trade confirmations issued other than by the Operations Department. This e-mail was issued by Cantor Fitzgerald. Cantor Fitzgerald Europe ("CFE") is regulated by the Financial Conduct Authority ("FCA"). CFE is an unlimited liability company incorporated under the laws of England (company number 2505767) and VAT registration (number 577 406809). CFE's registered office is at One Churchill Place, London E14 5RB. For any issues arising from this email please reply to the sender. CFE appears on the FCA register under no 149380. The FCA register appears at http://www.fca.org.uk/register/. The FCA is a financial services industry regulator in the United Kingdom and is located at 25 The North Colonnade, Canary Wharf, London, E14 5HS. |
From: <or...@qu...> - 2015-05-01 12:08:40
|
Can you please clarify? FIX is an ASCII protocol, the messages themselves do not support encodings, though some fields do. What exactly are you trying to do? > -------- Original Message -------- > Subject: [Quickfix-developers] Quickfix C++ > From: "Greenfeld, Imanuel (Treasury)" > <Ima...@Ll...> > Date: Fri, May 01, 2015 2:53 am > To: "'qui...@li...'" > <qui...@li...> > > > QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/<hr>Hello, > > > > How can I change the decoding in QuickFIX 4.4 C++ from the default ISO-8859-1 to UTF-8 ? > > > > Can anyone please help ? > > > > Thanks, > > > > Imanuel. > > Imanuel Greenfeld > Developer | ADM CB - Trading FO Pricing User Applications > Lloyds Bank > Wholesale Banking & Markets > 33 Old Broad Street | London | EC2N 1HZ | United Kingdom > Tel: +44 20 7158 8068 | Mobile: 07903 161 533 | Fax: > Email: Ima...@Ll...<mailto:Ima...@Ll...> > Website: www.lloydsbankwholesale.com<http://www.lloydsbankwholesale.com> > > Lloyds Bank is proud to be an Official Partner of the London 2012 Olympic and Paralympic Games > > > > Lloyds Banking Group plc. Registered Office: The Mound, Edinburgh EH1 1YZ. Registered in Scotland no. SC95000. Telephone: 0131 225 4555. Lloyds Bank plc. Registered Office: 25 Gresham Street, London EC2V 7HN. Registered in England and Wales no. 2065. Telephone 0207626 1500. Bank of Scotland plc. Registered Office: The Mound, Edinburgh EH1 1YZ. Registered in Scotland no. SC327000. Telephone: 08457 21 31 41. Cheltenham & Gloucester plc. Registered Office: Barnett Way, Gloucester GL4 3RL. Registered in England and Wales 2299428. Telephone: 0845 603 1637 > > Lloyds Bank plc, Bank of Scotland plc are authorised by the Prudential Regulation Authority and regulated by the Financial Conduct Authority and Prudential Regulation Authority. > > Cheltenham & Gloucester plc is authorised and regulated by the Financial Conduct Authority. > > Halifax is a division of Bank of Scotland plc. Cheltenham & Gloucester Savings is a division of Lloyds Bank plc. > > HBOS plc. Registered Office: The Mound, Edinburgh EH1 1YZ. Registered in Scotland no. SC218813. > > This e-mail (including any attachments) is private and confidential and may contain privileged material. If you have received this e-mail in error, please notify the sender and delete it (including any attachments) immediately. You must not copy, distribute, disclose or use any of the information in it or any attachments. Telephone calls may be monitored or recorded.<hr>------------------------------------------------------------------------------ > One dashboard for servers and applications across Physical-Virtual-Cloud > Widest out-of-the-box monitoring support with 50+ applications > Performance metrics, stats and reports that give you Actionable Insights > Deep dive visibility with transaction tracing using APM Insight. > http://ad.doubleclick.net/ddm/clk/290420510;117567292;y<hr>_______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers |
From: Greenfeld, I. (Treasury) <Ima...@Ll...> - 2015-05-01 12:00:52
|
Hi, I have a message is that comes in, in bytes - it's encoded using UTF-8 by a third party and then on my side FIX 4.4 decodes the message and later I traverse through it and get the relevant values from specific fields. As I did not use specific decoding, I'm assuming FIX uses the default ISO-8859-1, but then French characters appear incorrect because they were encoded using UTF-8 but decoded using ISO-8859-1 (so they end up not looking like the original at all). I wish to know if there is a way to tell FIX 4.4 to decodes the message using UTF-8 and hopefully, I'll get the same result as when they were entered. Any ideas please ? Thanks, Imanuel. Imanuel Greenfeld Developer | ADM CB - Trading FO Pricing User Applications Lloyds Bank Wholesale Banking & Markets 33 Old Broad Street | London | EC2N 1HZ | United Kingdom Tel: +44 20 7158 8068 | Mobile: 07903 161 533 | Fax: -----Original Message----- From: or...@qu... [mailto:or...@qu...] Sent: 01 May 2015 12:52 To: Greenfeld, Imanuel (Treasury); 'qui...@li...' Subject: RE: [Quickfix-developers] Quickfix C++ -- This email has reached the Bank via an external source -- Can you please clarify? FIX is an ASCII protocol, the messages themselves do not support encodings, though some fields do. What exactly are you trying to do? > -------- Original Message -------- > Subject: [Quickfix-developers] Quickfix C++ > From: "Greenfeld, Imanuel (Treasury)" > <Ima...@Ll...> > Date: Fri, May 01, 2015 2:53 am > To: "'qui...@li...'" > <qui...@li...> > > > QuickFIX Documentation: > http://www.quickfixengine.org/quickfix/doc/html/<hr>Hello, > > > > How can I change the decoding in QuickFIX 4.4 C++ from the default ISO-8859-1 to UTF-8 ? > > > > Can anyone please help ? > > > > Thanks, > > > > Imanuel. > > Imanuel Greenfeld > Developer | ADM CB - Trading FO Pricing User Applications Lloyds Bank > Wholesale Banking & Markets > 33 Old Broad Street | London | EC2N 1HZ | United Kingdom > Tel: +44 20 7158 8068 | Mobile: 07903 161 533 | Fax: > Email: > Ima...@Ll...<mailto:Imanuel.Greenfeld@Lloydsban > king.com> > Website: > www.lloydsbankwholesale.com<http://www.lloydsbankwholesale.com> > > Lloyds Bank is proud to be an Official Partner of the London 2012 > Olympic and Paralympic Games > > > > Lloyds Banking Group plc. Registered Office: The Mound, Edinburgh EH1 > 1YZ. Registered in Scotland no. SC95000. Telephone: 0131 225 4555. > Lloyds Bank plc. Registered Office: 25 Gresham Street, London EC2V > 7HN. Registered in England and Wales no. 2065. Telephone 0207626 1500. > Bank of Scotland plc. Registered Office: The Mound, Edinburgh EH1 1YZ. > Registered in Scotland no. SC327000. Telephone: 08457 21 31 41. > Cheltenham & Gloucester plc. Registered Office: Barnett Way, > Gloucester GL4 3RL. Registered in England and Wales 2299428. > Telephone: 0845 603 1637 > > Lloyds Bank plc, Bank of Scotland plc are authorised by the Prudential Regulation Authority and regulated by the Financial Conduct Authority and Prudential Regulation Authority. > > Cheltenham & Gloucester plc is authorised and regulated by the Financial Conduct Authority. > > Halifax is a division of Bank of Scotland plc. Cheltenham & Gloucester Savings is a division of Lloyds Bank plc. > > HBOS plc. Registered Office: The Mound, Edinburgh EH1 1YZ. Registered in Scotland no. SC218813. > > This e-mail (including any attachments) is private and confidential > and may contain privileged material. If you have received this e-mail > in error, please notify the sender and delete it (including any > attachments) immediately. You must not copy, distribute, disclose or > use any of the information in it or any attachments. Telephone calls > may be monitored or > recorded.<hr>--------------------------------------------------------- > --------------------- One dashboard for servers and applications > across Physical-Virtual-Cloud Widest out-of-the-box monitoring support > with 50+ applications Performance metrics, stats and reports that give > you Actionable Insights Deep dive visibility with transaction tracing > using APM Insight. > http://ad.doubleclick.net/ddm/clk/290420510;117567292;y<hr>___________ > ____________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers Lloyds Banking Group plc. Registered Office: The Mound, Edinburgh EH1 1YZ. Registered in Scotland no. SC95000. Telephone: 0131 225 4555. Lloyds Bank plc. Registered Office: 25 Gresham Street, London EC2V 7HN. Registered in England and Wales no. 2065. Telephone 0207626 1500. Bank of Scotland plc. Registered Office: The Mound, Edinburgh EH1 1YZ. Registered in Scotland no. SC327000. Telephone: 08457 21 31 41. Cheltenham & Gloucester plc. Registered Office: Barnett Way, Gloucester GL4 3RL. Registered in England and Wales 2299428. Telephone: 0845 603 1637 Lloyds Bank plc, Bank of Scotland plc are authorised by the Prudential Regulation Authority and regulated by the Financial Conduct Authority and Prudential Regulation Authority. Cheltenham & Gloucester plc is authorised and regulated by the Financial Conduct Authority. Halifax is a division of Bank of Scotland plc. Cheltenham & Gloucester Savings is a division of Lloyds Bank plc. HBOS plc. Registered Office: The Mound, Edinburgh EH1 1YZ. Registered in Scotland no. SC218813. This e-mail (including any attachments) is private and confidential and may contain privileged material. If you have received this e-mail in error, please notify the sender and delete it (including any attachments) immediately. You must not copy, distribute, disclose or use any of the information in it or any attachments. Telephone calls may be monitored or recorded. |