記事「市場シミュレーション(第5回):C_Ordersクラスの作成(II)」についてのディスカッション

 

新しい記事「市場シミュレーション(第5回):C_Ordersクラスの作成(II)」はパブリッシュされました:

本記事では、Chart Tradeとエキスパートアドバイザー(EA)が連携して、ユーザーが保有しているすべてのポジションを決済する要求をどのように処理するのかを解説します。一見すると単純な処理に思えるかもしれませんが、実際には注意すべきいくつかの複雑な点があります。

前回の「市場シミュレーション(第4回):C_Ordersクラスの作成(I)」では、主に成行注文を送信するためのコードの構造について説明しました。全体の説明は、Chart Tradeインジケーターから受け取った情報をどのようにデコードし、それを基にクラスのコードを構成できるかを示すことを目的としていました。

しかし、EAのソースコードを実際に見ていなくても、ある程度の経験を持つ方であれば、すでに実運用として実装できる内容だったと思います。また、前回の記事で示したコードは、実取引サーバー上では動作しないように見えるかもしれませんが、必ずしもそうではありません。ただし、ヘッジ口座で使用するには不十分である、という点は事実です。

ネッティング口座においては、そのコードだけでもポジションの新規建てや決済は可能です。しかし、ヘッジタイプの口座では、動作の仕組みが少し異なります。

たとえば、買いポジションを保有している状態で売りボタンを使って決済しようとした場合、ヘッジ口座では実際には新たな売りポジションが開かれてしまいます。一方、ネッティング口座で同じ操作をおこなった場合は、買いポジションが決済されるか、少なくとも以下のような何らかの効果が発生します。

  • ポジションの反転(フリップ):既存の買いポジションよりも大きな数量で売った場合に発生します。この場合、ロングからショートへと転換され、新しいショートポジションのサイズは、元の買いポジションの量と売りの量との差分となります。
  • 部分決済:売る量が既存の買いポジションより小さい場合に発生します。この場合、買いポジションの一部が決済され、残りの数量は引き続き市場に残ります。


作者: Daniel Jose

 
あなたは完璧に説明してくれた。