어드바이저를 무작위로 모으는 방법 - 페이지 27

 
Алексей Тарабанов :

좋아요?

행동으로 볼 필요가있다

나를 위해서가 아니라 그를 위해서

 

자동으로 설정되는 수평선에 대해 별도의 정지 제한 및 여전히 이익이 충분하지 않다고 생각합니다.

이것은 4줄을 더한 것입니다 - 하지만 아닙니다! 여덟

스냅 사진

 
Aleksandr Klapatyuk :

자동으로 설정되는 수평선에 대해 별도의 정지 제한 및 여전히 이익이 충분하지 않다고 생각합니다.

이것은 4줄을 더한 것입니다 - 하지만 아닙니다! 여덟


#속성 버전 "1.11"

수평 손절매 라인을 설정하고 가격이 올바른 방향으로 움직이면 위치를 추적합니다.

노란색 선은 StopLoss와 동시에 후행입니다.

자취

 input string    t1= "------ TakeProfit    ----------" ;     // TakeProfit
input double    InTakeProfit            = 54 ;             // Take Profit, in pips (1.00045-1.00055=1 pips)

여기에 0이 있을 수 없습니다. 즉시 닫힙니다. 원하는 포인트 수를 설정해야합니다 - 위치를 닫으려면

스냅 사진

스냅샷1

그래서 - 결과가 있는 것처럼.

파일:
 
2019.10.28 10:21:58.667 Your intelligence (USDJPY,H1)   zero divide in 'Your intelligence.mq5' (1481,14)

그러한 오류가 발생하고 전문가가 삭제됩니다. - 포지션을 열 때. 계정 500 GLD.

루블 계정에서 - 모든 것이 작동합니다. 내가 그것을 알아낼 수 있을 때까지.

 
Aleksandr Klapatyuk :

위치를 열 때 이러한 오류가 발생하고 Expert Advisor가 삭제됩니다. 계정 500 GLD.

그리고 루블 계정에서 - 모든 것이 작동합니다. 내가 그것을 알아낼 수 있을 때까지.

팬케이크! 정보를 찾고 있습니다. 누가 말할 수 있습니까? 무슨 오류야?

2019.10.28 10:21:58.667 'Your Intelligence.mq5'의 지능(USDJPY,H1) 0분할(1481,14)

스냅 사진

 
Aleksandr Klapatyuk :

위치를 열 때 이러한 오류가 발생하고 Expert Advisor가 삭제됩니다. 계정 500 GLD.

루블 계정에서 - 모든 것이 작동합니다. 내가 그것을 알아낼 수 있을 때까지.

1481행의 코드에서 커서 위치 14 - 오류를 찾습니다.

 
Vladimir Karputov :

1481행의 코드에서 커서 위치 14 - 오류를 찾습니다.

매우 감사합니다 ! 이유가 무엇인지 알 것 같습니다. 힌트 감사합니다!!!

 
Vladimir Karputov :

1481행의 코드에서 커서 위치 14 - 오류를 찾습니다.

여기 - 나는 마음을 정했다

  {
//---
   for(int i=PositionsTotal()-1; i>=0; i--) // returns the number of current positions
      if(m_position.SelectByIndex(i)) // selects the position by index for further access to its properties
        {
         if((PositionGetDouble(POSITION_PROFIT)/PositionGetDouble(POSITION_VOLUME)/
             SymbolInfoDouble(Symbol(),SYMBOL_TRADE_TICK_VALUE))/n<-InStopLoss)
            ClosePosition(m_position.Symbol());  // close a position by the specified symbo
        }
  }

다음과 같이 수정했습니다 - 아직 이 기능을 테스트하지 않았지만 이론상으로는 작동해야 합니다.

  {
//---
   for ( int i= PositionsTotal ()- 1 ; i>= 0 ; i--) // returns the number of current positions
       if (m_position.SelectByIndex(i)) // selects the position by index for further access to its properties
        {
         if (m_position.Commission()+m_position.Swap()+m_position.Profit()/n<-InStopLoss)
            ClosePosition(m_position. Symbol ());   // close a position by the specified symbo
        }
  }

다시 한 번 - 정말 감사합니다! 건강! 그리고 최고!

 

방금 눈치 챘습니다 - 터미널에서 - GLD 계정

포지션을 열었을 때 이익은 변경되지 않습니다 - 8 포인트로 표시되고 변경되지 않습니다

차트에서 가격이 움직이고 있습니다. 아마도 이것에 대해 오류가 발생했을 것입니다.

잉크알파리 MT5_LI

 

여기 - 나는 마음을 정했다

  {
//---
   for(int i=PositionsTotal()-1; i>=0; i--) // returns the number of current positions
      if(m_position.SelectByIndex(i)) // selects the position by index for further access to its properties
        {
         if((PositionGetDouble(POSITION_PROFIT)/PositionGetDouble(POSITION_VOLUME)/
             SymbolInfoDouble(Symbol(),SYMBOL_TRADE_TICK_VALUE))/n<-InStopLoss)
            ClosePosition(m_position.Symbol());  // close a position by the specified symbo
        }
  }

다음과 같이 수정했습니다 - 아직 이 기능을 테스트하지 않았지만 이론상으로는 작동해야 합니다.

  {
//---
   for ( int i= PositionsTotal ()- 1 ; i>= 0 ; i--) // returns the number of current positions
       if (m_position.SelectByIndex(i)) // selects the position by index for further access to its properties
        {
         if (m_position.Commission()+m_position.Swap()+m_position.Profit()/n<-InStopLoss)
            ClosePosition(m_position. Symbol ());   // close a position by the specified symbo
        }
  }

내가 더 현명했던 곳을 떠날 필요가 있습니다. -- 그것이 작동하는 방식입니다! 수정하고 싶었기 때문에 / n도 작동하지 않고 함께 삭제되었습니다. 작동하지 않습니다

전체 이유는 GLD 계정 자체입니다. 동일한 터미널에서 USD 계정을 개설하고 모든 것이 작동합니다.