차트에 주문 유형(판매/구매)을 표시하는 방법은 무엇입니까? - 페이지 3 123 새 코멘트 Simon Gniadkowski 2013.07.31 08:31 #21 pro_ : 그것이 당신을 위해 작동한다면 - 좋습니다. 나는 기쁘다. 그러나 내 견해는 모든 지표가 가능한 한 보편적이어야 하며 특정 상황에만 적합하지 않아야 한다는 것입니다. 한 번만 하면 되지만 제대로 하면 위치를 변경해야 하거나 상황이 바뀌면 올바르게 작동합니다. 어쨌든, 당신은 환영합니다. 작동하지 않습니다. 개체를 만든 다음 다음 틱에서 다시 만들려고 하면 실패합니다. . . 따라서 첫 번째 주문이 매수이고 두 번째 주문이 매도인 경우 텍스트는 매수에서 매도로 업데이트되지 않습니다. Ahmad Mehdiyev 2013.07.31 08:40 #22 앞서 말했듯이 코드에는 많은 오류가 있습니다. 나는 질문자가 스스로 작업하고 코딩을 조금 더 이해하기를 바랐습니다. 그것은 그의 의도가 아닌 것 같습니다. 불행히도 나는 그를 위한 코드를 작성할 시간이 없습니다. 나는 그에게 완성품 이 아니라 일을 시작할 수 있는 무언가를 주었다. [삭제] 2013.07.31 08:50 #23 RaptorUK : 작동하지 않습니다. 개체를 만든 다음 다음 틱에서 다시 만들려고 하면 실패합니다. . . 따라서 첫 번째 주문이 매수이고 두 번째 주문이 매도인 경우 텍스트는 매수에서 매도로 업데이트되지 않습니다. 작동하지만 마지막 주문만 표시합니다. 현재 주문으로 변경하는 방법을 모르겠습니다! Keith Watford 2013.07.31 11:00 #24 좋은 습관인지 아닌지는 모르겠지만 "."로 init() 및 ObjectSetText 에 레이블을 만듭니다. 나는 아직 완전히 빈 텍스트로 레이블을 배치하는 방법을 찾지 못했습니다. 시도하면 "레이블"이라는 텍스트가 나타납니다. 물론 필요한 레이블 수를 알고 있는 한 괜찮습니다. 본문에서 필요에 따라 초과 라벨을 삭제하고 새 라벨을 추가하는 것은 그리 어렵지 않을 것이라고 생각합니다. 이것은 레이블을 생성하기 위해 init()에서 사용하는 코드입니다. int y= 20 ; for ( int x= 1 ;x<= 10 ;x++) { ObjectCreate ( "Message" +x, OBJ_LABEL , 0 , 0 , 0 ); // Creating obj. ObjectSet( "Message" +x, OBJPROP_CORNER , 1 ); // Reference corner ObjectSet( "Message" +x, OBJPROP_XDISTANCE , 10 ); // X coordinate ObjectSet( "Message" +x, OBJPROP_YDISTANCE , y); // Y coordinate ObjectSetText( "Message" +x, "." , 8 , "Arial" , CLR_NONE ); // Empty Labels y=y+ 15 ; Keith Watford 2013.07.31 11:02 #25 오. 그리고 deinit()에서 for ( int x= 1 ;x<= 10 ;x++) { ObjectDelete ( "Message" +x) ; } Simon Gniadkowski 2013.07.31 11:41 #26 Konnj : 작동하지만 마지막 주문만 표시합니다. 현재 주문으로 변경하는 방법을 모르겠습니다! 최신 코드를 게시하십시오. . . [삭제] 2013.07.31 11:50 #27 { int counted_bars=IndicatorCounted(); int pos; string OrderTip = "OT"; string ottt; color LabelColor3; for(int i=0;i<OrdersTotal();i++) { if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break; if(OrderSymbol()==Symbol() ) { if(OrderType()==OP_BUY) pos++; if(OrderType()==OP_SELL) pos++; } } if (OrderType()==OP_BUY) { ottt="Buy"; LabelColor3 = DodgerBlue; } if (OrderType()==OP_SELL){ ottt="Sell"; LabelColor3 = Red; } else ottt=""; ObjectCreate(OrderTip, OBJ_LABEL, 0 , 0, 0, 0); ObjectSet(OrderTip, OBJPROP_CORNER, 1); ObjectSet(OrderTip, OBJPROP_XDISTANCE, 10); ObjectSet(OrderTip, OBJPROP_YDISTANCE, 15); ObjectSetText(OrderTip, "Order Type: "+ottt, 8, "Tahoma",LabelColor3); } Simon Gniadkowski 2013.07.31 12:18 #28 Konnj : 나는 전체 코드를 의미했다. . . 신경 쓰지 마 . . . 이러한 변경을 시도하십시오. { int counted_bars=IndicatorCounted(); int pos; string OrderTip = "OT" ; string ottt = " " ; color LabelColor3 = Black; for ( int i= 0 ;i< OrdersTotal ();i++) { if ( OrderSelect (i,SELECT_BY_POS,MODE_TRADES)== false ) break ; if (OrderSymbol()== Symbol () ) { if (OrderType() == OP_BUY) { ottt = "Buy" ; LabelColor3 = DodgerBlue; } if (OrderType() == OP_SELL){ ottt = "Sell" ; LabelColor3 = Red; } } } if ( ObjectFind (OrderTip) < 0 ) ObjectCreate (OrderTip, OBJ_LABEL , 0 , 0 , 0 , 0 ); ObjectSet(OrderTip, OBJPROP_CORNER , 1 ); ObjectSet(OrderTip, OBJPROP_XDISTANCE , 10 ); ObjectSet(OrderTip, OBJPROP_YDISTANCE , 15 ); ObjectSetText(OrderTip, "Order Type: " +ottt, 8 , "Tahoma" ,LabelColor3); } [삭제] 2013.07.31 12:46 #29 현재 작동 중입니다. 대단히 감사합니다. Keith Watford 2016.04.17 11:00 #30 이 아주 오래된 스레드와 관련이 없는 쿼리는 게시하지 마세요. 귀하의 쿼리를 다시 게시했습니다 https://forum.mql4.com/72256 123 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
그것이 당신을 위해 작동한다면 - 좋습니다. 나는 기쁘다. 그러나 내 견해는 모든 지표가 가능한 한 보편적이어야 하며 특정 상황에만 적합하지 않아야 한다는 것입니다. 한 번만 하면 되지만 제대로 하면 위치를 변경해야 하거나 상황이 바뀌면 올바르게 작동합니다.
어쨌든, 당신은 환영합니다.
작동하지 않습니다. 개체를 만든 다음 다음 틱에서 다시 만들려고 하면 실패합니다. . . 따라서 첫 번째 주문이 매수이고 두 번째 주문이 매도인 경우 텍스트는 매수에서 매도로 업데이트되지 않습니다.
작동하지만 마지막 주문만 표시합니다. 현재 주문으로 변경하는 방법을 모르겠습니다!
좋은 습관인지 아닌지는 모르겠지만 "."로 init() 및 ObjectSetText 에 레이블을 만듭니다.
나는 아직 완전히 빈 텍스트로 레이블을 배치하는 방법을 찾지 못했습니다. 시도하면 "레이블"이라는 텍스트가 나타납니다.
물론 필요한 레이블 수를 알고 있는 한 괜찮습니다.
본문에서 필요에 따라 초과 라벨을 삭제하고 새 라벨을 추가하는 것은 그리 어렵지 않을 것이라고 생각합니다.
이것은 레이블을 생성하기 위해 init()에서 사용하는 코드입니다.
오. 그리고 deinit()에서
작동하지만 마지막 주문만 표시합니다. 현재 주문으로 변경하는 방법을 모르겠습니다!
{ int counted_bars=IndicatorCounted(); int pos; string OrderTip = "OT"; string ottt; color LabelColor3; for(int i=0;i<OrdersTotal();i++) { if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break; if(OrderSymbol()==Symbol() ) { if(OrderType()==OP_BUY) pos++; if(OrderType()==OP_SELL) pos++; } } if (OrderType()==OP_BUY) { ottt="Buy"; LabelColor3 = DodgerBlue; } if (OrderType()==OP_SELL){ ottt="Sell"; LabelColor3 = Red; } else ottt=""; ObjectCreate(OrderTip, OBJ_LABEL, 0 , 0, 0, 0); ObjectSet(OrderTip, OBJPROP_CORNER, 1); ObjectSet(OrderTip, OBJPROP_XDISTANCE, 10); ObjectSet(OrderTip, OBJPROP_YDISTANCE, 15); ObjectSetText(OrderTip, "Order Type: "+ottt, 8, "Tahoma",LabelColor3); }나는 전체 코드를 의미했다. . . 신경 쓰지 마 . . . 이러한 변경을 시도하십시오.
{ int counted_bars=IndicatorCounted(); int pos; string OrderTip = "OT" ; string ottt = " " ; color LabelColor3 = Black; for ( int i= 0 ;i< OrdersTotal ();i++) { if ( OrderSelect (i,SELECT_BY_POS,MODE_TRADES)== false ) break ; if (OrderSymbol()== Symbol () ) { if (OrderType() == OP_BUY) { ottt = "Buy" ; LabelColor3 = DodgerBlue; } if (OrderType() == OP_SELL){ ottt = "Sell" ; LabelColor3 = Red; } } } if ( ObjectFind (OrderTip) < 0 ) ObjectCreate (OrderTip, OBJ_LABEL , 0 , 0 , 0 , 0 ); ObjectSet(OrderTip, OBJPROP_CORNER , 1 ); ObjectSet(OrderTip, OBJPROP_XDISTANCE , 10 ); ObjectSet(OrderTip, OBJPROP_YDISTANCE , 15 ); ObjectSetText(OrderTip, "Order Type: " +ottt, 8 , "Tahoma" ,LabelColor3); }이 아주 오래된 스레드와 관련이 없는 쿼리는 게시하지 마세요.
귀하의 쿼리를 다시 게시했습니다
https://forum.mql4.com/72256