可能?そうかもしれませんが、少し手間がかかります。
まず、TCP/IP ベースのプロトコルの詳細を処理するカスタム WCF トランスポート チャネルを作成する必要があります (つまり、すべてのソケット処理コードを作成し、それを WCF チャネル モデルにフックする必要があります)。これは、WCF の TCP チャネルがこの種の作業用ではなく、比較的独自仕様で文書化されていないワイヤ プロトコルを使用しているためです。
私は、FIX がどれほど複雑になるかを説明できるほど FIX に精通していませんが、WCF チャネルを作成する際にいくつか問題があり、その領域のドキュメントは適切ではありません。
対処する必要がある 2 番目の部分は、メッセージのエンコードです。WCF にとって、すべてのメッセージは XML です。つまり、メッセージが WCF スタックに渡されると、実行時に XML 情報セットのように見える必要があります。FIX は XML (afaik) を使用しないため、少し調整する必要があります。
これを回避するには、次の 2 つの方法があります。
簡単な方法: サーバー/クライアントがデータに特定のインターフェイスとフォーマットを使用すると仮定し、チャネルに FIX メッセージをそのフォーマットとの間で変換するという大変な作業をすべて行わせます。この最も単純な例は、WCF コードで単純なサービス コントラクトを使用し、1 つのメソッドが文字列を取得してから、そのコントラクトのデータ コントラクト シリアライザーを満たす XML 形式に FIX メッセージ文字列をカプセル化することです。ただし、ユーザー コードは、後で FIX 形式のデコードを処理する必要があります。
カスタム WCF MessageEncoder ですべての難しい作業を行います。もう少し複雑ですが、よりクリーンで再利用しやすい可能性があります (ストリーミングの改善など、より複雑なことを行うこともできます)。
ただし、大きな問題は、これが価値があるかどうかです。これに WCF を使用したい理由は何ですか? プログラミング モデルの活用?これは重要な考慮事項だと思いますが、WCF が提供する抽象化には代償が伴うことにも留意してください。特に、非常にリアルタイムの要件がある場合、WCF のいくつかの側面は問題になる可能性があります。これは、あなたが見ている種類の金融環境では一般的であることを私は理解しています。
その場合は、WCF をスキップして、金属に少し近づけたほうがよいかもしれません。とにかくソケット作業を行う必要があるので、それはそこで考慮する必要があります。
お役に立てれば :)