記事「リプレイシステムの開発 - 市場シミュレーション(第23回)FOREX (IV)」についてのディスカッション

 

新しい記事「リプレイシステムの開発 - 市場シミュレーション(第23回)FOREX (IV)」はパブリッシュされました:

これで、ティックをバーに変換したのと同じ時点で作成がおこなわれます。こうすることで、変換プロセス中に問題が発生した場合、すぐにエラーに気づくことができます。これは、早送り中にチャート上に1分足を配置するコードと同じコードが、通常のパフォーマンス中に足を配置する位置決めシステムにも使用されるためです。言い換えれば、このタスクを担当するコードは他の場所には複製されません。このようにして、メンテナンスと改善の両方においてはるかに優れたシステムが得られます。

前回の「リプレイシステムの開発 - 市場シミュレーション(第22回):FOREX (III)」稿では、シミュレーターがLast値だけではなくBid価格に基づいて情報を生成できるように、システムにいくつかの変更を加えました。しかし、私はこれらの変更では満足できませんでした。理由は簡単です。コードが重複しているため、これは私にはまったく適していません。


ただ、記事用のコードができていて、記事もほぼ完成していたので、そのまま放置していたのですが、これがすごく気になりました。コードが、ある状況では機能し、他の状況では機能しないのはおかしいです。コードをデバッグしてエラーの原因を探し出そうとしても、見つけることができませんでした。しかし、コードをしばらく放置してシステムフローチャートを確認した後(そう、コーディングを高速化するには常にフローチャートを使用するように努めるべきです)、コードの重複を避けるためにいくつかの変更を加えることができることに気づきました。さらに悪いことに、コードは実際に重複していました。これにより、解決できない問題が発生しました。しかし、解決策はあります。この問題の解決策からこの記事を始めます。この問題が存在すると、FOREX市場データを操作するシミュレーターコードを正しく作成できなくなる可能性があるからです。

作者: Daniel Jose

理由: