MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 455

 

안녕하세요!


이러한 질문 - 로봇은 특정 신호에 대해 주문을 열고 닫습니다. 주문이 완료된 후 동일한 방향으로 보류 중인 주문이 필요하지만 단 하나만 있어야 합니다.

저것들. 보류 중인 주문이 실행되고 종료된 후 다른 일은 발생하지 않으며 로봇은 일반 주문을 시작하라는 신호를 기다리고 있습니다.


이것이 어떻게 구현될 수 있는지 말해 주십시오.

 
Snower : 좋은 오후입니다!

이러한 질문 - 로봇은 특정 신호에 대해 주문을 열고 닫습니다. 주문이 완료된 후 동일한 방향으로 보류 중인 주문이 필요하지만 단 하나만 있어야 합니다.

저것들. 보류 중인 주문이 실행되고 종료된 후 다른 일은 발생하지 않으며 로봇은 일반 주문을 시작하라는 신호를 기다리고 있습니다.

어떻게 할 수 있는지 알려주세요.

파이만큼 쉽습니다. 두 개의 for 루프에서 1) 주문 내역 2) 실행된 주문 을 분석합니다. 분석을 바탕으로 상황을 파악하고 if 문을 사용하여 필요한 작업을 수행합니다. 아니면 더 자세한 정보가 필요하십니까?

 
STARIJ :

파이만큼 쉽습니다. 두 개의 for 루프에서 1) 주문 내역 2) 실행된 주문을 분석합니다. 분석을 바탕으로 상황을 파악하고 if 문을 사용하여 필요한 작업을 수행합니다. 아니면 더 자세한 정보가 필요하십니까?

자세히 적어주시면 정말 감사하겠습니다

 
Snower : 자세히 적어주시면 정말 감사하겠습니다

어떤 부분을 쓰나요? 아니면 모두?

 
LRA :

어떤 부분을 쓰나요? 아니면 모두?

내가 정리할 수 있다면 주기 자체

 
Vladislav Andruschenko :
))) 10년 동안 일했는데 그런 생각은 없었어요. 당신은 힘든 상황을 좋아합니다.

이제 것입니다

 

이 코드의 문제는 무엇입니까? 때로는 1 거래, 때로는 2 거래를 열 수 있습니까?

이론상으로는 페어당 최대 1번의 거래가 가능하지만 분명히 어딘가에서 망친 것 같습니다.


...
if (!Orderex( _Symbol ))
{
   OrderSend ( NULL , OP_SELL ,lot, Bid , 30 , Bid +stop* Point , Bid -take* Point , NULL ,magicf, 0 , clrRed );
}
...
bool Orderex( string symbol)
{
   for ( int i= OrdersTotal (); i> 0 ; i--)
      {
         OrderSelect (i, SELECT_BY_POS , MODE_TRADES );
         if ( OrderSymbol ()==symbol && OrderMagicNumber ()==magicf) return true ;
      
      
      
      }


   return false ;
}
 
Roman Sharanov :

이 코드의 문제는 무엇입니까? 때로는 1 거래, 때로는 2 거래를 열 수 있습니까?

이론상으로는 페어당 최대 1번의 거래가 가능하지만 분명히 어딘가에서 망친 것 같습니다.


 for ( int i= OrdersTotal ()-1; i> =0 ; i--)
 
Konstantin Nikitin :

그리고 더 흥미로운

 for ( int i = OrdersTotal (); i-- >= 0 ;)
 
ahhh, 네, 계정은 처음부터입니다 :)