どんな新人の質問でも、フォーラムを乱雑にしないように。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 6. - ページ 601 1...594595596597598599600601602603604605606607608...1178 新しいコメント peace1984 2014.05.13 09:02 #6001 AlexeyVik: それは、私が試した方法とはちょっと違うかもしれませんね。 EAで再コンパイルして実行しただけです。コメント中のSysパラメータを変更すると、この値が変化します。 もう一度、あなたのバージョンに変えてみたのですが、まだうまくいきません......。EAの中に入っていて、EAとして見えている...。 Alexey Viktorov 2014.05.13 09:29 #6002 peace1984: もう一度、あなたのバージョンに変えてみたのですが、まだうまくいきません......。EAの中に入っていて、EAとして見える... それとも私が勘違いしていたのでしょうか? ファイル: 11_1_1.mq4 8 kb peace1984 2014.05.13 09:50 #6003 AlexeyVik:それとも何か誤解があったのでしょうか? sys!=1だと「sys should not be 1」というメッセージが出るのはわかるのですが、ユーザーを0から変更すると1になるはずなので、「sys should be 1」と表示されるはずです。 あなたのEAのバージョンでは、テスト中に左上隅に sys=0と表示されますが、これはそうであってはならないことです...。 Alexey Viktorov 2014.05.13 10:01 #6004 peace1984: sys!=1 の場合、"sys should not be 1" というメッセージが表示され、ユーザーを 0 から変更すると 1 になって "sys should be 1" というメッセージが表示されると理解しています。 ここでは、新発売の様子をご紹介します。下から並べます。 エキスパートが搭載されています。 外部変数リスト: Sys = 0 初期化に成功しました。 次の3行をEAから印刷する。 初期化解除理由 5(入力パラメーターがユーザーにより変更 されたため) 外部変数リスト: Sys = 1 初期化通過 次の3行は、Expert Advisorからのプリントです。 非初期化の理由 1(プログラムがチャートから 削除されました。) 何を明確にしたいのか?何がダメなのか理解できない...。 ps: そのような記号に注意を払う必要はありません。オプション口座だからこそ、このようなシンボルネームがあるのです。 Denis Lysenko 2014.05.13 12:17 #6005 AlexeyVik: そういう問題じゃないんです。誰もあなたの完全な秘密のコードを望んでいません。誤解のまま完全なテストコードを書けばいい。これはどうでしょう? ハイライトされた行を消去したのはいつですか?テレパスは役に立たないし、ただの人間はなおさらだ...。 それから、この部分です。 どこのプログラマーが書いたのか知りませんが、まったくもって不十分です......。あなたのせいではありません。あなたは、他の多くの人と同じように、ただコードを取って、それを修正しようとしただけです...。 counted_bars変数が、前回のインジケーター呼び出し(1行目)から変化していないバーの数に等しい場合 if(counted_bars < 0)でどうして0以下になるのか、私には到底理解できませんが...。 他もナンセンスですが、分解するのが億劫で...。 全く同感です。なぜ思いつかなかったのですか?) そんな惨めなインジケーターのコードとファイルを添付します。 グラフを投げる→端末が自然にハングアップ→10分放置(PCの性能にもよる。i5 3.1 Ghz)→MTを強制終了→「bug log.csv」の名前でログファイルを開く→IndicatorCounted()のバグを確認する、という流れです。 #property indicator_separate_window #property indicator_buffers 1 double Buffer_1[]; bool busy=false; int han; int init() { han=FileOpen("bug log.csv", FILE_CSV|FILE_WRITE); SetIndexStyle(0,DRAW_HISTOGRAM,STYLE_SOLID,1); SetIndexBuffer(0,Buffer_1); return(0); } int deinit() { FileClose(han); return(0); } int start() { //if(busy) return(0); int limit=3000; if(IndicatorCounted()>0) limit=1; for (int i=0; i<limit; i++) { busy=true; FileWrite(han, TimeToStr(TimeCurrent(), TIME_MINUTES|TIME_SECONDS), DoubleToStr(i, 0), DoubleToStr(IndicatorCounted(), 0)); FileFlush(han); for(int j=1; j<7000; j++) for(int k=1; k<7000; k++) double var=2*0.34*MathArccos(0.5)+1.33*MathArcsin(0.23)+1.53*MathArctan(0.11)+2.33*MathCos(0.23)+1.22*MathLog(12)+1.22; Buffer_1[i]=var; } busy=false; return(777); } ファイル: bugqtest.mq4 2 kb i999i 2014.05.13 13:05 #6006 こんにちは、スクリプトの何が足りないか教えてください。もし、if(AccountProfit()>1)の条件が満たされた場合、すべてのオープンオーダーをクローズしますが、現在は、条件が満たされるまで一部のオーダーのみをクローズします。 f(AccountProfit()>1)の場合 { for (i=OrdersTotal()-1;i>=0;i--){OrderSelect(i,SELECT_BY_POS,MODE_TRADES);if(OrderType()==OP_BUY){ OrderClose(OrderTicket(),OrderLots(),Bid,10,Green); return(0);} else { OrderClose(OrderTicket(),OrderLots(),Ask,10,Red); return(0);}}} Alexey Viktorov 2014.05.13 13:25 #6007 Expert: 全く同感です。なぜ思いつかなかったのですか?) ヲーイズミーインディケーター自体のコードとファイルを添付します。 グラフを投げると、もちろん端末はハングアップ、10分ほど放置(PCの速度による、i5 3.1 Ghz)、MTを強制終了、「bug log.csv」という名前でログファイルを開く、IndicatorCounted()のバグを観察する、など。 どうだろう。こんなファイルを記録したインジケータがあるんだけど。 ファイル: test.zip 21 kb Denis Lysenko 2014.05.13 13:52 #6008 AlexeyVik: どうだろう。このインジケータにこんなファイルを書き込ませていました。 ご感想をお寄せいただき、誠にありがとうございました。 あなたのバージョンで試してみましたが、同じ結果でした(( なぜこのような現象が起こるのか、何か心当たりはありますか? 私だけではありません。私のより高性能な別のPCで試しましたが、同じ問題です。 ファイル: bugflog.zip 122 kb i999i 2014.05.13 14:01 #6009 i999i: こんにちは、スクリプトの何が足りないか教えてください。もし、if(AccountProfit()>1)の条件が満たされた場合、すべてのオープンオーダーをクローズしますが、現在は、条件が満たされるまで一部のオーダーのみをクローズします。 f(AccountProfit()>1)の場合 { for (i=OrdersTotal()-1;i>=0;i--){ OrderSelect(i,SELECT_BY_POS,MODE_TRADES); if(OrderType()==OP_BUY) { OrderClose(OrderTicket(),OrderLots(),Bid,10,Green); return(0);} else { OrderClose(OrderTicket(),OrderLots(),Ask,10,Red); return(0);}}}return(0);は冗長でした、ありがとうございました。 Alexey Viktorov 2014.05.13 14:10 #6010 Expert: ご感想をお寄せいただき、誠にありがとうございました。 あなたのバージョンで試してみましたが、同じ結果でした(( なぜこのような現象が起こるのか、何か心当たりはありますか? 私だけじゃないんです。私のより高性能な別のPCで試しましたが、同じ問題です。 私があなたを理解できないのか、それともあなたが何かを理解していないのか......。.csvファイルに問題があるのでしょうか?最初のバーがカウントされるまで prev_calculated または IndicatorCounted() (旧バージョン) はゼロになり、これは正しいです。 1...594595596597598599600601602603604605606607608...1178 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
それは、私が試した方法とはちょっと違うかもしれませんね。
EAで再コンパイルして実行しただけです。コメント中のSysパラメータを変更すると、この値が変化します。
もう一度、あなたのバージョンに変えてみたのですが、まだうまくいきません......。EAの中に入っていて、EAとして見えている...。
もう一度、あなたのバージョンに変えてみたのですが、まだうまくいきません......。EAの中に入っていて、EAとして見える...
それとも私が勘違いしていたのでしょうか?
それとも何か誤解があったのでしょうか?
sys!=1だと「sys should not be 1」というメッセージが出るのはわかるのですが、ユーザーを0から変更すると1になるはずなので、「sys should be 1」と表示されるはずです。
あなたのEAのバージョンでは、テスト中に左上隅に sys=0と表示されますが、これはそうであってはならないことです...。
sys!=1 の場合、"sys should not be 1" というメッセージが表示され、ユーザーを 0 から変更すると 1 になって "sys should be 1" というメッセージが表示されると理解しています。
ここでは、新発売の様子をご紹介します。下から並べます。
エキスパートが搭載されています。
外部変数リスト: Sys = 0
初期化に成功しました。
次の3行をEAから印刷する。
初期化解除理由 5(入力パラメーターがユーザーにより変更 されたため)
外部変数リスト: Sys = 1
初期化通過
次の3行は、Expert Advisorからのプリントです。
非初期化の理由 1(プログラムがチャートから 削除されました。)
何を明確にしたいのか?何がダメなのか理解できない...。
ps: そのような記号に注意を払う必要はありません。オプション口座だからこそ、このようなシンボルネームがあるのです。
そういう問題じゃないんです。誰もあなたの完全な秘密のコードを望んでいません。誤解のまま完全なテストコードを書けばいい。これはどうでしょう?
ハイライトされた行を消去したのはいつですか?テレパスは役に立たないし、ただの人間はなおさらだ...。
それから、この部分です。
どこのプログラマーが書いたのか知りませんが、まったくもって不十分です......。あなたのせいではありません。あなたは、他の多くの人と同じように、ただコードを取って、それを修正しようとしただけです...。
counted_bars変数が、前回のインジケーター呼び出し(1行目)から変化していないバーの数に等しい場合
if(counted_bars < 0)でどうして0以下になるのか、私には到底理解できませんが...。
他もナンセンスですが、分解するのが億劫で...。
全く同感です。なぜ思いつかなかったのですか?)
そんな惨めなインジケーターのコードとファイルを添付します。
グラフを投げる→端末が自然にハングアップ→10分放置(PCの性能にもよる。i5 3.1 Ghz)→MTを強制終了→「bug log.csv」の名前でログファイルを開く→IndicatorCounted()のバグを確認する、という流れです。
こんにちは、スクリプトの何が足りないか教えてください。もし、if(AccountProfit()>1)の条件が満たされた場合、すべてのオープンオーダーをクローズしますが、現在は、条件が満たされるまで一部のオーダーのみをクローズします。
f(AccountProfit()>1)の場合
全く同感です。なぜ思いつかなかったのですか?)
ヲーイズミーインディケーター自体のコードとファイルを添付します。
グラフを投げると、もちろん端末はハングアップ、10分ほど放置(PCの速度による、i5 3.1 Ghz)、MTを強制終了、「bug log.csv」という名前でログファイルを開く、IndicatorCounted()のバグを観察する、など。
どうだろう。こんなファイルを記録したインジケータがあるんだけど。
どうだろう。このインジケータにこんなファイルを書き込ませていました。
ご感想をお寄せいただき、誠にありがとうございました。
あなたのバージョンで試してみましたが、同じ結果でした((
なぜこのような現象が起こるのか、何か心当たりはありますか?
私だけではありません。私のより高性能な別のPCで試しましたが、同じ問題です。
こんにちは、スクリプトの何が足りないか教えてください。もし、if(AccountProfit()>1)の条件が満たされた場合、すべてのオープンオーダーをクローズしますが、現在は、条件が満たされるまで一部のオーダーのみをクローズします。
f(AccountProfit()>1)の場合
ご感想をお寄せいただき、誠にありがとうございました。
あなたのバージョンで試してみましたが、同じ結果でした((
なぜこのような現象が起こるのか、何か心当たりはありますか?
私だけじゃないんです。私のより高性能な別のPCで試しましたが、同じ問題です。