MQLに慣れるとソースコードが徐々に複雑になっていきます。そこで誰もがぶつかる壁が『ソースコード長すぎて見づらい問題』です。
プログラムの作成中、あーでもないこーでもないと唸っていると
「パラメーターって今どうしてたっけ?」
「この関数ってどういう計算になってたっけ?」
など、作ったコードを見直すことは日常茶飯事で、その都度マウスホイールをカリカリカリカリしながらエディタ内を行ったり来たりするわけです。
長いソースコードは『プロジェクト』で分割しよう
ソースコードの量が多いと管理が大変ですよね。そこで状況を改善できる手法として、『プロジェクト』を作成する方式があります。
今回は例として『FX_DE_MOUKETAI』というファイルをプロジェクト化する流れですすめていきます。
プロジェクト化の進め方
まず、ほかのプログラムと見分けがつきやすくしたいので『Experts』フォルダの直下にファイルと同名の『FX_DE_MOUKETAI』フォルダ作って、そのフォルダ内に『FX_DE_MOUKETAI』ファイルを入れておきます。
そして『FX_DE_MOUKETAI』ファイルを右クリックして『ソースから新規プロジェクトを作成』を選択します。
すると『プロジェクト』タブに『FX_DE_MOUKETAI.mqproj』が作成されました。
ここで『プラットフォーム』について、僕は今MT4のプログラムを作成しているので『Meta Trader 4』へ変更しておきます。
次に『Sources』内の『FX_DE_MOUKETAI.mq4』ファイルを右クリックし、『新規ファイル』を選択し、作成されたファイルにここでは仮に『Parameters』と名前を付けます。
この新たにできたファイルに元のソースコードを分けていくわけですが、今回はパラメーターの部分をカット&ペーストしてみます。
これで元のソースコードからパラメータを分けることができました!
もちろん他の項目も必要に応じて分けていくことができます。
分け方の一例紹介
プロジェクトの分け方は人によりますが、一例としては・・
『Parameters』・・・パラメータ部分を置いておく
『Functions』・・・作成した関数を置いておく
『OnInit』、
『OnDeinit』、
『OnTick』など、そのプログラム毎にコードを書いた箇所がある項目を分けてゆく
もともとの『FX_DE_MOUKETAI.mq4』ファイルは最終的にこれくらいになります↓。
これで「関数がみたいなぁ」「OnTickの中身がみたいなぁ」といった時にすぐに見に行くことができて、作業効率が向上します。