
MT4でファイル操作を扱うには
MT4でファイル出力をするには、FileOpen、FileWrite、FileCloseを利用します。
ポジション決済時にポジション情報をファイル出力してEAの見直しなどで利用できる取引ログファイル出力のサンプルです。
string filename = hoge.tsv;
datetime orderOpen=OrderOpenTime();
int handle=FileOpen(filename , FILE_READ|FILE_WRITE|FILE_CSV , "\t");
if(handle>0){
FileSeek(handle, 0, SEEK_END);
FileWrite(handle, Close[0], Open[0], High[0], Low[0], TimeToStr(orderOpen));
FileClose(handle);
}
※注意点
ファイル出力の際に、上書きではなく追加で出力するには、FileOpenのファイル出力パラメータに「FILE_READ」「FILE_WRITE」を選択し、FileWrite処理前にFileSeek(handle, 0, SEEK_END)を実行してください。FILE_READの設定とFileSeek実行がないと出力の度にファイルが上書きされ、ログの履歴が残らなくなります。
ファイルの出力先はモードにより異なります。
[通常モードの場合]
\MQL4\Files
[テストモードの場合]
\tester\files
ファイル関数【File functions】
FileClose
ファイルを閉じる
FileDelete
ファイルを削除
FileFlush
ファイルのフラッシュ
FileIsEnding
ファイルの終端チェック
FileIsLineEnding
ファイルの行末チェック
FileOpen
ファイルを開く
FileOpenHistory
ヒストリーファイルを開く
FileReadArray
配列型のファイル読込
FileReadDouble
浮動少数点型のファイル読込
FileReadInteger
整数型のファイル読込
FileReadNumber
数値型のファイル読込
FileReadString
文字列型のファイル読込
FileSeek
ファイル検索
FileSize
ファイルサイズ
FileTell
ファイルポインタ位置
FileWrite
ファイル書込み
FileWriteArray
配列型のファイルへの書込み
FileWriteDouble
浮動少数点型のファイルへの書込み
FileWriteInteger
整数型のファイルへの書込み
FileWriteString
文字列型のファイルへの書込み