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プログラミング講座■ 第13回 MQL基本関数・変数を覚えよう!

こんばんは!キリンです。 昨日、faiさん(とあるMetaTraderの備忘秘録)にブログで私の講座を紹介していただきま

記事を読む

no image

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

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

記事を読む

no image

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

おはようございます。キリンです。 今日は、マインドアップ的読書感想文で非常に良いことが書いてありました。 その中のさわり

記事を読む

no image

■超直感!MT4プログラミング講座■ 第25回 発注スプリクトの作成

おはようございます。キリンです。 今日から引越しの準備です。 今週はあまり仕事が進んでないです・・・。 引越しの準備とか

記事を読む

no image

■超直感!MT4プログラミング講座■ 第39回 ブレイクアウトシステムのEAの最適化をやってみよ

こんばんは!キリンです。 今日は最適化をしてみます。 簡単に成績がいいものができてしまうので、 成果が出たときは非常に嬉

記事を読む

no image

■超直感!MT4プログラミング講座■ 第8回 スクリプトを使ってみよう!

こんばんは!キリンです。 昨日の動画を上げてから気づいたのですが、 おそらく、昨日の動画で私の話で何をいっているのか伝わ

記事を読む

no image

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

おはようございます。キリンです。 今回は記念すべき第30回ですね! 開始当初から考えると思ったより速いペースでの達成です

記事を読む

no image

■超直感!MT4プログラミング講座■ 第16回 インディケーターの実働部分

こんばんは。キリンです。 先ほどHey!Hey!Hey!の大阪の歌特集をやっていました。 Dreams Come Tru

記事を読む

no image

■超直感!MT4プログラミング講座■ 第24回 インディケーターの補足

こんばんは。キリンです。 第24回 インディケーターの補足 ■インディケーターをサブウィンドウに表示する ■グラフに

記事を読む

no image

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

おはようございますっ!キリンです。 脱サラ後は朝のブログを習慣にする予定です。 毎日文章を書くことは、文章力をつける上で

記事を読む

Comment

  1. junky より:

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

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

Message

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

Adsense

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

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

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

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

SQLAlchemy のマイグレーションライブラリ Alembic を使ってみる。

SQLAlchemyの作者が作ったデータベースマイグレーションツール。個人的には、SQLAlch

Avoiding the problem of connect to outside of LAN with L2TP/IPSec on Ubuntu 18.04.

とても困って、原因の特定に2日かかった。疲れた。確定申告したいのに。 The IPSEC tu

Wine 上の MT4から ZeroMQ を使って Linux の pyzmq の通信をさせる

こんにちは。キリンです。 最近、年に数度のMQLを書くときがきたのですが、Pythonに慣れま

→もっと見る

PAGE TOP ↑