かんたんプログラミング(2)

山中康司プロフィール画像

前回から「かんたんプログラミング」と題して、誰でもカスタム指標が作成できることをゴールとして5回程度の内容で進めています。

前回の復習

まず、前回の復習です。

  1. テンプレート
    今回の学習に使うテンプレート(ソースコード)は以下からダウンロードしてください。
    http://www.ascendant.jp/mt4/HLB.zip
  2. ソースコードの色
    ソースコード内で//(ダブルスラッシュ)から始まる行はコメント行でプログラム上は無視される。コメント行はグレーで表示される。

プログラム内の文字色

さて、プログラムのソースコードをメタエディタで開くと色々な色があります。前回のグレー以外に、濃紺青緑茶色ピンクの全部で9色です。

ここで青は予約語で予めプログラム内で動作が決まっていて云々などと始めたら、もうダメとなってしまうので、ここではざっくりと以下のように覚えておきましょう。

  • 青系統=濃紺  =MT4で使い方が決められている
  • 緑系統=青緑緑        =文字や数値など自分で決めるもの
  • 茶系統=茶色        =プログラム内で自分で決める変数
  • 黒系統=       =その他のプログラムコード

色によって使い方が決まっているのですが、これからサンプルを編集していく中でイメージがつかめれば十分です。いまは色によって役目が違うのだ、と覚えておいてください。

記号

(1)セミコロン

MT4のソースコードは実はC言語と呼ばれるプログラミング言語の方言です。C言語にMT4操作に関係する機能を拡張したのが、MT4で使う言語MQL(MetaQuotes Language)です。

MQLではC言語と同じく「;」(セミコロン)で行末を示します。前回のサンプルコードを見ていただくとわかりますが、ほぼ全ての行の最後に「;」が付いています。もちろん例外はありますが、それは#propertyから始まる行(カスタム指標の大枠を決める)と、一連の動作を処理するブロックのスタート部分です。こうしたブロックを関数と呼びますが、エクセルなどの関数とごっちゃにならないよう、ここでは一連の動作を処理するブロックという押さえで十分です。

セミコロンを忘れてエラーとなることは意外と多いので、これは慣れてきてもチェックすべき部分でもあります。

(2)カッコ

上記の一連のブロックはカッコでくくられています。これは数学と同じで、ひとくくりに小カッコ()を使い、それを更にくくる場合には中カッコ{}を使います。主に一連の動作を処理するブロックは中カッコいわゆる関数や単純な指定を行う時は小カッコという常識通りのイメージで間違いありません。

また、MT4で拡張されたもので、今回最もよく使う関数にデフォルトのテクニカル指標がありますが、これらは全て指標名の後に続くカッコ内でそのパラメータが決められています。このあたりは、次回かその次あたりに見ることにします。

#property

それでは、上から見て行きましょう。今回は1行目から23行目までです。

1行目から4行目までは、誰が見てもわかるように指標名と作者がコメント行(//)で示されています。6行目から8行目までは注意事項が同様にコメント行で示されていますが、通常は不要な部分です。

そして、10行目、13行目、18行目もコメント行で示されていますが、これらの3行はそれ以下の行で何をしているのかを示しているコメント行です。テンプレートなので学習用に記述しました。

それでは#propertyの行を見て行きましょう。

11行目
#property copyright “Copyright Ascendant”

#property copyright は著作権表示をカスタム指標のバージョン情報に表示する部分です。ダブルクオーテーション内の文字が表示されますので、今回の指標では以下のように表示されていることが確認できます。

15行目
#property indicator_chart_window

これはカスタム指標を、メインチャートにオーバーレイするか、サブチャートに分けて表示するかを指定する部分です。どちらにも対応できるように2つの行を表示してあります。今回はHiLo Bandsでメインチャートに表示しますので、メインチャートの行を有効化して、サブチャートの行をコメント行としてあります。

サブチャートに表示する指標であれば、メインチャートの行をコメント行として、サブチャートの行を有効化します。

19行目
#property indicator_buffers 3

ここでは何本の線を指標で使うのかを指定します。今回は3つの線を指標で使うため、3という数字が入っています。これを5とすれば5本の線を表示するか、あるいは表示は3本でもプログラム内で残りの2つを計算用に使っているといったこともあります。今回のシリーズでは表示する線の数を数字のところに入れると覚えてください。

20~22行目
#property indicator_color1 Red

ここでは指標内で表示する線の色を示しています。上から順にRed(赤)、Green(緑)、Blue(青)となっていますが、使える色の名前は、テクニカル指標で自分の色を使いたい場合に「色の設定」タブで出て来るカラーパレットの上にマウスを乗せると出てくる色の名前です。

線の数に合わせて#property indicator_color2 Green・・・と増やしていくことになります。

今回のまとめ

さて今回からいよいよプログラムの中を見て行く段階に入りましたが、文字の色によって役割が決まっていること、記号の概要、そして#propertyでカスタム指標の大枠を決めるところまでを見ました。

今回の内容が理解できれば必ずゴールできますので、焦らずに進めていきましょう。

◆本稿は筆者の個人的見解に基づき、執筆されたものです。あくまでも個人ユーザー向けのコラムとして提供された参考記事であり、FXTFの見解、分析ではございません。

関連リンク集

◎山中康司のMT4裁量取引セミナー
山中康司のMT4裁量取引セミナーサイドバナー
山中流短期テクニカルトレード【WEBセミナー】

◎メタ・ファン【月一回放送】MT4特化型のラジオNIKKEI特別番組
メタ・ファン(オンデマンド動画)

▼山中康司氏のブログ・セミナー内容に関する質問はこちらをご利用ください
セミナーサポート掲示板(外部サイト)

◎スマホMT4チャート設定方法【専業トレーダー・ひろぴーが解説】
スマホ版MT4を設定
スマホ版MT4でテクニカル設定方法①
スマホ版MT4でテクニカル設定方法②

【FXTF MT4のサービスリンク】

口座への入金方法(24時間クイック入金/振込入金)
MT4をダウンロード・インストールする
スマートフォン(iPhone/Android)版MT4アプリについて
ログイン方法
スタートガイド(PDF:1,876KB)

  • このエントリーをはてなブックマークに追加