orderopenprice가 열린 후 가장 높은 값을 얻으려면 어떻게 해야 합니까? - 페이지 2 123456 새 코멘트 Simon Gniadkowski 2011.09.18 10:07 #11 코딩 학습을 시작하고 스레드 충돌을 중지하십시오. [삭제] 2011.09.18 16:35 #12 나는 약간의 도움이 필요합니다. 그러면 모든 것이 괜찮을 것입니다. 많은 감사드립니다. int LastOpenTicketForBuy(){ datetime lastTime = 0 ; int lastTicket = - 1 ; // None open. int magi.number= 0 ; //for(int pos=0; pos<OrdersTotal(); i++) { OrderSelect(pos, SELECT_BY_POS); for ( int pos = OrdersTotal ()- 1 ; pos >= 0 ; pos--) if ( OrderSelect (pos, SELECT_BY_POS) // Only my orders w/ && OrderMagicNumber () == magic.number // my magic number && OrderSymbol () == Symbol () // and my pair. && OrderOpenTime () > lastTime && OrderType ()==OP_BUY ){ lastTime = OrderOpenTime (); lastTicket = OrderTicket (); } return (lastTicket); } int LastOpenTicketForSell(){ datetime lastTime = 0 ; int lastTicket = - 1 ; // None open. int magi.number= 0 ; for ( int pos = OrdersTotal ()- 1 ; pos >= 0 ; pos--) if ( OrderSelect (pos, SELECT_BY_POS) // Only my orders w/ && OrderMagicNumber () == magic.number // my magic number && OrderSymbol () == Symbol () // and my pair. && OrderOpenTime () > lastTime && OrderType ()==OP_SELL ){ lastTime = OrderOpenTime (); lastTicket = OrderTicket (); } return (lastTicket); } int previousorderforbuy(){ datetime lastTime = 0 ; int lastTicket = - 1 ; // None open. int magi.number= 0 ; for ( int pos--; pos >= 0 ; pos--) if ( OrderSelect (pos, SELECT_BY_POS) // Only my orders w/ && OrderMagicNumber () == magic.number // my magic number && OrderSymbol () == Symbol () // and my pair. && OrderOpenTime () > lastTime && OrderType ()==OP_BUY ){ lastTime = OrderOpenTime (); lastTicket = OrderTicket (); } return (lastTicket); } int previousorderforsell(){ datetime lastTime = 0 ; int lastTicket = - 1 ; // None open. int magi.number= 0 ; for ( int pos--; pos >= 0 ; pos--) if ( OrderSelect (pos, SELECT_BY_POS) // Only my orders w/ && OrderMagicNumber () == magic.number // my magic number && OrderSymbol () == Symbol () // and my pair. && OrderOpenTime () > lastTime && OrderType ()==OP_SELL ){ lastTime = OrderOpenTime (); lastTicket = OrderTicket (); } return (lastTicket); } [삭제] 2011.09.20 14:40 #13 얘들아, 보고 무엇이 잘못되었는지 말해 주시겠습니까? 다음을 위한 몇 가지 기능을 만들어야 합니다. 1- 구매에 대한 마지막 주문 시가 를 가져오고 유지하는 기능 . 2- 판매를 위한 마지막 주문 공개 가격을 가져오고 유지하는 기능 . 3- 구매 또는 판매에 관계없이 마지막 마감 주문 을 가져오고 유지하는 기능 int LastOpenTicketForBuy(){ datetime lastTime = 0 ; int lastTicket = - 1 ; // None open. int magi.number= 0 ; for ( int pos = OrdersTotal ()- 1 ; pos >= 0 ; pos--) if ( OrderSelect (pos, SELECT_BY_POS) // Only my orders w/ && OrderMagicNumber () == magic.number // my magic number && OrderSymbol () == Symbol () // and my pair. && OrderType ()==OP_BUY ) { lastTime = OrderOpenTime (); lastTicket = OrderTicket (); } return (lastTicket);} int LastOpenTicketForSell() { datetime lastTime = 0 ; int lastTicket = - 1 ; // None open. int magi.number= 0 ; for ( int pos = OrdersTotal ()- 1 ; pos >= 0 ; pos--) if ( OrderSelect (pos, SELECT_BY_POS) // Only my orders w/ && OrderMagicNumber () == magic.number // my magic number && OrderSymbol () == Symbol () // and my pair. && OrderType ()==OP_SELL ) { lastTime = OrderOpenTime (); lastTicket = OrderTicket (); } return (lastTicket);} int lastcloseorder() { datetime lastTime = 0 ; int lastTicket = - 1 ; // None open. int magi.number= 0 ; for ( int pos = OrdersTotal ()- 1 ; pos >= 0 ; pos--) if ( OrderSelect (pos, SELECT_BY_POS) // Only my orders w/ && OrderMagicNumber () == magic.number // my magic number && OrderSymbol () == Symbol () // and my pair. && OrderCloseTime () > lastTime && OrderType ()==OP_BUY||OP_SELL ) { lastTime = OrderCloseTime (); lastTicket = OrderTicket (); } return (lastTicket);} 그런 다음 ((LastOpenTicketForBuy()+LastOpenTicketForSell())/2)<MarketInfo("EURUSD",MODE_BID)포지션 닫기 Simon Gniadkowski 2011.09.20 14:51 #14 당신의 의견으로는. . 무엇을 반환 합니까 (lastTicket); 하다 ? [삭제] 2011.09.20 18:07 #15 내가 해야 한다는 말인가요? 1- int 대신 두 배의 LastOpenForBuy()를 넣습니다. 2-put double orderforbuy 다음 return( orderforbuy ) 이런 식으로 나는 마지막 주문을 구매 전용으로 열 수 있습니다. double LastOpenForBuy(){ datetime lastTime = 0 ; int lastTicket = - 1 ; // None open. int magi.number= 0 ; double orderforbuy; for ( int pos = OrdersTotal ()- 1 ; pos >= 0 ; pos--) if ( OrderSelect (pos, SELECT_BY_POS) // Only my orders w/ && OrderMagicNumber () == magic.number // my magic number && OrderSymbol () == Symbol () // and my pair. && OrderType ()==OP_BUY ) { orderforbuy = OrderOpenprice (); lastTicket = OrderTicket (); } return (orderforbuy);} Simon Gniadkowski 2011.09.20 18:18 #16 Hand : 내가 해야 한다는 말인가요? 질문입니다. . . 나는 다른 것을 의미하지 않습니다. . . 당신의 대답은 무엇인가 ? 제가 도움이 되었으면 제 질문에 답해야 합니다. . . 그리고 "모른다"는 대답은 받아들일 수 없다. 조금 생각해보세요. [삭제] 2011.09.21 02:32 #17 당신의 의견으로는. . return(lastTicket) 은 무엇을 합니까? 하다 ? 현재 선택한 주문 에 대한 티켓 번호를 반환합니다. blackmore 2011.09.21 02:59 #18 Hand : WHRoeder님, 감사합니다. 당신의 진정한 도움을 위해. 구매에 대한 마지막 주문과 판매에 대한 마지막 주문을 가져와야 하는 경우 다음을 수행하여 비교합니다. if ( 마지막 주문openforbuy == OOTlastest ) { 뭔가 해 } 또 다른 { } ....... 아래 코드가 작동합니다. 이게 정말 효과가 있나요??? 첫 번째 루프 for ( int pos = OrdersTotal ()- 1 ; pos >= 0 ; pos--) if ( 두 번째로 간다 for (pos--; pos >= 0 ; pos--) if ( pos 0까지 감소합니다. 두 번째 루프가 종료됩니다 --> 첫 번째 루프로 다시 점프하고 첫 번째 루프는 마지막 시간 이후 pos가 어디에 남아 있는지 알지 못합니다. 가능성은 pos = 0입니다. blackmore 2011.09.21 03:15 #19 이 코드는 아마도 작동할 수 있습니다... 한 가지만 변경하면 됩니다. 두 번째 for 문 for (pos--; pos >= 0 ; pos--) if ( 다음과 같은 다른 반복자에게 for ( int a=pos--; a>= 0 ; a--) if ( // abort the use of pos again and introduce a new iterator, a 마찬가지로 모든 두 번째 루프 논리에서만 pos를 새 반복자(이 경우 a)로 바꿉니다. Simon Gniadkowski 2011.09.21 07:46 #20 Hand : 당신의 의견으로는. . return(lastTicket) 은 무엇을 합니까? 하다 ? 현재 선택한 주문에 대한 티켓 번호를 반환합니다. 당신은 말했다. . . "다음에 대한 몇 가지 기능을 만들어야 합니다. 1- 구매에 대한 마지막 주문 시가 를 가져오고 유지하는 기능 . 2- 판매를 위한 마지막 주문 공개 가격을 가져오고 유지하는 기능 . 3- 매수 또는 매도에 관계없이 마지막 마감 주문 을 가져오고 유지하는 기능 " 왜 티켓 번호를 반환합니까? 복사하여 붙여넣는 코드를 읽고 이해하고 배우십시오. . . 123456 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
나는 약간의 도움이 필요합니다. 그러면 모든 것이 괜찮을 것입니다.
많은 감사드립니다.
얘들아,
보고 무엇이 잘못되었는지 말해 주시겠습니까?
다음을 위한 몇 가지 기능을 만들어야 합니다.
1- 구매에 대한 마지막 주문 시가 를 가져오고 유지하는 기능 .
2- 판매를 위한 마지막 주문 공개 가격을 가져오고 유지하는 기능 .
3- 구매 또는 판매에 관계없이 마지막 마감 주문 을 가져오고 유지하는 기능
그런 다음 ((LastOpenTicketForBuy()+LastOpenTicketForSell())/2)<MarketInfo("EURUSD",MODE_BID)포지션 닫기
내가 해야 한다는 말인가요?
1- int 대신 두 배의 LastOpenForBuy()를 넣습니다.
2-put double orderforbuy 다음 return( orderforbuy )
이런 식으로 나는 마지막 주문을 구매 전용으로 열 수 있습니다.
내가 해야 한다는 말인가요?
질문입니다. . . 나는 다른 것을 의미하지 않습니다. . . 당신의 대답은 무엇인가 ?
제가 도움이 되었으면 제 질문에 답해야 합니다. . . 그리고 "모른다"는 대답은 받아들일 수 없다. 조금 생각해보세요.
당신의 의견으로는. . return(lastTicket) 은 무엇을 합니까? 하다 ?
현재 선택한 주문 에 대한 티켓 번호를 반환합니다.
WHRoeder님, 감사합니다.
당신의 진정한 도움을 위해. 구매에 대한 마지막 주문과 판매에 대한 마지막 주문을 가져와야 하는 경우 다음을 수행하여 비교합니다.
if ( 마지막 주문openforbuy == OOTlastest )
{ 뭔가 해 }
또 다른
{ } ....... 아래 코드가 작동합니다.
이게 정말 효과가 있나요???
첫 번째 루프
두 번째로 간다
pos 0까지 감소합니다. 두 번째 루프가 종료됩니다 --> 첫 번째 루프로 다시 점프하고 첫 번째 루프는 마지막 시간 이후 pos가 어디에 남아 있는지 알지 못합니다. 가능성은 pos = 0입니다.
이 코드는 아마도 작동할 수 있습니다... 한 가지만 변경하면 됩니다.
두 번째 for 문
다음과 같은 다른 반복자에게
마찬가지로 모든 두 번째 루프 논리에서만 pos를 새 반복자(이 경우 a)로 바꿉니다.
당신의 의견으로는. . return(lastTicket) 은 무엇을 합니까? 하다 ?
현재 선택한 주문에 대한 티켓 번호를 반환합니다.
당신은 말했다. . .
"다음에 대한 몇 가지 기능을 만들어야 합니다.1- 구매에 대한 마지막 주문 시가 를 가져오고 유지하는 기능 .
2- 판매를 위한 마지막 주문 공개 가격을 가져오고 유지하는 기능 .
3- 매수 또는 매도에 관계없이 마지막 마감 주문 을 가져오고 유지하는 기능 "
왜 티켓 번호를 반환합니까? 복사하여 붙여넣는 코드를 읽고 이해하고 배우십시오. . .