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

*

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

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

おはようございます。キリンです。
昨日、家の近くの図書館に行ってきました。
そこで借りた本の一冊に、
「生き方」(稲盛 和夫氏)
があります。この本、ベストセラーで新聞に60万部突破とか書いてましたが、
内容を見れば納得でした。
お勧めですよ!
さてさて、では今日の講義です。


第31回 サブルーチンを使えるようになろう(1)

■サブルーチンとは?
■使い方
■本日の宿題
■サブルーチンとは
最近の講義で、発注方法と決済方法の説明をしてきました。
でも、毎回決済方法のときのように長い文章を書くのは大変ですよね。
それを簡単にするのがこのサブルーチンです。
サブルーチンとは、プログラムのまとまりを一つの関数として扱い、
一括して処理させるといったものです。
サブルーチンとか横文字で書くと難しそうと思われるかもしれませんが、
使い方は至って簡単なので、ぜひ身につけてくださいね。
実は、講義の一番最初の方でお話したリンゴの値段を計算させる関数なのですが、
あれはサブルーチンの考え方が取り組まれていたのです。

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

これ、サブルーチンなんです。
リンゴの個数を引数として関数に与えれば、内部でリンゴの値段を計算し、
リンゴの合計値段を返す
というプログラムをひとまとまりにした、サブルーチンです。
■使い方
では、実際にはどうやってそのサブルーチンを使うのでしょうか。
これは、サブルーチンを一番外に置くんです。
ini()の中やstart()の中には入れないんですね。
RingoNoGoukeiNedanというサブルーチン関数を使ったスプリクトが下記になります。

//+------------------------------------------------------------------+
//| test.mq4 |
//| Copyright Kirin 2010, MetaQuotes Software Corp. |
//| http://ameblo.jp/ftlabo-kirin/ |
//+------------------------------------------------------------------+
#property copyright “Copyright Kirin 2010, MetaQuotes Software Corp.”
#property link “http://ameblo.jp/ftlabo-kirin/”
//+------------------------------------------------------------------+
//| script program start function |
//+------------------------------------------------------------------+
int start()
{
//—-
Print(RingoNoGoukeiNedan(5));
//—-
return(0);
}
//+------------------------------------------------------------------+

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

オレンジ色の部分がサブルーチンです。
それをstart()のPrint()の中に関数として呼び出しているんですね。
サブルーチンの作成方法は、第4回[リンクはこちら]に書いてあります。
「関数の定義方法」とありますが、本当はサブルーチンの定義方法だったんですね。
ご理解いただけましたでしょうか?
■本日の宿題
今までの応用です。ちょっと難しいかもと心配ですが、出してみます。
・発注スプリクト
・決済スプリクト
これらをサブルーチンにしてください。
これについては明日詳しくやる予定ですので、
ご安心を^^
今日も最後までお読みいただきましてありがとうございます!

にほんブログ村 為替ブログへ 
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プログラミング講座■ 第34回 決済スプリクトをサブルーチン化する

こんにちは。キリンです。 自立ってそんなに難しくないと思うんですが、 自律は大変ですよね。 自立できれば自律を目指さなけ

記事を読む

no image

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

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

記事を読む

no image

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

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

記事を読む

no image

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

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

記事を読む

no image

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

こんばんは。キリンです。 この講座の第1回で、非常に大きな反響をいただけました。 MT4のプログラミングに興味持っている

記事を読む

no image

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

こんばんは!キリンです。 気づいたら本格的なプログラムを扱っている状態にまで、 この講座も進んでこれたのですね。 私とし

記事を読む

no image

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

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

記事を読む

no image

■超直感!MT4プログラミング講座■ 第23回 ボリンジャーバンドのおさらい(2)

こんばんはっ!キリンです。 平日に私服で電車に乗っているのが非常に違和感を感じます。 でも、脱サラしたんだなっという感無

記事を読む

no image

■超直感!MT4プログラミング講座■ 第1回 プログラミングって何?

こんにちは!キリンです。 今日から一週間に一回くらいの更新頻度を目標に、 MT4プログラミング講座を更新していきます。

記事を読む

no image

■超直感!MT4プログラミング講座■ 第13回 MQL基本関数・変数を覚えよう!

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

記事を読む

Comment

  1. おやっさん より:

    SECRET: 0
    PASS:
    TOPGUN FXを使わせてもらっています。
    別の口座を作って他の通貨でも使いたいのですが、人数限定での無料期間で同じ人物が複数の配布をして頂いても良いのでしょうか?
    あと、一つ提案ですが、時間足が何だったか忘れる事があるので、パラメーター入力の所に推奨時間足を記入出来ないでしょうか?
    私の自作EAでは記入しているのですが、便利ですので。

  2. りある より:

    SECRET: 0
    PASS:
    こんばんは。
    多分、私はここで自作EAも躓いているような気がしています(ちがうかもですが、、、汗)。
    ちょっと宿題に手をつけられませんでした。
    宿題の回答と講義を楽しみにしています。

  3. SECRET: 0
    PASS:
    >おやっさんさん
    複数講座は大丈夫ですよ。
    ダウンロード申請も再度行う必要はありません。
    開設された口座が確認でき次第、
    通常の方法でDLできますのでご安心いただければと思います。
    パラメータへの時間足の記載の件も了解しました。
    検討させていただきます。
    コメント、アドバイスありがとうございます!

  4. SECRET: 0
    PASS:
    >りあるさん
    なるほどぉ。
    さっそく今から書かせていただきますね!
    コメントありがとうございます!

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 ↑