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

*

■超直感!MT4プログラミング講座■ 第15回 MQL定義済み関数について

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

こんにちは!キリンです。
このブログ自体が夜書くことが多いので、「こんにちは!」っていうと新鮮ですね。
春の陽気を感じられる素晴らしい日々が続いています。
散歩が気持ちいいです。
ほんと関係ないのですが、
ふとこのような言葉を思いつきました。
「心のおだやかさ、優しさは、幸福感と感謝から生まれる」
我ながら悪くないと思ってます(w
さて、本日の講義です。
っとまずは先日いただいたコメントのご紹介からさせていただこうと思います。
(こういうコメントのお陰で、説明の至らないところがよく分かります。
 本当にありがとうございます!)

SetIndexBuffer(0, Buf);
IndicatorShortName(label);
SetIndexLabel(0, label);
この大文字から始まる3つって、変数ですよね?
真ん中を除いた2つが(0,***)と2つの要素を入れるっていう概念が急にでてくるもので、
とっつきにくいんだと思います。
あと、これらはintとかが定義されてないのも???です。
junky

まず、正解からお話しますと、
SetIndexBuffer(0, Buf);
IndicatorShortName(label);
SetIndexLabel(0, label);
これら3つはMQL定義済み関数です。
関数については、関数の回がありますので
そちらをご覧いただければと思います。
( )の中で「,」を使うお話もさせていただいておりますので、
分からない方はぜひ。
第3回 関数を覚えよう!
第4回 関数の定義方法
関数の変数との根本的な違いは、「文字の後に()があれば関数だ」と理解していただければいいと思います。
では、junkyさんのコメントをきっかけに
今回のお話をさせていただきます。
皆さんのプログラミングの助けになれば幸いです。


第15回 MQL定義済み関数について

■簡単な復習
■MQL定義済み関数とは?
■MQL定義済み関数ってどう見分けるの?
■MQL定義済み関数はどういったものがあるの?]
■簡単な復習
さて、冒頭で、
SetIndexBuffer(0, Buf);
IndicatorShortName(label);
SetIndexLabel(0, label);
はMQL定義済み関数だというお話をさせていただきました。
まず簡単に復習を。
リンゴの回を思い出していただきたいのですが、
()の中には{}で使う変数に数字を割り当てることができます。
それを、[ , ]で区切って複数いれることができるんです。
(よく分からなければ第4回をごらんになっていただければと。
 大事な部分ですので、しっかりと理解していただきたいです。)
■MQL定義済み関数とは?
では、MQL定義済み関数って何?
ということなのですが、第4回のリンゴの例を用いて説明しますね。

int RingoNoGoukeiNedan(int RingoNoKosuu, int RingoNoTanka = 80, double ShouhiZei = 1.05){
int GoukeiNedan = RingoNoKosuu * RingoNoTanka * ShouhiZei;
return(GoukeiNedan);
}

リンゴの合計値段を取り出す関数ですね。
MQL定義済み関数というのは、
このプログラムの中で、{ }の部分がすでに定義済みだということです。
このあたりは「サブルーチン」という概念の理解がないと
辛いところであるのですが、
「MT4自体であらかじめ動作の内容が決まっている関数」
と理解していただければいいかと思います。
すでに定義済みですので、intやdouble、voidなどで指定する必要がなく、
いきなり、
SetIndexBuffer(0, Buf);
IndicatorShortName(label);
SetIndexLabel(0, label);
とかけるわけです。
■MQL定義済み関数ってどう見分けるの?
MQL定義済み関数はメタエディター上で文字が紫色になります。
$Trading Systems ~経済的自由を得るために~
■MQL定義済み関数はどういったものがあるの?
僕の場合は、下のHPさんを拝見させていただいています。
MQL言語リファレンス日本語翻訳マニュアル
一番充実しているのではないかなぁって思っています。
これに負けないものを作りたい・・・ものです。
このサイトの中にも今回紹介したMQL定義済み関数が紹介されていますので、
ご覧になっていただければと思います。

SetIndexBuffer()

IndicatorShortName()
SetIndexLabel()
↑クリックしてみてくださいね
ご理解いただけたでしょうか?
これから、このMQL定義済み関数はものすごく頻繁に登場します。
しっかりと使えるようになっていただければと思います。
最後までお読みくださりましてありがとうございました。
宿題は、リファレンスサイトを見ていただくことにしようと思います(w
AskやBid、Close[], High[]についても書かれているので、そちらもご覧になってみてくださいね。
ではでは~

にほんブログ村 為替ブログへ 
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
  • 68 follow us in feedly

関連記事

no image

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

こんにちは!キリンです。 今日、ついに大阪の地に降り立ちました。 5年ぶりの大阪。あの頃とはまったく気持ちが違いますね。

記事を読む

no image

■超直感!MT4プログラミング講座■ 第10回 if関数を使ってみよう

こんにちは!キリンです。 昨日は土曜出勤でした。サラリーマン生活も残すところあと2週間弱。 今日は、引越し会社に引越しの

記事を読む

no image

■超直感!MT4プログラミング講座■ 第3回 関数を覚えよう!

こんばんは!キリンです。 前回の「変数の定義」のお話ですが、 やはりつまづいている方が多かったようですね。 基本的で、非

記事を読む

no image

■超直感!MT4プログラミング講座■ 第7回 インディケーター表示のために

没になった回です。 内容が雑なため、第8回へ移動していただければと思います。 興味のある方はご覧いただければと思います。

記事を読む

no image

■超直感!MT4プログラミング講座■ 第9回 for関数を使ってみよう

こんばんは!キリンです。 今日は、繰り返し同じ動作をすることのできる for関数についてのお話しようと思います。 第9

記事を読む

no image

■超直感!MT4プログラミング講座■ 第6回 インディケータープログラムの解説

こんにちは!キリンです。 GW真っ最中! 私は引っ越し先を探してきました。 納得のいく部屋を見つけて、さらに洗濯機も購入

記事を読む

no image

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

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

記事を読む

no image

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

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

記事を読む

no image

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

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

記事を読む

no image

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

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

記事を読む

Comment

  1. junky より:

    SECRET: 0
    PASS:
    自分で答えてましたね、リンゴの代金の回で・・・
    定義済み関数って、あらかじめプログラムが組まれてるっていうことなので、楽をさせてもらってるんだと思います、個人的には。
    あとは、そこで何をやってるのかということがキチンと理解できればいいのですが。

  2. SECRET: 0
    PASS:
    >junkyさん
    ですですー。
    楽させてもらってるんですね。
    自分で作らなくていいんですよ♪
    それがMQLのいいところです。
    何をやっているかというのは、
    「慣れ」が大きいかもしれません。
    「こうしたい」と思ったときに「こういうものがあるのか」という理解を
    増やしていけば、徐々に覚えていくと思います。
    応援しています!
    コメントいつもありがとうございます!

Message

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

Adsense

Fixing kernel error AMD-Vi: Event logged IO_PAGE_FAULT on Ryzen Machine

My pc was periodically shut down on 7:40 am JS

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を実行するとアウトプットセルの行が増える これがとても面倒だった。上の

→もっと見る

PAGE TOP ↑