MetaTrader 4 Build 529 ベータ版リリース、新コンパイラー搭載 - ページ 22

 
Renat:

ビルド・ワン

64ビットWindows上の32ビットアプリケーションは、Program Files (x86)にのみインストールされますが、これはマイクロソフトの互換性要件です。

Users/AppDataエリアのデータディレクトリは、もはやゴミではなく、Microsoftの推奨事項(すべての開発者が長年気にしていなかった)でもなく、人生の厳しい真実なのです。最近のOSでは、マイクロソフトは、UACに対処する他の方法がないため、誰もが正しく動作するようにスレッジハンマーで叩いています。マスマーケットには、この方法しか残されていないのです。

端末のデータの大部分をローカルディレクトリに保存したり、ポータブル/トランスポータブル (フラッシュなど) モードで動作するようにするには、/portable フラグを使用します。ただし、個人を特定しない一般的なデータをUsers/AppDataに保存する場合は、まだこの限りではありません。

では、現在の509を含む古いビルドでは、私が指定したパラメータでUsers/AppDataに何も作成されないことをどう説明するのでしょうか。私が指定したパラメータで正確にという意味です。
 
Renat:

1.できます。MT5と同じようにウィンドウを作り直します。

2.ファイル-データディレクトリを開く "を見てください。これはパスが読み込まれる場所です

3.16x16から64x64(128x128)までのフルセット(1つのファイルに複数のアイコン)の.icoファイルを使用するのが良い。近い将来、オペレーティングシステムのインターフェイスに直接、プログラムがネイティブなアイコンで表示されるようになるでしょう。

  1. パーフェクト
  2. I looked up:D:\NewMT4EEE Shouldn't it be D:\NewMT4EEE MQL4EEE ?そして、もしそうでない場合は、"gucci.ico";?gucci.ico.ico.ico.ico.ico.ico.ico.ico.ico.icoになるはず。
  3. このようなセットを作成するソフトはありますか?グラフィックは300年ぶり。
(笑): ありがとうございます。
 
artmedia70:
  1. ファイン
  2. I looked up:D:\NewMT4EEE Shouldn't it be D:\NewMT4EEE MQL4EEE ?そして、そうでない場合は、パスの中に"˶‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾;" とあるはずです。
  3. これらのキットを作成するためのソフトはありますか?300年ぶりのグラフィック。
ありがとうございます。

2. 端末は、MQL4フォロワーが自動的に追加されることを知っています。だから ちゃんと書いてあるんだよ。 \ \s

3.いろいろ見て回る - ICON Studioは、無料のものも含め、いろいろなものがリリースされています。

 
Renat:

2. 端末は、MQL4フォロワーが自動的に追加されることを認識しています。だから ちゃんと書いてあるんだよ。 \ \s

3.いろいろ探してみよう - ICON Studioは、無料のものも含めて、いろいろなものがリリースされています。


ありがとうございました。
 
Barbarian:
では、現在の509を含む古いビルドでは、私が指定したパラメータでUsers/AppDataに何も作成されないことをどう説明するのでしょうか?私が言ったパラメータで正確にということです。

理由は、誰かがマイクロソフトの要求を気にせず、長年にわたり権利管理の仕組みに逆らって働いていたからです。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%機能していますが、唯一欠けているのは未来へシフトする可能性です)。

しかし、未来を見るためには、時系列を過去にシフトする必要があります。

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 (llow,Low) と ArrayCopySeries (llow, 1) については ArrayCopy (llow,Low ) の一部の関数がArrayCopySeries (llow, 1) と比較して誤った値を返すことから、誤った動作をするという最初の見解が示されました。 しかし、ArrayCopy (llow,Low) と ArrayCopySeries (llow, 1) によって 得られた両方の配列の値の差を探すループを開始すると、考えられるすべてのカウントエラーに対して0(配列のメンバーは完全に等しい)だけが得られました。時々、Low = 1.351400000000000000 のような興味深い値も得られますが、その差は常に 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;
 }

その結果、2つの配列に対する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 (llow2,5,5) の場合、5, 4, 3, 2, 1 のバーが注目されることになります。

こうあるべき?