초보자의 질문 MQL4 MT4 MetaTrader 4 - 페이지 79

 

안녕하세요 간단한 질문이 있습니다. 먼저 한 방향으로 거래를 열고 스프레드를 지불합니다. 다음으로 동일한 로트에 대한 카운터 딜을 열고 스프레드도 가져옵니다. 즉, 이러한 거래가 반대로 닫힐 때 두 개의 스프레드가 지불된다는 것이 밝혀졌습니다.

 

나에게 몇 줄의 코드를 줘

1) 부엉이 잘 작동하게 하는 방법, 10초에 한번

2 ) 정해진 가격에 예약주문이 없을 경우 예약주문 설정/예약주문

3) 가능하면 설정된 주문(오픈) 간의 볼륨 차이를 구하는 방법을 알려주세요.

 
Rustem71 :


틱이 왔을 때 하고 싶은 일을 적으세요???

그런 다음 수행하는 추가 제스처가 너무 많습니다.

코드를 올바르게 작성하고 괄호를 줄이지 마십시오. 조건에 중괄호를 작성해야 하는 경우 작성해야 합니다. 코드를 직접 이해하는 것이 더 쉬울 것입니다. 막히면 자르기 시작합니다.

티크 도착에 대한 설명을 기다리고 있습니다.


아이디어는 2개의 보류 주문 이 열리며 초기 로트에서 작동한 첫 번째 주문(예: BUY)이 SELLSTOP에 의해 즉시 제거되고 SELLSTOP이 같은 위치에 배치되지만 두 배의 로트와 함께 SELL도 열리므로 BUYSTOP입니다. *2 로트가 배치되고, 예를 들어 후행 정지가 작동하지 않고 추세 반전 지연이 * 2 로트로 배치되면 플러스에서 무손실(예: 0.05)이 되면 후행 정지가 됩니다. 설정됩니다. 그런거!!! 최적화하는 방법 + 내 실수에 대한 의견을 알려 주시면 매우 감사하겠습니다! 일반적으로, 왜 하나의 보류 중인 주문을 위한 장소가 있는지 이해할 수 없습니다. 보류 중인 주문은 보증금이 완전히 소진될 때까지 열려 있습니다!
 
Akinak :
봐주세요! 내가 뭘 잘못했는지 설명할 수 있다면! 시도하지 않았거나 주문을 열지 않았거나 한 번에 팩을 열면 !!!

1보다 크거나 같은 경우(쉬움 - 0보다 큼) - 열지 않음, 이야기에 대해 동일하게 반복해야 함

그리고 당신은 어떤 이유로 반대가 있습니다.

 if (s== 1 )

즉, 다음과 같아야 합니다.

 if (s== 0 )
{ 
//открываем селл
}
 
Akinak :
봐주세요! 내가 뭘 잘못했는지 설명할 수 있다면! 시도하지 않았거나 주문을 열지 않았거나 한 번에 팩을 열면 !!!


제가 제대로 이해했다면 그렇습니다. 더 나아가 나 자신.

그리고 좋은 코드를 작성하십시오.

파일:
888.mq4  8 kb
 
안녕하세요! 기능을 도와주세요. 지쳤습니다. 제대로 하는 방법을 모르겠습니다! 내 컴퓨터의 시간인 매개변수를 입력할 수 있어야 합니다. 미리 감사드립니다!
 extern bool     HOUR = false ;             // Часы Вкл (true) / Выкл (folse)
extern string   TimeBegin = "13:30" ;       // Время начала (ЧЧ:ММ)
extern string   TimeEnd   = "17:00" ;       // Время окончания (ЧЧ:ММ)
//Отправляет true если по времени разрешено торговать
bool isTradeTimeString()
{
 datetime hbegin = StrToTime (TimeBegin) + TimeGMTOffset ();
 datetime hend = StrToTime (TimeEnd) + TimeGMTOffset ();
 
 datetime dtBegin, dtEnd;         // Время начала и окончания работы
 int       hc, he;                 // Часы текущего времени и окончания работы

 dtBegin= StrToTime ( TimeToStr ( TimeCurrent (), TIME_DATE )+ " " + TimeToStr (hbegin, TIME_MINUTES ));
 dtEnd= StrToTime ( TimeToStr ( TimeCurrent (), TIME_DATE )+ " " + TimeToStr (hend, TIME_MINUTES ));
 hc = TimeHour ( TimeCurrent ());
 he = TimeHour (dtEnd);
 if (dtBegin>=dtEnd)
 {
   if (hc>=he)
   dtEnd+= 24 * 60 * 60 ;
   else
   dtBegin-= 24 * 60 * 60 ;
 }
 if (HOUR== true )
 {
   if ( TimeCurrent ()>=dtBegin && TimeCurrent ()<=dtEnd)
   return ( true );
   else
  {
   if (CountTrades()== 0 )
     return ( false );
  }
 }
 return ( true );
}
 
Arseniy Barudkin :
안녕하세요! 기능을 도와주세요. 지쳤습니다. 제대로 하는 방법을 모르겠습니다! 내 컴퓨터의 시간인 매개변수를 입력할 수 있어야 합니다. 미리 감사드립니다!
시간로컬()
 
Rustem71 :


제가 제대로 이해했다면 그렇습니다. 더 나아가 나 자신.

그리고 좋은 코드를 작성하십시오.


정말 감사합니다! 많은 도움이 되었습니다! 2주 조금 넘게 썼는데 이런 미묘함을 몰랐어요!
 
안녕하세요, 친애하는 포럼 사용자! 간단한 Expert Advisor를 생성하면 오류가 발생합니다! 이유가 무엇인지 알려주세요.
파일:
meryjj.jpg  197 kb
 
naravat :
안녕하세요, 친애하는 포럼 사용자! 간단한 Expert Advisor를 생성하면 오류가 발생합니다! 이유가 무엇인지 알려주세요.

반환 후, 당신은 괄호를 넣어 그 안에 함수의 유형과 일치하는 일부 값을 작성해야 합니다.