🔰 はじめに|関数=「便利なリモコン」から始めよう
今回は、EAプログラミング未経験者や超初心者のあなたに向けて、「関数」の基本をわかりやすく解説します。
プログラム学習では必ず登場する関数ですが、これを使いこなせるようになると、プログラム開発の効率が格段にアップします。
難しく考えず、まずは「関数の役割」を理解することを目標にしましょう。
関数の使い方がわかれば、あなたもいよいよ一人前のプログラマーの仲間入りです!
🔗 前回の記事:
▶ 超初心者向けEAプログラミング入門⑤|変数とは?情報を入れる箱をマスターしよう
関数とは?
関数とは、私たちの日常で例えるなら「テレビのリモコン」のようなものです。
リモコンの電源ボタンを押せばテレビがつきますよね。ほとんどの人は、リモコンがどんな電波を飛ばしているのか詳しく知らなくても、操作できます。
プログラムの関数も同じで、仕組みを完璧に理解しなくても、用意された関数を正しく使えば、期待する結果が得られます。
例えば、前回も出てきた
Comment(Ask);
これも実は関数の一種です。これを書くだけでMT4のチャート画面に「現在の買値(Ask)」を表示できます。
もしこのComment()関数がなければ、初心者が一から画面に文字を表示させるのはとても難しい作業になります。
リモコンでテレビの電源をONにするのと同じように、関数を使うことで複雑な処理が簡単になります。
関数の種類
関数は大きく3つに分けられます。
1.処理を実行してくれるタイプ
例)Comment(Ask);
書くだけで「画面に表示する」という処理を実行してくれます。初心者が使いやすいシンプルなタイプです。
2.情報を渡して結果を返すタイプ
例)double dHigh = iHigh(NULL, 0, 2);
こちらは「情報(引数)を渡して、その結果(戻り値)を受け取る」タイプの関数です。
イメージはテレビの録画機能。
「この番組を録画して」と指示すれば、録画された番組がハードディスクに保存されますよね。プログラムも同じで、引数を渡すと結果が返ってきて、それを変数に保存できます。
// 変数宣言
double dHigh;
// 関数から結果を受け取る
dHigh = iHigh(NULL, 0, 2);
// 画面に表示する
Comment(dHigh);
引数の意味は関数ごとに異なり、例えば iHigh(NULL, 0, 2)
は「通貨ペア」「時間軸」「バーの位置」を表します。
細かい内容は覚えなくても大丈夫。困ったらネットで調べましょう。
3.情報を渡さずに結果だけ返すタイプ
例)int iTotal = OrdersTotal();
こちらは引数なしで結果を返します。
例えば現在の保有ポジション数を取得するOrdersTotal()
は、ポジション数を返します。
これにより、例えば「既にポジションがあるなら新規注文しない」といった処理を簡単に書けます。
✅ まとめ:関数を使いこなして効率的なEA開発を目指そう!
お疲れさまでした。今回はプログラミングの要である「関数」について解説しました。
- 関数は「便利なリモコン」のようなもの
- 書くだけで複雑な処理を実行できる
- 主に「処理を実行」「情報を渡して結果を返す」「結果だけ返す」の3種類がある
- 必要な関数があるか調べて使うのが基本、無ければ自作も可能
プログラムは関数を使いこなすことで劇的に書きやすく、修正しやすくなります。
まずは「どんな関数があるか」をざっくり把握し、調べるクセをつけることが重要です。
▶ 次回予告
次回は「新規注文の関数」を使って、簡単なEAを作る方法を解説します!
コメント