2012-11-15 12 views
9

Devo aggiungere/modificare campi nel dizionario FIX4.4. Non ho trovato alcuna documentazione o tutorial utili su questo.Aggiungere campi definiti dall'utente nel dizionario FIX

Suppongo di dover modificare il file FIX44.xml, ma non sono sicuro di come farlo esattamente. Nei tag <message></message> non vedo alcun attributo che definisca il numero o il tipo (formato) di quel campo. Vedo solo gli attributi name e required.

Penso di aver trovato gli attributi I ', cercando nei tag <fields></fields>.

Non sono sicuro se sto cercando nel posto giusto o se sto facendo la cosa giusta, ma secondo this dovrei modificare il dizionario se è necessario.

Per favore aiuto. Un link a un tutorial per principianti che può aiutarmi sarebbe anche molto apprezzato.

+0

L'esercitazione consente di modificare il dizionario per i messaggi FIXML non per i messaggi FIX. Ho ragione che stai cercando di aggiungere campi definiti dall'utente per i messaggi FIX e non per i messaggi FIXML? – DumbCoder

+0

Voglio modificare il dizionario FIX.4.4 per aggiungere nuovi messaggi e nuovi campi. – Qsiris

risposta

9

Il dizionario dati FIX in QuickFIX contiene messaggi e campi (tra le altre cose).

per aggiungere messaggi è necessario aggiungere il messaggio tra le <messages></messages> tag in questo modo:

<message name="CoolMessage" msgcat="app" msgtype="xCM"> 
    <field name="Currency" required="N"/> 
    <field name="Text" required="N"/> 
    <field name="Account" required="Y"/> 
</message> 

E poi aggiungere il nuovo msgtype al campo MsgType nella sezione <fields></fields> in questo modo:

<field number='35' name='MsgType' type='STRING'> 
    ... 
    <value enum='xCM' description='COOLMESSAGE'/> 
</field> 

Se desideri aggiungere nuovi campi, aggiungili tra i tag <fields></fields> in questo modo:

<fields> 
    <field number="1" name="Account" type="STRING"/> 
    <field number="2" name="AdvId" type="STRING"/> 
    <field number="3" name="AdvRefID" type="STRING"/> 
    ... 
    <field number="9006" name="AwesomeField" type="STRING"/> 
</fields> 

Questo e ulteriori informazioni sono disponibili nel tutorial this.

+0

Sei in qualche modo collegato ai sistemi CONNAMARA o vuoi pubblicizzare QuickFIX/N? Questo sembra essere un modo molto assurdo di provare a spingere la tua biblioteca. Ricordo che l'ultima volta hai postato una domanda e ho fornito un link allo stesso sito web come risposta. In questa domanda, non sono sicuro che se l'hai fatto consapevolmente o no, hai pubblicato un link a un pdf del dizionario dei dati FIXML, mentre volevi davvero cambiare è il dizionario dei dati per un messaggio FIX. Questo mi rende piuttosto sospettoso. Non puoi spingere tutti a usare il tuo grimorio se non lo desiderano. – DumbCoder

+0

Le tue 2 risposte in successione sono andate allo stesso sito, come lo spieghi? E il sito web QuickFIX/n ha la maggior parte delle cose spiegate correttamente. Quindi qual è il punto di postare ripetutamente il link sbagliato (perché mostra che non hai fatto una ricerca adeguata) nella domanda e inserire un link corretto nella risposta. Se questo è uno stratagemma per guadagnare punti va bene, ma provare a pubblicizzare una biblioteca, non è una buona idea. – DumbCoder

+0

Ho avuto una domanda, ho fatto delle ricerche e ho trovato la mia risposta qualche tempo dopo aver postato la domanda, quindi ho postato il link qui, ma una risposta non può essere "a malapena più di un link a un sito esterno" quindi Ho riscritto la risposta per rivelare qui l'essenziale e pubblicato il link per mostrare da dove ho ricevuto le informazioni. Cancellerò il link nella domanda, perché è fuorviante. (Mi dispiace) – Qsiris