2012-05-22 3 views
1

FIX 메시지 (모두 MarketDataIncrementalRefresh (Type X))가있는 텍스트 파일이 있으며 C#의 QuickFix를 사용하여 문자열에서 MarketDataIncrementalRefresh 메시지를 만드는 방법을 찾으려고합니다.문자열을 MarketDataIncrementalRefresh로 변환하려고 시도했습니다.

제안 사항? = X (49) = CME 34 = 10,568,699 52 = 20110110205,433,535 75 = 20,110,110 (268) = 2 279 = 1 22 = 8 48

1,128 = 10 10 = 263 35 : 여기

한 라인이 어떻게 보이는지의 예 = 812201 83 = 1243518 107 = GEZ2 269 = 1 270 = 9825.0 271 = 153 273 = 205433000 336 = 2 346 = 14 1023 = 1 279 = 122 = 8 48 = 812201 83 = 1243519 107 = GEZ2 269 = 1270 = 9826.0 271 = 21 = 1,023 453 273 = 336 = 205,433,000 = 3 (2) 346 058 10 = 자바

답변

2

기본적으로이 자사의 수행 방법입니다 그리고 나서 message.setString은 주어진 문자열로부터 나머지 props를 설정한다.

1

사용할 수 있습니다

MessageUtils.parse(MessageFactory messageFactory, DataDictionary dataDictionary, java.lang.String messageString)

메시지 개체 자체의 see here.

, see here 중 하나 생성자 사용 :

Message(java.lang.String string, DataDictionary dd, boolean validate) 

또는 fromString 방법 :

fromString(java.lang.String messageData, DataDictionary sessionDictionary, DataDictionary applicationDictionary, boolean doValidation) 

당신은 quickfix 비슷한 일을 찾을 수 있어야합니다/N

난 단지 this, 당신이 문자열을 사용하여 메시지를 작성할 수있는 발견 co nstructor. 선택한 API에서 위의 해당 항목을 찾을 수없는 경우이 기능이 적게 작동하지 않습니다. 그 주어진 번 유형이 {X} 이후, QuickFix.Message 메시지가 MarketDataIncrementalRefresh에 대한 포인터이 경우에, 그래서

string line = sr.ReadLine(); 
QuickFix42.MessageFactory fac = new QuickFix42.MessageFactory(); 
QuickFix.MsgType msgType = QuickFix.Message.identifyType(line); 
QuickFix.Message message = fac.create("", msgType.getObject() as string); 
message.setString(line, false); 

공장은, 적절한 메시지 유형을 작성합니다

+0

고맙습니다. quickfix/n을 살펴 보겠습니다. quickfix .net 래퍼에 MessageUtils.parse가 없기를 바랍니다. quickfix/n이 있습니다. FIX.message의 문자열 ctor에 대해서는 작동하지만 모든 것은 메시지 작성입니다. 내 경우에는 MarketDataIncrementalRefresh에 적절한 메시지 유형을 작성해야합니다. 다른 말로 바꾸려면 MarketDataIncrementalRefresh로 메시지를 변환하는 방법을 찾아야합니까? –

+0

MessageCracker http://www.quickfixengine.org/quickfix/doc/html/class_f_i_x_1_1_message_cracker.html을 시도해보십시오.이 예제를 C#에서 정확히 어떻게 작동하는지 모르겠습니다. http://quickfixn.org/tutorial/receiving-messages 서버에서 메시지를받는 FIX 응용 프로그램을위한 것입니다. 그러나 앱이 MessageCracker를 상속 받도록하고 위의 메시지에 FIX 문자열을 읽은 다음 메시지에 균열을 호출하십시오. 관련 onMessage 메소드 즉, onMessage (MarketDataIncrementReferesh msg) {}를 재정의하면 좋은 결과를 얻을 수 있습니다. – robthewolf