- 2016年12月25日
- 2021年5月12日
if文と論理演算の密接な関係~ド・モルガンの法則~
取っ付きにくくても避けては通れない道 MACDがシグナル線を上抜いたら、終値が直近30本の高値を上抜いたら、陰線が3本連続で続いたら、RSIが70%以上ならば…。 これらをプログラムで実現するには条件分岐のif文を使います。 if文の中には条件式を記 […]
取っ付きにくくても避けては通れない道 MACDがシグナル線を上抜いたら、終値が直近30本の高値を上抜いたら、陰線が3本連続で続いたら、RSIが70%以上ならば…。 これらをプログラムで実現するには条件分岐のif文を使います。 if文の中には条件式を記 […]
識別する対象が違う EAを自作する際にはマジックナンバーとチケット番号の2つの番号を使いこなさなければなりません。どちらも自作する上で必須の概念なので、確実に理解しておきましょう。 ここの理解を適当にしちゃうと、自作も改造もうまくいきません。 マジッ […]
build600の追加機能で、デバッグの心強い味方 定義済みマクロという機能がメタエディターのbuild600で実装されました。 定義済みマクロとは、MQL4プログラムに関する情報を取得して、デバッグを支援するための定数のことです。 “マ […]
いずれも地道に修正すれば済む話、あとはやる気の問題 また、#property strict関連の投稿です。しつこくてすみません。個人的にホットな話題なので、もう少しお付き合い頂ければ幸いです。 #property strictを追加するとハッピーにな […]
ENUMはEAパラメータとの相性抜群 #property strictとコメント文の意外な関係で触れましたが、#property strictを使うと、パラメータ名の箇所に変数名ではなくコメント文を表示できるようになります。 これには続きがありまして […]
パラメータ名の箇所に変数名ではなくコメント文が表示される 答え言っちゃいました。 そうなんです。#property strictをコードに記載すると、パラメータ名の箇所に変数名ではなくコメント文が表示されるようになります。 どれのことかって?これのこ […]
OnTimer()は便利そうなのにバックテストで使えない欠点が OnTick()はティックごとに動作する関数で、EAの売買ロジック等、根幹部分をここに記述します。 他方、OnTimer()は指定時間間隔ごとに動作する関数で、OnTick()と同様に、 […]
変数には有効範囲がある 変数のスコープ(scope)とは、変数の有効範囲のことです。変数が利用可能な範囲とでも言いましょうか。その有効範囲はどこかと言うと、OnTick等の関数の{ }で囲まれた部分になります。ちなみに、{ }を”ブロック […]
混乱を招く仕様 インジケーターの作成を頼まれて、せっかくだからOnCalculate()を使おうとした時の話です。 自分としては、完璧に作ったはずなのに、テストすると全然意図した通りに動かない。「なぜだろう…」とPrint()で色々とログを取得して数 […]
分かりにくい2つの制限 MQL4で長らく曖昧に理解していたStopLevelとFreezeLevel。ようやく正しい仕様を理解できました。というか、ちゃんとMQL4のサイトに定義がありましたorz Requirements and Limitatio […]