[ARCHIVE] フォーラムを散らかさないように、どんなルーキーでも質問してください。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 3. - ページ 169 1...162163164165166167168169170171172173174175176...652 新しいコメント Maxim Zaguzov 2011.09.11 06:54 #1681 splxgf: DhP です。 このサイクルを「軽くする」ためにはどうしたらいいのでしょうか?数えるのにとても時間がかかる。 if(iHigh(NULL,60,i)>LOWprice && LOWprice>iLow(NULL,60,i)) if(LOWprice> bid) CountH++ else CountL++; いっそのこと、こんな風に。 if(iHigh(NULL,60,i)>LOWprice) if(LOWprice>iLow(NULL,60,i)) if(LOWprice> bid) CountH++ else CountL++; また、HighとLowの値の配列を生成するアイデアもある。これで少しはスピードアップするかも? 削除済み 2011.09.11 07:06 #1682 abolk: オーダーが選択されるhttps://docs.mql4.com/ru/trading/OrderSelect- ルーピングまたはチケットによる選択 とすると、Order*()関数は、関連するオーダーパラメータを検索します。 ぶしつけな質問で申し訳ないのですが。 OrderSelect 関数で MODE_HISTORY を選択用のデータソースとして使用する場合、つまり、クローズした注文と削除した注文の中から選択する場合、最後にクローズした注文の番号はどのようにして求めますか。これらの注文は、プログラム上ではどのように番号付けされているのでしょうか?最後から一番目なのか、その逆なのか? Denis Lazarev 2011.09.11 07:13 #1683 Xaoss1990: もちろん、くだらない質問で申し訳ないのですが。 OrderSelect 関数の データソースが MODE_HISTORY の場合、つまり、クローズした注文と削除した注文の中から選択する場合、最後にクローズした注文の番号を調べるにはどうしたらよいでしょうか。これらの注文は、プログラム上ではどのように番号付けされているのでしょうか?最後から一番目なのか、その逆なのか? ネットにはこんな質問がよくある http://forum.alpari.ru/showthread.php?t=27708 Andrey F. Zelinsky 2011.09.11 07:13 #1684 Xaoss1990: 馬鹿な質問で申し訳ないのですが OrderSelect 関数で MODE_HISTORY を選択用のデータソースとして使用した場合、つまり、クローズした注文や削除された注文の中から注文を選択した場合、最後にクローズした注文の番号を調べるにはどうすればよいですか。これらの注文は、プログラム上ではどのように番号付けされているのでしょうか?最後から一番目なのか、その逆なのか? 閉じたものの最後を見つけるための関数は,閉じた時間が最大のオーダーを見つけるための関数と同様である 削除済み 2011.09.11 07:29 #1685 LazarevDenis: これらの質問の多くは、すでにインターネット上で質問されています。http://forum.alpari.ru/showthread.php?t=27708 О!見つけました、ありがとうございます。 OrderSelect(HistoryTotal()-1,SELECT_BY_POS,MODE_HISTORY); そうなんですよね!? Maxim Zaguzov 2011.09.11 07:37 #1686 DhP: このサイクルを「緩和」するにはどうしたらいいのか。計算にとても時間がかかります。スペルバウンド INS = True; for (int i=1; i<=6000; i++) { if (INS) { if (LOWprice > iHigh(NULL,60,i)) { INS = False; UPP = True; LOW = False; continue; } if (LOWprice < iLow (NULL,60,i)) { INS = False; UPP = False; LOW = True; continue; } } else { if (UPP) if (LOWprice > iHigh(NULL,60,i)) continue; else if (LOWprice < iLow (NULL,60,i)) { // INS = "False" UPP = False; LOW = True; continue; } if (LOW) if (LOWprice < iLow (NULL,60,i)) continue; else if (LOWprice > iHigh(NULL,60,i)) { // INS = "False" UPP = True; LOW = False; continue; } INS = True; } if (LOWprice > Bid) CountH++; else CountL++; } 価格はヒストリカルバーの内側よりも外側にあることが多いというロジックです。 INS=インサイド。 リーフレットでコードの正確さを確認しました。コード速度の確認はしていない。しかし、ブーリアン変数が良いアドバンテージを与えてくれることは確かです。 Andrey F. Zelinsky 2011.09.11 07:48 #1687 MaxZ:スペルバウンド価格はヒストリカルバーの内側よりも外側にあることが多いというロジックです。INS=「中」。追伸:コードの正しさを紙に書いて確認しました。コード速度の確認はしていない。でも、ブーリアン変数が良いアドバンテージになるのは確かです。 そうですね。3行の明確なコードを理解しにくいコードに変えるなんて、よほどひねくれているのでしょう。iLow, iHighのチェックを 分割するアイデアがあれば、すぐにでも分割できたはずです。 if(LOWprice> bid)if(iHigh(NULL,60,i)>LOWprice)if( LOWprice>iLow(NULL,60,i))CountH++; if(LOWprice<=bid)if(iHigh(NULL,60,i)>LOWprice)if( LOWprice>iLow(NULL,60,i))CountL++; そして、何もいじってはいけない Всеволод 2011.09.11 08:13 #1688 int HourPrices[20000]; for(int i=1; i<=6000; i++) for (double cPrice=iLow(NULL,60,i);cprice<=iHigh(NULL,60,i);cPrice+=Point) HourPrices[cPrice/Point]+=1; このような配列から抵抗値を見つけるのは問題ない。新しいバーの 追加と古いバーの削除を同時に行うことができます。そして、そこから情報を取り出すのは、1つの条件で2サイクル、もしくはArrayMaximumが一度に必要な値を出すことになる。 Maxim Zaguzov 2011.09.11 08:30 #1689 abolk: そうですね。 3行の明確なコードを、理解しにくいコードに変えてしまうほど、ひねくれなければならないのです。 iLow、iHighのチェックを分けるという発想があれば、すぐにでも分けられたはずです。 で、何もいじらないこと上で提案したものと似たようなバリエーション(ifの区切り)。 そして、あなたは私の考えを理解しようともしなかった(論理を簡単に説明したが)...。価格が高いときは、2回ではなく1回でチェックを行います。価格が安い場合も同様です。そして、価格がヒストリカルバーの範囲内にあるとき(これはかなりまれなことですが、これがロジックでありアイデアです!)、2つのチェックを行います(これ以外に方法はありません)。 チェックは店内ではなく、バーの外での価格です。さっき、彼らは干し草の中の針を探したが、私は、他の針が見えなければ、それも探さない......」。針は必要なときに姿を現す!:))) Всеволод 2011.09.11 08:48 #1690 MaxZ: 上で提案したのと似たような変形(ifが別々)。 そして、あなたは私の考えを理解しようともしなかった(論理を簡単に説明したが)...。価格が高いときは、2回のチェックではなく、1回のチェックにします。価格が安い場合も同様です。そして、価格がヒストリカルバーの範囲内にあるとき(これはかなりまれなことですが、これがロジックでありアイデアです!)、2つのチェックを行います(これ以外に方法はありません)。 if (LOWprice > iHigh(NULL,60,i)) continue; if (UPPprice < iLow (NULL,60,i)) continue; あなたのバージョンは、著者のバージョンにこの2行を追加するだけで済みますし、いくつかの条件を修正すれば、原理的にかなり速くなるはずです。 1...162163164165166167168169170171172173174175176...652 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
splxgf:
このサイクルを「軽くする」ためにはどうしたらいいのでしょうか?数えるのにとても時間がかかる。
いっそのこと、こんな風に。
また、HighとLowの値の配列を生成するアイデアもある。これで少しはスピードアップするかも?
オーダーが選択されるhttps://docs.mql4.com/ru/trading/OrderSelect- ルーピングまたはチケットによる選択
とすると、Order*()関数は、関連するオーダーパラメータを検索します。
ぶしつけな質問で申し訳ないのですが。
OrderSelect 関数で MODE_HISTORY を選択用のデータソースとして使用する場合、つまり、クローズした注文と削除した注文の中から選択する場合、最後にクローズした注文の番号はどのようにして求めますか。これらの注文は、プログラム上ではどのように番号付けされているのでしょうか?最後から一番目なのか、その逆なのか?
もちろん、くだらない質問で申し訳ないのですが。
OrderSelect 関数の データソースが MODE_HISTORY の場合、つまり、クローズした注文と削除した注文の中から選択する場合、最後にクローズした注文の番号を調べるにはどうしたらよいでしょうか。これらの注文は、プログラム上ではどのように番号付けされているのでしょうか?最後から一番目なのか、その逆なのか?
ネットにはこんな質問がよくある
http://forum.alpari.ru/showthread.php?t=27708
馬鹿な質問で申し訳ないのですが
OrderSelect 関数で MODE_HISTORY を選択用のデータソースとして使用した場合、つまり、クローズした注文や削除された注文の中から注文を選択した場合、最後にクローズした注文の番号を調べるにはどうすればよいですか。これらの注文は、プログラム上ではどのように番号付けされているのでしょうか?最後から一番目なのか、その逆なのか?
閉じたものの最後を見つけるための関数は,閉じた時間が最大のオーダーを見つけるための関数と同様である
これらの質問の多くは、すでにインターネット上で質問されています。
http://forum.alpari.ru/showthread.php?t=27708
О!見つけました、ありがとうございます。
OrderSelect(HistoryTotal()-1,SELECT_BY_POS,MODE_HISTORY);
そうなんですよね!?
このサイクルを「緩和」するにはどうしたらいいのか。計算にとても時間がかかります。
スペルバウンド
価格はヒストリカルバーの内側よりも外側にあることが多いというロジックです。
INS=インサイド。
リーフレットでコードの正確さを確認しました。コード速度の確認はしていない。しかし、ブーリアン変数が良いアドバンテージを与えてくれることは確かです。
スペルバウンド
価格はヒストリカルバーの内側よりも外側にあることが多いというロジックです。
INS=「中」。
追伸:コードの正しさを紙に書いて確認しました。コード速度の確認はしていない。でも、ブーリアン変数が良いアドバンテージになるのは確かです。
そうですね。
3行の明確なコードを理解しにくいコードに変えるなんて、よほどひねくれているのでしょう。
iLow, iHighのチェックを 分割するアイデアがあれば、すぐにでも分割できたはずです。
そして、何もいじってはいけないこのような配列から抵抗値を見つけるのは問題ない。新しいバーの 追加と古いバーの削除を同時に行うことができます。そして、そこから情報を取り出すのは、1つの条件で2サイクル、もしくはArrayMaximumが一度に必要な値を出すことになる。
そうですね。
3行の明確なコードを、理解しにくいコードに変えてしまうほど、ひねくれなければならないのです。
iLow、iHighのチェックを分けるという発想があれば、すぐにでも分けられたはずです。
で、何もいじらないこと上で提案したものと似たようなバリエーション(ifの区切り)。
そして、あなたは私の考えを理解しようともしなかった(論理を簡単に説明したが)...。価格が高いときは、2回ではなく1回でチェックを行います。価格が安い場合も同様です。そして、価格がヒストリカルバーの範囲内にあるとき(これはかなりまれなことですが、これがロジックでありアイデアです!)、2つのチェックを行います(これ以外に方法はありません)。
チェックは店内ではなく、バーの外での価格です。さっき、彼らは干し草の中の針を探したが、私は、他の針が見えなければ、それも探さない......」。針は必要なときに姿を現す!:)))
上で提案したのと似たような変形(ifが別々)。
そして、あなたは私の考えを理解しようともしなかった(論理を簡単に説明したが)...。価格が高いときは、2回のチェックではなく、1回のチェックにします。価格が安い場合も同様です。そして、価格がヒストリカルバーの範囲内にあるとき(これはかなりまれなことですが、これがロジックでありアイデアです!)、2つのチェックを行います(これ以外に方法はありません)。