약간의 오류를 발견하는 데 도움이 필요합니다. - 페이지 3

 

긴 && 및 || 조건 , 나는 많은 연결 if 문으로 부분 을 세분화 했습니다 . 또한 OrderClosePrice() 대신 MarketInfo(OrderSymbol() , MODE_ASK/BID) 를 사용해 보았습니다.

이 부분 은 여전히 가끔 효과 가 있었고 항상 그런 것은 아니 었습니다 . 저도 여러분 모두 가 저에게 준 제안 을 시도해 보았지만 여전히 같은 결과 였습니다 .

이것이 문제의 원인인지 아니면 다른 문제인지 잘 모르겠습니다. 그러나 그 시행착오를 통해 내가 알아차린 것은 이것입니다.

열린 주문의 맨 아래 부분은 조건이 충족되더라도 손절매를 움직이고 싶지 않은 것 같습니다(긴 && 및 || 조건 및 많은 연결 if 문, 저는 둘 다 시도했습니다).

EA 설정:

이전 계정 1:


이후 계정 1:

이 계정 1의 경우 1차 및 2차 주문이 if 조건/if + && 및 ||를 충족하지 않았습니다. 상태이므로 손절매는 움직이지 않습니다(정확함).

그러나 3번째 주문은 이미 조건을 충족했으며 10번째 주문까지 추적해야 하지만 손절매는 한 번만 이동되었습니다. (잘못 잘못 잘못)

그것은 한 번 이상 움직여야 합니다(5.0핍이 아니라 제 계산으로 50.0핍이어야 함).

이전 계정 2:

 

이후 계정 2:

 

이 계정 2의 경우 첫 번째 주문만 조건을 충족하지 않았으므로 다시 손절매가 이동하지 않습니다(정확함). 두 번째 및 세 번째 주문은 조건을 충족했으며 HERE'S THE WEIRD PART .

2차 트레일은 정확히 10차 트레일까지, 스톱로스가 정확히 10번 움직였습니다. 손절매가 해당 개별 주문의 오픈 가격(정확함)에서 50.0핍으로 이동했습니다.

그러나 세 번째 주문도 조건을 충족했으며 세 번째 주문까지 추적해야 하지만 다시 손절매는 한 번만 이동되었습니다. (또 틀렸다 :( )

후행 부분이 제대로 작동하지 않는 두 계정이 모두 마지막 주문에 있다는 사실을 모두 알고 계셨습니까?

USDJPY가 작동할 수 있다면 다른 모든 쌍에 적용될 수 있어야 합니다. 어떻게 해야할지 모르겠습니다.

나는 RaptorUK가 가르쳐야 좋은 곳에서 읽은 루프를 위해 카운트 백을 사용합니다. 거꾸로 계산하는 것도 문제가 되지 않습니다.

전문가 탭에서도 오류가 표시되지 않았습니다....

@.@T_T

 
가격이 첫 번째 트레일 이후에 다시 추적되지 않고 중단되었습니까?
 
실례합니다. 무슨 말인지 잘 이해가 안 가네요... 가격이 얼마를 말씀하시는 건가요? 첫 번째 트레일 이후에 중지하시겠습니까?
 
무슨 말인지 알겠다 처음에는 거래 결과를 제대로 읽지 못했다
 
SDC :
무슨 말인지 알겠다 처음에는 거래 결과를 제대로 읽지 못했다
나는 아직도 그것이 무엇이 잘못되었는지 단서가 없다 .... 내가 어디에서 틀렸는지 알고 있니?
 
      if ( ( OrderStopLoss() == 0 ) || (OrderStopLoss() != 0 && OrderStopLoss() <= OrderOpenPrice() ) || ( OrderStopLoss() < ( OrderOpenPrice() + ( TrailingStop * Figure ) ) ) )
                              {
 

나는 여전히 같은 fforr ....

나는 그것을 여러 번 시도했지만 여전히 항상 제대로 수정되지 않은 마지막 주문입니다 .... for 루프가이 문제를 일으키나요? 그렇게 생각하지 않는데 왜 제대로 작동하지 않는지 모르겠습니다 ...

 

juniorlcq :

for 루프가 이 문제를 일으키나요?


카운트 업 또는 다운(후행 손절매) 여부는 중요 하지 않습니다 .

카운트 다운해야 하는 거래 삭제 또는 닫기

 

나도 위쪽으로 계산을 시도했지만 여전히 같은 문제가 있습니다.

두 번째 for 루프가 이미 순서를 수정하고 다시 선택해야 합니까?

처음에는 순서를 선택했고 두 번째 for 루프에서 조건이 충족되어 해당 순서를 수정했습니다. 다시 선택해야 합니까?

 

주문선택

OrderSelect() 함수는 주문 데이터를 프로그램 환경으로 복사하고 OrderClosePrice() , OrderCloseTime() , OrderComment() , OrderCommission() , OrderExpiration() , OrderLots() , OrderMagicNumber() , OrderOpenPrice() , OrderOpenTime( ) , OrderPrint() , OrderProfit() , OrderStopLoss() , OrderSwap() , OrderSymbol() , OrderTakeProfit() , OrderTicket() , OrderType() 함수는 이전에 복사한 데이터를 반환합니다. 이는 경우에 따라 주문 세부 정보(오픈 가격, SL/TP 수준 또는 만료 날짜)가 변경되고 데이터가 실제와 다를 수 있음을 의미합니다. 주문 데이터를 요청하기 전에 OrderSelect() 함수를 호출하는 것이 좋습니다.

사유: