ヘルプEAが取引を終了しない理由 - ページ 5 1234567 新しいコメント Simon Gniadkowski 2012.05.25 12:09 #41 crossy:O.K.同じミスをした修正版を紹介します。Y. Functionは 全く必要ありません ... ... ... ... 取ってしまいましょう。 onewithzachy 2012.05.25 12:13 #42 またやろうねパート2 :( ... for(int cnt = OrdersTotal()-1; cnt >= 0 ; cnt--) { CodeY = false; if ( OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES) ) { // Do the selection and OrderClose() INSIDE HERE ..., please /* CodeY = true; OrderS = OrderSymbol(); OrderT = OrderTicket(); OrderM = OrderMagicNumber(); OrderTyp = OrderType(); OrderL = OrderLots(); */ } //if ( CodeY && OrderS == Pair1 && OrderTyp == OP_BUY && OrderM == MAG &&.... ) // this selection goes up there //CLOSE_Single_P(Pair1,"LONG",OrderT,OrderL); //-----------------------------------------------+ /* void CLOSE_Single_P(string SYMB, string TREN, int TICKET, double LOTT) { double PRC; bool Check = false; for ( int cntt=0; cntt<20000; cntt++ ) { if ( Check ) { Check_Ini(); return; } Check = false; if ( TREN == "LONG" ) PRC = MarketInfo(SYMB,MODE_BID); else if ( TREN == "SHORT" ) PRC = MarketInfo(SYMB,MODE_ASK); Check = OrderClose(TICKET,LOTT,PRC,Slippage,Yellow); // close it up there, and you have to rewrite the parameters } */ Simon Gniadkowski 2012.05.25 12:16 #43 これをやって ... ... ( ここからは繰り返し: https://www.mql5.com/en/forum/139543) if ( CodeY && OrderS == Pair1 && OrderTyp == OP_BUY && OrderM == MAG &&.... ) { Print("Trying to close Order: ", OrderTicket()); // <---- tells you that the if returned true if ( ! OrderClose(OrderTicket(), OrderLots(), OrderClosePrice(), Slippage, Yellow) Print("OrderClose failed, error # ", GetLastError()); // <------- reports the error if the OrderClose failed . . } ......そうすれば、「機能」はまったく必要なくなる。 Yochanan Gerbi 2012.05.25 13:52 #44 onewithzachy: もう一度やり直そうパート2 :( 私は休みを取っているので、日曜の 夜に戻ってくるので、お願いします。 提案されたことを実行し、成功させたいと思います。 お二人ともありがとうございました。 Y. Simon Gniadkowski 2012.05.25 14:24 #45 crossy: 休みを取っているので、日曜の夜には戻ってくるので、よろしくお願いします。 では、休暇をお楽しみください。) onewithzachy 2012.05.25 16:13 #46 crossy: 私は休日を持っているので、私は日曜日の夜に戻ってくるので、あなたのexussを、お願いしたい。 ご提案いただいたことを実行し、成功させたいと思います。 お二人ともありがとうございました。 Y. 楽しい時間を過ごしてください :D 私はこの日曜日にF1モナコを見るために持っている :D Simon Gniadkowski 2012.05.25 19:46 #47 onewithzachy: 楽しい時間をお過ごしください :D 私はこの日曜日にF1モナコを見る予定です :D そして明日はFP3と予選;-) mighty6469 2012.05.26 01:05 #48 crossy: ありがとうonewithzachy。 まず、小さな間違いがあると思います。 for(int cnt = OrdersTotal()-1 ; cnt >= 0; cnt--) 緑色と太字の訂正を追加する必要があります。 しかし、次の行がどのように役立つのか理解できません? #include "..\libraries ╱dlib.mq4" です。 Yさん、ありがとうございます。 私はこのはるかに単純で、私のために動作します。 //---------------------------------------------+ void CheckForClose() { int i, res, order_id; //-------+ for(i=0;i<OrdersTotal();i++) { if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break; if(OrderMagicNumber()!=MAGICMA || OrderSymbol()!=Symbol()) continue; order_id= OrderTicket(); //--トレーリングとクローズ if (OrderType() == OP_BUY) { if (Is_Close_Buy==true) //-- クローズするためのシグナル { RefreshRates();// レート更新 res= 0; res= OrderClose(order_id,Lots,Bid,3,Gold)。 while(IsTradeAllowed() == false) Sleep(100); //--サーバからの応答を得るために少し待つ。 if (res>0){ PlaySound("cash_register.wav");}を実行します。 //--ハッピーな音、うまくいけばお金を稼ぐことができます !!! if (res<0) { PlaySound("creak.wav")。 Print("OrderSend failed with error #",GetLastError()).Print("OrderSend with error #",GetLastError()); return(0); } を返します。 } }//end close 買い注文の確認 //--- if (OrderType() == OP_SELL) { if (Is_Close_Sell==true) //--引けの合図 { RefreshRates();// レート更新 res= 0; res= OrderClose(order_id,Lots,Ask,3,Gold)。 while(IsTradeAllowed() == false) Sleep(100); //--サーバからの応答を得るために少し待つ。 if (res>0){ PlaySound("cash_register.wav");}を実行します。 if(res<0) { PlaySound("creak.wav")。 Print("OrderSend failed with error #",GetLastError()).Print("OrderSend with error #",GetLastError()); return(0); } を返します。 } }//終了 売り注文のチェック }//--------+ を返します。 } //----------------------------------------------+ Help: Why The EA EAが複数のペアで実行されない、助けが必要 MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 onewithzachy 2012.05.26 02:15 #49 RaptorUK: そして明日は、FP3、予選です;-)RaptorUKさん、ヘルメットをかぶれば、今よりもっと先のことを考えられると思うんですけどね。そうですね、ドライバーは先を読むものですからね。 もし、あなたが気にしないのであれば、SRCボタンを使ってコードを投稿していただけませんか?このスレッドだけでも何度もお願いしているのですが、。 crossyさん、最初の投稿からもうすぐ1週間ですね。確かに4000番台になると頭が真っ白になるのはわかります、今は私自身もそうです。それでも理解できない場合は、私たちにクローズコードを書いてもらうこともできます。でも、ちょっとでもいいからコードを書いて、私たちに見せてください :D 上のRaptorUKのコードの方が、私のより直接的です。 あなたの書き方だと、不必要な繰り返しが多すぎて、4000行のコードでは、EAの動作が遅くなったり、EAがティックを逃したりしないか、少し心配になるはずです。数ポイントのミスならまだしも、10ピップスもミスしたらどうなるのでしょう? 4000行のコードは400行に減らせるかもしれません。そして、あなたのEAは、より軽く、より速くなることでしょう。 Simon Gniadkowski 2012.05.26 04:44 #50 skaboy: 私はこの方がシンプルでいいと思いますし、自分にも合っています。 複数の注文をクローズする場合は、この方法は使えません。 ループと注文の取り消し・削除について 1234567 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
O.K.同じミスをした修正版を紹介します。
Y.
Functionは 全く必要ありません ... ... ... ... 取ってしまいましょう。
またやろうねパート2 :(
これをやって ... ... ( ここからは繰り返し: https://www.mql5.com/en/forum/139543)
......そうすれば、「機能」はまったく必要なくなる。
もう一度やり直そうパート2 :(
私は休みを取っているので、日曜の 夜に戻ってくるので、お願いします。
提案されたことを実行し、成功させたいと思います。
お二人ともありがとうございました。
Y.
休みを取っているので、日曜の夜には戻ってくるので、よろしくお願いします。
私は休日を持っているので、私は日曜日の夜に戻ってくるので、あなたのexussを、お願いしたい。
ご提案いただいたことを実行し、成功させたいと思います。
お二人ともありがとうございました。
Y.
楽しい時間を過ごしてください :D
私はこの日曜日にF1モナコを見るために持っている :D
楽しい時間をお過ごしください :D
私はこの日曜日にF1モナコを見る予定です :D
ありがとうonewithzachy。
まず、小さな間違いがあると思います。
for(int cnt = OrdersTotal()-1 ; cnt >= 0; cnt--)
緑色と太字の訂正を追加する必要があります。
しかし、次の行がどのように役立つのか理解できません?
#include "..\libraries ╱dlib.mq4" です。
Yさん、ありがとうございます。
私はこのはるかに単純で、私のために動作します。
//---------------------------------------------+
void CheckForClose()
{
int i, res, order_id;
//-------+
for(i=0;i<OrdersTotal();i++)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break;
if(OrderMagicNumber()!=MAGICMA || OrderSymbol()!=Symbol()) continue;
order_id= OrderTicket();
//--トレーリングとクローズ
if (OrderType() == OP_BUY)
{
if (Is_Close_Buy==true) //-- クローズするためのシグナル
{
RefreshRates();// レート更新
res= 0;
res= OrderClose(order_id,Lots,Bid,3,Gold)。
while(IsTradeAllowed() == false) Sleep(100); //--サーバからの応答を得るために少し待つ。
if (res>0){
PlaySound("cash_register.wav");}を実行します。 //--ハッピーな音、うまくいけばお金を稼ぐことができます !!!
if (res<0)
{
PlaySound("creak.wav")。
Print("OrderSend failed with error #",GetLastError()).Print("OrderSend with error #",GetLastError());
return(0);
}
を返します。
}
}//end close 買い注文の確認
//---
if (OrderType() == OP_SELL)
{
if (Is_Close_Sell==true) //--引けの合図
{
RefreshRates();// レート更新
res= 0;
res= OrderClose(order_id,Lots,Ask,3,Gold)。
while(IsTradeAllowed() == false) Sleep(100); //--サーバからの応答を得るために少し待つ。
if (res>0){
PlaySound("cash_register.wav");}を実行します。
if(res<0)
{
PlaySound("creak.wav")。
Print("OrderSend failed with error #",GetLastError()).Print("OrderSend with error #",GetLastError());
return(0);
}
を返します。
}
}//終了 売り注文のチェック
}//--------+
を返します。
}
//----------------------------------------------+
そして明日は、FP3、予選です;-)
RaptorUKさん、ヘルメットをかぶれば、今よりもっと先のことを考えられると思うんですけどね。そうですね、ドライバーは先を読むものですからね。
もし、あなたが気にしないのであれば、SRCボタンを使ってコードを投稿していただけませんか?このスレッドだけでも何度もお願いしているのですが、。
crossyさん、最初の投稿からもうすぐ1週間ですね。確かに4000番台になると頭が真っ白になるのはわかります、今は私自身もそうです。それでも理解できない場合は、私たちにクローズコードを書いてもらうこともできます。でも、ちょっとでもいいからコードを書いて、私たちに見せてください :D 上のRaptorUKのコードの方が、私のより直接的です。
あなたの書き方だと、不必要な繰り返しが多すぎて、4000行のコードでは、EAの動作が遅くなったり、EAがティックを逃したりしないか、少し心配になるはずです。数ポイントのミスならまだしも、10ピップスもミスしたらどうなるのでしょう? 4000行のコードは400行に減らせるかもしれません。そして、あなたのEAは、より軽く、より速くなることでしょう。
私はこの方がシンプルでいいと思いますし、自分にも合っています。