問題タブ [quickfixn]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
fix-protocol - FIX プロトコル: 再送信中にシーケンス外のメッセージを受信すると、再送信でループが発生する
QuickFIX/n を FIX レイヤーとして使用する修正クライアントがあります。
何らかの技術的な理由でクライアントが切断された場合、FIX サーバーは、クライアントが存在しないことに気付くまでメッセージを送信し続けます (ハートビートがあると思います)。
クライアントが再接続すると、最初のメッセージのギャップに気付くでしょう。たとえば、クライアントが最後に受信したメッセージに SeqNuM=124 があり、再接続時にサーバーが SeqNum=152 を送信した場合、サーバーが切断を認識する前に 125 から 151 にメッセージを送信したことを意味します。
私の問題は後で起こります。私のクライアントは、BeginSeqNo 7=125 および EndSeqNo=0 で再送信要求 34=2 を送信します (すべてを提供してください)。この再送信中および終了する前に、FIX サーバーは SeqNo=153 の新しいメッセージを送信します
私のクライアントが得るものは次のとおりです。
相手 (サーバーの責任者) と話していると、再送信中に新しいメッセージを送信し続けても問題ないので、再送信が完了するまでメッセージをキャッシュする必要があるとのことです。
QuickFIX/n がこれを実装した方法ではないようですが (この特定のケースを処理するオプションが見つかりませんでした)、FIX ドキュメントを見ると、このキャッシュ手順に関する情報が見つかりません。また、このキャッシュ手順は非常に複雑であると思います。これは、おそらく特定の時間キャッシュする必要があるためです (そうしないと、失われたメッセージを永遠に待つ可能性があります)。
私の質問は簡単です: このキャッシュ手順とは何ですか? また、その仕様はどこにありますか? そして、これは QuickFIX ライブラリによって処理されますか、それともその上に特定のものを実装する必要がありますか?
quickfix - MassQuoteAck への回答方法
入札を取得して、primeXM ブローカーに依頼しようとしています。しかし、私は何が間違っているのかわかりません。Massquote への回答の例を教えてもらえますか?
MassQuoteのレスポンスが来たらすぐにMassQuoteAskを送信しているのですが、「必要なタグがありません」というエラーが発生します。
ログ:
MarketData のリクエスト:
MassQuote メッセージ応答: