MT4のEA、MetaEditorについて質問です。 FXのシストレに興味があり今後は自作EA…

MT4のEA、MetaEditorについて質問です。

FXのシストレに興味があり今後は自作EAでFXを作成して運用していきたいと考えています。

そこで質問なのですが、
「10本間の高値を更新したら買い、10本間の安値を更新したら決済、
10本間の安値を更新したら売り、10本間の高値を更新したら決済」
というプログラムを組んだのですが上手く回りません。
下記ブログにプログラムを載せています。
http://fx-mt4-ea-beginner.seesaa.net/

どこがおかしいのか教えてください。
よろしくお願いします。

回答1

ft009_147さんへ

とりあえず、iHighest()とiLowest()の使い方が間違っています。
iHighest()とiLowest()は、値では無く、バーのインデクス番号を返します。
ですので、以下のように修正して目的の値を取り出します。

//2本前の10本間の高値
//high2 = iHighest(NULL,0,MODE_CLOSE,10,2);//×
high2 =High[iHighest(NULL,0,MODE_CLOSE,10,2)];//○

//2本前の10本間の安値
//low2 = iLowest(NULL,0,MODE_CLOSE,10,2);//×
low2 = Low[iLowest(NULL,0,MODE_CLOSE,10,2)];//○

間違っていたらごめんなさいm(__)m
————————————————————
↓MT4の日本語プログラムマニュアルサイトです。
http://www.metasys-seeker.net/MQL4_Reference_ver1/MQL4_Reference_Co…

↓iHighest()のページです。
http://www.metasys-seeker.net/MQL4_Reference_ver1/19-05_iHighest.ht…

コメントを残す

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

CAPTCHA