MetaTrader 4の最新のアップロード

MetaTrader 4FX取引プラットフォーム

16 12月 2016
MetaTrader 4ビルド1031
クラッシュレポートに基づいていくつかのバグを修正しました。
14 10月 2016
MetaTrader 4ビルド996
  1. 新バージョンには、トレーダーと他のMQL5.communityメンバーのチャットを可能にする無償のチャット機能が内蔵されています。メッセージ受信者のセクションに相手のユーザーのログインを指定し、そのモバイルデバイスに直接メッセージを送信します。

  2. ンディケータレベル編集機能の追加。
  3. インドネシアとヒンディー語へのインターフェイスの翻訳を追加。
30 8月 2016
iOS版MetaTrader 4ビルド975
  1. メッセージの外観が一新されました。これからはMQL5.communityでのメッセージのやり取りやデスクトッププラットフォームからの通知は、人気のモバイルメッセンジャーで見慣れたチャット仕様で表示されます。

  2. プラットフォームは22か国語に切り替えることができます。取引で英語を選択する場合には、デバイスの言語は変えずに、『設定』ページ(iPad版では『詳細』ページ)で英語をオンにしてください。

18 8月 2016
MetaTrader 4プラットフォームの新バージョン build 1010: MQL4の機能拡張

ターミナル

  1. Windows 10(build 1607)の32bit版での動作時にターミナルでMQL4プログラムの実行ができないエラーが修正されました。
  2. いくつかのケースで検索ボタンとチャットボタンが正しく表示されないエラーが修正されました。
  3. いくつかのケースでデモ口座を開いた時に、ターミナルに受信したメッセージの絵文字が重複するエラーが修正されました。

MQL4

  1. 抽象オブジェクトのコレクションを作成する'void *'ポインタが追加されました。このタイプの変数に任意のクラスのオブジェクトへのポインタを格納することができます。逆変換には dynamic_cast<クラス名 *>演算子(void *ポインタ)を使用することをお勧めします。キャストができない場合、結果はNULLとなります。
    class CFoo { };
    class CBar { };
    //+------------------------------------------------------------------+
    //| Script program start function                                    |
    //+------------------------------------------------------------------+
    void OnStart()
      {
       void *vptr[2];
       vptr[0]=new CFoo();
       vptr[1]=new CBar();
    //---
       for(int i=0;i<ArraySize(vptr);i++)
         {
          if(dynamic_cast<CFoo *>(vptr[i])!=NULL)
             Print("CFoo * object at index ",i);
          if(dynamic_cast<CBar *>(vptr[i])!=NULL)
             Print("CBar * object at index ",i);
         }
       CFoo *fptr=vptr[1];  // ポインタを与えるエラー、vptr[1]はCFooオブジェクトではありません
      }
    //+------------------------------------------------------------------+
  2. インデックスの文字列からシンボルを取得する、文字列の為の[ ]演算子のサポートが追加されました。指定したインデックスが文字列の範囲外である場合、結果は0となります。
    string text="Hello";
    ushort symb=text[0];  // シンボル'H'のコードを返します
    
  3. 履歴とティックデータのコピー機能CopyXXXがより高速になりました。
  4. ObjectDeleteAll関数を使った接頭辞のグラフィックオブジェクトの質量削除のエラーを修正しました。以前はこの関数の実行後に残りのオブジェクトの描画に乱れが発生していました。
  5. いくつかのケースで時間軸の変更時にグラフィックオブジェクトの表示が乱れるエラーを修正しました。

ホスティング

  1. 今後、ターミナルとバーチャルサーバーとの同期に、カスタムインディケータを実行している場合でも、エキスパートアドバイザの ないチャートは含まれません。使用中のカスタムインディケータを個別に移行するには、インディケータのチャートに何のアクションも起こさない『空の』イン ディケータを起動してください。これはMQL4ウィザードを介してMetaEditorで、『エキスパートアドバイザ:テンプレート』を選択することで簡 単に生成することができます。これによって、カスタムインディケータの移行を意識的に行うことができます。
  2. これからは名前に非ラテン文字を含む(例えば、キリル文字や漢字など)カスタムインディケータやエキスパートアドバイザを同期させることができます。

クラッシュログで報告された不具合を修正しました。

1 7月 2016
MetaTrader 4プラットフォームの新バージョン build 985:内蔵MQL5.communityチャット

ターミナル

  1. 内蔵チャットが追加されました。取引プラットフォームから直接MQL5.communityの 友達や仲間と、インスタントメッセージをやり取りすることができます。チャットにはメッセージの完全履歴と未読数が表示されます。使用前に、チャット画面 やプラットフォームの設定から自分のアカウントにログインしてください。(ツール->設定->コミュニティ)




  2. ターミナル起動時に内部メールのデータベースの読み込みが最適化されました。

MQL4

  1. 任意のチャート上の価格およびタイムラインの表示/非表示の機能が追加されました。以前はMQL4プログラムは、実行されている チャートのCHART_SHOW_PRICE_SCALEとCHART_SHOW_DATE_SCALEのみ変更することができました。
  2. MarketInfo関数の為のMODE_CLOSEBY_ALLOWEDプロパティが追加されました。TRUE値は指定された商品にClose By(反対ポジションの決済)の操作が許可されていることを意味しています。
  3. 誤ったパラメータ値に繋がっていた、文字列パラメータのエントリーポイントOnChartEventへの引き渡しが修正されました。OnChartEventは、チャートイベントの追跡をすることができます(キーボードのキーを押す、マウスの移動など)。
  4. ObjectsDeleteAll関数を使ったグラフィックオブジェクトの大量削除が高速化されました。
  5. シグナル:RUBとRURを含む通貨ペアの自動比較が改善されました。

テスター

  1. テスト中のグラフィックオブジェクトの作成時間が修正されました。以前はテスト時間の代わりにターミナルの現在時刻になっていました。

メタエディター

  1. 置換えダイアログを開く際の、置換えテキストフィールドのフォーカス設定が修正されました。
  2. メタエディター:現在の位置から上に検索をする場合のテキストの複数の置換が修正されました。
  3. クラッシュログで報告された不具合を修正しました。
3 6月 2016
MetaTrader 4プラットフォームの新バージョン ビルド970:デモ口座開設の簡素化およびMQL4の機能の拡張

ターミナル

  1. デモ口座の開設ダイアログが簡素化されました。これからは、長いアンケートを記入する必要はなく、基本的なデータを入力し、取引パラメータ(口座タイプ、証拠金、レバレッジ) を選択するだけで十分です。




MQL4

  1. MQL4言語における新機能追加に関連して、EX4実行ファイルの形式が変更されました。以前のビルドのMetaEditorでコンパイルされた全てのEX4プログラムは、更新後も正常に動作します。このようにして、上位互換性が完全に保たれます。

    同時に、970以降のビルドでコンパイルされたEX4プログラムは、以前のビルドのターミナルで動作することはなく、下位互換性はありません。

  2. 抽象クラスと純粋仮想関数のサポートが追加されました。

    抽象クラスは、将来におけるより具体的な派生クラスを作成する一般的なエンティティを作成する為に作られています。抽象クラスは、いくつかの他のクラスの為に基底クラスとして使用することができるだけなので、抽象クラスのオブジェクトタイプを作成することはできません。

    純粋仮想関数を一つでも含むクラスは、抽象クラスとなります。したがって、抽象クラスから派生したクラスは、その純粋仮想関数を実装する必要があり、そうしないと、これらは同様に抽象クラスになります。

    仮 想関数は、純粋指定子構文を使用し、『純粋』として宣言されます。例として、共通機能を提供する為だけ型に作成されるCAnimalクラスを見てみましょ う。CAnimalのオブジェクト自体は、実際の使用には一般的すぎます。したがって、CAnimalクラスは、抽象クラスの為の良い例となります。
    class CAnimal
      {
    public:
                          CAnimal();     // 構造体
       virtual void       Sound() = 0;   // 純粋仮想関数
    private:
       double             m_legs_count;  // 足数
      };
    ここでのSound()関数は、純粋仮想関数PURE(=0)の指定子で宣言されている為、純粋仮想となります。

    (=NULL)または(=0)と純粋指定子PUREが指定されている仮想関数のみが純粋仮想関数となります。抽象クラスの使用と宣言例:
    class CAnimal
      {
    public:
       virtual void       Sound()=NULL;   // PUREメソッドは派生クラスで―バーライドする必要があり、CAnimalクラス自体は抽象クラスになり、作成されません
      };
    //--- 抽象クラスからの子
    class CCat : public CAnimal
     {
    public:
      virtual void        Sound() { Print("Myau"); } // PUREはオーバーライドされ、CCatクラスは抽象クラスで、作成できます
     };
    
    //--- 誤用例
    new CAnimal;         // 'CAnimal'エラーーコンパイラはエラー"cannot instantiate abstract class"を出します
    CAnimal some_animal; // 'CAnimal'エラー - コンパイラはエラー"cannot instantiate abstract class"を出します
    
    //--- 正しい使用例
    new CCat;  // エラーなし - CCatは抽象暮らしではない
    CCat cat;  // エラーなし - CCatは抽象クラスではない
    抽象クラスの使用の制限
    純粋仮想関数(直接または間接)の抽象クラスのコンストラクタによる呼び出しの際、結果は未定義になります。
    //+------------------------------------------------------------------+
    //| 抽象基底クラス                                               |
    //+------------------------------------------------------------------+
    class CAnimal
      {
    public:
       //--- 純粋仮想関数
       virtual void      Sound(void)=NULL;
       //--- 関数
       void              CallSound(void) { Sound(); }
       //--- コンストラクタ
       CAnimal()
        {
         //--- 仮想メソッドの明示的呼び出し
         Sound();
         //--- 暗黙的呼び出し(第三の関数を介して)
         CallSound();
         //--- 仮想性や子孫における関数呼び出しの再定義に関わらず
         //--- コンストラクタまたはデストラクタでは常に自分の関数が呼び出されます
         //--- もし呼び出される関数が純粋仮想の場合
         //--- 呼び出しは重大な実行エラー"pure virtual function call"をもたらします
        }
      };
    しかしながら、抽象クラスのコンストラクタとデストラクタは、他のメンバー関数を呼び出すことができます。

  3. イベントモデルの構成の簡素化の為に、関数へのポインターのサポートが追加されました。

    関数へのポインターを宣言する為には、『関数へのポインター』のタイプを明確にしてください。
    typedef int (*TFunc)(int,int);
    これで、TFuncがタイプとなり、変数の関数ポインターを宣言することができます。
    TFunc func_ptr;
    func_ptr変数に、以後の呼び出しの為に、関数へのポインタを保存することができます。
    int sub(int x,int y) { return(x-y); }
    int add(int x,int y) { return(x+y); }
    int neg(int x)       { return(~x);  }
    
    func_ptr=sub;
    Print(func_ptr(10,5));
    
    func_ptr=add;
    Print(func_ptr(10,5));
    
    func_ptr=neg;           // エラー: negはint 型(int,int)を持っていません
    Print(func_ptr(10));    // エラー: 二つのパラメータがある必要があります
    関数のポインターを保存し、パラメータとして引き渡すことができます。クラスの非静的メソッドにポインターを取得することはできません。

  4. クライアントターミナルのプロパティENUM_TERMINAL_INFO_INTEGERに TERMINAL_SCREEN_DPI(画像の情報出力解像度は、DPIで測定される)が追加されました。このパラメータを知ることで、異なる解像度の モニターで同じように表示されるように、グラフィックオブジェクトのサイズを指定することができます。
  5. クライアントターミナルのプロパティENUM_TERMINAL_INFO_INTEGERにTERMINAL_PING_LAST(マイクロ秒単位の取引サーバーまでのPingの最新の既知値)が追加されました。1秒は100万マイクロ秒です。
  6.  カスタムインディケータのDRAW_NONEバッファ(チャート構築なし)は、これからはチャートウィンドウの最大/最小値の計算に関与しません。
  7. OBJ_LABELとOBJ_TEXTオブジェクト上でのマウスの動きやマウスのクリックに関連したイベントの作成が修正されました。以前は、これらが他 のOBJ_RECTANGLE_LABELとOBJ_RECTANGLEオブジェクトの範囲内にあった場合に、イベントが正常に作成されませんでした。
  8.  カスタムインディケータの高さゼロのヒストグラムバーの描写が修正されました。以前はこれらのバーは描写されませんでしたが、これからはこれらのバーは1ピクセルの高さで描写されます。

シグナル

  1. 利用可能なシグナルや購読者の取引商品の比較時の取引商品の検索エラーを修正しました。

テスター

  1. テスト設定で現在のスプレッドを使用している場合のfxtファイル内のスプレッド適用が修正されました。

マーケット

  1. マーケットのリスト表示のエラーを修正しました。

MetaEditor

  1. 『完全なワードのみ』モードにおけるファイルごとのワード検索が修正されました。
  2. 対応するファイルのコンパイル結果の列をダブルクリックすることでファイルへ移動することができるようになりました。
  3. Windows XPの幾つかのコントロールエレメントの表示が修正されました。

クラッシュログで報告された不具合を修正しました。

18 5月 2016
MetaTrader 4 Android build 952
  1. 取引についての詳細情報が書かれたポップアップウィンドウが登場しました。一度触れるだけで、注文の発注時間と決済時間やポジションへの自分のコメントを参照したり、ブローカーコミッションのサイズを知ることができます。
  2. チャートに最後のバーのAsk価格に対応する赤いラインを追加しました。これは、自分の取引をより正確に制御するのに役立ちます。
  3. ニュース関連の動作が効率化されました。これからは、あなたに興味のあるメッセージカテゴリだけを選択して読むことができ、お気に入りに気に入ったものを追加することができます。
  4. 全ての変更は、アプリケーションを閉じた時に、分析オブジェクトの設定に保存されます。
6 5月 2016
MetaTrader 4 iOS build 947

これからはアプリケーションへのアクセスの為にPINコードを設定することができます。あなたのアカウントは、モバイルデバイスを無くした場合にもしっか りと守られます。アプリケーションの設定で『画面ロック』をオンにしてください。デフォルトではワンタイムパスワード生成器へのアクセスの為のものと同じ PINコードが使用されます。

新しいバージョンには、多くの改善と修正も含まれています。

23 2月 2016
MetaTrader 4ウェブプラットフォーム:テクニカルインディケータのフルセットと38か国語のインターフェイス

MetaTrader 4ウェブプラットフォームの新バージョンに、テクニカル分析の為のフルセットが加わりました。これからは30出井の最も人気のテクニカルツールを、デスクトップ版MetaTrader 4と同様に利用することができます。

アクセラレータオシレーター
DeMarker 移動平均
Accumulation/Distribution  エンベロープ オシレーターの移動平均
アリゲーター フォースインデックス
バランスボリューム
平均方向性指数 フラクタル パラボリックSAR 
平均トゥルーレンジ
ゲイターオシレーター 相対力指数 
オーサムオシレーター 一目均衡表 相対的活力指数
ベアーズパワー
MACD 標準偏差
ボリンジャーバンド
マーケットファシリテーションインデックス
ストキャスティクスオシレーター
ブルズパワー
モメンタム ボリューム
コモディティチャンネル指標
マネーフローインデックス ウィリアムズパーセントレンジ

アプリケーションの現地化の作業が進められています:ウェブプラットフォームインターフェイスは世界38か国語で利用することができます。さらに14か国語が追加されました。

オランダ語
リトアニア語 クロアチア語
ギリシャ語 ルーマニア語 チェコ語
ヘブライ語 セルビア語
スウェーデン語
イタリア語 スロベニア語
エストニア語
ラトビア語
フィンランド語



今すぐウェブプラットフォームを開き、アプリケーションの更新をご評価ください!

15 2月 2016
MetaTrader 4ウェブプラットフォーム:ビル・ウィリアムスのインディケータが追加されました

MetaTrader 4ウェブプラットフォームの最新バージョンでは、最新技術のWebGLを採用することで、チャート動作が大幅にスピードアップし、これからは一度に沢山のインディケータを起動させても、ウェブプラットフォームのパフォーマンスに影響を与えません。

テクニカルインディケータの導入作業が始まりました。現時点で、ビル・ウィリアムスのインディケータがすでに利用できます。

  1. アリゲーター
  2. フラクタル
  3. マーケットファシリテーションインデックス
  4. オーサムオシレーター
  5. アクセラレータオシレーター
  6. ゲイターオシレーター
アプリケーションの現地化の作業が進められています:インターフェイスがヒンディー語、ウズベク語、ウクライナ語に翻訳されました。
15 1月 2016
MetaTrader 4 iOS build 945
  • iPadのポートレートモードを利用できるようになりました。これからは、長い取引操作リストや、メール、金融ニュースを快適に一覧することができます。
  • iPad Proのネイティブサポート。
  • 韓国語が追加されました。
23 12月 2015
MetaTrader 4 build 950: Built-in video and performance improvements

ホスティング

  1. 仮想サーバのダイアログにチュートリアルビデオ『仮想プラットフォームをレンタルする方法』へのリンクが追加されました。このビデオは2分程度です。いかに年中無休のコピートレードや取引ロボットの起動を簡単に行えるかを是非ご覧ください。


    このビデオや、その他のビデオはYoutubeのMetaQuotes Software Corp.公式チャンネルにてご覧いただけます。

ターミナル

  1. 『ナビゲーター』ウィンドウのサブフォルダのMQL4プログラムのソートを修正しました。 ソートは名前順に行われます。
  2. 高解像度の画面(4K)での動作時のネット接続状況のインディケータの表示を修正しました。
  3. ニュースの印刷前のプレビューウィンドウの表示を修正しました。
  4. ターミナル、エキスパートアドバイザ、テスター、そして仮想ホスティングのログビューアにフル機能検索が追加されました。検索は、前方・後方、MatchCase、完全一致で行うことができます。

MetaEditor

  1. MQL4マスターにチュートリアルビデオ『取引ロボットの作成方法』のリンクが追加されました。この3分程のビデオをご覧いただき、1つのコード配列も書くことなく、取引ロボットを作成してください。


    このビデオや、その他のビデオはYoutubeのMetaQuotes Software Corp.公式チャンネルにてご覧いただけます。

MQL4

  1. 関数SignaBaseTotalによって返される値を修正しました。いくつかのケースで、ターミナルの利用可能シグナルの総数に代わり、0が返されていました。
  2. MQL4プログラムからの様々な時間軸でのグラフィックオブジェクトの見た目が変化するエラーを修正しました。いくつかのケースで、このプロパティを変更した後に、チャート上にオブジェクトが反映されていませんでした。

テスター

  1. テスト結果ウィンドウでのストップロス/テイクプロフィット、および価格の値の表示を修正しました。
クラッシュログで報告された不具合を修正しました。


11 12月 2015
MetaTrader 4 build 940: 高解像度画面への適応

ターミナル

  1. 高解像度の画面での動作へのインターフェースの適応作業が完了しました。大きなサイズの画面での、インターフェイスの全てのエレメントがはっきりと表示されます。小さなサイズの画面では、読みやすさを維持する為、自動的にエレメントのサイズが調整されます。




MQL4

  1. MQL4: Windows 10での作業時、時折、コンパイルエラー『書込みエラーEX4』(Error writing EX4)を引き起こしていた不具合を修正しました。
  2. MQL4: スクリプトまたはエキスパートアドバイザで、時折、他のDLLのダウンロードが起こるエラーを修正しました。

ホスティング

  1. 順次エキスパートアドバイザから呼び出されるユーザインディケータの中のEX4ライブラリ呼出がある時のホスティングへの移行のエラーを修正しました。

シグナル

  1. シグナル購読ページのエラー通知を修正しました。例としては、コピーの為に必要なシンボルの欠如や取引条件の区別についてなどです。

MetaEditor

  1. ウィンドウのうちの1つが完全に展開している場合の、開いているウィンドウの整理コマンドの動作を修正しました。『ウィンドウ』メニューから、開いているファイルをモザイク、垂直、水平、直列に配置することができます。


クラッシュログで報告された不具合を修正しました。
26 11月 2015
MetaTrader 4 build 920: 動作速度の改善と構成ファイルからのビジュアルテストの操作

ターミナル

  1. ターミナル: 取引アカウント選択ダイアログにおける、取引サーバのスタート及び定期的スキャンの不具合の修正を行いました。これからは、Pingが手動スキャンなしでタイムリーに確定されます。




  2. クライアントターミナルの動作速度の改善と最適化が行われました。
  3. 高解像度の画面での動作へのインターフェースの適応作業を続けています。

MQL4

  1. MQL4プログラムリソースのカスタムインディケータのダウンロードの不具合を修正しました。インディケータのリソースへの編入は、ディレクティ ブ#resourceを使って行われます。これにより、配信が遥かに簡単な『オールインワン』なプログラムを作成することができます。
  2.  カスタムインディケータのレベル数の反映の精度が修正されました。以前は、反映の精度は小数点以下4桁でしたが、これからはカスタムインディケータに対応した精度で決定されます。
  3. 方法/関数のパラメータとしての、オブジェクトの移動時の継承結果において、1つのタイプのオブジェクトを他のタイプにすることが可能かの検証を修正しました。
  4. 固定サイズの配列によってデータが与えられた場合の、指定されたバッファ(iIndicatorOnArray)における標準的なインディケータの計算を修正しました。時々、インディケータが再計算されていませんでした。
  5. クラステンプレートの不具合を修正しました。

テスター

  1. INIファイルからテスターを起動させた際に、ビジュアルモードを操作することができるようになりました。新しいパラメータ TestVisualEnable (true/false)がこれを行います。パラメータが指定されていない場合は、現在の設定が使用されます。
  2. テストのヒストリーからではなく、実際のヒストリーからデータが返ってくる、関数CopyXXXの不具合を修正しました。
  3. コマンド列で伝達されるINIファイルからのテストパラメータの読み取りが修正されました。
  4. ビジュアルテストのチャートを閉じた後に、余分なメモリの割り当てをする不具合を修正しました。いくつかのケースでは、実際に動作しているエキスパートアドバイザの為のヒストリカルデータが利用できなくなることがありました。

クラッシュログで報告された不具合を修正しました。

12 11月 2015
MetaTrader 4 build 910: ライブラリ内のコードの改良とWindows 10用インターフェイスの仕上げ

コードベース

  1. コードベース: ライブラリからのMQL4プログラムのダウンロードの時間短縮と修正が行われました。無料の取引ロボットやインディケータのソースコードを、今すぐターミナルでダウンロードしてください。

ターミナル

  1. ダウンロードしたヒストリカルデータのメモリから抜ける不具合を修正しました。不具合はメモリが不足している時に発生していました。
  2. Windows 10での動作時のユーザインターフェースのエレメント列の表示が修正されました。
  3. Backspaceキーを使ったチャートからのチャートオブジェクトの削除が修正されました。

シグナル

  1. 取引シグナルの表示列の翻訳が追加および修正されました。

MQL4

  1. ENUM_SYMBOL_INFO_INTEGER一覧に、読み取り専用のSYMBOL_VISIBLEが追加されました。
  2. パターン使用時のエラーを修正しました。
  3. データのソースとレシーバのデータ領域が完全または一部交差する時の、文字列配列のコピー時の関数ArrayCopyの動作が修正されました。

テスター

  1. MQL5マーケットからのエキスパートアドバイザやデモバージョンのインディケータをテストする際の制限が追加されました。今後は有料製品のデモバージョンのテストは、強制的にターミナルの現在の日付の一週間前で終了します。

MetaEditor

  1. 時折、他のアプリケーションと共に現れるプロンプトの紛争につながる不具合を修正しました。


クラッシュログで報告された不具合を修正しました。

22 10月 2015
MetaTrader 4 Build 900: MQL4でのクラスパターンとメモリー動作の最適化

ターミナル

  1. ターミナル:非アクティブ(未接続)アカウントのパスワード変更に関する不具合の修正を行いました。




  2. 大容量のヒストリー使用時のメモリーの使用と解放を最適化しました。
  3. 大容量のニュースカテゴリー使用を修正、また最適化しました。

シグナル

  1. 『ナビゲータ』ウィンドウのコンテクストメニューのシグナルからの回答を修正しました。


MQL4

  1. C++でのパラメータ化されたクラスを作成することを可能にするクラスパターンが追加されました。これは、より多く抽出したり、一様に異なるクラスのオブジェクト操作の為に同じコードを使用することを可能にするものです。使用例:
    //+------------------------------------------------------------------+
    //|                                                    TemplTest.mq5 |
    //|                        Copyright 2015, MetaQuotes Software Corp. |
    //|                                             https://www.mql5.com |
    //+------------------------------------------------------------------+
    #property copyright "Copyright 2015, MetaQuotes Software Corp."
    #property link      "https://www.mql5.com"
    #property version   "1.00"
    //+------------------------------------------------------------------+
    //| クラスパターンを指定します。                                            |
    //+------------------------------------------------------------------+
    template<typename T>
    class TArray
      {
    protected:
       T                 m_data[];
    
    public:
    
       bool              Append(T item)
         {
          int new_size=ArraySize(m_data)+1;
          int reserve =(new_size/2+15)&~15;
          //---
          if(ArrayResize(m_data,new_size,reserve)!=new_size)
             return(false);
          //---
          m_data[new_size-1]=item;
          return(true);
         }
       T                 operator[](int index)
         {
          static T invalid_index;
          //---
          if(index<0 || index>=ArraySize(m_data))
             return(invalid_index);
          //---
          return(m_data[index]);
         }   
      };
    //+------------------------------------------------------------------+
    //| ポインター配列のパターンクラスは                                        |
    //| デストラクタに保存されたポインターオブジェクトを削除します。                    |
    //|                                                                  |
    //| TArrayクラスパターンからの継承にご注意ください。                           |
    //+------------------------------------------------------------------+
    template<typename T>
    class TArrayPtr : public TArray<T *>
      {
    public:
       void             ~TArrayPtr()
         {
          for(int n=0,count=ArraySize(m_data);n<count;n++)
             if(CheckPointer(m_data[n])==POINTER_DYNAMIC)
                delete m_data[n];
         }
      };
    //+------------------------------------------------------------------+
    //| クラスを指定し、それへのオブジェクトポインタを配列に保存します。                 |
    //+------------------------------------------------------------------+
    class CFoo
      {
       int               m_x;
    public:
                         CFoo(int x):m_x(x) { }
       int               X(void) const { return(m_x); }
      };
    //+------------------------------------------------------------------+
    //|                                                                  |
    //+------------------------------------------------------------------+
    TArray<int>     ExtIntArray;   // TArrayのパターンをインスタンス化します(TArrayのパターンをint型に特殊化)
    TArray<double>  ExtDblArray;   // TArrayのパターンをインスタンス化します (TArrayのパターンをdouble型に特殊化します)
    TArrayPtr<CFoo> ExtPtrArray;   // TArrayPtrのパターンをインスタンス化します (TArrayPtrのパターンをCFoo型に特殊化します)
    //+------------------------------------------------------------------+
    //| Script program start function                                    |
    //+------------------------------------------------------------------+
    void OnStart()
      {
    //--- 配列データを書き込みます。
       for(int i=0;i<10;i++)
         {
          int integer=i+10;
          ExtIntArray.Append(integer);
          
          double dbl=i+20.0;
          ExtDblArray.Append(dbl);
          
          CFoo *ptr=new CFoo(i+30);
          ExtPtrArray.Append(ptr);
         }
    //--- 配列の内容を出力します。
       string str="Int:";
       for(i=0;i<10;i++)
          str+=" "+(string)ExtIntArray[i];      
       Print(str);   
       str="Dbl:";
       for(i=0;i<10;i++)
          str+=" "+DoubleToString(ExtDblArray[i],1);
       Print(str);   
       str="Ptr:";
       for(i=0;i<10;i++)
          str+=" "+(string)ExtPtrArray[i].X();      
       Print(str);
    //--- TArrayPtr<CFoo>のオブジェクトデストラクタで削除されるため、newを通して作成されたCFooのオブジェクトは削除しなくてもよい  
      }
    実行結果:
    TemplTest EURUSD,M1: Ptr: 30 31 32 33 34 35 36 37 38 39
    TemplTest EURUSD,M1: Dbl: 20.0 21.0 22.0 23.0 24.0 25.0 26.0 27.0 28.0 29.0
    TemplTest EURUSD,M1: Int: 10 11 12 13 14 15 16 17 18 19
  2. 時折MQL4-プログラムが落ちる原因となっていた、ArrayCopy機能でのメモリーの再分配を修正しました。

テスター

  1. インディケータテスト終了後にグローバルレベルにおいて指定された変数がリセットされる不具合を修正しました。
  2. 取引サーバへの未接続下でのテストを修正しました。

MetaEditor

  1. В MetaAssistでの型引用時の機能名の定義を修正しました。
  2. 大きなファイルを開く修正をしました。
  3. ライブラリページからの検索呼出の為のホットキーFが追加されました。同様に、コードを使用するコマンドの為にステータスバーに多数のプロンプトが追加されました。:インデントの増大/減少、ナビゲーション、ケースシフトなど。


クラッシュログで報告された不具合を修正しました。
2 10月 2015
MetaTrader 4 iPhone build 861
  • iPadで縦向き表示が可能になりました。取引履歴やニュース・メッセージが長くても簡単に見られるようになります。
  • さらにiPad Proでも利用可能。
  • インターフェイスには韓国語の翻訳が追加されました。
  • 様々なバグを修正しました。
18 9月 2015
MetaTrader 4 Build 880: ウェブトレード、ワンタイムパスワード、直接払いの展開

MetaTrader 4 Client Terminal build 880

  1. ウェブトレード:取引プラットフォームの最初のウェブ版がリリースされました。これでブラウザを使用するだけで市場の分析を行ったり、取引をすることができます!ウェブプラットフォームの使用は安全で、全ての送信される情報は安全に信号化されます。

    ウェブトレードは現在はMQL5.communityのサイト上でのみ利用することができます。新セクション『取引』に移動してください。iframeを介して便利なウィジェットとして、ウェブターミナルを簡単にHTMLページと統合することができる為、将来的には、自分のブローカーのサイトから直接取引を行うことができるようになります。



    取引アカウントを追加します。サーバの番号と名前を追加し、そこに接続する為のパスワードを入力してください。



    ウェブプラットフォームのインターフェイスは、デスクトップ版と同じなので理解しやすいです。現在利用可能な主要な機能:

    • あらゆるタイプの取引操作の実行:成行注文と指値注文の発注
    • マーケットウォッチでリアルタイムの相場を表示
    • カスタマイズ可能な相場チャート
    • 9つの期間のチャート
    • 主要な分析オブジェクト:水平・垂直・トレンドライン、等距離チャンネルとフィボナッチライン

    ウェブターミナルの機能はさらに拡張されます。



    自分の取引アカウントの操作は、プロフィールの新セクション『取引アカウント』で行うことができます。




  2. ホスティングとシグナル:仮想ホスティングと取引シグナルの購読への支払いは、支払いシステムを介して直接行うことができます。

    ホスティングの支払いの為に、MQL5.communityに移動し、アカウントに入金する必要はありません。これからは、直接プラットフォームで、支払いシステムのうちの一つから支払いを行うことができます。



    ご自分に合ったシステムを選択し、支払いを行ってください。




    同様に、お客様に合った支払システムを選択していただくだけで、直にターミナルから、有料取引シグナル購読の手続きが行えます。





    必要な金額がお客様のMQL5.communityのアカウントに入金され、その後、そこから支払いが行われます。このようにして、ホスティングレンタル やシグナル購読の履歴を常に明瞭にすることができます。また、MQL5.communityのサービスに自身が行った全ての支払いを見ることができます。

  3. ターミナル:ウェブターミナルへの素早い接続の為のコンテキストメニューのコマンドが追加されました。これからは、プラットフォームから直接 必要な取引アカウントがあるウェブターミナルを開くことができ、その際アカウントやパスワード、取引サーバ名を入力する必要はありません。全て自動で行わ れます。

    現時点では、ウェブターミナルはMetaQuotes-Demoのデモサーバ上でのみ利用することができます。あなたのブローカーがMetaTrader 4プラットフォームを更新し、サーバ上でウェブトレードの機能を有効にすると、あなたはウェブターミナルを介して自分のブローカーの取引アカウント上で取引を行うことができます。




  4. ターミナル:OTP認証の機能を追加しました。OTP(ワンタイムパスワード)の使用は、取引アカウントを使用した作業をより安全に行う為のものです。アカウントへの接続時に、毎回ワンタイムパスワードの入力が要求されます。

    ワンタイムパスワードは、iPhone/Android用MetaTrader 4モバイルターミナルで生成されます。

    OTPを有効にする方法
    ワンタイムパスワードを使用するには、自分の取引アカウントをパスワードのジェネレーター(iPhone/Android用MetaTrader 4モバイルターミナル)と接続する必要があります。
    OTPの使用はMetaQuotes-Demoサーバ上でのみ利用可能です。

    あなたのブローカーの取引サーバ上では、新しい機能は、ブローカーが自分のMetaTrader 4プラットフォームを更新し、そこでOTP機能を有効にした後で利用することができるようになります。
    モバイルターミナルの『設定』画面に移動し、OTPを選択します。セクションが最初に開かれた時、セキュリティ上の理由から、4桁のパスワードの設定を要求されます。パスワードは、パスワードのジェネレーターに接続する度に入力する必要があります。.



    開いているウィンドウで『アカウントに接続する』を選択してください。



    次に取引アカウント、アカウント番号、マスターパスワードが開かれているサーバ名を入力してください。『バウンド』オプションはオンにしておく必要があり ます。これは、指定したアカウントのジェネレーターとの結合を解除し、ワンタイムパスワードを使用しない場合にオフにする必要があります。

    ウィンドウ上部にある『バウンド』ボタンを押すと、取引アカウントはジェネレーターと接続され、メッセージが表示されます。



    同様に、無数の取引アカウントをジェネレーターに接続することもできます。

    ワンタイムパスワードは、OTPページの上部に表示されています。その下の青い線は、このパスワードの有効時間を表示しています。有効時間が切れると、パスワードは使用できなくなり、新しいものが生成されます。

    追加コマンド:

    • パスワードの変更。ジェネレーターへアクセスするためのパスワードを変更する。
    • 時間を同期。参照サーバとモバイルデバイスの時間を同期させる。

    精度要件としては、ワンタイムパスワードは現在の時間間隔に接続され、その時間はクライアントターミナルとサーバが一致していなければいけません。

    デスクトップターミナルでのOTPの使用


    ジェネレーターへの接続後、デスクトップターミナルを介して接続を試みると追加のワンタイムパスワードが要求されます。




    このパスワードを取得する為には、ご自分のスマートフォンのMetaTrader 4モバイルターミナルを開き、OTPページへ移動し、ワンタイムパスワード取得の確認コードを入力してください。.

    MetaTrader 4 Android
     MetaTrader 4 iPhone





  5. ターミナル:プラットフォームの使用方法についてのチュートリアルビデオシリーズを作製しました。(シグナルマーケット仮想ホスティング)これらのビデオはプラットフォームから直接閲覧可能です。



    このビデオや、その他のビデオはYoutubeのMetaQuotes Software Corp.公式チャンネルにてご覧いただけます。

  6. ターミナル:取引シンボルのパラメータリストが大幅に拡張されました。詳細を開くための新しいコマンドが、マーケットウォッチのコンテキストメニューに追加されました。


    次のパラメータが追加されました。


    • 最小ボリュームーシンボルごとの最小取引量。
    • 最大ボリュームーシンボルごとの最大取引量。
    • ボリュームステップーボリューム変更ステップ。
    • 凍結レベルー市場に近くにある注文とポジションの凍結レベル。注文やポジションの価格が凍結レベルと同等またはそれ以下の場合、対応する注文またはポジションの変更や削除、クローズを禁じます。
    • マージン比率ーシンボルタイプに応じて計算されたマージンの初期値からどの部分が徴収されるかを定義します。
    • マージン通貨ーマージンの計算通貨。
    • 取引ーそのシンボルで取引をすることを許可します。(Full accessーポジションのオープン/クローズの許可、Close onlyークローズのみ、Noー取引の完全な禁止)
    • 実行ーシンボルごとの実行タイプ。(即時、指値、カウントダウン)
    • トリプルスワップ日ートリプルスワップが適応される曜日。
    • 開始日ー金融シンボルの取引を開始した日。
    • 最終日ー金融シンボルの取引を終えた日。

  7. ターミナル:ストラテジーテスターでの実行の為のプログラム選択がとても便利になりました。アドバイザーとインディケーターがあるディレクトリと適合するツリー形式でリストが表示されます。



  8. Terminal: The tooltips in the list of open orders and trade history now additionally contain information about the reason/source of the placed order.
  9. Terminal: Hovering a mouse cursor on the group of applied graphical objects now calls a tooltip of the last added object, i.e. the top one. Before the correction, a tooltip of the last object in alphabetical order was displayed.
  10. Terminal: Information about the PC hardware characteristics and the operating system is now logged to a Journal at the start of the client terminal. Example:
    2015.09.14 14:48:18.486	Data Folder: E:\ProgramFiles\MetaTrader 4
    2015.09.14 14:48:18.486	Windows 7 Professional (x64 based PC), IE 11.00, UAC, 8 x Intel Core i7  920 @ 2.67GHz, RAM: 8116 / 12277 Mb, HDD: 534262 / 753865 Mb, GMT+03:00
    2015.09.14 14:48:18.486	MetaTrader 4 build 872 started (MetaQuotes Software Corp.)
  11. ターミナル:開いている注文のリストや取引履歴のツールチップに発注理由の表示が追加されました。
  12. ターミナル:適応されたグラフィックオブジェクトのグループの上にマウスカーソルを置くと、最後に描かれたもの、つまり一番上のオブジェクト がツールチップに表示されます。修正前は、オブジェクトのツールチップには、アルファベット順で一番最後のものが表示されていました。
  13. ターミナル:クライアントターミナルの起動時の、コンピュータとオペレーションシステムの性能についての記録がログに追加されました。例:
    2015.09.14 14:48:18.486	Data Folder: E:\ProgramFiles\MetaTrader 4
    2015.09.14 14:48:18.486	Windows 7 Professional (x64 based PC), IE 11.00, UAC, 8 x Intel Core i7  920 @ 2.67GHz, RAM: 8116 / 12277 Mb, HDD: 534262 / 753865 Mb, GMT+03:00
    2015.09.14 14:48:18.486	MetaTrader 4 build 872 started (MetaQuotes Software Corp.)
  14. ターミナル:いくつかのケースで、選択したものの代わりに、最後に追加したグラフィックオブジェクトが削除されるエラーを修正しました。
  15. ターミナル:等距離チャンネル、回帰チャンネルなどのグラフィックオブジェクト/チャンネルの充填が修正されました。
  16. ターミナル:『ボリンジャーバンド』インディケータの入力パラメータのチェックが修正されました。
  17. ターミナル:いくつかのケースで、ニュースの長時間の参照時に、ターミナルがフリーズするエラーを修正しました。
  18. ターミナル:内部メールの動作が改訂および最適化されました。
  19. ターミナル:ユーザーインターフェースの翻訳が更新されました。(ポルトガル語、ハンガリー語、チェコ語、ドイツ語)
  20. ターミナル:高解像度の画面での動作へのインターフェースの適応作業を続けています。
  21. マーケット:支払システムUnionPayでの直接の製品購入ができるようになりました。
  22. マーケット:MQL5マーケットの製品データベースの動作が改良および最適化されました。
  23. マーケット:VPSでのターミナル使用による、MQL5.communityのアカウントを持たない購入が禁止されました。今後はターミナルの設定内でMQL5.communityのアカウントを表示する必要があります。ツール―オプション―コミュニティ
  24. テスター:エキスパートアドバイザの最適化時に、テストパラメータに設定されているスプレッドの適用が修正されました。以前はいくつかのケースで、設定されたものの代わりに現在のスプレッドが使用されていました。
  25. MQL4:ArrayCopy関数が修正および最適化されました。動作速度が20%増加し、配列のコピーが修正されました。
  26. MQL4:いくつかのケースで、MQL4プログラムからグラフィックオブジェクトを削除した際に、ターミナルのクラッシュにつながっていたエラーを修正しました。
  27. MQL4:文字列として、日付を除いた時間だけ(例、『21:03』)を送信するときの、StringToTime関数の動作を修正しまし た。以前は日付として、UTCタイムゾーンに対応する日付が使用されていました。今後はローカルタイムゾーンの現在の時刻に対応した日付が使用されます。
  28. MQL4:新しいバージョンのコンパイラの初回起動時の、MQL4プログラムの再コンパイルの速度が改善されました。
  29. MQL4: 新しい操作*と&が追加され、参照による変数の受信や変数への参照の受信が可能になりました。
  30. MQL4:いくつかのケースの為のArrayResize関数の動作が修正されました。
  31. ホスティング:FTPエクスポートの設定移行が修正されました。この設定は、『サービス』タブの『設定』-『FTP』で設定することができます。
  32. ホスティング:仮想ホスティングの移行ウィザードを再設計し簡素化しました。
  33. メタエディター:MQL4プログラムのデバッグとプロファイリングの強制停止が修正されました。以前は、いくつかのケースでデバッグとプロファイリングが停止しませんでした。
  34. メタエディター:ユーザーインターフェイスにチェコ語とタイ語の翻訳が追加されました。
クラッシュログで報告された不具合を修正しました。
17 9月 2015
MetaTrader 4 Android build 846
  • テクニカル分析の為の24のグラフィックオブジェクトが追加されました(ライン、チャンネル、ギャンとフィボナッチツール、エリオット波動、幾何学図形など)。
  • 取引アカウントへの接続の為の2要素認証(OTP)のサポートが追加されました。
  • 様々な修正と改良が行われました。
15 9月 2015
MetaTrader 4 iPhone build 843
iOS9との互換性が改善されました。
1234567