시장: 거래 없음

 

시장이 이 오류를 반환하는 이유를 누가 설명할 수 있습니까? EA의 모든 수표를 사용할 수 있습니다 ...

글쎄, 나는 본질을 확실히 이해합니다. 거래 작업은 없지만 어떤 이유에서입니까?

Ограничения и проверки в экспертах
Ограничения и проверки в экспертах
  • www.mql5.com
При создании алгоритма для автоматической торговли необходимо не только уметь обрабатывать цены с целью выработки торговых сигналов, но и зачастую требуется получать множество вспомогательной информации об ограничениях, накладываемых на работу эксперта.  В этой статье будет рассказано о том как: получить информацию о торговых сессиях...
 
  • 예를 들어 - 설정의 거래 로트 = 0, 로트 = 0 이기 때문에 고문은 거래를 열 수 없습니다.
  • EA의 스프레드 제한은 포지션을 열지 않습니다.
  • 실제로 테스트 기간에 포지션을 열라 는 신호는 없습니다.

그리고 당신만 수표를 볼 수 있고, 당신의 코드는 첨부되어 있지 않습니다.

수천 개의 예제 ...

 
Vladislav Andruschenko :
  • 예를 들어 - 설정의 거래 로트 = 0, 로트 = 0 이기 때문에 고문은 거래를 열 수 없습니다.
  • EA의 스프레드 제한은 포지션을 열지 않습니다.
  • 실제로, 테스트 기간에 포지션을 오픈 하라는 신호는 없습니다.

그리고 당신만 수표를 볼 수 있고, 당신의 코드는 첨부되어 있지 않습니다.

수천 개의 예...

Lot의 정확성에 대한 확인이 있고, 확실히 신호가 있습니다. 이것은 그리드이며 스프레드에 제한이 없습니다...
 
Vladislav Andruschenko :
  • 예를 들어 - 설정의 거래 로트 = 0, 로트 = 0 이기 때문에 고문은 거래를 열 수 없습니다.
  • EA의 스프레드 제한은 포지션을 열지 않습니다.
  • 실제로 테스트 기간에 포지션을 열라 는 신호는 없습니다.

그리고 당신만 수표를 볼 수 있고, 당신의 코드는 첨부되어 있지 않습니다.

수천 개의 예제 ...

Lot의 정확성에 대한 확인이 있고, 확실히 신호가 있습니다. 이것은 그리드이고, 스프레드에 제한이 없습니다. 나는 아무것도 이해하지 못합니다...
 
Maksim Neimerik :
Lot의 정확성에 대한 확인이 있고, 확실히 신호가 있습니다. 이것은 그리드이며 스프레드에 제한이 없습니다...

그럼 또 다른 100500 옵션.

네트워커는 조용히 시장 테스트를 통과하고 있습니다.

 
Vladislav Andruschenko :

그럼 또 다른 100500 옵션.

그리드 작업자는 조용히 시장 테스트를 통과하고 있습니다.

동의하지만 어떤 이유로 이것은 아닙니다 :)
 
Maksim Neimerik :
동의하지만 어떤 이유로 이것은 아닙니다 :)


여기에서 시장의 봇에 대해 논의하는 것은 금지되어 있습니다. 그리고 당신은 그것을 공개적으로 게시하지 않을 것입니다. 예, 이미 같은 이름을 가진 100500개의 주제와 그러한 주제에 대한 이유가 있습니다.

 
Maksim Neimerik :

시장이 이 오류를 반환하는 이유를 누가 설명할 수 있습니까? EA의 모든 수표를 사용할 수 있습니다 ...

글쎄, 나는 본질을 확실히 이해합니다. 거래 작업은 없지만 어떤 이유에서입니까?

사이트 검색을 이용해서 브랜치의 100500 사본을 만드는 것이 정말 그렇게 어렵습니까!

https://www.mql5.com/ru/search#!keyword=no%20trading%20operations&method=2&module=mql5_module_forum

Поиск - MQL5.community
Поиск - MQL5.community
  • www.mql5.com
Поиск выполняется с учетом морфологии и без учета регистра. Все буквы, независимо от того, как они введены, будут рассматриваться как строчные. По умолчанию наш поиск показывает страницы...
 

코드에 대해 논의하고 싶습니다.

 double CheckVolumeValue( double volume)
{
   double min_volume= SymbolInfoDouble ( Symbol (), SYMBOL_VOLUME_MIN );
   if (volume<min_volume)
   {
       Print ( "Volume is less than the minimum" );
       return (min_volume);
   }

   double max_volume= SymbolInfoDouble ( Symbol (), SYMBOL_VOLUME_MAX );
   if (volume>max_volume)
   {
       Print ( "Volume is greater than the maximum" );
       return (max_volume);
   }

   double volume_step= SymbolInfoDouble ( Symbol (), SYMBOL_VOLUME_STEP );

   int ratio=( int ) MathRound (volume/volume_step);
   if ( MathAbs (ratio*volume_step-volume)> 0.0000001 )
   {
       Print ( "Wrong lot size" );
       return (min_volume);
   }
     
   if (volume<MarketInfo( Symbol (),MODE_MINLOT))
   {
       Print ( "Trade stop invalid lot size" );
       Comment ( "Trade stop invalid lot size" ); 
       return (MarketInfo( Symbol (),MODE_MINLOT));
   }
   return (volume);
}

오류가 아니라 정확한 로트를 반환하도록 표준 검사를 약간 수정했습니다...

여기에서 이 함수를 호출합니다.

   if (! OrderSend ( Symbol (),cmd,CheckVolumeValue(Lot), NormalizeDouble (priceStep, Digits ()),Slippage, 0 , 0 , "" ,magic, 0 ))

테스터와 실생활에 이 로봇이 있습니다. 모든 것이 명확하게 작동합니다! 잘못된 로트를 입력해도 올바른 로트로 대체되어 계속 작동합니다...

오류 4051이 반환되는 위치를 알고 있습니다! 그게 다야...!

 
Maksim Neimerik :

코드에 대해 논의하고 싶습니다.

오류가 아니라 정확한 로트를 반환하도록 표준 검사를 약간 수정했습니다...

여기에서 이 함수를 호출합니다.

테스터와 실생활에 이 로봇이 있습니다. 모든 것이 명확하게 작동합니다! 잘못된 로트를 입력해도 올바른 로트로 대체되어 계속 작동합니다...

오류 4051이 반환되는 위치를 알고 있습니다! 그게 다야...!

Lot가 정규화되지 않았습니까?
 
Maksim Neimerik :

코드에 대해 논의하고 싶습니다.

오류가 아니라 정확한 로트를 반환하도록 표준 검사를 약간 수정했습니다...

여기에서 이 함수를 호출합니다.

테스터와 실생활에 이 로봇이 있습니다. 모든 것이 명확하게 작동합니다! 잘못된 로트를 입력해도 올바른 로트로 대체되어 계속 작동합니다...

오류 4051이 반환되는 위치를 알고 있습니다! 그게 다야...!

 double CheckVolumeValue( double volume)
{
   double min_volume= SymbolInfoDouble ( Symbol (), SYMBOL_VOLUME_MIN );
   if (volume<min_volume)
   {
       Print ( "Volume is less than the minimum" );
       return (min_volume);
   }

   double max_volume= SymbolInfoDouble ( Symbol (), SYMBOL_VOLUME_MAX );
   if (volume>max_volume)
   {
       Print ( "Volume is greater than the maximum" );
       return (max_volume);
   }

   double volume_step= SymbolInfoDouble ( Symbol (), SYMBOL_VOLUME_STEP );

   int ratio=( int ) MathRound (volume/volume_step);
   if ( MathAbs (ratio*volume_step-volume)> 0.0000001 )
   {
       Print ( "Wrong lot size" );
       return (min_volume);
   }
     
   if (volume<MarketInfo( Symbol (),MODE_MINLOT))
   {
       Print ( "Trade stop invalid lot size" );
       Comment ( "Trade stop invalid lot size" ); 
       return (MarketInfo( Symbol (),MODE_MINLOT));
   }
   return (volume);
}
그리고 이 곳은 절대 닿지 않을거야
사유: