記事「市場シミュレーション(第23回):ポジション表示(I)」についてのディスカッション

 

新しい記事「市場シミュレーション(第23回):ポジション表示(I)」はパブリッシュされました:

これから扱う内容は、理論や概念の面で、これまでよりもはるかに複雑になります。できる限り内容を分かりやすく説明していきたいと思います。プログラミングそのものは、非常に単純で分かりやすいものです。しかし、その背後にある理論を理解していなければ、ここで紹介するものとは異なるタスクに対して、リプレイ/シミュレーションシステムを改良したり応用したりするための実践的な基盤を得ることはできません。私が提示するコードを単にコンパイルして利用するだけになってほしくはありません。学び、理解し、可能であれば、さらに優れたものを自分自身で作成できるようになってほしいのです。

リプレイ/シミュレーションシステムは、複数の独立したアプリケーションによって構成されています。しかし、それらを組み合わせることで、まるでMetaTrader 5がデモ口座やリアル口座に接続されているかのように操作できる環境を実現できます。その構成要素として、まずマウスポインタがあります。これは、チャート上に分析用の描画を作成したり、チャート上の要素と対話したりすることを可能にします。また、Chart Tradeも重要な要素です。Chart Tradeは、EAを介して、成行注文や成行執行リクエストを送信することができます。これは、マウスポインタとChart Trade(こちらもインジケータです)を使用することで、チャート上に配置されたEAとメッセージングプロトコルを通じて通信できるためです。

これら3つのアプリケーションは、それぞれ単独ではあまり実用的ではありません。しかし、チャート上に配置することで、MetaTrader 5と簡単に対話し、市場注文を送信できるようになります。ただし、ポジションを開いたり閉じたりした場合、その結果はまだチャート上に表示されません。もっとも、これは完全には正しくありません。MetaTrader 5が表示する標準的な視覚表示を利用することは可能です。しかし、クロスオーダー方式を採用すると、適切な視覚的表示が全くなくなってしまうでしょう。なぜなら、クロスオーダーを使用するとき、私たちは現在観察している銘柄のチャートを見ています。しかし、注文や取引リクエストは、別の銘柄に対して送信されます。その銘柄のチャートが開かれていない場合、MetaTrader 5が提供する標準の視覚表示システムでは、もはや十分な情報を得ることができません。

リプレイ/シミュレーションサービスを使用する場合も同じことが起こります。現在でも、リプレイ/シミュレーションシステム内で取引操作を視覚化することは可能です。そして近いうちに、そのための仕組みも実装する予定です。しかし現時点では、まだ適切な視覚表示システムを持っていません。理由は単純です。この特定の銘柄に存在する可能性のある注文やポジションと対話するための視覚表示システムが存在しないからです。それが実際の銘柄であっても、シミュレーションされた銘柄、つまりデータを再生している対象銘柄であっても同じです。

したがって、リプレイ/シミュレーションシステムはすでにその役割を果たせる状態にはありますが、まず最初に、この取引対象に存在する可能性のあるポジションや注文を視覚化し、操作できる仕組みを実装する必要があります。なぜなら、これがなければ、リプレイ/シミュレーションシステム内で分析を支援するための注文システムを作成しても、まったく意味がないからです。その銘柄に存在する注文やポジションと対話することができないからです。

したがって、この部分の作成が最優先事項になります。心配する必要はありません。まずは、比較的単純なシステムを作成します。リプレイ/シミュレーションシステムを開発していく過程で、作業を制御できる程度に十分シンプルな解決策です。それでは、さっそく始めましょう。そのために、新しいテーマを作成して進めていきます。


作者: Daniel Jose