RMX-Datenformat
Aus rü5
Quelldaten
(Ausschnitt ~ eine komplettes Demo findet sich unter SC.dat)
Die Daten setzten sich zeilenweise zusammen aus einem #Header, einem #ID und den eigentlichen #Daten.
177500136050520083821RSBK06X05 1BZ005RBK06 BX05 1SC2|1000|||||||||||||||||||||| 174500137050520083821RSBK06G06 1BH006RBK06 BG06 1SC2|1000|||||||||||||||||||||| 159900138050520083821RKASSA 1KZ049F 1SC2||||||||||||||||||||||| 147f00139050520083750RLPJ06 1LK006F 1SO185|2|188|4|183|3|189|14|182|2|190|4 125100140050520083750RPG06 1PG006F 1SO78|2|85|1|76|2|86|1|||88|2 130700141050520083750RPJ06 1PJ006F 1SO95|2|97|6|94|2|98|6|93|2|99|2 126900142050520083750RPV05 1PV005F 1SO56|3|66|3|55|1|67|3|||68|3
Header
Der Header besteht aus insgesamt 22 Zeichen
(P~Position im Char | L~Länge des Feldes | Name ~Link zur Beschreibung)
P | L | Feld-Name | Beschreibung |
---|---|---|---|
00 | 4 | checksum | hex-Zahl mit der Summe aller ASCII-Werte der Zeichen dieser Zeile ohne das EOL (EndOfLine) |
04 | 5 | sequenceNumber | eindeutig fortlaufende Nummer einer Nachricht |
09 | 6 | dateOfTradingSession | im YYMMDD Format gespeichertes Datum |
15 | 6 | timeOfTradingSession | im HHMMSS Format gespeicherte Zeit |
21 | 1 | realTradingFlag |
|
ID
Der ID besteht aus insgesamt 34 Zeichen
(P~Position im Char | L~Länge des Feldes | Name ~Link zur Beschreibung)
P | L | Feld-Name | Beschreibung |
---|---|---|---|
22 | 8 | contractCode | wird in RMX-ContractCodes erklärt |
30 | 2 | reserved2 | reservierte zwei Zeichen (linksbündige Leerzeichen) |
32 | 1 | exchangeId | 1-WTB (WarenTerminBoerse) Hannover |
33 | 1 | contractGroup |
|
34 | 1 | expireMonth |
F:jan G:feb H:mar J:apr K:may M:jun |
35 | 1 | expireWeek | 1-5 Woche im Monat |
36 | 2 | expireYear | YY Format (letzten zwei Stellen des Jahres) |
38 | 1 | contractType |
|
39 | 16 | contractUnion | abhängig vom contractType werden die nächsten Zeichen wie folgt belegt |
contractType=F | futures | ||
39 | 6 | exercisePrice | |
45 | 8 | underlayingContract | |
53 | 2 | bank | (zwei Leerstellen) |
contractType=C | call-option | ||
39 | 8 | contractBeingBought | |
47 | 8 | contractBeingSold | |
contractType=P | put-option | ||
39 | 16 | bank | (16 Leerstellen) |
contractType=R | roll-over | ||
39 | 16 | bank | (16 Leerstellen) |
55 | 1 | messageVersion |
|
Data
der Datenblock wird eingeleitet durch zwei Buchstaben
(P~Position im Char (ein vorangestelltes 'p' bedeutet Datenposition) | L~Länge des Feldes (ein vorangestelltes 'm' bedeutet 'maximal' | Name ~Link zur Beschreibung)
P | L | Feld-Name | Beschreibung |
---|---|---|---|
56 | 2 | tp |
|
58 | * | data | die nachfolgenden Daten werden durch das |-Zeichen getrennt und sind abhängig von tp |
tp=SO | order book situation | ||
58 p0 |
m6 | bestBuyingPrice | |
p1 | m4 | volumeOfferedBestBuyingPrice | |
p2 | m6 | bestSellingPrice | |
p3 | m4 | volumeOfferedBestSellingPrice | |
p4 | m6 | secondBuyingPrice | |
p5 | m4 | volumeOfferedSecondBuyingPrice | |
p6 | m6 | secondSellingPrice | |
p7 | m4 | volumeOfferedSecondSellingPrice | |
p8 | m6 | thirdBuyingPrice | |
p9 | m4 | volumeOfferedThirdBuyingPrice | |
p10 | m6 | thirdSellingPrice | |
p11 | m4 | volumeOfferedThirdSellingPrice | |
tp=SC | contract situation | ||
58 p0 |
m1 | contractSituation |
|
p1 | m6 | previousDayClosingPrice | |
p2 | m6 | closingPrice | |
p3 | m6 | firstTradePrice | |
p4 | m1 | lastTradeType |
|
p5 | m6 | lastTradePrice | |
p6 | m1 | lastTradeTrend |
|
p7 | m4 | lastTradeVolume | |
p8 | m6 | sessionHighPrice | |
p9 | m6 | sessionLowPrice | |
p10 | m6 | openInterest | |
p11 | m6 | totalNumberOfTrades | |
p12 | m5 | totalTradedVolume | |
p13 | m6 | lastATradePrice | |
p14 | m6 | numberOfATrades | |
p15 | m5 | totalATradedVolume | |
p16 | m6 | numberOfETrades | |
p17 | m5 | totalETradedVolume | |
p18 | m6 | numberOfHTrades | |
p19 | m5 | totalHTradedVolume | |
p20 | m6 | numberOfMTrades | |
p21 | m5 | totalMTradedVolume | |
p22 | m6 | numberOfVTrades | |
p23 | m5 | totalVTradedVolume |