エラー、バグ、質問 - ページ 276 1...269270271272273274275276277278279280281282283...3185 新しいコメント lVlaxim 2011.01.21 22:11 #2751 Yedelkin:MQL5リファレンスガイド /テクニカル指標 / iCustomを確認する 迅速な対応ありがとうございました) vda 2011.01.21 22:32 #2752 トピックについてもう少しでできたのですが、COUNTERが起動せず、ターミナルのログには抜去ロード成功 が効いた!!!! Sergey Gritsay 2011.01.21 23:06 #2753 ここにエラーがあります。 v161_handle=iCustom(NULL,0,"ErolМТ5"); v162_handle=iCustom(NULL,0,"ErolМТ5"); Sum_handle=iCustom(NULL,0,"ErolМТ5"); この場合、同じインジケータを3回呼び出しているので、3つの変数はすべて同じハンドルを持っています。 vda 2011.01.21 23:13 #2754 sergey1294:エラーが発生しました この場合、同じインジケータを3回呼び出しているので、3つの変数がすべて同じハンドルになります。そうなんですが、私の理解では、インジケータの 指標行の 値(3行の値)がを乗り切ります。CopyBuffer(v161_handle,1,0,3,Spr1Buffer) CopyBuffer(v162_handle,2,0,3,Spr2Buffer) CopyBuffer(Sum_handle,4,0,3,SumBuffer) ここで、1、2、4はバッファに格納されている指標行のインデックス値です。を比較検討します。しかし、それは問題ではなく、これらの指標線指標では正しく計算されません Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Линии индикаторов www.mql5.com Стандартные константы, перечисления и структуры / Константы индикаторов / Линии индикаторов - Документация по MQL5 vda 2011.01.21 23:15 #2755 どこに行けばいいのか、ここで何をすればいいのか、何かアドバイスはありますか?void OnTick() { ArraySetAsSeries(Spr1Buffer,true); ArraySetAsSeries(Spr2Buffer,true); ArraySetAsSeries(SumBuffer,true); if(CopyBuffer(v161_handle,1,0,3,Spr1Buffer)<0 || CopyBuffer(v162_handle,2,0,3,Spr2Buffer)<0 || CopyBuffer(Sum_handle,4,0,3,SumBuffer)<0) { Alert("Ошибка копирования буферов индикатора номер ошибки:",GetLastError()); } bool SellSpr1 =(Spr1Buffer[1] > Spr2Buffer[1]); bool SellSum1 =(SumBuffer[1]>=Sp); if(SellSpr1 && SellSum1 && !PositionSelect(_Symbol)) { PositionOpenSell1(); } bool BuySpr1 =(Spr1Buffer[1] < Spr2Buffer[1]); bool BuySum1 =(SumBuffer[1]>=Sp); if(BuySpr1 && BuySum1 && !PositionSelect(_Symbol)) { PositionOpenBuy1(); } Sergey Gritsay 2011.01.21 23:15 #2756 alexluek:そうなんですが、私の理解では、インジケータの 指標行の 値(3行の値)がを乗り切ります。ここで、1、2、4はバッファに格納されている指標行のインデックス値です。を比較検討します。しかし、これらの指標線によると正しく計算されないので問題ありません インジケーターのコピーを1つロードし、コピーバッファー経由で必要なバッファーインデックスをアドレス指定すれば十分です。 vda 2011.01.21 23:30 #2757 sergey1294: インジケーターのコピーを1つロードし、コピーバッファーで目的のバッファーのインデックスをアドレス指定すれば十分です。いいえ、そうではありません。2行目の値を取得することができません。 異なるバッファに格納された2つの行番号の値を比較するため。 bool SellSpr1 =(Spr1Buffer[1] > Spr2Buffer[1]); Sergey Gritsay 2011.01.21 23:50 #2758 alexluek:間違って、2行目の値を取得することはできません 異なるバッファに格納された2つの行番号の値を比較するため。 インジケータ自体にエラーがある可能性があります vda 2011.01.22 00:07 #2759 sergey1294: インジケータ自体にエラーがある可能性がありますインジケータが正しく表示される vda 2011.01.22 13:43 #2760 溺れている人を助けるのは、溺れる人の仕事です。今後、重宝するかもしれませんね。現在のバーに対してEAで2つ以上のインジケータラインを 呼び出すには1つのハンドルを選択し、インジケータを呼び出し、コピーバッファを使用してインデックス値を保存します。を作成し、これらのバッファを使用して作業します。sergey1294 さん、ありがとうございます。int OnInit() { v161_handle=iCustom(NULL,0,"LeroyMТ5"); if(v161_handle<0) { Alert("Ошибка при создании индикаторов: ",GetLastError()); return(-1); } return(0); } void OnTick() { ArraySetAsSeries(Sp1Buffer,true); ArraySetAsSeries(Sp2Buffer,true); ArraySetAsSeries(Sp3Buffer,true); if(CopyBuffer(v161_handle,1,0,1,Sp1Buffer)<0 || CopyBuffer(v161_handle,2,0,1,Sp2Buffer)<0 || CopyBuffer(v161_handle,4,0,1,Sp3Buffer)<0) { Alert("Ошибка копирования буферов индикатора номер ошибки:",GetLastError()); return; } bool SellSpr1 =( Sp1Buffer[0]> Sp2Buffer[0] && Sp3Buffer[0]>=Sp ); if(SellSpr1 && !PositionSelect(_Symbol)) { PositionOpenSell1(); } bool BuySpr1 =( Sp1Buffer[0]< Sp2Buffer[0] && Sp3Buffer[0]>=Sp ); if(BuySpr1 && !PositionSelect(_Symbol)); { PositionOpenBuy1(); } } 1...269270271272273274275276277278279280281282283...3185 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
MQL5リファレンスガイド /テクニカル指標 / iCustomを確認する
迅速な対応ありがとうございました)
トピックについてもう少しでできたのですが、COUNTERが起動せず、ターミナルのログには
抜去
ロード成功
が効いた!!!!ここにエラーがあります。
この場合、同じインジケータを3回呼び出しているので、3つの変数はすべて同じハンドルを持っています。エラーが発生しました
この場合、同じインジケータを3回呼び出しているので、3つの変数がすべて同じハンドルになります。そうなんですが、私の理解では、インジケータの 指標行の 値(3行の値)が
を乗り切ります。
ここで、1、2、4はバッファに格納されている指標行のインデックス値です。
を比較検討します。
しかし、それは問題ではなく、これらの指標線指標では正しく計算されません
どこに行けばいいのか、ここで何をすればいいのか、何かアドバイスはありますか?
そうなんですが、私の理解では、インジケータの 指標行の 値(3行の値)が
を乗り切ります。
ここで、1、2、4はバッファに格納されている指標行のインデックス値です。
を比較検討します。
しかし、これらの指標線によると正しく計算されないので問題ありません
インジケーターのコピーを1つロードし、コピーバッファーで目的のバッファーのインデックスをアドレス指定すれば十分です。
いいえ、そうではありません。2行目の値を取得することができません。
異なるバッファに格納された2つの行番号の値を比較するため。
間違って、2行目の値を取得することはできません
異なるバッファに格納された2つの行番号の値を比較するため。
インジケータ自体にエラーがある可能性があります
インジケータが正しく表示される
溺れている人を助けるのは、溺れる人の仕事です。
今後、重宝するかもしれませんね。
現在のバーに対してEAで2つ以上のインジケータラインを 呼び出すには
1つのハンドルを選択し、インジケータを呼び出し、コピーバッファを使用してインデックス値を保存します。
を作成し、これらのバッファを使用して作業します。sergey1294 さん、ありがとうございます。