メタトレーダー4でプログラムを作ってみよう -26ページ目

メタトレーダー4でプログラムを作ってみよう

無料のトレードソフトであるメタトレーダー4のプログラムを作るコツをアップします。初心者がインジケーターとEAのプログラムを作成できるのを目指します。

プログラムの勉強法について少し書いてみたいと思います。

と言っても、自分がやってきた方法なので読んでいる方に合う方法かどうかは不明です。


パソコンは昔から好きで多少のプログラムの知識はありましたが、

実際に作ったことはなくほぼ初心者でした。

最初にプログラムを作ろうと思って参考にしたのが、

FXメタトレーダー入門でした。

   
【送料無料】FXメタトレーダー入門

【送料無料】FXメタトレーダー入門

価格:2,940円(税込、送料別)



結構有名な本です。

私が始めたころは、ネットにもあまり情報がなく、この本の存在は有難かったです。

わからないながらも本を読み、実際にサンプルプログラムを入力して試しながら進め、

実際に動いた時は感動しましたよ。ヾ(@^▽^@)ノ


一通り終わったあとは、ネットから気になるインジケーターやEAを拾ってきては、

MQ4の中身をチェックして、プログラムがどのように書かれているかを参考にしました。

出来上がっているものをいじって、動きがどのように変わるかをチェックし、

本を読み直しながら関数の意味などを少しずつ覚えていきました。


関数のリファレンスは、

FX完全自動売買システム構築のための250の技



を使っています。

今ではネットで同じような情報を得ることができるのですが、以前はなかったです。

PDFなのでオフラインでも検索ができて体系的に見やすかったので、

今でもこれをずっと使用しています。

このようにして徐々にプログラムできるようになって来ました。

とりあえず、場数を踏めばそのうちできるようになります。

やっぱりやっただけだと思いますよ。

今でもわからない部分が色々ありますので、ボチボチ勉強していこうと思います。

こちらの実践編もお勧めです。( ̄▽+ ̄*)


 


break と contimue はどちらも繰り返しの処理を中断するために使用しますが、

それぞれ役割が違います。


break は繰り返し処理をすべてやめてしまいますが、

continue はそれ以下の繰り返しの処理を1回飛ばします。

なんだかわかりにくいですね~^^;

for(int i=0;i<3;i++)

    処理1
    if(条件1) break;
    if(条件2) continue;
    処理2

処理3



このようなプログラムがあった時、

条件1 と 条件2 を満たさなければ i が 5 になるまで、

処理1 と 処理2 が繰り返されます。


i=0
処理1
処理2

i=1
処理1
処理2

i=2
処理1
処理2

処理3



最初は i=0 で } まで行くと 

i++ で i に 1 が足されます。

i<3 の条件を満たしている間は、これが繰り返されます。

i=2 の状態で } まで行くと 

i++ で i に 1 が足され3になり、

i<3 の条件を満たさなくなるので繰り返しの処理を終了し、

処理3が実行されます。


途中で、条件1を満たして break が実行されると、

for文の処理そのものが終了します。


例えば、i=1 で条件1を満たしたとすると、

i=0
処理1
処理2

i=1
処理1

処理3


という流れになります。


continue
 の場合は、それ以下の処理を飛ばします。

例えば、i=1 で条件2を満たしたとすると、

i=0
処理1
処理2

i=1
処理1

i=2
処理1
処理2

処理3

という流れになります。

i=1 の時の、continue 以下の処理2が無視されます。


このように、使い方が異なりますので注意して使用してください。




 
OrderClose は、保有ポジションを決済する関数です。

設定方法は、

OrderClose(チケット番号, ロットサイズ, 価格, スリッページ, 決済の矢印の色);

となっています。

チケット番号は、保有ポジションについてる固有の番号です。

OrderSelectで決済したいポジションを選択したあと、

OrderTicket() と書いておけば勝手に調べてくれます。

チケット番号に関する記事


ロットサイズも、OrderSelectで決済したいポジションを選択したあと、

OrderLots() と書いておけば勝手に調べてくれます。

ロット数に関する記事


価格は、数値で指定することも可能ですが、

通常は、買い注文なら Ask、売り注文なら Bid を設定します。

Ask Bid に関する記事


スリッページは、通常は 3 程度を設定しておきます。

約定しにくいようなら数値を大きく設定します。

新規の時と違って決済はどうしても注文を通したいので、大きくしておく方がいいかもしれません。

その場合、注文時との価格の開きが大きくなる可能性がありますので、ご注意ください。

スリッページに関する記事


矢印の色は、一般的に白が設定されていることが多いですが、好きな色に変更することができます。


決済は大切なのでしっかり覚えておいてください。

それぞれ個別の説明の記事のリンクをつけていますので、そちらもご覧ください。