초보자의 질문 MQL5 MT5 MetaTrader 5 - 페이지 1197

 
Alexey Viktorov :

테스터에 표시하려면? 있다. 필요한 모든 지표가 포함된 템플릿을 만들고 어드바이저 이름 또는 테스터 이름으로 저장하면 이러한 설정으로 테스트가 열립니다.

실제 차트와 데모 계정 차트에서.

 

인사말!

Maxim Gutman에 연락하는 방법을 아는 사람이 있습니까?

트레이더, 트레이딩 자동화 시스템 개발자

 
odyn :

실제 차트와 데모 계정 차트에서.

음, 예를 들어 MACD

나머지는 모두 동일합니다.

 

좋은 오후입니다. pliz에게 말하거나 볼 수 있는 링크를 보내주세요.

수명이 특정 기간을 초과하는 공개 위치에서 선택해야 할 필요가 있었습니다.

포지션 오픈 시간 과 현재 시간을 정확히 비교하는 방법 ,,,???

그냥 그런 기능을 던졌는데 다음에 할게 생각나지 않는데(경험이 거의 없음), 시간을 비교하면 ???

 //+------------------------------------------------------------------+
bool Selected_Positions_Time_Life( datetime time_life, int &array_base[][observations])
{
int n = 0 ;
int size = ArrayRange (array_base, 0 );

for ( int i= 0 ; i<size; i++)
{
   int index  = Arr_Position[i][ 0 ];
   int ticket = m_position.SelectByIndex(index);
   datetime tl = m_position.Time();
   datetime tc = TimeCurrent ();
 //Вот тут наверное нужно сравнить tl и tc 
 //и если разница превышает time_life, то это наша позиция
}

return (n> 0 );
}
//+------------------------------------------------------------------+
 
Sergey Voytsekhovsky :

좋은 오후입니다. pliz에게 말하거나 볼 수 있는 링크를 보내주세요.

수명이 특정 기간을 초과하는 공개 위치에서 선택해야 할 필요가 있었습니다.

포지션 오픈 시간 과 현재 시간을 정확히 비교하는 방법 ,,,???

그냥 그런 기능을 던졌는데 다음에 할게 생각나지 않는데(경험이 거의 없음), 시간을 비교하면 ???

루프에서 위치를 선택하고 티켓을 받으세요

 ulong posTicket = PositionGetTicket (i);

다음은 포지션 오픈 시간을 얻습니다.

 PositionGetInteger ( POSITION_TIME )
기준 시간 ±와 비교합니다.
 
Alexey Viktorov :

루프에서 위치를 선택하고 티켓을 받으세요

다음은 포지션 오픈 시간을 가져옵니다.

그리고 기준시간 ±와 비교한다.

이 비교 절차를 플리즈, 포지션 티켓과 함께 던지고, 오픈 시간과 서버 시간, 나는 일종의 알아 냈어, 비교할 수 없다. 댓글을 보니 날짜만 나오네요.

 
Sergey Voytsekhovsky :

이 비교 절차를 플리즈, 포지션 티켓과 함께 던지고, 오픈 시간과 서버 시간, 나는 일종의 알아 냈어, 비교할 수 없다. 댓글을 보니 날짜만 나오네요.

따라서 날짜를 비교하십시오. 그러나 불일치를 고려해야 합니다. 개방시간과 기준시간의 차이를 허용오차로 비교하는 것이 좋다.

 fabs (время_позиции - эталонное_время) < допустимого_отклонения // например 600 секунд
 
Alexey Viktorov :

따라서 날짜를 비교하십시오. 그러나 불일치를 고려해야 합니다. 개방시간과 기준시간의 차이를 허용오차로 비교하는 것이 좋다.

알렉세이 빅토로프 :

따라서 날짜를 비교하십시오. 그러나 불일치를 고려해야 합니다. 개방시간과 기준시간의 차이를 허용오차로 비교하는 것이 좋다.

수락되었습니다. 감사합니다. 컴퓨터를 사용하는 즉시 시도해 보겠습니다(이제 모바일에서).

 

안녕하세요.

차트에서 세로선을 시간별로 정렬하고 싶습니다. 작은 스크립트를 작성했습니다. 그러나 결과는 당신이 원하는 것이 전혀 아닙니다.

내가 잘못 알고 있는 부분을 알려주세요.

 void OnStart ()
{
int       vlines            = 0 ;
string    vlines_name[];
string    vlines_name_sort[];
datetime tm[];

   vlines = ObjectsTotal ( ChartID (), 0 , OBJ_VLINE );
   if (vlines < 20 * 2 )
   {
       Print ( "вертикальных линий меньше необходимиого. (" ,vlines, " < " , 20 * 2 , ")" );
       return ;
   }
   ArrayResize (vlines_name,vlines);
   ArrayResize (vlines_name_sort,vlines);
   
   for ( int i = 0 ; i < vlines; i++)
   {
      vlines_name[i] = ObjectName ( ChartID (),i, 0 , OBJ_VLINE );
   }
   ArrayPrint (vlines_name);
   
   for ( int i = 0 , n = 0 ; i < 9000 ; i++)
   {
       ArrayFree (tm);
       CopyTime ( Symbol (), Period (),i, 1 ,tm);
      
       for ( int a = 0 ; a < vlines - 1 ; a++)
      {
         datetime tml = ( datetime ) ObjectGetInteger ( ChartID (),vlines_name[a], OBJPROP_TIME );
         if (tml == tm[ 0 ])
         {
            vlines_name_sort[n++] = vlines_name[a];
             break ;
         }
      }
   }
   ArrayPrint (vlines_name_sort);
}

결과:

(GBPUSD,H6)     [ 0 ] "H6 Vertical Line 10771" "H6 Vertical Line 10884" "H6 Vertical Line 12743" "H6 Vertical Line 1371"    "H6 Vertical Line 14306"
(GBPUSD,H6)     [ 5 ] "H6 Vertical Line 16501" "H6 Vertical Line 17907" "H6 Vertical Line 20277" "H6 Vertical Line 23365" "H6 Vertical Line 28358"
(GBPUSD,H6)     [ 10 ] "H6 Vertical Line 28756" "H6 Vertical Line 29445" "H6 Vertical Line 30340" "H6 Vertical Line 31840" "H6 Vertical Line 32885"
(GBPUSD,H6)     [ 15 ] "H6 Vertical Line 33779" "H6 Vertical Line 34048" "H6 Vertical Line 38532" "H6 Vertical Line 38756" "H6 Vertical Line 39075"
(GBPUSD,H6)     [ 20 ] "H6 Vertical Line 39458" "H6 Vertical Line 39649" "H6 Vertical Line 40385" "H6 Vertical Line 41116" "H6 Vertical Line 4150" 
(GBPUSD,H6)     [ 25 ] "H6 Vertical Line 41900" "H6 Vertical Line 42820" "H6 Vertical Line 43071" "H6 Vertical Line 46245" "H6 Vertical Line 48196"
(GBPUSD,H6)     [ 30 ] "H6 Vertical Line 50258" "H6 Vertical Line 50374" "H6 Vertical Line 55171" "H6 Vertical Line 56003" "H6 Vertical Line 56400"
(GBPUSD,H6)     [ 35 ] "H6 Vertical Line 57565" "H6 Vertical Line 59075" "H6 Vertical Line 59881" "H6 Vertical Line 59969" "H6 Vertical Line 63122"
(GBPUSD,H6)     [ 40 ] "H6 Vertical Line 63540" "H6 Vertical Line 63904" "H6 Vertical Line 64359" "H6 Vertical Line 64420" "H6 Vertical Line 65200"
(GBPUSD,H6)     [ 45 ] "H6 Vertical Line 6695"    "H6 Vertical Line 7743"    "H6 Vertical Line 8707"    "H6 Vertical Line 9491"    "H6 Vertical Line 9662" 

(GBPUSD,H6)     [ 0 ] "H6 Vertical Line 46245" "H6 Vertical Line 39075" "H6 Vertical Line 40385" "H6 Vertical Line 55171" "H6 Vertical Line 31840"
(GBPUSD,H6)     [ 5 ] "H6 Vertical Line 63904" "H6 Vertical Line 6695"    "H6 Vertical Line 59075" "H6 Vertical Line 28358" "H6 Vertical Line 10884"
(GBPUSD,H6)     [ 10 ] "H6 Vertical Line 38532" "H6 Vertical Line 29445" "H6 Vertical Line 23365" "H6 Vertical Line 64420" "H6 Vertical Line 7743" 
(GBPUSD,H6)     [ 15 ] "H6 Vertical Line 30340" "H6 Vertical Line 39649" "H6 Vertical Line 38756" "H6 Vertical Line 34048" "H6 Vertical Line 42820"
(GBPUSD,H6)     [ 20 ] "H6 Vertical Line 64359" "H6 Vertical Line 50374" "H6 Vertical Line 14306" "H6 Vertical Line 48196" "H6 Vertical Line 57565"
(GBPUSD,H6)     [ 25 ] "H6 Vertical Line 20277" "H6 Vertical Line 41116" "H6 Vertical Line 12743" "H6 Vertical Line 50258" "H6 Vertical Line 41900"
(GBPUSD,H6)     [ 30 ] "H6 Vertical Line 17907" "H6 Vertical Line 4150"    "H6 Vertical Line 59881" "H6 Vertical Line 56400" "H6 Vertical Line 10771"
(GBPUSD,H6)     [ 35 ] "H6 Vertical Line 63540" "H6 Vertical Line 65200" "H6 Vertical Line 9491"    "H6 Vertical Line 16501" "H6 Vertical Line 63122"
(GBPUSD,H6)     [ 40 ] "H6 Vertical Line 32885" "H6 Vertical Line 1371"    "H6 Vertical Line 33779" null                      null                     
(GBPUSD,H6)     [ 45 ] null                      null                      null                      null                      null                     
 
Сергей Таболин :

안녕하세요.

차트에서 세로선을 시간별로 정렬하고 싶습니다. 작은 스크립트를 작성했습니다. 그러나 결과는 당신이 원하는 것이 전혀 아닙니다.

내가 잘못 알고 있는 부분을 알려주세요.

결과:

논리적으로, 먼저 배열의 모든 라인을 수집해야 합니다. 저는 즉시 2차원 배열을 만들 것입니다. 우물 또는 구조의 배열을 만들고 첫 번째 차원에 생성 시간을 추가하고 두 번째 차원에 라인 이름을 추가합니다. .

루프에서 우리는 루프 외부에서 한 번의 실행으로 배열을 채우고 채운 후 첫 번째 차원, 즉 시간별로 배열을 정렬합니다.

두 번째 루프에서 결과를 표시합니다.

결과적으로 우리는 2개의 사이클과 그 사이를 정렬합니다.

문제를 올바르게 이해했다면 끝입니다. :)

사유: