MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 1328 1...132113221323132413251326132713281329133013311332133313341335...1953 新しいコメント Nataliia Darsavelidze 2020.12.15 16:12 #13271 Alexey Viktorov:MT5についての質問のようです。答えは、「プログラム上ではない」です。質問を終了することができます。 ありがとうございました。 DanilaMactep 2020.12.16 08:23 #13272 皆さんこんにちは!約束通り、チュートリアルのために戻ってきましたЈ(◔‿◔)もちろんgrail machineも動きましたが、テストに時間がかかるので、新しいバーが到着したときだけtickでコードを実行する方法を探しています。以下のオプションを発見。グローバルレベルでは、変数が定義されている int intBars;// ГЛОБАЛЬНО ОПРЕДЕЛЁННАЯ ПЕРЕМЕННАЯ ДЛЯ ОПРЕДЕЛЕНИЯ НАСТУПЛЕНИЯ そして、新しいバーが発生したかどうかをチェックする関数を書きました - これは傑作 です bool f_IsNewBar() { if(intBars != Bars) { intBars = Bars; return(true); } return(false); } このバリアントを見つけたとき、オンティックからすべてのロジックを持つ関数を作成する必要があると言われています。関数でこのやり方は正直言って好きではないので、新しいバーがあるかどうかだけチェックして、それが真ならオンティックでコードを実行することにしています。単純化すると、つまり実際に作業していない状態では、次のようになります。 void OnTick() {//НАЧАЛО ОН ТИК // если появился новый бар: if(f_IsNewBar()) // ЕСЛИ ПОЯВИЛСЯ НОВЫЙ БАР {// ВЫПОЛНЯЕМ ВЕСЬ КОД В ОН ТИК /* МНОГО МНОГО СЕКРЕТНОГО ГРААЛЬНОГО КОДА😃😃😃 */ } }// КОНЕЦ ОН ТИК 違う質問をさせてください。グレイルはもちろん、実際のケースでも使えます。では、テスターでテストせず、リアルティックで 実行するバージョンのgrailでは、このチェックを外して、すべてのティックで EAが動作するようにするべきか、それとも、リアルティックでもこのチェックを残しておくべきか。このチェックをリアル口座版にも入れる場合、1回目に注文を開けなかった場合の2回目の注文はどのように計画すればいいのでしょうか? Valeriy Yastremskiy 2020.12.16 08:43 #13273 DanilaMactep:皆さんこんにちは!約束通り、チュートリアルのために戻ってきましたЈ(◔‿◔)もちろんgrail machineも動きましたが、テストに時間がかかるので、新しいバーが到着したときだけtickでコードを実行する方法を探しています。以下のオプションを発見。グローバルレベルでは、変数が定義されている そして、新しいバーが発生したかどうかをチェックする関数を書きました - これは傑作 です このバリアントを見つけたとき、オンティックからすべてのロジックを持つ関数を作成する必要があると言われています。関数でこのやり方は正直言って好きではないので、新しいバーがあるかどうかだけチェックして、それが真ならオンティックでコードを実行することにしています。簡略化すると、つまり実際に作業していない状態では、次のようになります。 違う質問をさせてください。グレイルはもちろん、実際のケースでも使えます。では、テスターではテストせず、リアル口座で動作させるバージョンのgrailでは、このチェックを外してEAを全ティックで 動作させるべきか、リアル口座でも残すべきか、どちらでしょうか?このチェックをリアル口座版にも入れる場合、1回目に注文を開けなかった場合の2回目の注文はどのように計画すればいいのでしょうか? OPT、HI、LO、CLOSESのバー値で計算を行う場合、毎ティックで行う必要はない。しかし、すべてのティックで価格を監視するのは正しいことです。これは、別途計算や条件確認が必要です。 また、新バーはゼロバーの開店時間に追従しています。 FlagNewBar=false; // глобальная или статик булева переменная if(BarTime!=Time[0]) { BarTime=Time[0]; FlagNewBar=true; } Mikhail Nazarenko 2020.12.16 08:47 #13274 Artyom Trishkin:このスレッドでは、新しいMQL4でプログラミングを理解し、学び、MQL5に簡単に切り替えたいと考えている人たちの手助けを始めたいと思います - 言語は非常に似ています。このブログでは、タスクやその解決方法、MTプログラミングに関する疑問などを議論していきます。当フォーラムの他の経験豊富なメンバーにも議論に加わってもらい、誰もが興味を持つようなブランチになればと思います。 MQL4タスク:文字列中の大文字の位置番号を決定します。ありがとうございます。 Aleksei Stepanenko 2020.12.16 09:44 #13275 Mikhail Nazarenko:MQL4 タスク:文字列中の大文字の位置番号を決定する。ありがとうございます。 string str="preved mEdved"; string uppercase="ABCDEF.....ZАБВГД....Я"; int finish=StringLen(str)-1; int pos=-1; for(int i=0; i<=finish; i++) { pos=StringFind(uppercase,StringSubstr(str,i,1)); if(pos>=0) break; } printf(pos); Mikhail Nazarenko 2020.12.16 10:17 #13276 Aleksei Stepanenko: ありがとうございます。 Aleksei Stepanenko 2020.12.16 10:20 #13277 Mikhail Nazarenko:ありがとうございます。 違う。欲しいのはStringFindの 結果ではなく、iの方だ。 そうですね。 string str="preved mEdved"; string uppercase="ABCDEF.....ZАБВГД....Я"; int finish=StringLen(str)-1; int pos=-1; for(int i=0; i<=finish; i++) { if(StringFind(uppercase,StringSubstr(str,i,1))>=0) { pos=i; break; } } printf(pos); Alexey Viktorov 2020.12.16 11:47 #13278 Mikhail Nazarenko:MQL4 タスク:文字列中の大文字の位置番号を決定する。ありがとうございます。 StringGetCharacter() が使えます。"A "という文字は65で、"a "はあと32で-97です。登場人物もみんなそうです。したがって、文字コードが > 90 かつ <= 122 である場合、それは小文字のラテン文字です。キリル文字も32の違いがあります Aleksei Stepanenko 2020.12.16 11:53 #13279 Alexey Viktorov:することができます。 まさに、良いオプションです。 Tanita Gajduchok 2020.12.17 18:16 #13280 こんにちは、ここでリーダーアカウントを作るにはどうしたらいいですか? 1...132113221323132413251326132713281329133013311332133313341335...1953 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
MT5についての質問のようです。答えは、「プログラム上ではない」です。質問を終了することができます。
ありがとうございました。
皆さんこんにちは!約束通り、チュートリアルのために戻ってきましたЈ(◔‿◔)もちろんgrail machineも動きましたが、テストに時間がかかるので、新しいバーが到着したときだけtickでコードを実行する方法を探しています。以下のオプションを発見。グローバルレベルでは、変数が定義されている
そして、新しいバーが発生したかどうかをチェックする関数を書きました - これは傑作 です
このバリアントを見つけたとき、オンティックからすべてのロジックを持つ関数を作成する必要があると言われています。関数でこのやり方は正直言って好きではないので、新しいバーがあるかどうかだけチェックして、それが真ならオンティックでコードを実行することにしています。単純化すると、つまり実際に作業していない状態では、次のようになります。
違う質問をさせてください。グレイルはもちろん、実際のケースでも使えます。では、テスターでテストせず、リアルティックで 実行するバージョンのgrailでは、このチェックを外して、すべてのティックで EAが動作するようにするべきか、それとも、リアルティックでもこのチェックを残しておくべきか。このチェックをリアル口座版にも入れる場合、1回目に注文を開けなかった場合の2回目の注文はどのように計画すればいいのでしょうか?
皆さんこんにちは!約束通り、チュートリアルのために戻ってきましたЈ(◔‿◔)もちろんgrail machineも動きましたが、テストに時間がかかるので、新しいバーが到着したときだけtickでコードを実行する方法を探しています。以下のオプションを発見。グローバルレベルでは、変数が定義されている
そして、新しいバーが発生したかどうかをチェックする関数を書きました - これは傑作 です
このバリアントを見つけたとき、オンティックからすべてのロジックを持つ関数を作成する必要があると言われています。関数でこのやり方は正直言って好きではないので、新しいバーがあるかどうかだけチェックして、それが真ならオンティックでコードを実行することにしています。簡略化すると、つまり実際に作業していない状態では、次のようになります。
違う質問をさせてください。グレイルはもちろん、実際のケースでも使えます。では、テスターではテストせず、リアル口座で動作させるバージョンのgrailでは、このチェックを外してEAを全ティックで 動作させるべきか、リアル口座でも残すべきか、どちらでしょうか?このチェックをリアル口座版にも入れる場合、1回目に注文を開けなかった場合の2回目の注文はどのように計画すればいいのでしょうか?
OPT、HI、LO、CLOSESのバー値で計算を行う場合、毎ティックで行う必要はない。しかし、すべてのティックで価格を監視するのは正しいことです。これは、別途計算や条件確認が必要です。
また、新バーはゼロバーの開店時間に追従しています。
このスレッドでは、新しいMQL4でプログラミングを理解し、学び、MQL5に簡単に切り替えたいと考えている人たちの手助けを始めたいと思います - 言語は非常に似ています。
このブログでは、タスクやその解決方法、MTプログラミングに関する疑問などを議論していきます。
当フォーラムの他の経験豊富なメンバーにも議論に加わってもらい、誰もが興味を持つようなブランチになればと思います。
MQL4タスク:文字列中の大文字の位置番号を決定します。ありがとうございます。
MQL4 タスク:文字列中の大文字の位置番号を決定する。ありがとうございます。
ありがとうございます。
ありがとうございます。
違う。欲しいのはStringFindの 結果ではなく、iの方だ。
そうですね。
MQL4 タスク:文字列中の大文字の位置番号を決定する。ありがとうございます。
StringGetCharacter() が使えます。"A "という文字は65で、"a "はあと32で-97です。登場人物もみんなそうです。したがって、文字コードが > 90 かつ <= 122 である場合、それは小文字のラテン文字です。キリル文字も32の違いがあります
することができます。
まさに、良いオプションです。