ライブラリ: MQL4からMQL5の互換性ライブラリ

 

MQL4からMQL5の互換性ライブラリ:

バージョン1.2 - MQL5\Include\mql4compat.mqh

作者: T-1000

 

こんにちは、

残念ながら、あなたのライブラリは不完全でバグがあります。私はこのmql4 indicatorhttp://codebase.mql4.com/7472 であなたのライブラリを使おうとしています あなたの指示に従ったところ、47のエラーと14の警告が表示されました。

'JJN-Fibo_with_compat_library.mq5' JJN-Fibo_with_compat_library.mq5 1 1
'mql4compat.mqh' mql4compat.mqh 1 1
'i' - 宣言されていない識別子 JJN-Fibo_with_compat_library.mq5 150 8
'ObjectDelete' - パラメータ数が不正 JJN-Fibo_with_compat_library.mq5 175 4
'ObjectDelete' - パラメータ数間違い JJN-Fibo_with_compat_library.mq5 176 4
'ObjectDelete' - JJN-Fibo_with_compat_library のパラメータ数が不正です。mq5 177 4
'ObjectDelete' - JJN-Fibo_with_compat_library のパラメータ数が不正です。mq5 178 4
'ObjectDelete' - JJN-Fibo_with_compat_library のパラメータ数が不正です。mq5 179 4
'ObjectDelete' - JJN-Fibo_with_compat_library のパラメータ数が不正です。mq5 180 4
'ObjectDelete' - JJN-Fibo_with_compat_library のパラメータ数が不正です。mq5 181 4
'DisplayDec' - 宣言されていない識別子 JJN-Fibo_with_compat_library.mq5 190 4
'ObjectCreate' - JJN-Fibo_with_compat_library のパラメータ数が不正です。mq5 196 4
'DisplayDec' - 宣言されていない識別子 JJN-Fibo_with_compat_library.mq5 197 100
'StringConcatenate' - パラメータ数が不正です。mq5 197 30
'number' から 'string' への暗黙の変換 JJN-Fibo_with_compat_library.mq5 197 30
'ObjectCreate' - 誤ったパラメータ数 JJN-Fibo_with_compat_library.mq5 198 4
'StringConcatenate' - 誤ったパラメータ数 JJN-Fibo_with_compat_library.mq5 199 30
'number' から 'string' への暗黙の変換 JJN-Fibo_with_compat_library.mq5 199 30
'ObjectCreate' - 誤ったパラメータ数 JJN-Fibo_with_compat_library.mq5 200 4
'StringConcatenate' - 誤ったパラメータ数 JJN-Fibo_with_compat_library.mq5 201 30
'number' から 'string' への暗黙の変換 JJN-Fibo_with_compat_library.mq5 201 30
'ObjectCreate' - 誤ったパラメータ数 JJN-Fibo_with_compat_library.mq5 202 4
'StringConcatenate' - 誤ったパラメータ数 JJN-Fibo_with_compat_library.mq5 203 30
'number' から 'string' への暗黙の変換 JJN-Fibo_with_compat_library.mq5 203 30
'ObjectCreate' - 誤ったパラメータ数 JJN-Fibo_with_compat_library.mq5 204 4
'StringConcatenate' - 誤ったパラメータ数 JJN-Fibo_with_compat_library.mq5 205 30
'number' から 'string' への暗黙の変換 JJN-Fibo_with_compat_library.mq5 205 30
'ObjectCreate' - 誤ったパラメータ数 JJN-Fibo_with_compat_library.mq5 206 4
'StringConcatenate' - 誤ったパラメータ数 JJN-Fibo_with_compat_library.mq5 207 30
'number' から 'string' への暗黙の変換 JJN-Fibo_with_compat_library.mq5 207 30
'ObjectCreate' - パラメータ数が間違っています。mq5 208 4
'StringConcatenate' - 誤ったパラメータ数 JJN-Fibo_with_compat_library.mq5 209 30
'number' から 'string' への暗黙の変換 JJN-Fibo_with_compat_library.mq5 209 30
'ObjectCreate' - パラメータ数が間違っています。mq5 214 4
'DisplayDec' - 宣言されていない識別子 JJN-Fibo_with_compat_library.mq5 215 104
'StringConcatenate' - パラメータ数が不正です。mq5 215 30
'number' から 'string' への暗黙の変換 JJN-Fibo_with_compat_library.mq5 215 30
'ObjectCreate' - パラメータ数が間違っています。mq5 216 4
'StringConcatenate' - 誤ったパラメータ数 JJN-Fibo_with_compat_library.mq5 217 30
'number' から 'string' への暗黙の変換 JJN-Fibo_with_compat_library.mq5 217 30
'ObjectCreate' - パラメータ数が間違っています。mq5 218 4
'StringConcatenate' - 誤ったパラメータ数 JJN-Fibo_with_compat_library.mq5 219 30
'number' から 'string' への暗黙の変換 JJN-Fibo_with_compat_library.mq5 219 30
'ObjectCreate' - パラメータ数が間違っています。mq5 220 4
'StringConcatenate' - 誤ったパラメータ数 JJN-Fibo_with_compat_library.mq5 221 30
'number' から 'string' への暗黙の変換 JJN-Fibo_with_compat_library.mq5 221 30
'ObjectCreate' - パラメータ数が間違っています。mq5 222 4
'StringConcatenate' - 誤ったパラメータ数 JJN-Fibo_with_compat_library.mq5 223 30
'number' から 'string' への暗黙の変換 JJN-Fibo_with_compat_library.mq5 223 30
'ObjectCreate' - パラメータ数が間違っています。mq5 224 4
'StringConcatenate' - 誤ったパラメータ数 JJN-Fibo_with_compat_library.mq5 225 30
'number' から 'string' への暗黙の変換 JJN-Fibo_with_compat_library.mq5 225 30
'ObjectCreate' - 誤ったパラメータ数 JJN-Fibo_with_compat_library.mq5 226 4
'StringConcatenate' - 誤ったパラメータ数 JJN-Fibo_with_compat_library.mq5 227 30
'number' から 'string' への暗黙の変換 JJN-Fibo_with_compat_library.mq5 227 30
'ObjectDelete' - パラメータ数が間違っている JJN-Fibo_with_compat_library.mq5 99 4
'ObjectDelete' - 誤ったパラメータ数 JJN-Fibo_with_compat_library.mq5 100 4
'ObjectDelete' - JJN-Fibo_with_compat_library のパラメータ数が不正です。mq5 101 4
'ObjectDelete' - JJN-Fibo_with_compat_library のパラメータ数が不正です。mq5 102 4
'ObjectDelete' - JJN-Fibo_with_compat_library のパラメータ数が不正です。mq5 103 4
'ObjectDelete' - JJN-Fibo_with_compat_library のパラメータ数が不正です。mq5 104 4
'ObjectDelete' - JJN-Fibo_with_compat_library のパラメータ数が不正です。mq5 105 4
'return' - 'void' 関数が値を返す JJN-Fibo_with_compat_library.mq5 110 4
47 エラー(複数可), 14 警告(複数可) 48 15

 
angevoyageur:

こんにちは、

残念ながら、あなたのライブラリは不完全でバグがあります。私はこのmql4 indicatorhttp://codebase.mql4.com/7472 であなたのライブラリを使おうとしています あなたの指示に従ったところ、47のエラーと14の警告が表示されました。

エラーの出ている関数名の最後にMQL4を追加して調整する必要があります。

また、そのインジケータをMT4でテストしましたが、そこでも正しく動作しなかったようです。

P.S> 互換ライブラリのマイナーアップデートと微調整を行ったので、最新バージョン1.1が承認され次第、入手してください。v1.0では、文字列StringConcatenate()関数は、MQL4とMQL5の間で動作方法が競合するため、正しく動作しませんでしたが、v1.1ではStringConcatenateMQL4を追加しました。
 
T-1000:
コンパイルエラーがなくなるように、エラーを出している関数名の最後にMQL4を追加して調整する必要があります。

また、そのインジケーターをMT4でテストしてみましたが、そちらでも正しく動作しなかったようです。

P.S> 互換ライブラリのマイナーアップデートと微調整をしましたので、最新バージョン1.1が承認され次第、ご利用ください。v1.0では、文字列StringConcatenate()関数は、MQL4とMQL5の間で動作方法が競合するため、正しく動作しませんでした - v1.1でStringConcatenateMQL4を追加しました。

お返事ありがとうございます。バージョン1.1がいつリリースされるか確認してみます。

  • もし、多くの関数名を調整する必要があるのであれば、互換ライブラリではなく、「MQL4」の接尾辞が付かないようにライブラリを調整した方が良いと思います。すべての関数(例えばStringConcatenate)でそれが可能なわけではないことは承知しています。
  • WHOLE_ARRAYは Copyxxxx関数と一緒に動作することを意図していませんし、この関数の結果はおそらくあなたが望むものではありません。
void __Open(double &_Open[])
  {
   ArraySetAsSeries(_Open,true);
   CopyOpen(_Symbol,_Period,0,WHOLE_ARRAY,_Open);  // What is the returned value ?
  }
 

a three.

そして、標準的な指標の投票の実施はゴミのようだ。

 
mql4compat.mqh ファイルをコンパイルすると、エラーが発生します:エラー
 

このライブラリは2021年にはメンテナンスされていないようだ。MQL5を通して作者にメッセージを送って連絡を取ろうとしたが、返事はなかった。言及されているIRCチャンネルに1ヶ月以上接続し続けたが、その間ずっと一人だった...。

そこで、MQL5ビルド2981でコンパイルしたときの警告やエラーを修正し、MQL4で変換したスクリプト/EAを実行できるようにする非常にラフなライブラリを追加したgithubバージョンを作りました。

最新バージョンはこちらから :https://github.com/eromawyn/mql4compat

また、何か面白いことがあれば、遠慮なくパッチを送ってください!

GitHub - eromawyn/mql4compat: MQL4 to MQL5 compatibility library
GitHub - eromawyn/mql4compat: MQL4 to MQL5 compatibility library
  • github.com
MQL4 to MQL5 compatibility library. Contribute to eromawyn/mql4compat development by creating an account on GitHub.