[아카이브!] 포럼을 어지럽히 지 않도록 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 2. - 페이지 478

 
abolk :

링크에서 https://www.mql5.com/en/code 유사한 창고

당신은 전체 거대한 섹션에 대한 링크를 제공했습니다)))

재미있는

 

안녕하세요!

나는 도움을 요청합니다, 나는 이미 살해당했습니다. 나는 그것을 마음에 가져올 수 없습니다 !!! +20p에 도달하면 주문의 SL이 시가로 재배열되어야 합니다 . 즉, 함수는 77을 반환합니다.

 for (i=( OrdersTotal ()- 1 ); i>= 0 ; i--) // перебор ордеров 
         { 
       if (! OrderSelect (i, SELECT_BY_POS))
      {
         continue ;
      }

       if (OrderSymbol()!=Instr||OrderMagicNumber()!=MN)
           continue ;
       if (OrderStopLoss()==OrderOpenPrice())
             break ;    
       if (   OrderProfit()>=(MarketInfo( Symbol (),MODE_TICKVALUE)*Bezub)        ) 
   return ( 77 );
                  
           }
   

나는 그것을 작동시킬 수 없다

 
demlin :

+20p에 도달하면 주문의 SL이 시가로 재배열되어야 합니다. 즉, 함수는 77을 반환합니다.

20p는 이런 식으로 계산되지 않습니다. OrderOpenPrice() 함수를 사용하고 현재 가격과 비교해야 합니다. 분명히 주문이 양수 또는 0의 이익에 도달할 때 결과 77을 반환하고 싶을 때 다음과 같이 해야 합니다.

 for (i=( OrdersTotal ()- 1 ); i>= 0 ; i--) // перебор ордеров 
         { 
             if (! OrderSelect (cnt, SELECT_BY_POS, MODE_TRADES)) continue ;
             if (OrderSymbol()!=Instr||OrderMagicNumber()!=MN)   continue ;
             if (OrderStopLoss()==OrderOpenPrice()) break ;    
             if ( OrderProfit()>= 0 )) return ( 77 );
           }
OrderProfit() 함수는 pp가 아닌 예금 통화 로 주문 이익을 반환합니다.
 
다른 지표에서 고문의 지표 데이터(이를 수행할 수 있는 지표 데이터)를 얻을 수 있는지 알려주십시오. 그런 기회의 가격 유형에서 찾을 수없는 것.
 
IgorM :

20p는 이런 식으로 계산되지 않습니다. OrderOpenPrice() 함수를 사용하고 현재 가격과 비교해야 합니다. 분명히 주문이 양수 또는 0의 이익에 도달할 때 결과 77을 반환하고 싶을 때 다음과 같이 해야 합니다.

OrderProfit() 함수는 pp가 아닌 예금 통화로 주문 이익을 반환합니다.

20 st를 계산하지 않고 Bezub 변수에 설정되어 있다고 생각했습니다. 예금 통화 (OrderProfit())로 주문의 현재 이익과 예금 통화( (MarketInfo( Symbol (),MODE_TICKVALUE)*Bezub) 에서 필요한 수준인 20p를 비교하려고 합니다.
 
demlin :
20 st를 계산하지 않고 Bezub 변수에 설정되어 있다고 생각했습니다. 예금 통화(OrderProfit())로 주문의 현재 이익과 예금 통화( (MarketInfo( Symbol (),MODE_TICKVALUE)*Bezub) 에서 필요한 수준인 20p를 비교하려고 합니다.

그런 다음 현재 가격과 주문한 순간부터 가격이 몇 점이나 지났는지 고려하는 것을 잊었습니다.

(OrderOpenPrice() -Bid)*MarketInfo(Symbol(),MODE_TICKVALUE)*Bezub

ZZZEROXXX :
다른 지표에서 고문의 지표 데이터(이를 수행할 수 있는 지표 데이터)를 얻을 수 있는지 알려주십시오. 그런 기회의 가격 유형에서 찾을 수없는 것.

아이커스텀()

https://book.mql4.com/en/samples/shared
 
IgorM :

그런 다음 현재 가격과 주문한 순간부터 가격이 몇 점이나 지났는지 고려하는 것을 잊었습니다.

(OrderOpenPrice() -Bid)*MarketInfo(Symbol(),MODE_TICKVALUE)*Bezub


나는 당신의 계획을 시도했습니다. 경고는 식 (OrderOpenPrice() -Bid)*MarketInfo( Symbol() ,MODE_TICKVALUE)*Bezub에 대해 -0.033을 반환합니다. 이익에 21p가 있지만! 이건 괜찮아??
 
demlin :
나는 당신의 계획을 시도했습니다. 경고는 표현식 (OrderOpenPrice() -Bid)*MarketInfo(Symbol(),MODE_TICKVALUE)*Bezub에 대해 값 -0.033을 제공합니다. 이익에 21p가 있지만! 이건 괜찮아??

죄송합니다. 확인하지 않고 작성했습니다. 여기에 잘못 제안했습니다. 다음과 같이 작동해야 합니다.

매도:(OrderOpenPrice()-Bid)*MarketInfo( Symbol() ,MODE_TICKVALUE)*lot/Point

매수: (Ask-OrderOpenPrice())*MarketInfo(Symbol(),MODE_TICKVALUE)*lot/Point

 
IgorM :

죄송합니다. 확인하지 않고 작성했습니다. 여기에 잘못 제안했습니다. 다음과 같이 작동해야 합니다.

매도:(OrderOpenPrice()-Bid)*MarketInfo(Symbol(),MODE_TICKVALUE)*랏/포인트

매수: (Ask-OrderOpenPrice())*MarketInfo(Symbol(),MODE_TICKVALUE)*lot/Point

이것 역시 아직 아름다운 수치를 보여주지 못하고 있습니다. 공식이 아닌 것 같아요. (MarketInfo( Symbol (),MODE_TICKVALUE)*Bezub) 표현식 자체는 원칙적으로 유로달러에 대해 20을 제공합니다. for 루프의 어딘가에 있습니다.
 
IgorM :

죄송합니다. 확인하지 않고 작성했습니다. 여기에 잘못 제안했습니다. 다음과 같이 작동해야 합니다.

매도:(OrderOpenPrice()-Bid)*MarketInfo(Symbol(),MODE_TICKVALUE)*랏/포인트

매수: (Ask-OrderOpenPrice())*MarketInfo(Symbol(),MODE_TICKVALUE)*lot/Point

이것 역시 아직 아름다운 수치를 보여주지 못하고 있습니다. 공식이 아닌 것 같아요. (MarketInfo( Symbol (),MODE_TICKVALUE)*Bezub) 표현식 자체는 원칙적으로 유로달러에 대해 20을 제공합니다. for 루프의 어딘가에 있습니다.