EA開発でcan’t open include fileエラー!夢のMT4自動売買ツールは夢のままなのか!mqhファイル拡張子でうっかりサンダーストーム

 

 

 

 

文化的で洗練されたセミリタイア生活を夢見て、EA開発に手を出し始めたサンダーストームです!

 

先日、外部ファイルをインクルードしようとしたらアッサリ

 

“can’t open “インクルードファイル名.mph” include file”

 

というぉおおおお恐ろしいエラーが発生し、苦しみ悶えることとなりました。

 

本日はその原因と解決法をシェアしたいと思います。

 



●ウォーレンバフェットが欲しいもの


世界第三位の大富豪、
ウォーレンバフェットは毎朝

普通のサラリーマンと同じように
出勤するそうです


自分のオフィスまでは車で5分

途中、マクドナルドに寄って朝食を買う

一日中職場にいて、定時に帰宅する

残業はしない


オフィスでは何をしているかというと
5,6時間は「読んでいる」というのです


日刊紙を5紙、雑誌、本、リポートなど

彼はそれだけで投資判断をして
世界第三位の大富豪となったのです

つまりウォーレンバフェットは

誰でも手に入れることのできる
公開情報だけでお金を儲けている



そんなバフェットさんでも
今一番欲しいものがあります


それは

「もっと速く読む能力」

だそうです


たしかに、これは大金を積んだからといって
手に入るものではありませんからね


世界の大富豪も欲しがる速読能力

みなさんもこの方法でゲットしてください

今まで速読が身につかなかったかた必見
左脳速読術

 

 

 

 

 

原因は、ファイルの拡張子

 

またもや解決してくれたのはこちらのサイト。

 

.mqh file stand for Meta Quotes Header.

 

.mqhは、Meta Quotes Headerの略ですよー。と教えてくれました。

 

そうです、ぼく「.mqh」じゃなくって、拡張子を「.mph」にしてたんです。

 

 

そりやまあ、エラーもでますわなあ。

 

 

 

 

 

 

 

 

 

ループ文が入れ子になって読み難かった

 

なんでファイルを分けようと思ったのかと言いますと、まず、For文などのループが見づらかったというのがあります。

 

MT4自動売買ツールの開発言語である「mql4」って、保有ポジションひっくり返したり有効注文ひっくり返したり、とかくForなどのループが何重にも入れ子になりがちですよね。

 

そうなるとプログラムが読み難くなって、ぼくなんてのはもはや自動売買ツール開発というより、眼精疲労と戦う日々みたいになっておりました。

 

そこで僕は、少しでもFor文の入れ子を解消しようとループの一部を関数に分けることにしました。

 

ほいで、いじっていたファイルに関数を追加するでもよかったんですが、僕が使ってる開発ツールって、同じファイルを同時に2つ開いて横に並べられなかったんですよね。

 

これだとプログラムの本体をチラ見しながら、分けた関数をゴニョゴニョ、、、という開発ができないじゃありませんか。

 

なんか融通きかないなあ、、、なーんてことはこれっぽっちも思ってはおりませんでしたが、それじゃあまあ新しい別のプログラムファイルを作って、そこに関数書いて、インクルードすればいいやって思ったんです。

 

ファイルが違えば、同時に開いてウィンドウを縦に並べることができますもの。

 

新規にプログラムファイル作って、試しにPrint(“もげもげ”);だけの関数をとりあえず作って、#IncludeしてコンパイルGO!!

 

 

 

 

そしたらアッサリ件のエラーw

 

 

 

 

ファイル読めないよエラーの原因ってほとんどがファイル名の間違いか権限かなので、目をフシアナにしてファイル名をチェックするぼく。

 

しかしながら、ないのですよ。間違いなんてものは。

 

それでも続くエラー。

 

<>カッコを””に変えてみてもエラー

 

エラー&エラー。

 

ぁああああああって発狂しそうになって、ゴーグルで検索しまくって、たどり着いたのが先程のサイトです。

 

 

.mqhは、Meta Quotes Headerの略ですよー。

 

 

人は、とかくファイル名には目と発想は行きますけど、拡張子ってとこまでは頭まわらなかったですね。

しかもqとpって、間違いやすいですしね!ね!?

 

 

 

そしてやっぱり、英語ができると探してる情報にたどり着くスピードが違うなあと思いました。

日本語のサイトで、「mql4ヘッダーファイルの拡張子は、MetaQuotesHeaderだから、mqhだよ」なーんて教えてくれるサイト、ありませんでしたから。

 

みなさまMql4の傍ら、英語のお勉強も一緒にがんばりましょうね!

 

 

 

 

インクルードファイル読み込みエラーまとめ

 

  • ファイル名だけじゃなくって、拡張子もチェックしてみよう
  • 英語はやっぱり役に立つ

 

 

外部ファイルインクルードをうまく活用して、文化的で洗練された自動売買EA開発ライフを送りましょうね!

 

 

以上、mql4ヘッダーファイルの拡張子は.mphじゃなくって.mqh!でした。

 

 

関連記事読んじゃう

 

 

 

 

 

 

Be the first to comment

コメントしちゃう