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

 

저에게 전화를 걸기 전에 메타 트레이더 4를 등록했습니다. 이제 저에게 연락하여 웹 터미널 에서 수행할 수 있는 프로그램을 설치하는 데 도움을 줄 전문적인 사람입니다. ***

나는 새롭다. 누군가 나를 도와줄 수 있니?

아니면 누구에게 연락해야 하는지 알려주시겠습니까?

Вебтерминал для MetaTrader 5
Вебтерминал для MetaTrader 5
  • www.mql5.com
Подключайтесь к счету и торгуйте на финансовых рынках прямо из браузера
 

나는 그들이 여기에 쓰는지 모르겠지만 여기에 전체 상황이 있습니다. 프로그래밍에서 나는 내 발로 치아에 있지 않습니다.


친구가 자동 모드에서 Olympus에서 거래하기 위해 MT4 고문을 구입했습니다. 가상 머신 , Yandex 클라우드 또는 어딘가에 내가 이해하는 한 고문이 연결된 곳에서 켜집니다. 예를 들어, 동시에 여러 대의 기계가 있는 하나의 계정에서 거래가 있는 경우 계정은 항상 확인이 필요합니다. 단독으로 거래하는 경우 원칙적으로 모든 것이 문제 없이 표시되지만 시도하면 비밀번호와 로그인으로 그가 보낸 주소로 이동하면 상황이 달라지고 항상 확인을 요청합니다. 그것은 무엇과 연결되어 있습니까? 쿠키를 주의 깊게 모니터링해야 합니까? 라우터에서 일부 설정을 변경할 수 있습니까? 아니면 가상 머신을 사용하여 개인적으로 새로 구입한 어드바이저가 필요합니까?

 
Юлия Кузубова :

저에게 전화하기 전에 메타 거래자 4를 등록했습니다. 이제 그들은 저를 전문화하여 웹 터미널 에서 누구에게 또는 제가 수행할 수 있는 프로그램 설치를 돕기 위해 저에게 연락할 것입니다 ***

나는 새롭다. 누군가 나를 도와줄 수 있니?

아니면 누구에게 연락해야 하는지 알려주시겠습니까?

Julia, 내 생각에 그들은 전에 당신을 "해산"시키려고했습니다 ... 아무도 전화를 걸어 거래 플랫폼을 설치하는 방법을 설명하지 않습니다. 자체적으로 매우 쉽게 설치됩니다.

 
Microslonik :

나는 그들이 여기에 쓰는지 모르겠지만 여기에 전체 상황이 있습니다. 프로그래밍에서 나는 내 발로 치아에 있지 않습니다.


친구가 자동 모드에서 Olympus에서 거래하기 위해 MT4 고문을 구입했습니다. 가상 머신 , Yandex 클라우드 또는 어딘가에 내가 이해하는 한 고문이 연결된 곳에서 켜집니다. 예를 들어, 동시에 여러 대의 기계가 있는 하나의 계정에서 거래가 있는 경우 계정은 항상 확인이 필요합니다. 단독으로 거래하는 경우 원칙적으로 모든 것이 문제 없이 표시되지만 시도하면 비밀번호와 로그인으로 그가 보낸 주소로 이동하면 상황이 달라지고 항상 확인을 요청합니다. 그것은 무엇과 연결되어 있습니까? 쿠키를 주의 깊게 모니터링해야 합니까? 라우터에서 일부 설정을 변경할 수 있습니까? 아니면 가상 머신을 사용하여 개인적으로 새로 구입한 어드바이저가 필요합니까?

몇 가지 기적. 아마도 이 질문은 이 리소스에 대한 것이 아닙니다.

 

안녕하세요!

친애하는 프로그래머 여러분, 특정 채널에서 캔들 카운팅을 구현하는 방법을 알려주십시오. 코드는 다음과 같습니다.

 extern string Symbol3 = "" ; //Инструмент (""текущий по умолчанию)
extern int P= 5 ;           //Таймфрейм


#include <ChartObjects\ChartObjectsLines.mqh>


CChartObjectHLine hLine, lowLine;

double    PRH= 0 ;
double    PRL= 0 ;

int OnInit () 
{
lowLine.Create( 0 , "lowLine" , 0 , 0 );
lowLine.Color( clrDarkViolet ); 
hLine.Create( 0 , "hLine" , 0 , 0 );
hLine.Color( clrDodgerBlue );
return ( INIT_SUCCEEDED );
}
void OnDeinit ( const int reason) {
}

int start()
{

double ATR1= MathAbs ( iATR ( NULL ,P, 1 , 1 ))/ Point ;


if (ATR1>= 100 )
{
double    h1 = iHigh ( NULL , PERIOD_CURRENT , 1 );   // условие образования уровней
double    l1 = iLow ( NULL , PERIOD_CURRENT , 1 );
}


if (ATR1>= 100 ) // установление уровней
{
PRH = h1; // то это будет уровень max
hLine.Price( 0 , PRH);

PRL = l1; // то это будет уровень min
lowLine.Price( 0 , PRL);
}




if ((Close[ 1 ]<=PRH)&&(Close[ 1 ]>=PRL)) // ??? Условие отсчёта свечей
{
datetime some_time= TimeCurrent ();
int k= iBarShift ( "" , PERIOD_CURRENT ,some_time);
}


Comment ( "КОЛЛИЧЕСТВО СВЕЧЕЙ В КАНАЛЕ =================: " ,k, "\n" );

return ( 0 );
}

일반적으로 다음이 필요합니다. 채널 내부에 촛불 개수가 있어야 합니다. 그리고 가격이 경계를 넘어서는 즉시 카운터는 0으로 재설정됩니다.

 

솔루션은 매우 간단합니다.


 if ((Close[ 1 ]<=PRH)&&(Close[ 1 ]>=PRL))
{
int k= iBarShift ( "" ,P,some_time); 
}
else
{
PRH= 0 ;
PRL= 0 ;
}

Comment ( "КОЛЛИЧЕСТВО СВЕЧЕЙ В КАНАЛЕ =================: " ,k, "\n" );

따라서 질문은 지금 관련이 없습니다.
 

안녕하세요!


누구든지 이 문제가 발생하면 알려주십시오.

MT5 테스터, 다중 통화 고문. 테스터에서 5자리 견적(EURUSD, AUDUSD 등)이 있는 기본 쌍을 선택하면 다중 통화 어드바이저 USDJPY, GBPJPY, 즉 3자리 따옴표를 사용하면 잘못 작동하기 시작합니다. 3자리 페어 의 경우 테스터에서 3자리 페어를 기본으로 선택하는 것과 다르게 비뚤어진 방식으로 거래가 열립니다. 이 배열에서는 모든 것이 좋습니다.



다음은 코드입니다(비슷한 것을 판매하기 위해 Buy2()를 구매하는 기능 하나만 게시했습니다.


 void    OnInit ()
  {
    hig4= iCustom ( "USDJPY" ,CP, "Examples\\1" ,Length);
   hig5= iMA ( "USDJPY" ,CP, 1 ,SHIFT, MODE_SMA , PRICE_HIGH );
   hig6= iMA ( "USDJPY" ,CP, 1 ,SHIFT, MODE_SMA , PRICE_LOW );
}

void OnTick ()
  {
CopyBuffer (hig6, 0 , 0 , 2 ,ss211);
         CopyBuffer (hig5, 0 , 0 , 2 ,ss111);
         CopyBuffer (hig4, 0 , 0 , 3 ,ss11);

   if ( OrderSelect (Bticket100,SELECT_BY_TICKET== true )&&OrderCloseTime()== 0 )
        {
         if (ss211[ 0 ]<ss11[ 0 ]&&(ss111[ 0 ]+L* _Point )<ss11[ 0 ]&&b1== 1 )
           {
            Sell0();
            c1= 1 ;
            b1= 0 ;
           }
         if ((ss211[ 0 ]-n* _Point )>ss11[ 0 ]&&ss111[ 0 ]>ss11[ 0 ]&&c1== 1 )
           {
            trade.PositionClose(Bticket1002);
            Buy1();
             OrderSelect (Bticket1002,SELECT_BY_TICKET,MODE_HISTORY);
            n11=(OrderProfit()+OrderSwap()+OrderCommission())+n11;
            b1= 1 ;
            c1= 0 ;
           }
        }
       else
        {
         if (ss211[ 0 ]<ss11[ 0 ]&&(ss111[ 0 ]+L* _Point )<ss11[ 0 ])
           {
            a1= 1 ;
           }
         if ((ss211[ 0 ]-n* _Point )>ss11[ 0 ]&&ss111[ 0 ]>ss11[ 0 ]&&a1== 1 )
           {
            Buy2();
            b1= 1 ;
            a1= 0 ;
           }
        }

void Buy2()
  {
   int MagicNumber= 3 ;
   trade.SetExpertMagicNumber(MagicNumber);
   double volume=LOTLOT;         
   string symbol= "USDJPY" ;     
   int     digits=( int ) SymbolInfoInteger (symbol, SYMBOL_DIGITS );  
   double point= SymbolInfoDouble (symbol, SYMBOL_POINT );       
   double bid= SymbolInfoDouble (symbol, SYMBOL_BID );             
   double SL= 0 ;                                
   SL= NormalizeDouble (SL,digits);                              
   double TP= 0 ;                                  
   TP= NormalizeDouble (TP,digits);                               
   double open_price= SymbolInfoDouble (symbol, SYMBOL_ASK );
   if (!trade.Buy(volume,symbol,open_price,SL,TP,comment))
     {
           Print ( "Метод Buy() выполнен успешно. DIGITS=" ,digits);
     }
   else
     {  
     }
   Bticket100 = trade.ResultOrder();
  }

 
Xopb :

안녕하세요!


누구든지 이 문제가 발생하면 알려주십시오.

MT5 테스터, 다중 통화 고문. 테스터에서 5자리 견적(EURUSD, AUDUSD 등)이 있는 기본 쌍을 선택하면 다중 통화 어드바이저 USDJPY, GBPJPY, 즉 3자리 따옴표를 사용하면 잘못 작동하기 시작합니다. 3자리 페어 의 경우 테스터에서 3자리 페어를 기본으로 선택하는 것과 다르게 비뚤어진 방식으로 거래가 열립니다. 이 배열에서는 모든 것이 좋습니다.



다음은 코드입니다(비슷한 것을 판매하기 위해 Buy2()를 구매하는 기능 하나만 게시했습니다.

귀하의 코드는 원칙적으로 작동하지 않아야 합니다.

설명서 읽기: OrderSelect - 기존 항목을 혼동하지 마십시오 .   주문을 보류   클라이언트 터미널의 "도구" 패널에 있는 "거래" 탭에도 표시되는 위치.

즉, OrderSelect는 POSITIONS가 아닌 PENDING ORDERS에 대한 작업을 위한 함수입니다.

Документация по MQL5: Торговые функции / OrderSelect
Документация по MQL5: Торговые функции / OrderSelect
  • www.mql5.com
Выбирает ордер для дальнейшей работы с ним. Возвращает true при успешном завершении функции. Возвращает false при неудачном завершении функции. Чтобы получить информацию об ошибке, необходимо вызвать функцию GetLastError(). Не следует путать между собой действующие отложенные ордера и позиции, которые также отображаются на вкладке "Торговля" в...
 
Vladimir Karputov :

귀하의 코드는 원칙적으로 작동하지 않아야 합니다.

설명서 읽기: OrderSelect - 기존 항목을 혼동하지 마십시오 .   주문을 보류   클라이언트 터미널의 "도구" 패널에 있는 "거래" 탭에도 표시되는 위치.

즉, OrderSelect는 POSITIONS가 아닌 PENDING ORDERS에 대한 작업을 위한 함수입니다.

블라디미르, 감사합니다! #include <MT4Orders.mqh>가 포함되어 있습니다. 모든 것이 잘 작동합니다. 물론 코드가 매우 서툴 수 있지만 이것은 실제 계정을 위한 것이 아닙니다. 3자리 숫자로 테스터에 설정된 모든 쌍이 다중 통화 어드바이저에 연결된 3자리 쌍에 대해서만 제대로 작동하는 이유는 명확하지 않습니다. 5자리 쌍을 넣으면 작동하지만 이미 다른 가격(인접 가격)에서 열립니다. 작동 원리 위반, 이유는 무엇입니까?

 
Xopb :

블라디미르, 감사합니다! #include <MT4Orders.mqh>가 포함되어 있습니다. 모든 것이 잘 작동합니다. 물론 코드가 매우 서툴 수 있지만 이것은 실제 계정을 위한 것이 아닙니다. 3자리 숫자로 테스터에 설정된 모든 쌍이 다중 통화 어드바이저에 연결된 3자리 쌍에 대해서만 제대로 작동하는 이유는 명확하지 않습니다. 5자리 쌍을 넣으면 작동하지만 이미 다른 가격(인접 가격)에서 열립니다. 작동 원리 위반, 이유는 무엇입니까?

이 경우 이전 터미널 섹션에 작성하십시오. 타사 라이브러리를 사용하면 두뇌를 재건할 수 없으며 오래된 용어와 개념에 영원히 사로잡힐 것입니다.

여기 순수한 MQL5 포럼이 있습니다.


다중 문자 MQL5 Expert Advisor는 훌륭하게 작동합니다. 차이는 없습니다. 2, 3 또는 5자입니다. 그러나 당신은 음모론을 계속 믿고 기술 진보의 편에 서 있습니다.