MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 1776 1...176917701771177217731774177517761777177817791780178117821783...1953 新しいコメント законопослушный гражданин 2021.11.30 15:08 #17751 MakarFX #:開いているものがなければ、2つ同時に開けるという条件付きです。それは何ですか? double GetLotSize() { double Ls=0; for(int pos=OrdersTotal()-1;pos>=0;pos--) { if(OrderSelect(pos, SELECT_BY_POS, MODE_TRADES)) { if(OrderSymbol()==_Symbol && OrderMagicNumber()==Magic) { if(OrderType()==OP_BUY || OrderType()==OP_SELL) {Ls=OrderLots();} } } } return Ls; } このことは、現在のロットをカウントしています。 このパラメータは、設定:LotControlで設定します。 それぞれ、GetLotSize()>LotControl - bSignalBuy()シグナルでvOrderOpenSell()をオープンする必要があります。 はい、両方の注文が条件によって開かれていることは知っています。最初はそのように書いていたのですが、vOrderOpenBuy()を開かないようにするにはどうしたらよいのでしょうか? законопослушный гражданин 2021.11.30 15:11 #17752 Mihail Matkovskij #:ロボットが既に一方向にエントリーしている場合、同じ方向に再度エントリーすることはありません。応募のアルゴリズムはこうなっているのでしょうか?この条件を満たした場合、トリガー後また、売りシグナルが出たときにもでは、逆にエントリーする理由は、条件が発動されるため はい、それが必要なんです。ただし、この条件では、フォワードエントリーを停止/除外する必要があります。 GetLotSize()>LotControl Tretyakov Rostyslav 2021.11.30 15:16 #17753 Kedrov #:マカーさん、いじってくれてありがとうございます。以下はスクリーンショットです。 そうだ、お前は散らかしたんだ) 次に、それぞれのフォルダーで、1つずつ、Expertsを_Expertsに、Indicatorsを_Indicatorsに フォルダー名を変更します。 あるフォルダーでリネーム→ターミナルを起動→それでもダメならリネームし直して次のフォルダーへ。 P.S. 初回起動時は、通常よりも端末の起動に少し時間がかかります。 Tretyakov Rostyslav 2021.11.30 15:19 #17754 законопослушный гражданин #:これは現在の敷地面積をカウントするものですこのパラメータは、設定:LotControlで設定されます。それぞれ、GetLotSize()>LotControlの場合 - vOrderOpenSell()がシグナルbSignalBuy()と同時に起こるようにする必要があります。はい、両方の注文が条件によって開かれていることは知っています。最初はそのように書いていたのですが、vOrderOpenBuy()を開かないようにするにはどうしたらよいのでしょうか? if((bSignalBuy() == true)&&(GetLotSize()>LotControl)) vOrderOpenSell(); else if(bSignalBuy() == true) vOrderOpenBuy(); Tretyakov Rostyslav 2021.11.30 15:29 #17755 законопослушный гражданин #:はい、それが必要なんです。ただし、この条件では前方への進入を停止/排除する必要があります。 この状態に困惑している // Если нет открытых ордеров, то входим в условие if(CountOrders()==0) { この状態で GetLotSize()=0 законопослушный гражданин 2021.11.30 15:31 #17756 MakarFX #: ありがとうございます。 修正しました。 考えておきます。 законопослушный гражданин 2021.11.30 15:44 #17757 MakarFX #:この状態に困惑しているその条件付きで。 その通りだと思います。 そうですね。 if((bSignalBuy() == true)&&(GetLotSize()>LotControl)) vOrderOpenSell(); else if(bSignalBuy() == true) vOrderOpenBuy(); は、条件(GetLotSize()>LotControl)には全く反応しません。 Tretyakov Rostyslav 2021.11.30 15:53 #17758 законопослушный гражданин #:その通りだと思います。そうですね。は、条件(GetLotSize()>LotControl)には全く反応しません。GetLotSize()は最後に閉じたものから取得する必要があり、その場合は // Если нет открытых ордеров, то входим в условие if(CountOrders()==0) {(GetLotSize()>LotControl)が動作します。 законопослушный гражданин 2021.11.30 15:55 #17759 MakarFX #:GetLotSize()は最後に閉じたものから取得する必要があり、次に (GetLotSize()>LotControl)が動作します。 ありがとうございました。 Mihail Matkovskij 2021.11.30 16:28 #17760 законопослушный гражданин #:はい、それが必要なんです。しかし、その際、この条件によってフォワード入力を停止/除外する必要があります。 if (bSignalBuy()) { if (GetLotSize() > LotControl) vOrderOpenSell(); else vOrderOpenBuy(); } double GetLotSize() { double Ls=0; datetime last = 0, openTime; for (int pos=OrdersTotal()-1;pos>=0;pos--) { if (OrderSelect(pos, SELECT_BY_POS, MODE_TRADES)) { if (OrderSymbol() == _Symbol && OrderMagicNumber() == Magic) { if(OrderType() == OP_BUY || OrderType() == OP_SELL) { if ((openTime = OrderOpenTime()) > last) { last = openTime; Ls = OrderLots(); } } } } } return Ls; } 1...176917701771177217731774177517761777177817791780178117821783...1953 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
開いているものがなければ、2つ同時に開けるという条件付きです。
それは何ですか?
このことは、現在のロットをカウントしています。
このパラメータは、設定:LotControlで設定します。
それぞれ、GetLotSize()>LotControl - bSignalBuy()シグナルでvOrderOpenSell()をオープンする必要があります。
はい、両方の注文が条件によって開かれていることは知っています。最初はそのように書いていたのですが、vOrderOpenBuy()を開かないようにするにはどうしたらよいのでしょうか?
ロボットが既に一方向にエントリーしている場合、同じ方向に再度エントリーすることはありません。応募のアルゴリズムはこうなっているのでしょうか?
この条件を満たした場合、トリガー
後
また、売りシグナルが出たときにも
では、逆にエントリーする理由は、条件が発動されるため
はい、それが必要なんです。ただし、この条件では、フォワードエントリーを停止/除外する必要があります。
マカーさん、いじってくれてありがとうございます。
以下はスクリーンショットです。
そうだ、お前は散らかしたんだ)
次に、それぞれのフォルダーで、1つずつ、Expertsを_Expertsに、Indicatorsを_Indicatorsに フォルダー名を変更します。
あるフォルダーでリネーム→ターミナルを起動→それでもダメならリネームし直して次のフォルダーへ。
P.S. 初回起動時は、通常よりも端末の起動に少し時間がかかります。
これは現在の敷地面積をカウントするものです
このパラメータは、設定:LotControlで設定されます。
それぞれ、GetLotSize()>LotControlの場合 - vOrderOpenSell()がシグナルbSignalBuy()と同時に起こるようにする必要があります。
はい、両方の注文が条件によって開かれていることは知っています。最初はそのように書いていたのですが、vOrderOpenBuy()を開かないようにするにはどうしたらよいのでしょうか?
はい、それが必要なんです。ただし、この条件では前方への進入を停止/排除する必要があります。
この状態に困惑している
この状態で
ありがとうございます。 修正しました。 考えておきます。
この状態に困惑している
その条件付きで。
その通りだと思います。
そうですね。
は、条件(GetLotSize()>LotControl)には全く反応しません。
その通りだと思います。
そうですね。
は、条件(GetLotSize()>LotControl)には全く反応しません。
GetLotSize()は最後に閉じたものから取得する必要があり、その場合は
(GetLotSize()>LotControl)が動作します。GetLotSize()は最後に閉じたものから取得する必要があり、次に
(GetLotSize()>LotControl)が動作します。ありがとうございました。
はい、それが必要なんです。しかし、その際、この条件によってフォワード入力を停止/除外する必要があります。