{{Quickfixn}} Custom Tag field order issue.

Mike Gatny mgatny at connamara.com
Tue Feb 28 13:23:28 PST 2017


If you have successfully installed ruby, then you should be able to install
nokogiri by simply running the following from the command line:

gem install nokogiri


Have you tried that? What output does it give?

--
Mike Gatny
Connamara Systems, LLC

On Tue, Feb 28, 2017 at 3:28 PM, Atanu Sinha (BLOOMBERG/ 731 LEX) <
asinha77 at bloomberg.net> wrote:

> Thanks Mike,
>
> The code generation page doesnot have enough instruction for a complete
> Ruby illiterate like me. I am still unable to install the nokogiri gem. Is
> there a detailed instruction link that I can use? So far, I have been able
> to install Ruby and the DevKit. However, I am not able to install the
> nokogiri gem.
>
> -Atanu
>
> From: quickfixn at lists.quickfixn.com At: 02/27/17 16:48:38
> To: quickfixn at lists.quickfixn.com
>
> Subject: Re: {{Quickfixn}} Custom Tag field order issue.
>
> FYI  code generation instructions are in the readme:
>
> https://github.com/connamara/quickfixn#system-setup
> https://github.com/connamara/quickfixn#code-generation
>
>
> --
> Mike Gatny
> Connamara Systems, LLC
>
> On Mon, Feb 27, 2017 at 4:06 PM, Grant Birchmeier <
> gbirchmeier at connamara.com> wrote:
>
>> Right now, you must use Ruby.  That's the scripting language that we used
>> to build the code generator with.
>>
>> Instructions are here:
>> https://github.com/connamara/quickfixn
>>
>> One of my colleagues has done work on replacing the Ruby generator with a
>> Powershell-based generator that should be friendlier to Windows-centric
>> folks, but I'm not sure what the status is on that.
>>
>> On Mon, Feb 27, 2017 at 2:37 PM, Atanu Sinha (BLOOMBERG/ 731 LEX) <
>> asinha77 at bloomberg.net> wrote:
>>
>>> I am using Visual Studio 2013.
>>>
>>>
>>> From: gbirchmeier at connamara.com At: 02/27/17 14:04:08
>>> To: Atanu Sinha (BLOOMBERG/ 731 LEX), quickfixn at lists.quickfixn.com
>>> Subject: Re: {{Quickfixn}} Custom Tag field order issue.
>>>
>>> The DD is used for parsing incoming messages.
>>>
>>> For outgoing messages, the ordering is compiled in to the binary, based
>>> on the source that is generated from the DD.
>>>
>>> So the solution is to regenerate the QF/n source from your modified DD
>>> and then rebuild.  That's not actually very difficult, though it does
>>> require you to install Ruby.
>>>
>>> On Mon, Feb 27, 2017 at 12:28 PM, Atanu Sinha (BLOOMBERG/ 731 LEX) <
>>> asinha77 at bloomberg.net> wrote:
>>>
>>>> Hey Guys,
>>>>
>>>> Got an issue with ordering of a custom field in the J message. My
>>>> counterparty added a custom tag (AllocGrossTradeAmt (5546)) and needs it to
>>>> me added after AllocNetMoney in the repeating group NoAllocs. Below is how
>>>> my dictionary looks like, however AllocGrossTradeAmt appears all the way at
>>>> the end of the repeating group NoAllocs. Any idea?
>>>>
>>>> I am using QuickFix/n 1.5.0.0.
>>>>
>>>>
>>>> <message name="AllocationInstruction" msgtype="J" msgcat="app">
>>>> <field name="AllocID" required="Y" />
>>>> <field name="AllocTransType" required="Y" />
>>>> <field name="AllocType" required="Y" />
>>>> <field name="SecondaryAllocID" required="N" />
>>>> <field name="InteroperabilityAllocTradeID" required="N" />
>>>> <field name="InteroperabilityAllocBlockID" required="N" />
>>>> <field name="InteroperabilityClientMasterID" required="N" />
>>>> <field name="OmgeoTLVersionofTradeComponent" required="N" />
>>>> <field name="RefAllocID" required="N" />
>>>> <field name="AllocCancReplaceReason" required="N" />
>>>> <field name="AllocIntermedReqType" required="N" />
>>>> <field name="AllocLinkID" required="N" />
>>>> <field name="AllocLinkType" required="N" />
>>>> <field name="BookingRefID" required="N" />
>>>> <field name="AllocNoOrdersType" required="Y" />
>>>> <group name="NoOrders" required="N">
>>>> <field name="ClOrdID" required="N" />
>>>> <field name="OrderID" required="N" />
>>>> <field name="SecondaryOrderID" required="N" />
>>>> <field name="SecondaryClOrdID" required="N" />
>>>> <field name="ListID" required="N" />
>>>> <component name="NestedParties2" required="N" />
>>>> <field name="OrderQty" required="N" />
>>>> <field name="OrderAvgPx" required="N" />
>>>> <field name="OrderBookingQty" required="N" />
>>>> </group>
>>>> <group name="NoExecs" required="N">
>>>> <field name="LastQty" required="N" />
>>>> <field name="ExecID" required="N" />
>>>> <field name="SecondaryExecID" required="N" />
>>>> <field name="LastPx" required="N" />
>>>> <field name="LastParPx" required="N" />
>>>> <field name="LastCapacity" required="N" />
>>>> </group>
>>>> <field name="PreviouslyReported" required="N" />
>>>> <field name="ReversalIndicator" required="N" />
>>>> <field name="MatchType" required="N" />
>>>> <field name="Side" required="Y" />
>>>> <component name="Instrument" required="Y" />
>>>> <component name="InstrumentExtension" required="N" />
>>>> <component name="FinancingDetails" required="N" />
>>>> <group name="NoUnderlyings" required="N">
>>>> <component name="UnderlyingInstrument" required="N" />
>>>> </group>
>>>> <group name="NoLegs" required="N">
>>>> <component name="InstrumentLeg" required="N" />
>>>> </group>
>>>> <field name="Quantity" required="Y" />
>>>> <field name="QtyType" required="N" />
>>>> <field name="LastMkt" required="N" />
>>>> <field name="TradeOriginationDate" required="N" />
>>>> <field name="TradingSessionID" required="N" />
>>>> <field name="TradingSessionSubID" required="N" />
>>>> <field name="PriceType" required="N" />
>>>> <field name="AvgPx" required="Y" />
>>>> <field name="AvgParPx" required="N" />
>>>> <component name="SpreadOrBenchmarkCurveData" required="N" />
>>>> <field name="Currency" required="N" />
>>>> <field name="AvgPxPrecision" required="N" />
>>>> <component name="Parties" required="N" />
>>>> <field name="TradeDate" required="Y" />
>>>> <field name="TransactTime" required="N" />
>>>> <field name="SettlType" required="N" />
>>>> <field name="SettlDate" required="N" />
>>>> <field name="BookingType" required="N" />
>>>> <field name="GrossTradeAmt" required="N" />
>>>> <field name="Concession" required="N" />
>>>> <field name="TotalTakedown" required="N" />
>>>> <field name="NetMoney" required="N" />
>>>> <field name="PositionEffect" required="N" />
>>>> <field name="AutoAcceptIndicator" required="N" />
>>>> <field name="Text" required="N" />
>>>> <field name="EncodedTextLen" required="N" />
>>>> <field name="EncodedText" required="N" />
>>>> <field name="NumDaysInterest" required="N" />
>>>> <field name="AccruedInterestRate" required="N" />
>>>> <field name="AccruedInterestAmt" required="N" />
>>>> <field name="TotalAccruedInterestAmt" required="N" />
>>>> <field name="InterestAtMaturity" required="N" />
>>>> <field name="EndAccruedInterestAmt" required="N" />
>>>> <field name="StartCash" required="N" />
>>>> <field name="EndCash" required="N" />
>>>> <field name="DayCount" required="N" />
>>>> <field name="LegalConfirm" required="N" />
>>>> <field name="AllocationPriceMethod" required="N" />
>>>> <field name="PurposeIndicator" required="N" />
>>>> <component name="Stipulations" required="N" />
>>>> <component name="YieldData" required="N" />
>>>> <field name="TotNoAllocs" required="N" />
>>>> <field name="LastFragment" required="N" />
>>>> <group name="NoAllocs" required="N">
>>>> <field name="AllocAccount" required="Y" />
>>>> <field name="AllocAcctIDSource" required="N" />
>>>> <field name="MatchStatus" required="N" />
>>>> <field name="AllocPrice" required="N" />
>>>> <field name="AllocQty" required="N" />
>>>> <field name="IndividualAllocID" required="N" />
>>>> <field name="InteroperabilityClientAllocationID" required="N" />
>>>> <field name="ProcessCode" required="N" />
>>>> <component name="NestedParties" required="N" />
>>>> <field name="NotifyBrokerOfCredit" required="N" />
>>>> <field name="AllocHandlInst" required="N" />
>>>> <field name="AllocText" required="N" />
>>>> <field name="EncodedAllocTextLen" required="N" />
>>>> <field name="EncodedAllocText" required="N" />
>>>> <component name="CommissionData" required="N" />
>>>> <field name="AllocAvgPx" required="N" />
>>>> <field name="AllocNetMoney" required="N" />
>>>>  <field name="AllocGrossTradeAmt" required="N" />
>>>> <field name="SettlCurrAmt" required="N" />
>>>> <field name="AllocSettlCurrAmt" required="N" />
>>>> <field name="SettlCurrency" required="N" />
>>>> <field name="AllocSettlCurrency" required="N" />
>>>> <field name="SettlCurrFxRate" required="N" />
>>>> <field name="SettlCurrFxRateCalc" required="N" />
>>>> <field name="AllocAccruedInterestAmt" required="N" />
>>>> <field name="AllocInterestAtMaturity" required="N" />
>>>> <field name="SettlInstMode" required="N" />
>>>> <group name="NoMiscFees" required="N">
>>>> <field name="MiscFeeAmt" required="N" />
>>>> <field name="MiscFeeCurr" required="N" />
>>>> <field name="MiscFeeType" required="N" />
>>>> <field name="MiscFeeBasis" required="N" />
>>>> </group>
>>>> <field name="AllocSettlInstType" required="N" />
>>>> <component name="SettlInstructionsData" required="N" />
>>>> <field name="NoClearingInstructions" required="N" />
>>>> <field name="ClearingInstruction" required="N" />
>>>> <field name="ClearingFeeIndicator" required="N" />
>>>> </group>
>>>> </message>
>>>>
>>>>
>>>>
>>>> Output Message looks like :
>>>>
>>>> AllocNetMoney
>>>> NoMiscFees
>>>> --
>>>> --
>>>> --
>>>> --
>>>> AllocSettlInstType
>>>> NoDlvyInst
>>>> SettlInstSource
>>>> DlvyInstType
>>>> NoSettlPartyIDs
>>>> --
>>>> --
>>>> --
>>>> --
>>>> AllocGrossTradeAmt (should appear right after AllocNetMoney as per the
>>>> dictionary)
>>>>
>>>> Any help is greatly appreciated.
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Quickfixn mailing list
>>>> Quickfixn at lists.quickfixn.com
>>>> http://lists.quickfixn.com/listinfo.cgi/quickfixn-quickfixn.com
>>>>
>>>>
>>>
>>>
>>> --
>>> Grant Birchmeier
>>> *Connamara Systems, LLC*
>>> *Made-To-Measure Trading Solutions.*
>>> Exactly what you need. No more. No less.
>>> http://connamara.com
>>>
>>>
>>>
>>
>>
>> --
>> Grant Birchmeier
>> *Connamara Systems, LLC*
>> *Made-To-Measure Trading Solutions.*
>> Exactly what you need. No more. No less.
>> http://connamara.com
>>
>> _______________________________________________
>> Quickfixn mailing list
>> Quickfixn at lists.quickfixn.com
>> http://lists.quickfixn.com/listinfo.cgi/quickfixn-quickfixn.com
>>
>>
> _______________________________________________
> Quickfixn mailing listQuickfixn at lists.quickfixn.comhttp://lists.quickfixn.com/listinfo.cgi/quickfixn-quickfixn.com
>
>
>
> _______________________________________________
> Quickfixn mailing list
> Quickfixn at lists.quickfixn.com
> http://lists.quickfixn.com/listinfo.cgi/quickfixn-quickfixn.com
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quickfixn.com/pipermail/quickfixn-quickfixn.com/attachments/20170228/89ff6fd5/attachment-0002.htm>


More information about the Quickfixn mailing list