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

 

안녕하세요 감정사님들!

Linux 운영 체제 가 설치된 VPS 서버에 MT4를 설치할 수 있습니까? Expert Advisors는 이러한 MT에서 정상적으로 작동합니까?

 

안녕하세요.

나는 통제와 위험 관리를 위해 EA를 만든다. 작동하는 모든 EA의 거래를 금지하는 가장 좋은 방법은 무엇입니까? 예를 들어, 특정 기호에 대해 실행 중인 모든 EA가 새로운 거래를 입력하는 것을 금지합니다. 불행히도 작동하는 모든 EA에 대한 소스가 없으며 전역 변수 를 사용하는 데 작동하지 않습니다.

 

odyn :

Linux 운영 체제로?

Michael은 Linux에서 일합니다. 그에게 편지 쓰기 https://www.mql5.com/ru/users/nikelodeon

Mihail Marchukajtes
Mihail Marchukajtes
  • www.mql5.com
Добавил тему Целевая функция в тестере Коллеги решил выделить вопрос в отдельную тему. При оптимизации параметров советника существует ряд стандартных функций, а так же "Максимум пользовательского критерия" что позволяет производить подбор относительно собственной целевой, пусть даже Если Вы являетесь владельцем инвестиционного фонда и...
 

좋은 저녁이에요!

다음 질문에 도움을 주세요.

얼마나 많은 양초가 더 높게 닫혔는지 알아내야 합니다.   이동 평균 과 얼마나 낮은지.

예를 들어: 종가의 20개의 양초가 20의 기간 동안 이동 평균 위로 마감되면 우리는 한 가지를 수행하고 아래에 있으면 다른 작업을 수행합니다.

고맙습니다!

Moving Average of Oscillator (OsMA)
Moving Average of Oscillator (OsMA)
  • www.mql5.com
On Balance Volume (OBV) Индикатор Балансового Объема (On Balance Volume, OBV) связывает объем и изменение цены, сопровождавшее данный объем. Momentum Индикатор движущей силы рынка (Momentum) измеряет величину изменения цены финансового инструмента за определенный...
 
leonerd :
작동하는 모든 EA의 거래를 금지하는 가장 좋은 방법은 무엇입니까?

어드바이저 코드를 변경할 수 없으면 자동 거래를 비활성화하십시오. 다음은 내 코드가 아닌 코드입니다.

#include <WinUser32.mqh>

#import "user32.dll"
// Считывает описатель оpгана упpавления, содеpжащийся в указанном блоке диалога. Возвpащаемое значение: идентификатоp оpгана упpавления; 0 - если указанный оpган упpавления не существует.
int       GetDlgItem( int hDlg,         // Блок диалога, содеpжащий оpган упpавления.
                     int nIDDlgItem); // Идентификатоp оpгана упpавления.
// Возвращает идентификатор hierarchyid, представляющий n-го предка данного элемента.
int       GetAncestor( int hWnd,       // Идентификатоp окна.
                       int gaFlags);   // Уровень окна от текущего окна (1, 2, 3...).
int       SendMessageA( int   hWnd,       // Окно, пpинимающее сообщение или $FFFF для посылки всем всплывающим окнам в системе.
                       int   Msg,       // Тип сообщения.
                       int   wParam,     // Дополнительная инфоpмация о сообщении.
                       int & lParam[]); // Дополнительная инфоpмация о сообщении.
                  
#import

void start() {
   if (IsExpertEnabled()) ExpertEnabled ( false );
       else ExpertEnabled ( true );
}

// Функция включения/отключения эксперта.
void ExpertEnabled ( bool Switch) // TRUE - включить эксперт, FALSE - отключить эксперт.
{
   int HandlWindow = WindowHandle ( Symbol (), Period ()); // Системный дескриптор окна.
   int HandlMT4;         // Системный дескриптор окна МТ4.
   int HandlToolbar;     // Системный дескриптор окна инструментов.

   int     ArIntTemp[ 1 ]; // Временный массив.
   //----
   if ((Switch && !IsExpertEnabled()) || (!Switch && IsExpertEnabled()) )  {
     HandlMT4 = GetAncestor (HandlWindow, 2 ); 
     HandlToolbar = GetDlgItem (HandlMT4, 0x63 );
     ArIntTemp[ 0 ] = HandlToolbar;
     SendMessageA (HandlMT4, WM_COMMAND, 33020 , ArIntTemp);
  }
}
 
Xopb :

얼마나 많은 양초가 더 높게 닫혔는지 알아내야 합니다.   이동 평균 과 얼마나 낮은지.

1. 계산하려는 순간부터 스스로 결정하십시오.

2. 두 개의 요소가 있는 배열을 만듭니다.

3. 원하는 요소에 각 양초에 하나씩 추가하십시오.

4. 언제 계산을 중단할지 결정합니다.


이동 평균 은 가격의 후행 꼬리입니다. 이익은 거기에 살지 않습니다.

 
Aleksei Stepanenko :

1. 계산하려는 순간부터 스스로 결정하십시오.

2. 두 개의 요소가 있는 배열을 만듭니다.

3. 원하는 요소에 각 양초에 하나씩 추가하십시오.

4. 언제 계산을 중단할지 결정합니다.


이동 평균 은 가격의 후행 꼬리입니다. 이익은 거기에 살지 않습니다.

고마워요 알렉세!

배열을 추가할 위치와 작동하도록 할 위치를 알려주시겠습니까?

 for ( int i= 1 ;i<= 10 ;i++)             //допустим надо проверить 10 свечей выше или ниже МА в момент когда обратились к этому оператору
     {    
     double hig10 = iMA ( NULL , PERIOD_H1 , 10 , 0 , MODE_SMA , PRICE_CLOSE , i);
       if (hig10> iClose ( Symbol (), PERIOD_H1 ,i))
      {
     // тут выполняем - если все 10 свечей выше МА     
      }
       else
      {
     //тут выполняем - если если хотябы одна из свечей закрылась нижн MA
      }
      
     } 
     




 

구조를 만드는 것이 더 좋습니다.

 struct Count
   {
   int up;
   int dn;
   } count;

사용하기 전에 요소를 재설정하는 것을 잊지 마십시오.

count.up= 0 ;
count.dn= 0 ;

필요한 경우 점수를 추가로 높입니다.

count.up++;

//или
count.dn++;

그런 다음 비교

 if (count.up> 10 )
   {

   }
이제 각 양초에 대해 이전 10개 양초를 순환했습니다. 이것은 합리적이지 않습니다. 이전 값의 계산 결과를 기억하면서 항상 불필요한 주기를 제거해야 합니다. 귀하의 경우 새 양초 가 도착하면 조건이 충족되면 계정을 늘리고 조건이 충족되지 않으면 빼십시오. 그리고 초과가 있는지 확인하십시오. 10개 항목 루프는 필요하지 않으며 기본 루프만 있으면 됩니다.
 
Aleksei Stepanenko :

어드바이저 코드를 변경할 수 없으면 자동 거래를 비활성화하십시오. 다음은 내 코드가 아닌 코드입니다.

고맙습니다. 이 코드는 지정된 차트에 첨부된 특정 EA에 대한 자동 거래를 비활성화합니까? 아니면 터미널에서 일반 자동 거래?

 

모든 거래, 이 버튼: