同じ動作をさせる条件において、多くの "or"(|)を避けることは可能でしょうか? - ページ 5 12345678910 新しいコメント 削除済み 2013.02.11 09:26 #41 borilunad: そして、この意味がわからないのです。この数字はどこから持ってきたのですか?また、短い変数名に興味があるなら、私は長いより短い方が好きです。それとも他に?そうそう、今気づいたのですが、私の数式にcloの前とcloの後の最後に2つの括弧が追加されていましたね。そんなの全然必要ない、計算が乱れる。でも、ありがとうございました。 <--- 10,444 = 8,087 > 3,908は何語ですか? double a; <------------ は数値 です。(isCloseLastPosByTake() == True && Profit > ProClo / clo - GetProfitCloseLastPosByTake() * clo);<-------- これはメンバー比較です。a = (isCloseLastPosByTake() == True && Profit> ProClo / clo - GetProfitCloseLastPosByTake() * clo)number = number > number これをどう理解するか? Boris 2013.02.11 09:41 #42 pako: double a; <------------ この数値 (isCloseLastPosByTake() == True && Profit > ProClo / clo - GetProfitCloseLastPosByTake() * clo);<-------- これはメンバーの比較です。 a = (isCloseLastPosByTake() == True && Profit > ProClo / clo - GetProfitCloseLastPosByTake() * clo) 数 = 数 > clo そして、アドバイスいただいた通り、boolは既に実行済みです。bool a = false; if(isCloseLastPosByTake() == True && Profit > ProClo / clo - GetProfitCloseLastPosByTake() * clo) a = true; //Кстати, isCloseLastPosByTake() это член, а GetProfitCloseLastPosByTake() это число そして、前ページですでにお伝えしたように、効果があるのですありがとうございました。 Igor Chemodanov 2013.02.11 09:49 #43 borilunad: 私の場合、1つの条件を満たせば十分です。もし私が間違っているならば、それを正当化してください!私はいつでも新しいことを聞くのが好きなのです。ありがとうございます。いいえ、そんなことはありません。いずれかの条件(A、B、C、D)=真であれば、Requestは真となる。all =falseの場合、Requestはfalseになります。 Boris 2013.02.11 10:45 #44 icas:いいえ、そんなことはありません。いずれかの条件(A、B、C、D)=真であれば、Requestは真となる。all =falseの場合、Requestはfalseになります。 こちらも試してみます!もし、速度が良ければ、そちらを選びます。ありがとうございました。 試しに、Request()関数をスタートの外に置いてみましたが、コンパイラから警告が出ました。 'Request' - インポートした関数に 対応するDLLが定義されていません C:\Program Files 以上、動作するようになりましたが、Rakoさんのバリエーションの方が、追加の関数Request()を入力する必要がないので、良いと思います。 ありがとうございました。 削除済み 2013.02.11 11:22 #45 Request() return() の意味 Boris 2013.02.11 11:32 #46 pako:Request() return() の意味 ありがとうございます。しかし、icasさんのバリアントを試したところ、私のミスでRequest() の後に; を入れてしまい、 今は動作していますが、先にお伝えしたように、あなたのバリアントの方が 良いと思います。 ありがとうございます。 Igor Chemodanov 2013.02.11 11:45 #47 borilunad: ありがとうございます。しかし、icasさんのバリアントを試したのは私で、私のミスでRequest() の後に; を入れてしまったため、 現在は動作していますが、先にお伝えしたように、あなたのバリアントの方が 良いと思います。 ありがとう ございます。バリアントでは if((A + B + C + D + E) > 0) Action;は、常にすべての条件A, B, C, D, Eを定義する必要があります。私のバリアントでは、これはすべての条件がfalseのときだけ行われます。スピードについて今一度考えてみてください。 Boris 2013.02.11 12:13 #48 icas: バリアントでは は、常にすべての条件A, B, C, D, Eを定義する必要があります。 私のバリアントでは、これはすべての条件がfalseのときだけ行われます。 今、速さを考える。 ありがとうございました。で、どうなんだ?このような条件を最初に決めておき、その後にあなたのRequest() を呼び出すのです。どこで、どうすればいいのかわからない。:( すべての条件は相互に排他的であり、常にすべてが偽、または1つだけが真で残りが偽になることに留意してください。 Boris 2013.02.11 16:36 #49 アイカス テスターでは、このオプションをチェックしても実行時間が短縮されなかったので、私のやり方が正しくなかったのだと思います。 何をどこに置けばいいのか、説明してくれるかもしれませんよ。ありがとうございます!!! Alexey Navoykov 2013.02.11 17:41 #50 borilunad 関数呼び出しは、不必要なブレーキをかけることになります。したがって、最高速度を求めるなら、一文字の演算を行うRequest()関数をすべて取り除く必要があります。 ループについても同様です。 ループ内の条件チェックは、単にネストしたif()の連続よりも常にはるかに遅いのです。 12345678910 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
そして、この意味がわからないのです。この数字はどこから持ってきたのですか?また、短い変数名に興味があるなら、私は長いより短い方が好きです。それとも他に?そうそう、今気づいたのですが、私の数式にcloの前とcloの後の最後に2つの括弧が追加されていましたね。そんなの全然必要ない、計算が乱れる。でも、ありがとうございました。
<--- 10,444 = 8,087 > 3,908は何語ですか?
double a; <------------ は数値 です。
(isCloseLastPosByTake() == True && Profit > ProClo / clo - GetProfitCloseLastPosByTake() * clo);<-------- これはメンバー比較です。
a = (isCloseLastPosByTake() == True && Profit> ProClo / clo - GetProfitCloseLastPosByTake() * clo)
number = number > number これをどう理解するか?
double a; <------------ この数値
(isCloseLastPosByTake() == True && Profit > ProClo / clo - GetProfitCloseLastPosByTake() * clo);<-------- これはメンバーの比較です。
a = (isCloseLastPosByTake() == True && Profit > ProClo / clo - GetProfitCloseLastPosByTake() * clo)
数 = 数 > clo
そして、アドバイスいただいた通り、boolは既に実行済みです。
そして、前ページですでにお伝えしたように、効果があるのですありがとうございました。私の場合、1つの条件を満たせば十分です。もし私が間違っているならば、それを正当化してください!私はいつでも新しいことを聞くのが好きなのです。ありがとうございます。
いいえ、そんなことはありません。
いずれかの条件(A、B、C、D)=真であれば、Requestは真となる。
all =falseの場合、Requestはfalseになります。
いいえ、そんなことはありません。
いずれかの条件(A、B、C、D)=真であれば、Requestは真となる。
all =falseの場合、Requestはfalseになります。
こちらも試してみます!もし、速度が良ければ、そちらを選びます。ありがとうございました。
試しに、Request()関数をスタートの外に置いてみましたが、コンパイラから警告が出ました。
'Request' - インポートした関数に 対応するDLLが定義されていません C:\Program Files
以上、動作するようになりましたが、Rakoさんのバリエーションの方が、追加の関数Request()を入力する必要がないので、良いと思います。 ありがとうございました。
Request() return() の意味
ありがとうございます。しかし、icasさんのバリアントを試したのは私で、私のミスでRequest() の後に; を入れてしまったため、 現在は動作していますが、先にお伝えしたように、あなたのバリアントの方が 良いと思います。 ありがとう ございます。
バリアントでは
は、常にすべての条件A, B, C, D, Eを定義する必要があります。
私のバリアントでは、これはすべての条件がfalseのときだけ行われます。
スピードについて今一度考えてみてください。
バリアントでは
は、常にすべての条件A, B, C, D, Eを定義する必要があります。
私のバリアントでは、これはすべての条件がfalseのときだけ行われます。
今、速さを考える。
ありがとうございました。で、どうなんだ?このような条件を最初に決めておき、その後にあなたのRequest() を呼び出すのです。どこで、どうすればいいのかわからない。:(
すべての条件は相互に排他的であり、常にすべてが偽、または1つだけが真で残りが偽になることに留意してください。
アイカス
テスターでは、このオプションをチェックしても実行時間が短縮されなかったので、私のやり方が正しくなかったのだと思います。
何をどこに置けばいいのか、説明してくれるかもしれませんよ。ありがとうございます!!!
borilunad 関数呼び出しは、不必要なブレーキをかけることになります。したがって、最高速度を求めるなら、一文字の演算を行うRequest()関数をすべて取り除く必要があります。 ループについても同様です。 ループ内の条件チェックは、単にネストしたif()の連続よりも常にはるかに遅いのです。