절반 부지를 폐쇄합니다. - 페이지 5

 
DomGilberto :

보류 중인 주문 "OP_BUYSTOP"을 넣었지만 "OP_BUY"로 트리거되면 이것이 변경될 것이라는 인상을 받았습니다.

주문 유형이 트리거된 경우 "OP_BUY"가 될 것이라고 생각했습니까?

결국, 나는 주문이 실행된 후에만 관심이 있습니까?

왜 그 중괄호가 혼란스럽습니까? 왼쪽 괄호가 어디에 있는지를 의미합니까? 그렇다면 이 부분에 대해 여러 번 수정을 해서 개인차가 있는 것 같은데요?

중괄호는 필요하지 않으므로 중괄호가 있다는 사실은 다른 사람이 귀하의 코드(나)를 읽으려고 하는 데 혼동을 줄 수 있습니다.


BUYSTOP만 있는 경우 코드는 OP_BUY가 아니기 때문에 아무 작업도 수행하지 않습니다. . .

돔길베르토 :
흠, 여전히 @ "Close_Half_Order"를 닫고 싶지 않습니까? 오류 메시지도 표시되지 않습니까?

그래서 이것은 주문이 아직 보류 중인 동안 의미가 있습니다. . .

주문에 올바른 매직 번호가 있습니까?

 
2013.07 . 31 17 : 45 : 46      2013.02 . 01 15 : 00   trendfishing_play_ground EURUSD,H1: Close_Half_Order Last Error = 4108
2013.07 . 31 17 : 45 : 46      2013.02 . 01 15 : 00   trendfishing_play_ground EURUSD,H1: OrderClose error 4108
2013.07 . 31 17 : 45 : 46      2013.02 . 01 15 : 00   trendfishing_play_ground EURUSD,H1: pending order # 9 cannot be closed
2013.07 . 31 17 : 45 : 46      2013.02 . 01 15 : 00   trendfishing_play_ground EURUSD,H1: Order Lots Open = 0.18
2013.07 . 31 17 : 45 : 46      2013.02 . 01 15 : 00   trendfishing_play_ground EURUSD,H1: Order Ticker Number = 9
2013.07 . 31 17 : 45 : 46      2013.02 . 01 15 : 00   trendfishing_play_ground EURUSD,H1: The Lots to close is: 0.09000
2013.07 . 31 17 : 45 : 46      2013.02 . 01 15 : 00   trendfishing_play_ground EURUSD,H1: The Lotstep is: 0.01000
2013.07 . 31 17 : 45 : 46      2013.02 . 01 15 : 00   trendfishing_play_ground EURUSD,H1: The minimum lots are: 0.01000
2013.07 . 31 17 : 45 : 46      2013.02 . 01 15 : 00   trendfishing_play_ground EURUSD,H1: FirstTarget_Buy: 1.37931
" if (OrderType()==OP_BUY)" 줄을 제거 했습니다 . - 이것은 테스트 후 저널 내의 새로운 인쇄물입니까? 유효하지 않은 티켓... (이것에 대해 101개의 질문을 해서 죄송합니다!)
 
DomGilberto :
" if (OrderType()==OP_BUY)" 줄을 제거했습니다. - 이것은 테스트 후 저널 내의 새로운 인쇄물입니까? 유효하지 않은 티켓... (이것에 대해 101개의 질문을 해서 죄송합니다!)

랩터영국 :

보류 중인 주문을 마감하지 않았습니다. 오류 보고에서 무엇을 알 수 있었습니까?

 2013.07 . 31 17 : 45 : 46      2013.02 . 01 15 : 00   trendfishing_play_ground EURUSD,H1: pending order # 9 cannot be closed

보류 중인 주문 을 닫을 수 없으며 삭제됩니다.

 
하지만 보류 중인 주문 을 닫으려고 하지 않습니까? 보류 중이 아닌 "OP_BUY"에 대한 로트의 절반을 마감하려고 합니다...? 나는 분명히 여기에 뭔가를 놓치고 있습니다 ...
 
DomGilberto :
하지만 보류 중인 주문을 마감하려고 하지 않습니까? 보류 중이 아닌 "OP_BUY"에 대한 로트의 절반을 마감하려고 합니다...? 나는 분명히 여기에 뭔가를 놓치고 있습니다 ...
돔길베르토 :

보류 중인 주문 "OP_BUYSTOP"을 넣었지만 "OP_BUY"로 트리거되면 이것이 변경될 것이라는 인상을 받았습니다.

OP_BUYSTOP이 있으면 코드가 아무 작업도 수행하지 않습니다. OP_BUYSTOP이 트리거되면 OP_BUY로 바뀌고 코드는 위치 크기의 절반을 닫아야 합니다. . . 올바른 기호와 매직 넘버만 있으면 됩니까? 그렇지 않으면 코드가 보류 중인 주문 을 닫으려 하지 않았을 것입니다. . . OpenOrdersThisPair( Symbol ()) == 1 은 어떻습니까?
 
코드에서 " OpenOrdersThisPair( Symbol ()) == 1" 을 제거 하면 저널 내에서 메시지가 정확히 동일합니다 ... 당황 스럽습니다 ...?
 
DomGilberto :
코드에서 " OpenOrdersThisPair( Symbol ()) == 1" 을 제거하면 저널 내에서 메시지가 정확히 동일합니다 ... 당황 스럽습니다 ...?

Print() 문을 더 추가할 시간입니다. 아직 확인하지 않은 모든 항목을 확인하세요. . . 당신은 이유를 모르기 때문에 당황할 뿐입니다. 이유를 찾으면 더 이상 당황하지 않을 것입니다.

이유를 찾았고 더 이상 Journal/Experts 탭에 인쇄하고 싶지 않은 모든 Print() 문이 있으면 이를 켜고 끄는 좋은 방법을 허용하는 다음을 살펴보십시오. https://www .mql5.com/en/forum/135168/page2

 

아, 그건 그렇고, 당신은 이것을 할 수 없습니다. . .

 bool Close_Half_Order = OrderClose(OrderTicket(), half, FirstTarget_Buy, 3 , CLR_NONE );

. . . FirstTarget_Buy가 == Bid에 발생하지 않는 한 Bid를 사용하지 않을 가능성을 제거 합니다. 매수는 매도로 마감되고 매도는 입찰가에서 실행됩니다.

 
좋아, 그래서 내가 거기에 "입찰"을 넣으면 제비는 현재 청산되고 있지만 정확한 가격은 아니며 한 포지션에서 여러 반쪽을 청산하는 것처럼 보입니다. (100% 목표 가격 영역의 상위 2/3에 더 가깝습니다... 종가가 모두 같은 가격은 아닙니다...)

" FirstTarget_Buy"에서 포지션을 청산하려면 어떻게 해야 합니까?
 
DomGilberto :
좋아, 그래서 내가 거기에 "입찰"을 넣으면 제비는 현재 청산되고 있지만 정확한 가격은 아니며 한 포지션에서 여러 반쪽을 청산하는 것처럼 보입니다. (100% 목표 가격 영역의 상위 2/3에 더 가깝습니다... 종가가 모두 같은 가격은 아닙니다...)

" FirstTarget_Buy"에서 포지션을 청산하려면 어떻게 해야 합니까?

Bid and Ask (Buy and Sell) 이외의 다른 가격으로 OrderClose() 할 수 없습니다. . . 그것은 간단합니다, 당신은 할 수 없습니다.

당신이 할 수 있는 일:

각각 절반의 포지션에 대해 두 번의 거래를 열고 각각 다른 TP를 제공합니다.

또는

Bid/Ask 가격을 모니터링하고 " FirstTarget_Buy" 에 도달하거나 통과하면 Bid/Ask에서 거래의 절반을 닫습니다.