위대하고 끔찍한 MT4 영원히 (또는 전환 전략을 올바르게 개발하는 방법) - 페이지 26

 
fxsaber :

아마도 내부에 그러한 깃발이 없을 것입니다.

분명히 아닙니다.

그러나 MQ가 할 수 있다고 생각합니다. 특히 터미널당 하나의 플래그가 될 것이기 때문입니다. 모든 프로그램에 대해.

 
Artyom Trishkin :
나는 아마 제안할 것이다. 하지만 훨씬 나중에. 주관적인 이유로. 안타깝게도. 그 동안 선동가를 고려할 수 있습니다. 금지되지 않습니다.

여전히 관련성이 있습니까? 당신의 해결책은 무엇입니까?

 
Igor Makanu :

여전히 관련성이 있습니까? 당신의 해결책은 무엇입니까?

당신은 "훨씬 나중에"라고 되어 있는 내 포스트를 인용했습니다. 나에게 "훨씬 나중"은 적어도 1년보다 빠르지 않습니다. 이 시간이 해결책을 찾는 데 필요해서가 아니라 불행히도 주관적인 상황 때문입니다.

 
Artyom Trishkin :

이것은 적어도 1 년보다 빠르지 않습니다.

알겠습니다. 따라서 관련이 없습니다.

 
아마도 조건면에서 단순한 작업을 생각해내는 것이 여전히 가능하며 그 해결책은 예기치 않은 어려움을 야기합니다.
 
fxsaber :
아마도 조건면에서 단순한 작업을 생각해내는 것이 여전히 가능하며 그 해결책은 예기치 않은 어려움을 야기합니다.

스크립트는 초과 위험을 모니터링합니다 . 총 포지션 및 지연이 2개 이상인 경우 보고하고 종료 합니다.


간결한 코드:

 void OnStart ()
{
   while (! IsStopped ())
     if (( PositionsTotal () + OrdersTotal () > 2 )) // Если (риск превышен) число отложек/позиций больше двух,
    {
       Alert ( "Risk exceeded!" );                   // сообщаем      
       ExpertRemove ();                           // и выходим.
    }
}


우리는 손의 동작에 따라 스크립트의 동작을 봅니다. 그 전에(스크립트를 실행하기 전에) 계정 의 위치 수 를 PostTotal , orders - OrdTotal 로 지정하겠습니다.

대본 PostTotal/OrdTotal 행동 스크립트 결과
01 0/0 포지션 오픈. 공장.
02 0/0 연기. 공장.
03 0/1 전시   매장. 공장.
04 0/1 포지션 오픈. 경고(항상 그런 것은 아님).
05 0/1 제거 지연. 공장.
06 1/0 전시   매장. 공장.
07 1/0 포지션 오픈. 경고 (항상 그런 것은 아님) .
08 1/0 포지션을 닫습니다. 공장.
09 1/1 제거 지연. 공장.
1/1 포지션을 닫습니다. 알리다.
열하나 0/2 제거 지연. 공장.
12 2/0 포지션을 닫습니다. 알리다.


매우 간단한 작업처럼 보이지만 경고합니다. 해결책은 무엇입니까?


추신 아마도 MT5에 대한 이해가 필요한 간단한 작업일 것입니다.

 
fxsaber :

스크립트는 초과 위험을 모니터링합니다 . 총 포지션과 지연이 2개 이상인 경우 보고하고 종료 합니다.


간결한 코드:


우리는 손의 동작에 따라 스크립트의 동작을 봅니다. 그 전에(스크립트를 실행하기 전에) 계정 의 위치 수 를 PostTotal , orders - OrdTotal 로 지정하겠습니다.

대본 PostTotal/OrdTotal 행동 스크립트 결과
01 0/0 포지션 오픈. 공장.
02 0/0 연기. 공장.
03 0/1 전시   매장. 공장.
04 0/1 포지션 오픈. 경고(항상 그런 것은 아님).
05 0/1 제거 지연. 공장.
06 1/0 전시   매장. 공장.
07 1/0 포지션 오픈. 경고 (항상 그런 것은 아님) .
08 1/0 포지션을 닫습니다. 공장.
09 1/1 제거 지연. 공장.
1/1 포지션을 닫습니다. 알리다.
열하나 0/2 제거 지연. 공장.
12 2/0 포지션을 닫습니다. 알리다.


매우 간단한 작업처럼 보이지만 경고합니다. 해결책은 무엇입니까?


추신 아마도 MT5에 대한 이해가 필요한 간단한 작업일 것입니다.

MQ5와 어떤 관련이 있습니까? 주기 종료 조건: IsStopped 및 2개 이하의 주문. 그러면 스크립트가 작동하고 조건이 작동하지 않으면 스크립트도 작동합니다.

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

MQ5와 어떤 관련이 있습니까? 루프 종료 조건: IsStopped 및 2개 이하의 주문. 그러면 스크립트가 작동하고 조건이 작동하지 않으면 스크립트도 작동합니다.

코드도 주석 처리됩니다.

 
fxsaber :

스크립트는 초과 위험을 모니터링합니다 . 총 포지션과 지연이 2개 이상인 경우 보고하고 종료 합니다.

간결한 코드:


매우 간단한 작업인 것처럼 보이지만 경고합니다. 해결책은 무엇입니까?


추신 아마도 MT5에 대한 이해가 필요한 간단한 작업일 것입니다.

아마도 다음과 같은 작업을 수행해야 합니다.

 void OnStart ()
{
   while (! IsStopped ())
   {
       //--- посчитаем ордера
       int orders = 0 ;
       for ( int i = 0 ; i < OrdersTotal (); i++)
         if ( OrderGetTicket (i) > 0 && OrderGetInteger ( ORDER_TYPE ) < ORDER_TYPE_CLOSE_BY ) orders++;
      
       if (orders + PositionsTotal () > 2 ) break ;     // выходим
   }
   if (! _StopFlag ) Alert ( "Risk exceeded!" );         // сообщаем
}
 
Igor Makanu :

아마도 다음과 같은 작업을 수행해야 합니다.

물론 주문을 필터링해야 합니다. 이것은 쉬운 일이 아닙니다.

위협 포럼의 흥미로운 상황입니다. 질문에 적극적으로 답하세요. 여기는 다른 것 같습니다.
Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам
Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам
  • 2016.11.09
  • www.mql5.com
В этой ветке я хочу начать свою помощь тем, кто действительно хочет разобраться и научиться программированию на новом MQL4 и желает легко перейти н...