이익 목표에서 수익성 있는 거래만 마감 - 페이지 4

 
af1 :

Ok Raptor, 루프를 만들려고 하지만 그 전에 변경하면 어떻게 될까요?

이것으로부터:
이에:


이 작업을 수행할 수 있습니까?

아니요, 주문을 마감/삭제할 때 카운트다운해야 합니다.
 
RaptorUK :
아니요, 주문을 마감/삭제할 때 카운트다운해야 합니다.


안녕하세요 랩터입니다!

나는 코드를 확인했고 솔직히 말해서 귀하의 게시물에서 제안한 코드 라인 사이에 큰 차이를 보이지 않습니다.

 for (PositionIndex = TotalNumberOfOrders - 1 ; PositionIndex >= 0 ; PositionIndex --)

테스트 중인 ea의 코드 코드 라인:

 for (i= OrdersTotal ()- 1 ;i>= 0 ;i--)

내가 본 유일한 차이점은 MODE_TRADES 를 추가하고 sleep 을 추가 하지 않았다는 것입니다. 관련이 있습니까?

코드에서 무엇을 변경해야 하는지 안내해 주시겠습니까?

 
af1 :


안녕하세요 랩터입니다!

나는 코드를 확인했고 솔직히 말해서 귀하의 게시물에서 제안한 코드 라인 사이에 큰 차이를 보이지 않습니다.

테스트 중인 ea의 코드 코드 라인:

내가 본 유일한 차이점은 MODE_TRADES를 추가하고 수면을 추가하지 않았다는 것입니다. 관련이 있습니까?

코드에서 무엇을 변경해야 하는지 안내해 주시겠습니까?

죄송합니다, 나는 이것을 보았습니다. . .

 for ( int i= 0 ;i< OrdersTotal ();i++)
      {
         if ( OrderSelect (i,SELECT_BY_POS,MODE_TRADES)== false ) continue ;
         if (OrderType()==OP_SELL)  
         {
            OrdersSELL++;
            SellLots += OrderLots();
             double ThisTradeProfit=OrderProfit() + OrderCommission() + OrderSwap();
             if (ThisTradeProfit> 0 )
            BuyProfit += ThisTradeProfit;
         }

. . . 귀하는 게시하고 그것이 귀하의 OrderClose() 코드라고 가정했습니다. . .

 
af1 :


2 extern bool을 추가하지 않고 "구매 주문만"을 닫도록 변경했습니다.

"판매 주문만"을 닫도록 이것을 변경하십시오.

그래서 지금은 두 개의 EA가 있습니다. 하나는 가까운 매수를 위한 것이고 다른 하나는 가까운 매도를 위한 것입니다. 괜찮습니다.


데모 계정과 실제 계정 모두에서 테스트했습니다. 데모에서는 잘 작동하지만 실제 계정에서는 이익 목표에 도달하면 포지션을 청산하기 시작하지만 나머지 주문이 이익 목표 아래로 떨어지면 포지션 청산을 멈춥니다. 마감 순간에 가격이 변하는 경우에 발생합니다. 따라서 모든 주문을 마감하는 대신 수익성 있는 열린 주문을 남겨두는 경향이 있습니다(수익성 주문).

RaptorUK https://www.mql5.com/en/forum/139654 에서 이 게시물을 읽었습니다. 그런 것 같지만 이 문제에 대한 최선의 해결책이 무엇인지 잘 모르겠습니다.



방금 이것을 눈치 챘습니다 - 많은 차이를 만들지 모르겠지만 옳지 않습니다.

for ( int i= 0 ;i< OrdersTotal ();i++)

      {
         if ( OrderSelect (i,SELECT_BY_POS,MODE_TRADES)== false ) continue ;
         if (OrderType()== OP_SELL )  
         {
            OrdersSELL++;
            SellLots += OrderLots();
             double ThisTradeProfit=OrderProfit() + OrderCommission() + OrderSwap();
             if (ThisTradeProfit> 0 )
             BuyProfit += ThisTradeProfit;
         }
 
af1 :


2 extern bool을 추가하지 않고 "구매 주문만"을 닫도록 변경했습니다.

"판매 주문만"을 닫도록 이것을 변경하십시오.

그래서 지금은 두 개의 EA가 있습니다. 하나는 가까운 매수를 위한 것이고 다른 하나는 가까운 매도를 위한 것입니다. 괜찮습니다.


데모 계정과 실제 계정 모두에서 테스트했습니다. 데모에서는 잘 작동하지만 실제 계정에서는 이익 목표에 도달하면 포지션을 청산하기 시작하지만 나머지 주문이 이익 목표 아래로 떨어지면 포지션 청산을 멈춥니다. 마감 순간에 가격이 변하는 경우에 발생합니다. 따라서 모든 주문을 마감하는 대신 수익성 있는 열린 주문을 남겨두는 경향이 있습니다(수익성 주문).

RaptorUK https://www.mql5.com/en/forum/139654 에서 이 게시물을 읽었습니다. 그런 것 같지만 이 문제에 대한 최선의 해결책이 무엇인지 잘 모르겠습니다.



그것은 거래를 닫는 데 오류가 있음을 나타냅니다. 로그에 무엇을 말합니까?

단 5점에서의 미끄러짐이 너무 작습니까?

 
RaptorUK :

죄송합니다, 나는 이것을 보았습니다. . .

. . . 귀하는 게시하고 그것이 귀하의 OrderClose() 코드라고 가정했습니다. . .

괜찮아요.

검라이 :


방금 이것을 눈치 챘습니다 - 많은 차이를 만들지 모르겠지만 옳지 않습니다.

for ( int i= 0 ;i< OrdersTotal ();i++)

데모에서는 차이를 보지 못했지만 실제 계정 에서는 "흥미롭게" 판매 주문을 마감할 때 문제가 표시되므로 이 문제를 해결할 수 있을 것입니다.

이 변경으로 다시 테스트하고 결과를 알려 드리겠습니다.

검라이 :


그것은 거래를 닫는 데 오류가 있음을 나타냅니다. 로그에 무엇이라고 말합니까?

단 5점에서의 미끄러짐이 너무 작습니까?

로그에 오류가 없습니다.

더 큰 미끄러짐이 도움이 될 수 있습니다. 나는 그것을 테스트 할 것이다.

 

안녕하세요 친구

MT5에 대한 EA가 있는 모든 곳에서 이익에 도달하면 모든 거래를 마감합니다.

 
BobyGill :

안녕하세요 친구

MT5에 대한 EA가 있는 모든 곳에서 이익에 도달하면 모든 거래를 마감합니다.

왜 MT4 섹션에서 6살짜리 주제를 꺼내서 MT5에 대해 물어보셨나요???

 
얘들아..
그냥 궁금..
같은 논리를 사용하는 것이 가능하지만 다른 논리를 사용하는 것은 총 트랜잭션이 200 트랜잭션에 도달 하면 마감 이익을 발생시키는 것뿐입니다.