ウィザードを使用して最もシンプルな、何も処理を行わないカスタムインジケーターを作成しました。今回は、これに簡単な処理を加えたインジケーターを作りたいと思います。TestIndicator上記ファイルをダウンロード後、MT4メニューの[ファイル]-[データフォルダを開く]でデータフォルダが開きますから、その中のMQL4フォルダの中にあるIndicatorsフォルダ以下にコピーしてご使用下さい。(Zipファイルで圧縮されています)簡単な処理を行うインジケーターを作ると言いましたが、まだ勉強を始めたばかりの方もいらっしゃるでしょうから、シンプルな処理にしたいと思います。今回作成したのは以下のソースです。関数はカスタムインジケーターをセットしたチャートが、ティックデータを受け取った時に自動的に実行される関数です。関数は以下の様な形式で表現されます。ここに処理を書きます。ここに処理を書きます。関数の処理そのものは次の1行ということです。MQL4");解説に入る前に、見ていただいたほうが早いので、このインジケーターをコンパイルして実際のチャートにセットしてみましょう。ボタンを押してコンパイルします。4を起動し、メニューの「ファイル」-「新規チャート」より適当な通貨ペアのチャートを開きます。Indicators”の下にある”TestIndicator”をチャートにドラッグ&ドロップし、出てくる設定ウィンドウはそのまま”OK”ボタンをクリックします。MQL4′′と表示されると思います。それでは解説していきたいと思います。関数を抜き出しました。MQL4");return(0);}解説が必要なのは34行目の部分ですね。プログラムは小さな機能の集まりです。その最小の単位とも言えるのが”ステートメント”というものです。日本語で言い換えると”一文”でしょうか。日本語で言う”一文”とは以下のようなものですよね。「私はプログラマーです。“;”(セミコロン)という約束事があります。日本語で句点を忘れたとしても、文章の意味がわからなくなることはあまりないですが、MQLでは文の終わりを表すセミコロンが抜けると大変です。コンパイル時にエラーが発生し、全く動作しません。試しに以下のようにセミコロンを削除してコンパイルしてみましょう。MQL4")return(0);}すると、MetaEditorの下の方に、以下のようなコンパイルエラーが出るはずです。4)”という表示がありますが、これはエラーが発生した場所を示しています。具体的には35行目の前から4文字目でエラーが発生しているという表示です。expected”とありますから、この位置にセミコロンがないとおかしいでしょ?と言われているようです。言われたとおりに以下のように修正してみましょう。MQL4");return(0);}修正したらコンパイルしてみて下さい。エラーは出なくなったと思います。プログラマーでこのような書き方をする人はまずいません(^_^;)日本語の”。”が改行後にくるようなものですから気持ち悪いです。ワード等のワープロソフトを使うと、禁則処理が効いて普通はそうはならないと思います。素直に次のように修正しましょうね。表示されたら(あ、セミコロンが抜けてるんだな)とすぐ分かるようになって下さい。“Comment関数”が使用されています。ここで関数呼び出しについて説明しておきます。・・・・)関数の呼び出しは上記のようになります。”引数”と言うものが出て来ました。引数とは、呼び出す関数に与えるデータのことです。今は理解できなくて大丈夫です。MQL4′′という引数で呼び出すと、チャートの左上にその文字を表示してくれるんだ、くらいの理解で大丈夫です。Comment関数について勉強しましょう。MQL4′′を表示する場合、以下のように書くこともできます。MQL4");return(0);}上のように修正したらコンパイルしてみて下さい。4で確認すると、先ほどと全く同じものが表示されると思います。ちなみに、コンパイルした結果は即座に反映されますから、すでにチャートにカスタムインジケーターがセットされている場合は、再度セットし直す必要はありません。して同じ結果になったかといいますと、Comment関数は64個までの引数をとることができ、与えられた引数を自動的に順番に連結して表示してくれるからです。MQL4′′がチャートの左上に出力されたというわけです。引数は”,”(カンマ)で区切るという約束事もあります。ご自身で適当に引数を追加してComment関数をマスターして下さい。「”」(ダブルコーテーション)で囲まなければならない、という事があります。これを忘れるとコンパイルエラーが出ますので、忘れないようご注意下さい。部分をクリックしてカーソルを持って行きキーボードのF1キーを押すと、MetaEditorの下の方にComment関数に関する詳細な説明が表示されます(英語ですが)他にもいろいろな関数がありますので、参考にして色々と試してみるのも面白いと思います。引数は”,”(カンマ)で区切ること。今回は、MQLで最低限覚えていただきたいことを解説いたしました。MQLを勉強する際に便利なComment関数をご紹介いたしました。Comment関数は今後の解説でしばらく頻繁に出てくることになると思いますので、しっかり覚えて下さい。・今回作成したカスタムインジケーターのソースファイル次回はよりプログラミングらしい、これ抜きでは語れない制御構造について解説していきたいと思います。コメントはありません。Store(サイト内では[本店]と記載することがあります)がオープンしました!かゆいところに手が届く、カスタマイズ性の高いインジケーターやツールを取り揃えています。