MetaTrader 4 Build 529 베타가 새로운 컴파일러와 함께 출시됨 - 페이지 22

 
Renat :

하나를 구축하십시오.

64비트 Windows의 32비트 응용 프로그램은 Program Files(x86)에만 설치됩니다. 이는 Microsoft의 호환성 요구 사항입니다.

Users/AppData 영역의 데이터 디렉터리는 더 이상 쓰레기가 아니며 더 이상 Microsoft 권장 사항(모든 개발자가 수년간 침을 뱉어 냄)이 아니라 삶의 가혹한 진실입니다. 최신 운영 체제에서 Microsoft는 UAC에 대처할 수 있는 다른 방법이 없기 때문에 망치를 가진 모든 사람이 올바르게 작동하도록 했습니다. 대중 시장에서는 이것이 유일한 방법입니다.

터미널이 대부분의 데이터를 로컬 디렉토리에 저장하거나 휴대용/휴대용(예: 플래시 드라이브) 모드에서 작동하도록 하려면 /portable 플래그를 사용해야 합니다. 그러나 이것은 여전히 Users/AppData에 개인화되지 않은 일반 데이터의 저장에 적용되지 않습니다.

그렇다면 현재 509를 포함한 이전 빌드가 내가 Users/AppData에 지정한 매개변수를 사용하여 아무것도 생성하지 않는다는 것을 어떻게 설명할 수 있습니까? 정확히 내가 지정한 매개변수를 의미합니다.
 
Renat :

1. 할 수 있습니다. 우리는 MT5에서와 같은 형태로 창을 다시 만들 것입니다

2. "파일 - 데이터 디렉토리 열기"를 참조하십시오. 거기에서 경로가 고려됩니다

3. 16x16에서 64x64(128x128) .ico 파일까지 완전한 세트(하나의 파일에 여러 아이콘)를 사용하는 것이 좋습니다. 곧 OS 인터페이스에서 프로그램이 기본 아이콘과 함께 표시됩니다.

  1. 아주
  2. 검토: D:\NewMT4\ D:\NewMT4\MQL4\ 가 있어야 하지 않습니까? 그리고 그렇지 않은 경우 경로에 "\\MQL4\\files\\FindTwoFractals32x32.ico"를 작성해야 합니다. ???
  3. 그런 세트를 만드는 프로그램이 있습니까? 삼백년은 그래픽을 다루지 않았습니다.
고맙습니다.
 
artmedia70 :
  1. 아주
  2. 검토: D:\NewMT4\ D:\NewMT4\MQL4\ 가 있어야 하지 않습니까? 그리고 그렇지 않은 경우 경로에 "\\MQL4\\files\\FindTwoFractals32x32.ico"를 작성해야 합니다. ???
  3. 그런 세트를 만드는 프로그램이 있습니까? 삼백년은 그래픽을 다루지 않았습니다.
고맙습니다.

2. 터미널은 MQL4 폴더가 자동으로 추가되는 것을 알고 있습니다. 따라서 \\files로 올바르게 작성됩니다.

3. 보기 - 무료를 포함하여 다양한 ICON Studio가 출시되었습니다.

 
Renat :

2. 터미널은 MQL4 폴더가 자동으로 추가되는 것을 알고 있습니다. 따라서 \\files로 올바르게 작성되었습니다.

3. 검색 - 무료를 포함하여 많은 ICON 스튜디오가 출시되었습니다.


감사해요
 
Barbarian :
그렇다면 현재 509를 포함한 이전 빌드가 내가 Users/AppData에 지정한 매개변수를 사용하여 아무것도 생성하지 않는다는 것을 어떻게 설명할 수 있습니까? 정확히 내가 지정한 매개변수를 의미합니다.

누군가가 수년 동안 Microsoft의 요구 사항에 침을 뱉고 권한 제어 시스템에 도전하여 일했다는 사실. MT4의 누적된 문제점을 수정하고 있습니다.

현재 자신의 디렉토리에 활발히 쓰는 것을 대량 판매하려면 하드 UAC와 제한된 사용자 권한에 대해 직접 생각해야 합니다. 수백만 대의 컴퓨터가 설치되어 있다는 사실을 잊지 마십시오.

 

Renat, 새 빌드의 변경 사항 목록과 함께 간단한 발표를 게시할 수 있습니까? 그래서 우리는 맹목적으로 테스트하지 않습니다.

이러한 기능이 구현됩니까? 그냥 기다려야 하나요?

'ChartGetInteger' - function not defined

'ChartWindowFind' - function not defined

'AccountInfoString' - function not defined

'TimeTradeServer' - function not defined

'ExpertRemove' - function not defined

'AccountInfoInteger' - function not defined

 
ALXIMIKS :


내가 하려는 것은 MT4 509로 칠면조의 기능을 되돌리는 것뿐입니다(현재 90%에서 작동하며 미래로 이동할 가능성은 없습니다).

그러나 미래를 보기 위해서는 array-timeseries를 과거로 옮겨야 합니다.

요점을 들었습니다. SetIndexShift( 0 , 1 );

아무것도 복사할 필요가 없습니다.

그리고 툴팁의 설명이 수정됩니다.

 
komposter :

Renat, 새 빌드의 변경 사항 목록과 함께 간단한 발표를 게시할 수 있습니까? 그래서 우리는 맹목적으로 테스트하지 않습니다.

이러한 기능이 구현됩니까? 그냥 기다려야 하나요?

목록에 " SymbolSelect "를 추가하겠습니다. 새로운 빌드에 대한 설명에 대한 소원에 +1.
 
komposter :

Renat, 새 빌드의 변경 사항 목록과 함께 간단한 발표를 게시할 수 있습니까? 그래서 우리는 맹목적으로 테스트하지 않습니다.

이러한 기능이 구현됩니까? 그냥 기다려야 하나요?

'ChartGetInteger' - function not defined

'ChartWindowFind' - function not defined

'AccountInfoString' - function not defined

'TimeTradeServer' - function not defined

'ExpertRemove' - function not defined

'AccountInfoInteger' - function not defined

시행됩니다.

다음 주에 대규모 테스트에 트레이더를 참여시키기 시작할 때 변경 사항 목록을 준비할 것입니다. 현재까지는 공지 없이 러시아어 포럼에서만 테스트를 진행하고 있습니다.

 
komposter :

SetIndexShift( 0 , 1 );

아무것도 복사할 필요가 없습니다.

그리고 툴팁의 설명이 수정됩니다.


그의 아이디어를 설명했습니다(그래프를 흔들고 현재를 과거에 붙이고 미래를 발명함), 명확하지 않다면 아아.......

양수 막대에 적절한 값으로 음수 막대에 필요한 것을 그리는 다른 방법을 제안하면 기쁠 것입니다.

(현재를 과거로 옮기고 미래에 대한 비전으로 보완하고 이 모든 것을 다시, 그러나 미래로 옮겼다)

ArrayCopy 의 경우(낮음, 낮음); 및 ArrayCopySeries(low, 1 ); 잘못된 작업에 대한 초기 생각 ArrayCopy (low,Low)ArrayCopySeries(llow, 1 )를 사용하는 것과 비교하여 일부 기능의 잘못된 반환 값에서 비롯되었습니다. 그러나 ArrayCopy (llow,Low) 및 ArrayCopySeries(llow, 1 ) 에 의해 얻은 두 배열의 구성원 값의 차이를 반복하는 주기를 구축한 결과 계산 정확도의 모든 변형에 대해 0만 얻었습니다(배열 구성원은 절대적으로 평등). 때때로 흥미로운 값이 뛰었습니다. Low = 1.351400000000000000000000000001 ; 그러나 그 차이는 항상 0이었습니다. 그런 다음 표시기 버퍼 의 값을 얻기 위해 배열을 전달하는 함수를 한 줄씩 구문 분석했습니다.

그리고 ArrayMaximum에 대한 흥미로운 데이터를 얻었습니다. 코드:

 int z=       100 ;         // z- количество баров для проверки
     delt=     2 ;         // delt - количество баров для выборки в функции ArrayMaximum()
     poz_max1= 0 ;         // poz_max1- значение(номер бара) получаемое от функции ArrayMaximum() для массива получаемого от ArrayCopySeries (llow1,   1);
     poz_max2= 0 ;         // poz_max2- значение(номер бара) получаемое от функции ArrayMaximum() для массива получаемого от ArrayCopy       (llow2, Low);

 double llow1[];         //  массив получаемый от ArrayCopySeries (llow1,   1);
        llow2[];         //  массив получаемый от ArrayCopy       (llow2, Low);

 ArrayCopySeries (llow1,   1 );  
 ArrayCopy        (llow2, Low);
 
 while ( true ){                                     // цикл проверки разности с динамической точностью
     for ( int i =z;i>= 0 ;i--){                       // цикл проверки разности с статической  точностью
       poz_max1= ArrayMaximum (llow1, delt, i);     // находим бар с максимальным значением среди delt баров начиная с i для массива получаемого от ArrayCopySeries (llow1,   1);
       poz_max2= ArrayMaximum (llow2, delt, i);     // находим бар с максимальным значением среди delt баров начиная с i для массива получаемого от ArrayCopy       (llow2, Low);
    
       if (poz_max1-poz_max2>x){                   // проверяем или одинаковые результаты мы получили (еще не выучил закарлюки которые нада для красивого принта)
           Print ( "poz_max1[i]= " ,poz_max1, "   poz_max2[i]= " ,poz_max2, "   diff[i]= " ,poz_max1-poz_max2, "    i=" ,i); 
           Print ( "llow1[i]= " , llow1[i], "   llow2[i]= " ,llow2[i], "    i=" ,i); 
           Print ( "llow1[poz_max1]= " , llow1[poz_max1], "   llow2[poz_max1]= " ,llow2[poz_max1], "    i=" ,i); 
           Print ( "==========================================================" );  
          brc= true ;                               // флаг выхода 
       } 
    }
     if (brc== true ||x< 1 e- 15 ) return ( 0 );
    x/= 10 ;
 }

결과, 두 어레이에 대한 ArrayMaximum의 다른 구현

 2013.11 . 07 16 : 24 : 16      CopeSerrias EURUSD_t,H4: ==========================================================
2013.11 . 07 16 : 24 : 16      CopeSerrias EURUSD_t,H4:        llow1[i]= 1.3297           llow2[i]= 1.3297     i= 1
2013.11 . 07 16 : 24 : 16      CopeSerrias EURUSD_t,H4: llow1[poz_max1]= 1.3512    llow2[poz_max1]= 1.3297     i= 1
2013.11 . 07 16 : 24 : 16      CopeSerrias EURUSD_t,H4:     poz_max1[i]= 2             poz_max2[i]= 1         diff[i]= 1     i= 1
2013.11 . 07 16 : 24 : 16      CopeSerrias EURUSD_t,H4: ==========================================================
2013.11 . 07 16 : 24 : 16      CopeSerrias EURUSD_t,H4:        llow1[i]= 1.3501           llow2[i]= 1.3501      i= 4
2013.11 . 07 16 : 24 : 16      CopeSerrias EURUSD_t,H4: llow1[poz_max1]= 1.3512    llow2[poz_max1]= 1.3501     i= 4
2013.11 . 07 16 : 24 : 16      CopeSerrias EURUSD_t,H4:     poz_max1[i]= 5             poz_max2[i]= 4          diff[i]= 1     i= 4
2013.11 . 07 16 : 24 : 16      CopeSerrias EURUSD_t,H4: ==========================================================

결론: ArrayCopy (llow,Low) 및 ArrayCopySeries(llow, 1 ) 를 사용하여 얻은 배열에 대한 ArrayMaximum()의 반복 값 은 다른 방향으로 이동합니다.

을 위한 ArrayCopy (llow2,Low) ArrayMaximum() 함수를 사용할 때 막대가 앞으로 트래버스됩니다.

ArrayMaximum (low2, 5, 5) 막대의 경우 5, 4, 3, 2, 1이 고려됩니다.

이래야 하는건가요?????????????????