Wizard In The Market
システムトレードの魔術師

*

■超直感!MT4プログラミング講座■ 第18回 インディケーターを色々いじってみよう

公開日: : 最終更新日:2015/01/13 MT4(MQL4)プログラミング講座

こんばんは!キリンです。
今日の名言
「日々、常に何か新しいことを学習し身につける。
 それを繰り返すことによって、新しい世界が開ける」
昨日のブログでは、iMA()の使い方をお話させていただきました。
ご理解いただけましたか?
iMA()の使い方まで覚えれば、あなたもMT4プログラマーの仲間入りです!
よく分からないところがありましたら、お気軽にご質問くださいね。


第18回 インディケーターを色々いじってみよう

iMA()の中の引数をextern変数にして、
実際の表示の切り替わりを体感してもらおうと思います。
では、さっそく今回のプログラムです!

//+------------------------------------------------------------------+
//| MA Kirin.mq4 |
//| Copyright Kirin 2010, Forex Trading Laboratory. |
//| http://ameblo.jp/ftlabo-kirin/ |
//+------------------------------------------------------------------+
#property copyright “Copyright Kirin 2010, MetaQuotes Software Corp.”
#property link “http://ameblo.jp/ftlabo-kirin/”
#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Red
#property indicator_level1 0
// 指標バッファ
double Buf[];

// 外部パラメータ
extern int MAPeriod = 13;
extern int Mode = 1;
extern int ApliedPrice = 0;

//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//—- indicators
// 指標バッファの割り当て
SetIndexBuffer(0, Buf);
// 指標ラベルの設定
string label = “MA(“+MAPeriod+”)”;
IndicatorShortName(label);
SetIndexLabel(0, label);
return(0);
//—-
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//—-
//—-
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
//—-
int limit = Bars-IndicatorCounted();
for(int i=limit-1; i>=0; i–)
{

Buf[i] = iMA(NULL, 0, MAPeriod, 0, Mode, ApliedPrice, i);

}
//—-
return(0);
}
//+------------------------------------------------------------------+

いつもとは青色の部分が違います。
昨日説明させていただいた部分の、

・ma_method
!非常に面白い部分です!
ここの数値を変更することで、移動平均線の種類を変更できます。
「リンク先」を参照してみてくださいね。
ここの定数を、MODE_SMAから、MODE_EMAに変更するだけで、
「単純移動平均」から、「指数移動平均」に種類を変更することができるんです。
平滑移動平均や、線形加重移動平均などにも定数を変更するだけで簡単に行えます。
ぜひ、変更してみてくださいね。
・int applied_price
この数値を変更することによって、移動平均を算出する基準を変更することができます。
これも「リンク先」をご参照いただければと。
オープンやクローズ、最安値、最高値だけでなく、中央値なども使えるのが面白い点ですね。

上記二つをextern変数にしてみただけすが、
結構色々遊べます。
ではまず、インディケーターを導入しようとしてみましょう。
Trading Systems ~経済的自由を得るために~
すると、このような画面が表示されます。
ここで、先ほど設定したextern関数の指定ができるようになっているんですね。
関数が何を表すかは、
「Ma_Method」
「ApliedPrice」
をご参照いただければと。
他にも、インディーターの色の設定ができます。
Trading Systems ~経済的自由を得るために~
このような画面ですね。
色のところをクリックすれば色が選べますし、
太さも調節できます。
また、同じインディケーターを何本も導入することができます。
その例がこちら
$Trading Systems ~経済的自由を得るために~
全部Ma Kirin.mq4というプログラムで設定しています。
ピリオドを変更したり、移動平均の算出方法を変更したり・・・
それを、数字を変更するだけで簡単に行えてしまうんですね。
インディケーターの基本的な説明はほとんど終わってしまったかなぁって思っています。
これからの方向性を、インディケーターの作成を続けるか、
それとも実際のEAの方向に進めるか・・・。
とりあえず、明日からはボリンジャーバンドのインディケーターを一から作ることに
チャレンジしたいと思います!
最後までお読みくださりまして、ありがとうございます^^

にほんブログ村 為替ブログへ 
Fx-Kirin

About Fx-Kirin

2009年10月にFXを開始、翌年2010年5月から脱サラをしてFX業界に専念。 2012年10月頃から本格的に勝ち始め、一月で資産を倍にする、2年半月間負けなし等、安定した収支で2013年11月に生涯FX収支が1億を超える。 投資スタイルはシステムトレード。プログラミングの知識がほぼない状態から、独学で自分がしたいと思うことであればほぼ実現することが可能なレベルまで成長。好きな言語はRuby, Python。必要となればC++からVBA、Pascal等なんでも行う。MT4/MT5のプログラミングも得意。 2011年にはFXで稼いだ資金をもとにシンガポールに移住し、留学も兼ねて起業をチャレンジするほど、ビジネスを興すことに熱意がある。国内の業者を主に使い始めたことから、2012年に帰国。零細株式会社経営中。

Adsense

  • このエントリーをはてなブックマークに追加
  • Pocket
  • 67 follow us in feedly

関連記事

no image

■超直感!MT4プログラミング講座■ 第38回 ブレイクアウトシステムのEA作成

おはようございます。キリンです。 脱サラしたことがついに親に発覚し、昨日電話かかってくると思ったらきませんでした。 親は

記事を読む

no image

■超直感!MT4プログラミング講座■ 第32回 発注スプリクトをサブルーチン化する(1)

おはようございます。キリンです。 昨日、半年振り以上にバスケをしてきました。 今日の筋肉痛はやばいです(w サラリーマン

記事を読む

no image

■超直感!MT4プログラミング講座■ 第11回 配列を覚えよう

こんばんは。キリンです。 最近、各EAの動向で一喜一憂してしまっています。 精神的によろしくないですな^^; クロスファ

記事を読む

no image

■超直感!MT4プログラミング講座■ 第12回 配列の応用方法を覚えよう!

こんばんは。キリンです。 TopGunの運用で、初めて3機目まで導入されてしまいました。 最後に投入するということもあり

記事を読む

no image

■超直感!MT4プログラミング講座■ 第31回 サブルーチンを使えるようになろう

おはようございます。キリンです。 昨日、家の近くの図書館に行ってきました。 そこで借りた本の一冊に、 「生き方」(稲盛 

記事を読む

no image

■超直感!MT4プログラミング講座■ 第33回 発注スプリクトをサブルーチン化する(2)

こんにちは。キリンです。 昨日、同い年の投資を始めている医大生とお会いしてきました。 すでに何度か事業にもチャレンジされ

記事を読む

no image

■超直感!MT4プログラミング講座■ 第21回 ボリンジャーバンドを作ろう(3)

こんばんは!キリンです。 私は本日を持って、脱サラをしました。 もう二度とサラリーマン生活に戻らないという固い信念のもと

記事を読む

no image

■超直感!MT4プログラミング講座■ 第28回 決済スプリクトの作成(1)

こんにちは!キリンです。 引越しも終わり、かなり落ち着いてきました。 時間的制約が皆無になると、セルフコントロール能力が

記事を読む

no image

■超直感!MT4プログラミング講座■ 第29回 決済スプリクトの作成(2)

こんにちは。キリンです。 住民票の変更も行い、年金も国民年金に切り替えました。 免許証の住所変更にもこれから行く予定です

記事を読む

no image

■超直感!MT4プログラミング講座■ 第4回 関数の定義方法

おはようございます。キリンです。 「パソコンを付けたら、まずブログを書く!」というマイルール作ってみました。 実践せねば

記事を読む

Comment

  1. junky より:

    SECRET: 0
    PASS:
    週末にゆっくりといじってみます。
    同じプログラム(Ma Kirin.mq4)を、名前変えなくても何回も表示できるんですね(笑)
    ボリンジャー、別窓バージョンもよろしくお願いします。

  2. SECRET: 0
    PASS:
    >junkyさん
    コメントありがとうございます!
    インディケーターのいいところはそこなんですよね♪
    設定もばっちり記憶できるし、いつでも呼び出せます。
    ボンリンジャーは今日から開始します!
    よろしくお願いします^^

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Adsense

Ubuntu で仮想ディスプレイを使う

雑多な備忘録ですが、せっかくなので残しておきます。 Ubuntu 18.04 の resolv.c

PYPIへの登録を10秒でできるようになる方法

pip 使ってますよね Pythonを使っている人であれば、pip installでライブラリ

The art of debugging with GDB, DDD, and Eclipse の読書メモ

GDBの勉強がしたくて、下の本を原著で読んでみました。10年前の本だけど全然現役でした。

JupyterでボタンからJavascriptを実行して追加のアウトプットをさせない方法

Javascriptを実行するとアウトプットセルの行が増える これがとても面倒だった。上の

まだBokehで消耗してるの?これからはPandas-Bokehを使おうぜ

タイトルはあまり気にしないでください。全然、Bokehで消耗する価値があるとは思っています。ただ

→もっと見る

PAGE TOP ↑