エラー、バグ、質問 - ページ 886 1...879880881882883884885886887888889890891892893...3185 新しいコメント 削除済み 2012.11.28 13:08 #8851 Yedelkin: 理由はいくつもありそうですが...。最もよく知られているのは、ゼロによる除算で、配列を残すものです。ありがとうございます。アレイの外には 何が出力されるのですか?私の無知をお詫びします。私は3部門しか持っていません。TradeLot=AccountInfoDouble(ACCOUNT_BALANCE)*(PercentSize/100)/(100); MaxLotAllowed=MathFloor((MeansFree/MeansOneLot)*100)/100;(PositionVolume()+Volume())*(100)*(100))/AccountInfoDouble(ACCOUNT_BALANCE) Yedelkin 2012.11.28 13:15 #8852 G001: 私は3部門しか持っていません。 ここでゼロによる除算が発生する可能性がある。/AccountInfoDouble(ACCOUNT_BALANCE) 基本的なチェックが必要です。 G001 : アレイの外には何が出力されているのですか?私の無知をお詫びします。 それは、たとえば、こんなときです。double array[3]; for (int i=0; i<=3; i++) array[i]; 最後の反復では、配列の外側に 出口があります。 削除済み 2012.11.28 13:22 #8853 Yedelkin: ここで、ゼロによる除算が発生する可能性がある。 基本的なチェックが必要です。 例えばこんな時です。 最後の反復では、配列の外側に出口があります。ありがとうございます。クール、機能が正しく動作するかどうか確認しましょうか。AccountInfoDouble(ACCOUNT_BALANCE) Yedelkin 2012.11.28 13:27 #8854 G001: クール、機能が正常に動作するかどうか確認する必要があるのでは? さて、残高がゼロになり、機能が正常に働くとどうなるのでしょうか?:) 削除済み 2012.11.28 13:28 #8855 このようなメーターで問題ないのでしょうか?int TotalBullStopOrders() { int BullCounter=0; int Total = OrdersTotal(); for(i = 0; i < Total; i++) { if(OrderSelect(OrderGetTicket(i))) { if(OrderGetString(ORDER_SYMBOL)==Symbol() && OrderGetInteger(ORDER_MAGIC)==Magic) { if(OrderGetInteger(ORDER_TYPE)==ORDER_TYPE_BUY_STOP) { BullCounter++; } } } } return(BullCounter); } 削除済み 2012.11.28 13:32 #8856 Yedelkin: さて、残高がゼロになり、機能が正常に働くとどうなるのでしょうか?:)おっしゃるとおり、そこで修正します。しかし、現在、私の残高はゼロではなく、私のEAは緑色に微笑んでいるが、警告もなく、異常に、動作しなくなった、微笑まない方が良いのでは...。:) Yedelkin 2012.11.28 13:40 #8857 G001: このカウンターに問題はないのでしょうか? for文には、変数iの型が定義されていません。変数Magicが定義されていない。行列の中に。if(OrderSelect(OrderGetTicket(i)))OrderSelect() 関数は不要 です。他には何も気づいていません。 Документация по MQL5: Основы языка / Операторы / Оператор цикла for www.mql5.com Основы языка / Операторы / Оператор цикла for - Документация по MQL5 Test Account 2012.11.28 13:57 #8858 AndreyS:エラー(Error CopyBuffer - エラー番号:4806)の問題 - 私はそれを削除し、私はSleep(1000);でそれを治す - 私は、インジケータが作成するのに十分な時間を持っていないにそれを置く。エラー(4194304バイトが使用できません)が発生する問題は残っています。作成される可能性が高いです。しかし、データをコピーする前に、受け取りたいデータがあるかどうか(インジケータが計算する時間があったかどうか)を確認する必要があります。BarsCalculated関数が 役に立つはずです。次に、シンボルごとにすべてのタイムフレームを要求します。このデータの準備ができている場合 - それは、ディスクからメモリにダウンロードされ、そうでない場合 - それは(メモリも消費される)+各TFの異なる周期で100指標、およびメモリ内のすべてのこのを構築するために開始されます。データはすぐにメモリからアンロードされない(再度要求する場合に備えて)...。チャートのバーの本数を減らす。 Документация по MQL5: Доступ к таймсериям и индикаторам / BarsCalculated www.mql5.com Доступ к таймсериям и индикаторам / BarsCalculated - Документация по MQL5 削除済み 2012.11.28 13:59 #8859 Yedelkin: for文には、変数iの型が定義されていません。変数Magicが定義されていない。ライン内OrderSelect()は冗長 です。他には何も気づいて いません。ありがとうございます。オペレーターの外に1台あります。input int Magic = 55;MqlTradeRequest request={0}; MqlTradeResult result={0}; MqlTradeCheckResult check={0}; //----- int LotsDigits; int Indicator; double IndicatorVal[5]; double Ask; double Bid; int i; int pos; double TradeLot; ulong StopLevel; double MeansFree; double MaxLotAllowed; //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ Andriy Sydoruk 2012.11.28 14:44 #8860 alexvd:作成されたものと思われます。データをコピーする前にだけ、データが利用可能かどうか(インジケータが決済されたかどうか)を確認する必要があります。BarsCalculated関数が 役に立つはずです。次に、シンボルごとにすべてのタイムフレームを要求します。データの準備ができている場合 - それは、ディスクからメモリにダウンロードされ、そうでない場合 - それは(メモリも消費される)+各TFの異なる周期で100指標、およびメモリ内のすべてのこのを構築するために開始されます。データはすぐにメモリからアンロードされない(再度要求する場合に備えて)...。チャートのバーの本数を減らす。 while(BarsCalculated(m_handle)==-1 && !IsStopped()) Sleep(1); // Спасибо alexvd - откоректировал строку с учётом замечаний バーの本数は何も変わりません。問題はピリオドに隠されている、バリアント用for(int iperiod=5; iperiod<=19; iperiod++) が機能しない、19-5=14 - 期間が異なる。4に減らせば、すべてがうまくいく、といった具合です。for(int iperiod=16; iperiod<=19; iperiod++)foru IndicatorRelease(m_handle) -は確かに不正確ですが。 IndicatorRelease関数でハンドルを解放しなくても、とりあえず動くはずだと思うのですが、どうでしょうか?つまり、問題は異なる期間の数にあるのです。あるいは... 1...879880881882883884885886887888889890891892893...3185 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
理由はいくつもありそうですが...。最もよく知られているのは、ゼロによる除算で、配列を残すものです。
ありがとうございます。
アレイの外には 何が出力されるのですか?私の無知をお詫びします。
私は3部門しか持っていません。
ここでゼロによる除算が発生する可能性がある。
基本的なチェックが必要です。
それは、たとえば、こんなときです。
最後の反復では、配列の外側に 出口があります。
ここで、ゼロによる除算が発生する可能性がある。
基本的なチェックが必要です。
例えばこんな時です。
最後の反復では、配列の外側に出口があります。
クール、機能が正しく動作するかどうか確認しましょうか。
このようなメーターで問題ないのでしょうか?
さて、残高がゼロになり、機能が正常に働くとどうなるのでしょうか?:)
for文には、変数iの型が定義されていません。変数Magicが定義されていない。行列の中に。
OrderSelect() 関数は不要 です。他には何も気づいていません。エラー(Error CopyBuffer - エラー番号:4806)の問題 - 私はそれを削除し、私はSleep(1000);でそれを治す - 私は、インジケータが作成するのに十分な時間を持っていないにそれを置く。
エラー(4194304バイトが使用できません)が発生する問題は残っています。
作成される可能性が高いです。しかし、データをコピーする前に、受け取りたいデータがあるかどうか(インジケータが計算する時間があったかどうか)を確認する必要があります。BarsCalculated関数が 役に立つはずです。
次に、シンボルごとにすべてのタイムフレームを要求します。このデータの準備ができている場合 - それは、ディスクからメモリにダウンロードされ、そうでない場合 - それは(メモリも消費される)+各TFの異なる周期で100指標、およびメモリ内のすべてのこのを構築するために開始されます。データはすぐにメモリからアンロードされない(再度要求する場合に備えて)...。
チャートのバーの本数を減らす。
for文には、変数iの型が定義されていません。変数Magicが定義されていない。ライン内
OrderSelect()は冗長 です。他には何も気づいて いません。オペレーターの外に1台あります。
作成されたものと思われます。データをコピーする前にだけ、データが利用可能かどうか(インジケータが決済されたかどうか)を確認する必要があります。BarsCalculated関数が 役に立つはずです。
次に、シンボルごとにすべてのタイムフレームを要求します。データの準備ができている場合 - それは、ディスクからメモリにダウンロードされ、そうでない場合 - それは(メモリも消費される)+各TFの異なる周期で100指標、およびメモリ内のすべてのこのを構築するために開始されます。データはすぐにメモリからアンロードされない(再度要求する場合に備えて)...。
チャートのバーの本数を減らす。
バーの本数は何も変わりません。
問題はピリオドに隠されている、バリアント用
が機能しない、19-5=14 - 期間が異なる。
4に減らせば、すべてがうまくいく、といった具合です。
foru IndicatorRelease(m_handle) -は確かに不正確ですが。
IndicatorRelease関数でハンドルを解放しなくても、とりあえず動くはずだと思うのですが、どうでしょうか?
つまり、問題は異なる期間の数にあるのです。
あるいは...