MetaTrader 5 build 3800:BOC注文、AIコーディングアシスタント、ONNXのサポート強化など

この新バージョンは、BOC (Book or Cancel)注文に対応しています。このような注文は、[板情報]にのみ発注することができますが、すぐに処理することはできません。これは、パッシブ上場投資を実施するために使用されます。

8 6月 2023

ターミナル

  1. 新しい注文処理ポリシーであるパッシブ/BOC (Book or Cancel)のサポートを追加しました。



    BOCのポリシーでは、注文は[板情報](オーダーブック)にしか出せないことになっています。注文後すぐに約定できる場合、この注文はキャンセルされます。このポリシーは、発注された注文の価格が現在の市場よりも悪くなることを保証します。BOCはパッシブ取引を実装するために使用されます。注文が出されたときにすぐに実行できないことが保証されているため、現在の流動性には影響しません。この処理ポリシーは、取引所執行モードの指値注文および逆指値注文にのみ対応しています。

    新しい処理ポリシーの有無は、証券会社によって異なります。

  2. HTMLコンテンツの表示にMicrosoft Edge WebView2が使用されるようになりました。

    旧来のMSHTMLに比べ、現代技術へのアクセスを提供することで、コンテンツ表示機能が大幅に拡張されます。WebView2を使用することで、一部のプラットフォームセクションの外観を改善し、パフォーマンスを向上させ、より応答性の高いインターフェイスを実現します。特に、新コンポーネントは、マーケット、シグナル、VPSの各セクションに影響します。
    WebView2のフルサポートはWindows 10で導入されました。すべてのユーザーが最新のOSバージョンにアップグレードすることを強くお勧めします。プラットフォームは、Windows 7とWineではMSHTMLを使い続けますが、新機能は利用できません。また、利用可能なすべてのオペレーティングシステムのアップデートをインストールすることを強くお勧めします。推奨最低バージョンはWindows 10 21H2(ビルド19044、2021年11月)です。

  3. マーケットセキュリティシステムを改善しました。ここで、製品を実行するためには、製品を購入したのと同じMQL5アカウントで、ユーザーがプラットフォームで認証されている必要があります。アカウントは[ツール]>[オプション]>[コミュニティ]で指定する必要があります。



    アカウントが指定されていない場合、または無効なアカウントが指定されている場合、製品は起動せず、プラットフォームジャーナルに以下のメッセージが表示されます。
    'ProductName' requires active MQL5 account in Tools->Options->Community
  4. 履歴セクションのコンテキストメニューに[Overview]を追加しました。その口座の取引レポートが開かれます。



  5. 二要素認証ダイアログの表示不具合を修正しました。ターミナルに同じ番号で異なる証券会社で開設された複数の口座がある場合、口座接続フォームでワンタイムパスワード欄を表示できないことがありました。
  6. DRAW_COLOR_CANDLESの表示スタイルを持つ指標の高速描画を実装しました。
  7. 取引レポート作成時のエラーを修正しました。特定の条件下で、チャート上の利益と資本の値が正しく表示されないことがありました。
  8. 取引報告書にコストの表示を追加しました。この値は、銘柄の現在の中点価格に対して取引をおこなう際に発生するコストの合計(中点スプレッドコスト)を示しています。スプレッドによりトレーダーが取引で失う金額です。この値の有無は、証券会社によって異なります。
  9. UI翻訳を更新しました。
  10. 特にmacOSシステムでのWineでの安定性を向上させました。古いターミナルを完全に削除して、再インストールすることをお勧めします。


  11. パッケージのインストールやアップデートのダウンロード手順を高速化しました。ディストリビューションパッケージを選択する際に、ユーザーのコンピューターでAVXが利用可能かどうかを分析する機能を改善しました。
  12. WebプロトコルでTLS 1.3への対応を可能にしました。TLS 1.0は非推奨で安全でないとされているため、無効化されています。
  13. 取引履歴レポートにおける代理店手数料の会計処理を修正しました。最終的な利益を計算する際に、該当する取引を無視することもできます。
  14. アカウント接続ダイアログで、サーバーを変更できないように修正しました。ターミナル内に異なる証券会社から同じ番号の口座が複数ある場合に問題が発生していました。
このビルド以降、インストーラーは64ビットプラットフォーム版でのみ動作するようになります。32ビット版のサポートは終了します。以前インストールした32ビットプラットフォーム版は、2024年1月1日まで動作します。

MQL5

  1. ENUM_STATISTICS列挙に新しいSTAT_COMPLEX_CRITERION値を追加しました。最適化の結果として算出された複素数基準値を取得するプロパティとして使用します。
  2. 渡された行列またはベクトルに基づいて回帰指標を計算するために使用されるRegressionMetricメソッドを改善しました。予測データの品質を評価する真の値を渡すためのパラメータvector_trueとmatrix_trueを追加しました。
    double vector::RegressionMetric(
       const vector& vector_true,            // true values
       const ENUM_REGRESSION_METRIC  metric  // metric
       );
     
    double matrix::RegressionMetric(
       const matrix& matrix_true,            // true values
       const ENUM_REGRESSION_METRIC metric   // metric
       );
     
    vector matrix::RegressionMetric(
       const matrix& matrix_true,            // true values
       const ENUM_REGRESSION_METRIC metric,  // metric
       const int                      axis   // axis
       );
  3. LinearRegressionメソッドを追加しました。渡されたベクトル/行列の線形回帰値を計算したベクトル/行列を返します。
    vector vector::LinearRegression();
     
    matrix matrix::LinearRegression(
       ENUM_MATRIX_AXIS axis=AXIS_NONE       // 回帰が計算される軸
       );
    例:
    vector vector_a;
    //--- ベクトルを価格で埋める
    vector_a.CopyRates(_Symbol,_Period,COPY_RATES_CLOSE,1,100);
    //--- 線形回帰を得る
    vector vector_r=vector_a.LinearRegression();
    その結果をグラフで可視化しました。


    LinearRegressionメソッドが返す結果を可視化


  4. 行列/ベクトル中のNaN値の数を返すHasNanメソッドを追加しました。
    ulong vector::HasNan();
    ulong matrix::HasNan();
    NaN値を持つ要素の適切なペアを比較する場合、CompareおよびCompareByDigitsメソッドはこれらの要素を等しいとみなしますが、通常の浮動小数点数の比較の場合はNaN != NaNです。

  5. ONNXモデルの操作に使用するOnnxTypeInfo構造体を変更しました。

    struct OnnxTypeInfo
      {
       ENUM_ONNX_TYPE       type;            // parameter type
       OnnxTensorTypeInfo   tensor;          // tensor description
       OnnxMapTypeInfo      map;             // map description
       OnnxSequenceTypeInfo sequence;        // sequence description
      };

    データ型は、新しいサブ構造を用いて構造体内で指定されます。

    • OnnxTensorTypeInfo:テンソル
    • OnnxMapTypeInfo:マップ
    • OnnxSequenceTypeInfo: シーケンス

    struct OnnxTensorTypeInfo
      {
       ENUM_ONNX_DATATYPE   data_type;       // data type in the tensor
       long                 dimensions[];    // number of elements
      };
    
    struct OnnxMapTypeInfo
      {
       ENUM_ONNX_DATA_TYPE  key_type;        // key type
       OnnxTypeInfo         type_info;       // value type
      };
    
    struct OnnxSequenceTypeInfo
      {
       OnnxTypeInfo         type_info;       // data type in the sequence
      };
    OnnxTypeInfo::type (ONNX_TYPE_TENSOR, ONNX_TYPE_MAP or ONNX_TYPE_SEQUENCE)に応じて、関連する部分構造体が満たされます。

  6. ONNX(Open Neural Network Exchange)モデルへの対応を強化しました。
  7. 指標バッファのデータをベクトルに取得できるCopyIndicatorBufferメソッドを追加しました。
    bool vector::CopyIndicatorBuffer(long indicator_handle,ulong buffer_index,ulong start_pos,ulong count);
    bool vector::CopyIndicatorBuffer(long indicator_handle,ulong buffer_index,datetime start_time,ulong count);
    bool vector::CopyIndicatorBuffer(long indicator_handle,ulong buffer_index,datetime start_time,datetime stop_time);
  8. FrameAddメソッドとFrameNextメソッドにおいて、2次元以上の配列を持つ操作を修正しました。
  9. CRedBlackTree::Remove標準ライブラリメソッドを修正しました。
  10. Fuzzy Logicライブラリの修正を実装しました。

MetaEditor

  1. 先進の自動コーディングアシスタントAI Assistantとの連携を追加しました。その運用は、OpenAIのモデルに基づいています。コメントや機能の一部を入力し、プロンプトを送信します。ニューラルネットワークは、プロンプトを分析し、アイデアを実装するためのコーディングオプションを提供します。

    ファイルの種類に応じて、各プロンプトの先頭に「MQL5 language」、「Python language」、「C++ language」という文字列が自動的に挿入されます。こうすると、ニューラルネットワークは必要な言語で結果を出します。

    AI Assistantは現在無料で、エディターですでに有効になっています。[ツール]>[オプション]>[AI Assistant]には、いくつかのオプションが用意されています。




    決済設定:

    • MQL5アカウントを使用する:このオプションは現在無料で利用できます。後日、MQL5のアカウント残高から直接サブスクリプションの支払いをおこなうことができるようになります。
    • サブスクリプションを購入して関連するキーがあれば、OpenAIのキーを使用します。

    以下はプロンプトの設定です。

    • モデル:リクエストを処理するニューラルネットワーク。現在、text-davinci-003とgpt-3.5-turboが利用可能です。gpt-4のサポートは近日中に追加される予定です。
    • 最大トークン:プロンプトに応答してモデルが返すことができるテキストユニットの数です。
    • 可変性:ニューラルネットワークがプロンプトにどれだけ厳密に従うかに影響します。値が大さいほど、結果のランダム性が高くなります。このオプションは、OpenAIのモデルにおけるemperatureパラメータに対応します。

  2. ONNXモデルのプロパティを表示する機能を追加しました。

    *.onnxファイルの内容をエディターで直接確認することができます。例を見るには、[ツールボックス]の[公開プロジェクト]タブで ONNX.Price.Predictionプロジェクトを探し、コンテキストメニューから[参加]を選択します。プロジェクトはコンピューターにダウンロードされ、ナビゲータに表示されます。



  3. Netronを使った機械学習モデルやニューラルネットワークの可視化機能を追加しました。このビューアは、ONNX、TensorFlow Lite、Caffe、Keras、ncnnなど、一般的なモデルをサポートしています。

    モデルを表示するには、ナビゲータでそのファイルを選択し、[Open in Netron]をクリックします。このユーティリティがインストールされていない場合は、GitHubのページが開くので、そこからお使いのOSに合ったインストーラーをダウンロードしてください。例えば、Windowsの場合は、Netron-Setup-X.X.X.exeを使用します。プログラムがインストールされていれば、すぐにモデルが開き、ナビゲータから見ることができます。


    以下が対応形式です。

    • armnn、caffemodel、circle、ckpt、cmf、dlc、dnn、h5、har、hd5、hdf5、hn、keras、kmodel、
    • lite、mar、meta、mge、mlmodel、mlnet、mlpackage、mnn、model、nb、ngf、nn、nnp、
    • om、onnx、ort、paddle、param、pb、pbtxt、pdiparams、pdmodel、pdopt、pdparams、prototxt、pt、pth、ptl、
    • rknn、t7、tfl、tflite、tmfile、tm、tnnproto、torchscript、uff、xmodel

  4. UI翻訳を更新しました。

テスター

  1. テストレポートにおける「平均負けトレード」指標の計算を修正しました。従来は、エントリ取引で手数料が発生した場合、誤ってエントリ取引を含めて計算することがありました。
  2. ストラテジーテスターのカスタム手数料オプションを改善しました。銘柄を設定する場合は、パス全体ではなく、その名前を指定します。
  3. ストラテジーテスターのアイコンを更新しました。新しいメタファーがあれば、より理解しやすくなります。

  1. クラッシュログに報告されるエラーを修正しました。

Webターミナル ビルド

  1. 取引履歴を改善しました。

    • 取引履歴で入出金、手数料、調整などの残高操作を表示するようにしました。
    • 取引履歴で残高、利益、手数料、入出金、注文数などの合計を表示するようにしました。
    • モバイル版で操作のソートと深さによる履歴のフィルタリング機能を追加しました。




  2. 銘柄契約仕様の強化:出来高制限、ティックサイズと値、初期証拠金とヘッジ証拠金の情報が追加されました。
  3. 配色を改善しました。

    • 未決注文は、チャート上ではグレーで表示されます。ポジションの色は方向によって異なり、赤は「売り」、青は「買い」を表します。新しい色は、チャート上に複数操作が表示されている場合に、より簡単にナビゲートすることができます。
    • ポジションを表示/編集する場合、このポジションとそのレベルのみが強調表示され、他のすべてのポジションと注文はグレーになり、そのレベルは価格スケールから非表示になります。従って、別々の業務を管理することが容易になります。
    • ストップロスの色が赤からオレンジに変更され、売りポジションとの混同を避けることができます。
    • ポジション決済時間を示すチャート上のアイコンを改善しました。テイクプロフィットで決済されたポジションには緑色のアイコンが、ストップロスで決済されたポジションには赤色のアイコンが使用されます。

  4. アラビア語、ブルガリア語、ベトナム語、ギリシャ語、インドネシア語、マレー語、オランダ語、ペルシャ語、ポーランド語、タイ語、ウクライナ語、ヒンディー語のインターフェース翻訳を追加しました。Webターミナルは2424の言語で利用できるようになりました。
  5. トルコ語のUI翻訳を修正しました。
  6. Webターミナルモバイル版で、未決注文の修正・削除を修正しました。
  7. チャート上の「クローズドマーケット」ツールチップを修正しました。
  8. 取引ダイアログのポジション決済ボタンで、利益の表示を修正しました。部分決済中にエラーが発生していました。
  9. チャート上の取引通知の表示を修正しました。
  10. 板情報で矢印を使ったボリューム変更を修正しました。
  11. 特定の条件下で、動作中の指標の設定がリセットされる可能性のあるエラーを修正しました。
  12. 新規口座開設時のユーザー名チェックを修正しました。従来は、名前にアポストロフィーがあるとエラーとされていました。
  13. リクオートの処理を修正しました。特定の条件下で、リクォート価格のダイアログが表示されない場合がありました。
  14. 一目均衡表指標の表示を修正しました。遅行スパン、上の雲、下の雲の各ラインが正しいオフセットで表示されます。
  15. 新規注文時の当初証拠金の確認を修正しました。ヘッジポジション会計システムでエラーが発生していました。
  16. 契約書仕様書ウィンドウのスクロールを修正しました。

MQL5.community

  1. MQL5クラウドネットワークのWebサイト(https://cloud.mql5.com)が全面リニューアルされました。

    世界中の何千台ものコンピュータの処理能力を利用して、取引戦略を最適化する方法をご紹介します。MQL5クラウドネットワークを使えば、多量の計算も数分で完了します。ネットワークへの参加方法、コンピュータリソースの提供による収入については、Webサイトをご覧ください。




  2. マーケット商品のスクリーンショットセクションを改善しました。最大1920*1800ピクセルの画像をアップロードして、アプリケーションの動作を説明することができます。また、スクリーンショットギャラリーも更新しました。カルーセルには画像のサムネイルが表示され、クリックするとフルサイズの画像が表示されます。



  3. フリーランスのセクション改善:初回注文時に、より多くのヒントをユーザーに提供するようになりました。

    • 要求仕様書の例と追加を促すリマインダー
    • 注文作成手順
    • テンプレート活用のヒント

    これらのヒントをもとに、注文を作成し、望ましい結果を得るためのお手伝いをします。