MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 424 1...417418419420421422423424425426427428429430431...1953 新しいコメント Artyom Trishkin 2018.01.18 19:46 #4231 novichok2018: はい、ありがとうございます、ページを読みました。私のMKL4に関する知識は、私のループではポジションがゼロから最後へ、例ではその逆で最後からゼロへということに気づくのに十分だっただけです。どこに区切りを入れればいいのか、まだ わからない。ループをリバースにしたら、ポジションが全く閉じなく なった。ポジションを閉じるときは、ポジションをスキップしないようにループを逆にする必要があります。このループではbreak演算子は不要で、ループの切れ目とその本体からの出口になります。必要なのはcontinue、つまり次のループ反復への移行です。そして、なぜ閉じないのか、そのために何をしたのかは、あなただけが知っているのです。 novichok2018 2018.01.18 20:34 #4232 Artyom Trishkin:ポジションを閉じるときは、ループを逆にしてポジションを飛ばさないようにする必要があります。このループではbreak演算子は不要で、ループの本体から中断して抜けることになります。必要なのはcontinue、つまり次のループ反復への移行です。なぜ閉じられないのか、そのために何をしたのか、それはあなただけが知っています。説明書に忠実に従いました。以下は、修正したコードです。void ClosePoz() { int total=OrdersTotal(); if(total>0) { for(int i=OrdersTotal()-1;i>=0;i--) { if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) {double WPR0 = iWPR(NULL,PERIOD_M5,bars,0); if(OrderType()==OP_BUY && MathAbs(WPR0)>80) OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(MarketInfo(OrderSymbol(),MODE_BID),int(MarketInfo(OrderSymbol(),MODE_DIGITS))),slippage,clrNONE); } continue; } } } これで両方のポジションがクローズされましたが、片方はクローズされず、もう片方を待ちます。ナッツです。もしかしたら、ClosePoz() 関数を間違った場所に挿入してしまったのかもしれないと思いました。その結果、ゼロとなる。と叫んでいるのです。誰も解決できないなんてことはありえない。 2018fff 2018.01.18 20:58 #4233 元の口座(100ドル)を現金化する方法は? Artyom Trishkin 2018.01.18 21:02 #4234 novichok2018: 指示されたとおりにやった。以下は、修正したコードです。これで両方のポジションがクローズされましたが、片方はクローズされず、もう片方を待ちます。こんなのおかしいよ。もしかしたら、ClosePoz() 関数を間違った場所に挿入してしまったのかもしれないと思いました。その結果、ゼロとなる。と叫んでいるのです。誰も解決できないなんてことはありえない。わからない。膝の上に描きました。もちろん、私がチェックすることはできません。あなたの条件では不十分なので、自分でやってください。//+------------------------------------------------------------------+ void ClosePoz(const string symbol_name,const int magic_number,const double wpr_buy,const double wpr_sell) { int total=OrdersTotal(); for(int i=total-1; i>=0; i--) { if(OrderSelect(i,SELECT_BY_POS)) { ENUM_ORDER_TYPE type=OrderType(); if(type>ORDER_TYPE_SELL) continue; if(OrderMagicNumber()!=magic_number) continue; if(OrderSymbol()!=symbol_name) continue; int digits=(int)SymbolInfoInteger(OrderSymbol(),SYMBOL_DIGITS); if(type==ORDER_TYPE_BUY) { double close_price=SymbolInfoDouble(OrderSymbol(),SYMBOL_BID); if(iWPR(NULL,PERIOD_M5,bars,0))>wpr_buy) { ResetLastError(); if(!OrderClose(OrderTicket(),OrderLots(),close_price,slippage,clrNONE); Print(__FUNCTION__" > Позиция Buy #",OrderTicket()," не закрыта. Ошибка: ",GetLastError()); } } else { double close_price=SymbolInfoDouble(OrderSymbol(),SYMBOL_ASK); if(iWPR(NULL,PERIOD_M5,bars,0))<wpr_sell) { ResetLastError(); if(!OrderClose(OrderTicket(),OrderLots(),close_price,slippage,clrNONE); Print(__FUNCTION__" > Позиция Sell #",OrderTicket()," не закрыта. Ошибка: ",GetLastError()); } } } } } //+------------------------------------------------------------------+ そして、チェックする機能内のWPRは、なぜか正常ではありません。WPRはクロージング機能呼び出しの 条件の一つであるべきである。 igrok333 2018.01.19 06:00 #4235 保留中の注文のロット数を変更することはできません。 Alekseu Fedotov 2018.01.19 06:16 #4236 igrok333: 保留中の注文のロット数を変更することはできないと理解しています。必要な容量だけ、追加で開く。 Artyom Trishkin 2018.01.19 06:46 #4237 Alekseu Fedotov: 欲しいボリュームがあるものだけ追加で開く既存のものを削除して、新たに設定する方が簡単かもしれません。結局のところ、必要なボリュームはすでに配置されているものよりも大きくなくてもよいのです。そして、一つの命令に従う方が楽なのです。 iisvlg 2018.01.19 06:49 #4238 Good day 私は質問があります、私はそれを理解する方法を説明します。最も底で蝋燭を買い、最も上で蝋燭を販売する専門家の Advisors のための書かれたアルゴリズムがありますか。 どのようにEAに適応させるか? Konstantin Erin 2018.01.19 07:23 #4239 iisvlg: 一番下に買いキャンドル、一番上に売りキャンドルを置くEAのための書かれたアルゴリズムとEAにそれを適応させる方法はありますか?それは素晴らしいことです! Alekseu Fedotov 2018.01.19 07:32 #4240 iisvlg:Good day 私は質問があります、私はそれを理解する方法を説明します。最も底で蝋燭を買い、最も上で蝋燭を販売する専門家の Advisors のための書かれたアルゴリズムがありますか。 また、それをどのようにEAに適応させるのでしょうか?安値に買いリミット、高値に売りリミットを置く。アルゴリズムについて、ベースを 掘る 1...417418419420421422423424425426427428429430431...1953 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
はい、ありがとうございます、ページを読みました。私のMKL4に関する知識は、私のループではポジションがゼロから最後へ、例ではその逆で最後からゼロへということに気づくのに十分だっただけです。どこに区切りを入れればいいのか、まだ わからない。ループをリバースにしたら、ポジションが全く閉じなく なった。
ポジションを閉じるときは、ポジションをスキップしないようにループを逆にする必要があります。このループではbreak演算子は不要で、ループの切れ目とその本体からの出口になります。必要なのはcontinue、つまり次のループ反復への移行です。
そして、なぜ閉じないのか、そのために何をしたのかは、あなただけが知っているのです。
ポジションを閉じるときは、ループを逆にしてポジションを飛ばさないようにする必要があります。このループではbreak演算子は不要で、ループの本体から中断して抜けることになります。必要なのはcontinue、つまり次のループ反復への移行です。
なぜ閉じられないのか、そのために何をしたのか、それはあなただけが知っています。
説明書に忠実に従いました。以下は、修正したコードです。
これで両方のポジションがクローズされましたが、片方はクローズされず、もう片方を待ちます。ナッツです。もしかしたら、ClosePoz() 関数を間違った場所に挿入してしまったのかもしれないと思いました。その結果、ゼロとなる。と叫んでいるのです。誰も解決できないなんてことはありえない。
元の口座(100ドル)を現金化する方法は?
指示されたとおりにやった。以下は、修正したコードです。
これで両方のポジションがクローズされましたが、片方はクローズされず、もう片方を待ちます。こんなのおかしいよ。もしかしたら、ClosePoz() 関数を間違った場所に挿入してしまったのかもしれないと思いました。その結果、ゼロとなる。と叫んでいるのです。誰も解決できないなんてことはありえない。
わからない。膝の上に描きました。もちろん、私がチェックすることはできません。あなたの条件では不十分なので、自分でやってください。
そして、チェックする機能内のWPRは、なぜか正常ではありません。WPRはクロージング機能呼び出しの 条件の一つであるべきである。保留中の注文のロット数を変更することはできないと理解しています。
必要な容量だけ、追加で開く。
欲しいボリュームがあるものだけ追加で開く
既存のものを削除して、新たに設定する方が簡単かもしれません。結局のところ、必要なボリュームはすでに配置されているものよりも大きくなくてもよいのです。そして、一つの命令に従う方が楽なのです。
Good day 私は質問があります、私はそれを理解する方法を説明します。
最も底で蝋燭を買い、最も上で蝋燭を販売する専門家の Advisors のための書かれたアルゴリズムがありますか。
どのようにEAに適応させるか?それは素晴らしいことです!
Good day 私は質問があります、私はそれを理解する方法を説明します。
最も底で蝋燭を買い、最も上で蝋燭を販売する専門家の Advisors のための書かれたアルゴリズムがありますか。
また、それをどのようにEAに適応させるのでしょうか?安値に買いリミット、高値に売りリミットを置く。
アルゴリズムについて、ベースを 掘る