order_idとは何ですか? - ページ 3 1234 新しいコメント Simon Gniadkowski 2012.10.31 10:46 #21 なぜDIPlus1の値を8回も出力しているのですか? この行を......一度だけ使ってください。Print("DIPlus1: ", DoubleToStr(DIPlus1, Digits), " DIMinus1: ", DoubleToStr(DIMinus1, Digits), " Main0: ",DoubleToStr(Main0, Digits), " Rsi: ",DoubleToStr(Rsi, Digits) ); Simon Gniadkowski 2012.10.31 10:58 #22 自分も他人もフォローしやすいようにインデントをはっきりさせる必要がある ... ....for(PositionIndex = TotalNumberOfOrders - 1; PositionIndex >= 0 ; PositionIndex --) { if( OrderSelect(PositionIndex, SELECT_BY_POS, MODE_TRADES) ) continue; Print("DIPlus1: ", DoubleToStr(DIPlus1, Digits), " DIMinus1: ", DoubleToStr(DIMinus1, Digits), " Main0: ",DoubleToStr(Main0, Digits), " Rsi: ",DoubleToStr(Rsi, Digits) ); if( OrderMagicNumber() == MagicNumber2 && OrderSymbol() == Symbol() && OrderType() == OP_BUY || OrderType() == OP_SELL ) { if( DIPlus1 > DIMinus1 || Main0 < err || Rsi < xx) OrderClose(OrderTicket(),OrderLots(),Bid,3,Green); } if( OrderMagicNumber() == MagicNumber1 && OrderSymbol() == Symbol() && OrderType() == OP_BUY || OrderType() == OP_SELL ) { if( DIPlus1 < DIMinus1 || Main0 < err || Rsi > x ) OrderClose(OrderTicket(),OrderLots(),Ask,3,Green); } if ( ! OrderClose( OrderTicket(), OrderLots(), OrderClosePrice(), 3 ) ) // <------ why this extra OrderClose ??? Print("Order Close failed, order number: ", OrderTicket(), " Error: ", GetLastError() ); } toi10005doi 2012.10.31 11:29 #23 Raptorさん、ありがとうございます。私のEAがうまくいくことを願っています。私の新しいコードです。int start() { int i ,times; string DIPlus1; string DIPlus0; string DIMinus1; string DIMinus0; string Main1; string Main0; string MACD_main; string MACD_signal; string Rsi; string err = 26; string x = 70; string xx = 30; double sl = 300; double tp = 50; int MagicNumber1=1234,MagicNumber2=4321; //---- /*DIPlus1=DoubleToStr( DIPlus1, 4); DIPlus0=DoubleToStr( DIPlus0, 4); DIMinus1=DoubleToStr( DIMinus1, 4); DIMinus0=DoubleToStr( DIMinus0, 4); Main1=DoubleToStr( Main1, 4); Main0=DoubleToStr( Main0, 4); Rsi=DoubleToStr( Rsi, 4); //err=DoubleToStr(err,4); //x=DoubleToStr(x,4); //xx=DoubleToStr(xx,4);*/ //--- DIPlus1=iADX(NULL,0,14,PRICE_CLOSE,MODE_PLUSDI,1); DIPlus0=iADX(NULL,0,14,PRICE_CLOSE,MODE_PLUSDI,0); DIMinus1=iADX(NULL,0,14,PRICE_CLOSE,MODE_MINUSDI,1); DIMinus0=iADX(NULL,0,14,PRICE_CLOSE,MODE_MINUSDI,0); Main1=iADX(NULL,0,14,PRICE_CLOSE,MODE_MAIN,1); Main0=iADX(NULL,0,14,PRICE_CLOSE,MODE_MAIN,0); Rsi = iRSI(NULL,0,14,PRICE_CLOSE,0); times = Minute() % 15 ==0 && Seconds() ==0; //MACD_main = iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,0); //MACD_signal = iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,0); //---- if(Minute() % 15 ==0 && Seconds() ==0) { if( Main0 > err && Main1 < err && DIPlus1 > DIMinus1 && Rsi < x ) OrderSend(Symbol(),OP_BUY,0.03,Ask,5,Ask-sl*Point,Ask+tp*Point,"",1234,0,Blue); if (Main0 > err && Main1 < err && DIPlus1 < DIMinus1 && Rsi > xx) OrderSend(Symbol(),OP_SELL,0.03,Bid,5,Bid+sl*Point ,Bid-tp*Point,"",4321,0,Red); } //--- int PositionIndex; int TotalNumberOfOrders; TotalNumberOfOrders = OrdersTotal(); for(PositionIndex = TotalNumberOfOrders - 1; PositionIndex >= 0 ; PositionIndex --) if( OrderSelect(PositionIndex, SELECT_BY_POS, MODE_TRADES) ) continue; { if( OrderMagicNumber() == MagicNumber2 && OrderSymbol() == Symbol() && OrderType() == OP_BUY || OrderType() == OP_SELL ) Print("DIPlus1: ", DoubleToStr(DIPlus1, Digits), " DIMinus1: ", DoubleToStr(DIMinus1, Digits), " Main0: ",DoubleToStr(Main0, Digits), " Rsi: ",DoubleToStr(Rsi, Digits) ); {if( DIPlus1 > DIMinus1 || Main0 < err || Rsi < xx) OrderClose(OrderTicket(),OrderLots(),Bid,3,Green); else Print("Order Close failed, order number: ", OrderTicket(), " Error: ", GetLastError() ); } if( OrderMagicNumber() == MagicNumber1 && OrderSymbol() == Symbol() && OrderType() == OP_BUY || OrderType() == OP_SELL ) Print("DIPlus1: ", DoubleToStr(DIPlus1, Digits), " DIMinus1: ", DoubleToStr(DIMinus1, Digits), " Main0: ",DoubleToStr(Main0, Digits), " Rsi: ",DoubleToStr(Rsi, Digits) ); { if( DIPlus1 < DIMinus1 || Main0 < err || Rsi > x ) OrderClose(OrderTicket(),OrderLots(),Ask,3,Green); else Print("Order Close failed, order number: ", OrderTicket(), " Error: ", GetLastError() ); } } return(0); } すぐにクローズ! :( Simon Gniadkowski 2012.10.31 11:48 #24 RaptorUK: // <------ why this extra OrderClose ??? ♪ do you have an answer ♪ toi10005doi 2012.10.31 11:52 #25 RaptorUK: あなたは答えを持っていますか? 修正しました。新しいコードをプレビューしてください。ありがとうございました。 Simon Gniadkowski 2012.10.31 12:00 #26 toi10005doi:修正しました。新しいコードをプレビューしてください。ありがとうございます。 私はあなたに使用するコードを与えました ... ... あなたはそれをコピーして貼り付ける必要があります。 あなたのコードはまだ間違っています ... ... もう一度、この本を 読む必要があります。 if( OrderMagicNumber() == MagicNumber1 && OrderSymbol() == Symbol() && OrderType() == OP_BUY || OrderType() == OP_SELL ) // if this is true only the Print is called . . . Print("DIPlus1: ", DoubleToStr(DIPlus1, Digits), " DIMinus1: ", DoubleToStr(DIMinus1, Digits), " Main0: ",DoubleToStr(Main0, Digits), " Rsi: ",DoubleToStr(Rsi, Digits) ); { if( DIPlus1 < DIMinus1 || Main0 < err || Rsi > x ) // this happens regardless of the if above . . . OrderClose(OrderTicket(),OrderLots(),Ask,3,Green); else Print("Order Close failed, order number: ", OrderTicket(), " Error: ", GetLastError() ); // this happens if the if above is false . . . why ?? } toi10005doi 2012.10.31 16:16 #27 RaptorUK: 私はあなたに使用するコードを与えた ... ... あなたがする必要があるすべては、それをコピーして貼り付けることです。 あなたのコードはまだ間違っています ... ... もう一度、本を 読む必要があります。 そうですね!もっと本を読みます。このコードをプレビューしてもらえますか?for(PositionIndex = TotalNumberOfOrders - 1; PositionIndex >= 0 ; PositionIndex --) { if( OrderSelect(PositionIndex, SELECT_BY_POS, MODE_TRADES) ) continue; Print("DIPlus1: ", DoubleToStr(DIPlus1, Digits), " DIMinus1: ", DoubleToStr(DIMinus1, Digits), " Main0: ",DoubleToStr(Main0, Digits), " Rsi: ",DoubleToStr(Rsi, Digits) ); if( OrderMagicNumber() == MagicNumber2 && OrderSymbol() == Symbol() && OrderType() == OP_BUY || OrderType() == OP_SELL ) { if( DIPlus1 > DIMinus1 || Main0 < err || Rsi < xx) { if(! OrderClose(OrderTicket(),OrderLots(),Bid,3,Green)) Print("Order Close failed, order number: ", OrderTicket(), " Error: ", GetLastError() ); } } if( OrderMagicNumber() == MagicNumber1 && OrderSymbol() == Symbol() && OrderType() == OP_BUY || OrderType() == OP_SELL ) { if( DIPlus1 < DIMinus1 || Main0 < err || Rsi > x ) { if(! OrderClose(OrderTicket(),OrderLots(),Ask,3,Green)) Print("Order Close failed, order number: ", OrderTicket(), " Error: ", GetLastError() ); } } } return(0); } なぜそれが順序を閉じないのですか? Simon Gniadkowski 2012.10.31 16:36 #28 toi10005doi:そうですね!もっと本を読みます。このコードをプレビューしてもらえますか?なぜそれは順序を閉じないのですか? Print文の変数にログに出力される情報をコピー&ペーストできますか? toi10005doi 2012.10.31 16:59 #29 RaptorUK: Print文の変数のログに出力された情報をコピー&ペートしてください。 バックテストをしたところです。しかし、それはどの順序も閉じませんでしたか? Simon Gniadkowski 2012.10.31 17:03 #30 toi10005doi:バックテストをしたところです。しかし、それはどのような順序を閉じていない? ジャーナルを見て、印刷された値が何であるかを見つけてください。 ここにもコピー&ペーストしてください ... 印刷文を追加することの要点は、デバッグの理由のためだった ....そのデータを見て、何が問題なのかを解決する必要があります。 1234 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
なぜDIPlus1の値を8回も出力しているのですか?
この行を......一度だけ使ってください。
自分も他人もフォローしやすいようにインデントをはっきりさせる必要がある ... ....
Raptorさん、ありがとうございます。私のEAがうまくいくことを願っています。
私の新しいコードです。
すぐにクローズ! :(
// <------ why this extra OrderClose ???
あなたは答えを持っていますか?
修正しました。
新しいコードをプレビューしてください。ありがとうございました。
修正しました。
新しいコードをプレビューしてください。ありがとうございます。
あなたのコードはまだ間違っています ... ... もう一度、この本を 読む必要があります。
私はあなたに使用するコードを与えた ... ... あなたがする必要があるすべては、それをコピーして貼り付けることです。
あなたのコードはまだ間違っています ... ... もう一度、本を 読む必要があります。
そうですね!もっと本を読みます。このコードをプレビューしてもらえますか?
なぜそれが順序を閉じないのですか?
そうですね!もっと本を読みます。このコードをプレビューしてもらえますか?
なぜそれは順序を閉じないのですか?
Print文の変数のログに出力された情報をコピー&ペートしてください。
バックテストをしたところです。しかし、それはどの順序も閉じませんでしたか?
バックテストをしたところです。しかし、それはどのような順序を閉じていない?