初心者の方からの質問 MQL5 MT5 MetaTrader 5 - ページ 588 1...581582583584585586587588589590591592593594595...1504 新しいコメント Vladimir Karputov 2016.05.28 13:54 #5871 barudkinarseniy:エキスパートアドバイザーで、ボタンやトグルスイッチなどのオブジェクトをチャートに追加することは可能でしょうか。また、可能な場合はどのように追加するのでしょうか。 オブジェクト:OBJ_BUTTONまたはOBJ_BITMAPに関する ヘルプです。そこに例がある。 削除済み 2016.05.29 19:35 #5872 テスターでは連続損失3となっていますが、手動で5、それ以上と数えてみました。何が原因なのでしょうか? Vladislav Andruschenko 2016.05.30 07:07 #5873 edutak: Тестер пишет, непрерывный проигрыш 3, а я вручную насчитал 5, потом еше больше. Из-за чего такое может быть?少なくともテスターからのレポートがなければ、理解できない。 削除済み 2016.05.30 07:15 #5874 Vladislav Andruschenko:少なくともテスターからのレポートがなければ、理解できない。 ファイル: 2016-05-30_10-13-57.png 26 kb 2016-05-30_10-14-23.png 11 kb 2016-05-30_10-14-40.png 18 kb 削除済み 2016.05.30 07:17 #5875 edutak: ロット 0.1テスターが嘘をついているのでは? Vladislav Andruschenko 2016.05.30 07:22 #5876 edutak: レポートはStrategyTesterレポートhtmlです。 削除済み 2016.05.30 08:55 #5877 Vladislav Andruschenko: レポートはStrategyTesterレポートhtmlです。 添付できない... Alexey Viktorov 2016.05.30 09:22 #5878 edutak: 添付できない... アーカイブしてください。 削除済み 2016.05.30 09:56 #5879 Alexey Viktorov: アーカイブしてください。 これです。 ファイル: StrategyTester.zip 4 kb admoon 2016.05.30 10:32 #5880 インジケータを順次確認していくと、if {}の後ろのサブルーチンでバウンスしており、その中にWがないことが判明しました。ここでは、そのポイントを明確にするために、簡略化したコードを紹介します。 //--- 入力パラメータ 入力 int w=10; //--- { int i; //--- int co=0; for(i=0;i<=w;i++)if(w==10){co++;Alert(co);} //--- 次の呼び出しのために prev_calculated の値を返す return(rates_total); } 結果(arlet)。 2016.05.30 00:45:14.064 1 (ユーラスド,H1) 11 2016.05.30 01:10:35.972 1 (ユーラスド,H1) 10 2016.05.30 00:45:14.064 1 (ユーラスド,H1) 1 ルール:括弧内の式が真であれば、演算子1が実行される。 コード中:operator1がALWAYSで実行される。 if()は括弧内の条件が真であるときに一度だけ動作するようにすればいいと思います。しかし、実際にはチェックごとに発生するため、{}内の式はすべて各ステップで実行され、マシンタイムを噛んでしまう。 質問:ループ中にCO変数が0から11に成長したのはなぜですか?なぜ、ステップごとにAlertが発動するのですか? ファイル: 1.ex5 7 kb 1.mq5 2 kb Questions from Beginners MQL5 Indicator won't fire alerts Function that returns an 1...581582583584585586587588589590591592593594595...1504 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
エキスパートアドバイザーで、ボタンやトグルスイッチなどのオブジェクトをチャートに追加することは可能でしょうか。また、可能な場合はどのように追加するのでしょうか。
edutak:
Тестер пишет, непрерывный проигрыш 3, а я вручную насчитал 5, потом еше больше. Из-за чего такое может быть?
少なくともテスターからのレポートがなければ、理解できない。
少なくともテスターからのレポートがなければ、理解できない。
ロット 0.1
テスターが嘘をついているのでは?
レポートはStrategyTesterレポートhtmlです。
添付できない...
アーカイブしてください。
インジケータを順次確認していくと、if {}の後ろのサブルーチンでバウンスしており、その中にWがないことが判明しました。ここでは、そのポイントを明確にするために、簡略化したコードを紹介します。
//--- 入力パラメータ
入力 int w=10;
//---
{
int i;
//---
int co=0;
for(i=0;i<=w;i++)if(w==10){co++;Alert(co);}
//--- 次の呼び出しのために prev_calculated の値を返す
return(rates_total);
}
結果(arlet)。
2016.05.30 00:45:14.064 1 (ユーラスド,H1) 11
2016.05.30 01:10:35.972 1 (ユーラスド,H1) 10
2016.05.30 00:45:14.064 1 (ユーラスド,H1) 1
ルール:括弧内の式が真であれば、演算子1が実行される。
コード中:operator1がALWAYSで実行される。
if()は括弧内の条件が真であるときに一度だけ動作するようにすればいいと思います。しかし、実際にはチェックごとに発生するため、{}内の式はすべて各ステップで実行され、マシンタイムを噛んでしまう。
質問:ループ中にCO変数が0から11に成長したのはなぜですか?なぜ、ステップごとにAlertが発動するのですか?