MT5でオリジナルのインジケーターを作っています。
つい先日まで問題なかったものが謎のエラーが発生してコンパイルできません。
対処の方法を教えてください!
エラーに番号等はなく、エラーの箇所も表示されません。
「code generation error」のみ表示されます。
色々調べたところ、エラーの箇所は「ExponentialMAOnBuffer」を使用している行であるということが判明しました。(この行をコメントアウトするとエラーが消えます)
ここでエラーが起きるはずがないと思い、他の普通に使えていたオリジナルインジケーターを何も編集せずに再度コンパイルしてみたところ同じ現象になりました。
おそらくバグかな?と思うのですが、インジケーターが使えず困っているので誰か対処方法お願いします。
ちなみにMT5の再インストールは試しています。
No.1ベストアンサー
- 回答日時:
「code generation error」は、MQL5プログラムが不正なコードを含んでいるために発生するエラーです。
このエラーが発生する理由はさまざまですが、インディケーターに関する場合、通常は以下のいずれかが原因です:
1.ソースコードに文法エラーが含まれている
2.バージョンの問題により、使用している関数が互換性がない
3.インディケーターがバグを持っている
今回の場合、コメントアウトした行はExponentialMAOnBuffer関数を呼び出しており、これがコンパイルエラーを引き起こしているとのことです。
ExponentialMAOnBuffer関数自体に問題がある可能性があります。または、呼び出し方やパラメーターの指定方法に誤りがあるかもしれません。
まず、関数自体を見直して、問題がある場合は修正してください。それでもエラーが続く場合は、関数の引数や呼び出し方に問題がある可能性があるため、引数や呼び出し方法を確認してください。
それでもエラーが解決しない場合は、他のバージョンのMT5を使用することや、MQL5プログラムを再構築することを検討する必要があります。
回答ありがとうございます!
色々試してなんとか解決できました。
以下解決までの道のり↓
ExponentialMAOnBuffer関数自体はMT5側で用意している関数なのと、この関数が収められているファイル(MovingAverages.mqh)をコンパイルしてみたところ正常にコンパイル出来たのでこの関数自体は大丈夫と判断。
次に呼び出し方ですが、公式にある記述と同じなので問題無し。
念のためこの関数のみを抜き出して自分のインジケーターに移してみましたがエラーは解消できず…。引数に関してはチェックしたけど問題なし。
試しにMovingAverages.mqhを使用しているインジケーターをネット上からダウンロードしてコンパイルしても同じエラーが発生。
結論:たぶんMT5側のバグ。
元のバージョンに戻そうにも方法がわからなかったため、
仕方なく関数を関数ではなく、直接OnCalculateの中に組み込みました。
そしたらコンパイルできました!
複雑な関数でなくてホント良かった…。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Instagram Instagramで自分が他人にしたコメントを確認しようとした所、何らかのエラーが発生しました。後ほ 1 2023/08/10 07:33
- その他(パソコン・スマホ・電化製品) 現在、Q-SL2を使用しています。Q-H1を接続しようとすると本体ソフトウェア確認中にエラーが発生し 1 2023/03/04 23:14
- au(KDDI) 特定の画面を見るとスマホが固まります ご覧頂き有難うございます。 特定のページを見るとスマホが固まり 1 2023/08/21 19:29
- その他(インターネット接続・インフラ) PCに関してのトラブル 2 2023/04/02 18:52
- C言語・C++・C# プログラム Arduino 1 2022/07/03 11:13
- その他(パソコン・スマホ・電化製品) A.I.D社のポータブルナビの地図更新について 1 2022/05/13 15:37
- プリンタ・スキャナー キャノンmp490プリンター【エラー番号5400】で【プリンタートラブルが発生しました。電源を入れ直 2 2023/07/24 17:45
- gooのスマホ google playエラー 1 2022/09/22 18:56
- 電子マネー・電子決済 QUICPayの登録ができない。 4 2023/06/10 10:57
- 携帯型ゲーム機 ニンテンドースイッチについての質問です。 長文になるかもしれませんがすみません。 お昼頃にSwitc 3 2023/02/12 21:32
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
python エラー
-
エクセルのエラーメッセージ「4...
-
Excelのエラーで困ってます。
-
適切な変換関数が存在しない???
-
デバッグ中のエラーのことで教...
-
sys/time.hのインクルードがで...
-
fortranでプログラムを実行する...
-
HEWを使用しているのですが、こ...
-
バッチからsqlplusの接続エラー...
-
Visual Studioのstrcpy_sについて
-
Handlesについて
-
コンパイル時のエラーメッセー...
-
VC2010のビルドエラーを全部出...
-
VC++6.0 の/Zm オプションについて
-
Atmel Studioでdelay関数でエラー
-
Debug Assertion Failed
-
エクセルでマクロを実行すると...
-
ACCESSのDate関数のエラー表示...
-
C2146を回避するにはどうしたら...
-
MakeSureDirectoryPathExists
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
python エラー
-
エクセルのエラーメッセージ「4...
-
適切な変換関数が存在しない???
-
fortranでプログラムを実行する...
-
Excelのエラーで困ってます。
-
Handlesについて
-
HEWを使用しているのですが、こ...
-
バッチからsqlplusの接続エラー...
-
デバッグ中のエラーのことで教...
-
VB2008で定数に色の設定をした...
-
コンパイルできません。
-
sys/time.hのインクルードがで...
-
multiple definitionというエラー
-
HANDLEの宣言でのエラー
-
BC30002: 型 'ListItem' が定義...
-
visual C++ でビルドの中止がで...
-
RightとLeft関数のライブ...
-
ビルド失敗 指定されたファイ...
-
Visual Studioのstrcpy_sについて
-
エクセルでマクロを実行すると...
おすすめ情報