MT5の使い方
MT5の定型チャートの使い方|保存されないものがある
MT5の定型チャートの使い方|保存されないものがある

定型チャートに手で引いたラインは保存されませんが、EAは保存されます。保存先も解説記事の記述と実機で違っていました。

続きを読む
MT5の使い方
MQL5で高値・安値を探す方法|返るのは価格ではない
MQL5で高値・安値を探す方法|返るのは価格ではない

iHighestとiLowestが返すのは、価格ではなく何本前かというインデックスです。標準ZigZagも同じ考え方で極値を選んでいます。

続きを読む
MT5の使い方
MQL5のPrintとログの保存場所|3か所に分かれる
MQL5のPrintとログの保存場所|3か所に分かれる

Printの出力先はMQL5のLogsフォルダで、解説記事にあるExperts配下のLogsは実機に存在しません。実際のフォルダを開いて確認した内容です。

続きを読む
MT5の使い方
MQL5のOnInitの戻り値|EAとインジで挙動が違う
MQL5のOnInitの戻り値|EAとインジで挙動が違う

INIT_FAILEDを返すと、EAは外されますがインジケーターはチャートに残ったまま動きません。エラーが出ないのに結果が違う原因になります。

続きを読む
MT5の使い方
MQL5でinvalid stopsが出る理由|制限は2種類ある
MQL5でinvalid stopsが出る理由|制限は2種類ある

invalid stopsの原因になる制限は、ストップレベルとフリーズレベルの2つあります。片方だけ見ていると原因にたどり着けません。

続きを読む
MT5の使い方
MQL5で足データを取得する方法|配列の向きに注意
MQL5で足データを取得する方法|配列の向きに注意

受け取った配列のindex 0は、既定では最新ではなくいちばん古い足です。ArraySetAsSeriesは並べ替えではありません。

続きを読む
MT5の使い方
MT5の時刻がずれる理由|EAが見ている時刻は別物
MT5の時刻がずれる理由|EAが見ている時刻は別物

TimeCurrentは「現在時刻」ではなく「最後にクォートが届いた時刻」です。相場が止まると進まないため、時刻で区切る処理が発火しません。

続きを読む
MT5の使い方
MQL5でポジションを決済する方法|OrderCloseは無い
MQL5でポジションを決済する方法|OrderCloseは無い

MQL4のOrderCloseはMQL5に存在しません。CTradeのPositionCloseを使い、ループは必ず後ろから回します。

続きを読む
MT5の使い方
MQL5で一定時間ごとに処理する方法|タイマーは1つだけ
MQL5で一定時間ごとに処理する方法|タイマーは1つだけ

EventSetTimerは秒単位で、1つのプログラムにつきタイマーは1つしか持てません。時刻で動かす処理をOnTickに書いてはいけない理由まで扱います。

続きを読む
MT5の使い方
MT5のヒストリカルデータが足りない時|業者ごとの上限
MT5のヒストリカルデータが足りない時|業者ごとの上限

業者が配信していない期間のデータは、何度ダウンロードしても増えません。取得手順と、足りない場合の2つの現実的な対処をまとめました。

続きを読む