[警告は閉鎖されました!】フォーラムを乱雑にしないために、どんな初心者の質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしでは、どこにも行けない。 - ページ 368

 

こんにちは。

新しいバーの開店を決めなければならない。Expert AdvisorにMQLチュートリアルの例のような純粋な関数を挿入しています。

void Fun_New_Bar() // 新しいバーを検出する関数
{
static datetime New_Time=0; // 現在のバー時間
bool New_Bar=false; // 新しいバーはない
if(New_Time!=Time[0]) // 時間を比較
{
New_Time=Time[0]; // 時間は現在
New_Bar=true; // 新しいバーをキャッチした
}
return(New_Bar);
} }.

1つのエラー '(' - function definition unexpected - unexpectedfunction definitionと 理解しています。

int関数の前に "New_Time "変数をdatetime New_Time;として定義しました - これがないとコンパイル時に未定義の変数というエラーが発生します。

この関数は、メインプログラムの中で次のように呼び出されます。

Fun_New_Bar(); // f-i を呼び出す
if (New_Bar==false) // バーが新しくない場合....
を返します。

なぜ、すべてがうまくいかないのか、どなたか教えてください。

また、もう一つ興味深い観察があります。何かを修正したらそれをコピーし、エラーがなければ、またコピーする-。

'(' - 関数定義が想定外 - というわけです。私は、コンパイラがすぐに理解できないほど難解な書き方をしているのでしょうか?

 
keekkenen >> :
は、時々、曲がった場所を印刷して、0.0000 = 0を見て、それが動作しない - 偽、念のため値を正規化します。

問題のある条件と重複する新しい条件を追加したら、問題は解決しました。

ありがとうございました。


PS 私の場合は注文のエラーで問題が報告されたので良かったのですが、他の方の場合はEAのロジックが完全に壊れている可能性があります。

メッセージもなく、知ることができなくなる :((

 

この関数はvoidと宣言されており、つまり何も返しませんが、コードの中ではreturn(New_Bar)と書かれており、これがエラーの原因となっています...

返される変数の型にしたがって宣言する必要があります - bool Fun_New_Bar()

で、それを適宜利用する if ( !Fun_New_Bar() ) return(0);

 
keekkenen писал(а)>>

この関数はvoidと宣言されており、つまり何も返しませんが、コードの中ではreturn(New_Bar)と書かれており、これがエラーの原因となっています...

返される変数の型にしたがって宣言する必要があります - bool Fun_New_Bar()

で、それを適宜利用する if ( !Fun_New_Bar() ) return(0);

最初のバージョンでは「bool Fun_New_Bar()」と正確に書いてあったのですが、エラーは同じでしたので、マニュアルにあるように関数名をvoidにしました。あなたのヒントを実行しましたが、変化はありません - エラーは同じです。

しかし、1つだけ変更がありました。エラーは279行目(これはコメント行です)に見つかり、一方、関数は280行目から始まっています。

例えば、インジケータの最新の2つの反転の値を決定するような、ある1回限りの分析ブロックを int() 関数にロードしてもよいかどうかということです。

してきました。Expert Advisorのハングアップの原因になるのでは?

 

Fun_New_Bar関数の 前にあるコードに括弧がないか、余分な括弧がある可能性があります。

コードをよく見てみると、おそらく問題が見つかるはずです。

 
keekkenen писал(а)>>

Fun_New_Bar 関数の前にあるコードに括弧がないか、余分な括弧がある可能性があります。

コードをよく見てみると、何が問題なのかがわかるはずです。

これから探してみます。 この機能を呼び出しているところに、絞り込んでみる。このようなエラーが発生した2つの関数は、呼び出し先に移動した後、すでにエラーなくコピーされています。しかも、「不具合のある」関数が呼び出し先に移動した場合、同じエラーが他の関数に飛び、順番が次になるとは限らないのです。

 
alsu >> :

1.QIPInfiumを インストールしていない場合は、インストールします。

2.端末とは別のICQアカウントを作成する

3.MsgBoxプラグインのインストールと設定 -詳細手順

シグナルを生成するExpert Advisor(インジケータ、スクリプト)から、上記リンクの説明に従って、必要なメッセージのファイルをOutBoxフォルダに書き込んでください。端末ディレクトリの外にあるファイルに書き込むには、例えば、ZI_File_Functions_Full_Lib ライブラリを使用します。


以上、ちょっとのググりと工夫で、最小限のプログラミングで4ステップで何でもできる:))))でした。

ありがとう、うまくいったよ :)

 

デモモードでEAを実行すると、手動取引の ように注文確認ウィンドウがずっと表示される。この機能はオプションでキャンセルされましたが、まだどこかに引っかかっています。

確認画面をキャンセルする方法はありますか?

 
Andrei01 >> :

デモモードでEAを実行すると、手動取引のように注文確認ウィンドウが出続ける。オプションでこの機能はキャンセルされましたが、まだどこかに引っかかっています。

この確認画面をキャンセルする方法はありますか?


設定_Mt サービス設定-アドバイザー


エキスパート設定

 

プロファイルのどこかに書かれていて元に戻せなかったので、まさにそれがうまくいきません。プロファイルを再作成することで問題は解決しました。