記事「PythonとMQL5を使用して初めてのグラスボックスモデルを作る」についてのディスカッション

 

新しい記事「PythonとMQL5を使用して初めてのグラスボックスモデルを作る」はパブリッシュされました:

機械学習モデルの解釈は難しく、このような高度なテクニックを使用して何らかの価値を得たいのであれば、モデルが予想から外れる理由を理解することが重要です。モデルの内部構造に対する包括的な洞察がなければ、モデルのパフォーマンスを低下させるバグを発見できないことがあります。予測できない機能のエンジニアリングに時間を浪費し、長期的にはモデルのパワーを十分に活用できない危険性があります。幸いなことに、モデルの内部で何が起こっているかを正確に見ることができる、洗練され、よく整備されたオールインワンソリューションがあります。

グラスボックスアルゴリズムとは、完全に透明で本質的に理解しやすい機械学習アルゴリズムのことです。機械学習における予測精度と解釈可能性はトレードオフの関係にあるという従来の常識を覆し、比類ないレベルの精度と透明性を提供するからです。つまり、私たちがよく知っているブラックボックスアルゴリズムに比べ、デバッグやメンテナンス、反復の改善が飛躍的に容易です。ブラックボックスモデルとは、内部構造が複雑で容易に解釈できない機械学習モデルのことです。これらのモデルは、私たち人間には容易に理解できない、高次元で非線形な関係を表すことができます。

経験則として、ブラックボックスモデルは、グラスボックスモデルが同じレベルの精度を提供できないシナリオでのみ使用されるべきです。この記事では、グラスボックスモデルを構築し、それを採用することの潜在的な利点を理解します。グラスボックスモデルでMetaTrader 5端末を制御する2つの方法を探ります。

  1. レガシーアプローチ:これが最も簡単な方法です。MetaTrader 5に統合されたPythonライブラリを使用して、グラスボックスモデルをMetaTrader 5端末に接続するだけです。そこからMetaQuotes Language 5でエキスパートアドバイザー(EA)を構築し、グラスボックスモデルを支援し、効果を最大化します。
  2. 現代的アプローチ:これは、機械学習モデルをEAに統合するための推奨方法です。グラスボックスモデルをOpen Neural Network Exchange形式に書き出し、そのモデルをリソースとしてEAに直接読み込むことで、MetaTrader 5で利用可能なすべての便利な機能を活用し、グラスボックスモデルのパワーと融合させることができます。


    作者: Gamuchirai Zororo Ndawana

     

    斬新なアイデア満載の素晴らしい記事だ。MT5にpythonを統合する方法が気に入った。この記事は、pythonによるデータ操作、チャート作成、モデリングを実証するための基本的なリファレンスです。

     
    amrali #:

    斬新なアイデア満載の素晴らしい記事だ。MT5にpythonを統合する方法が気に入った。この記事は、pythonによるデータ操作、チャート作成、モデリングを実証するための基本的なリファレンスです。

    記事を楽しんで読んでいただけて嬉しいです。また、今後も斬新な洞察を皆様と共有できることを楽しみにしています。

     

    素晴らしい、ありがとう、よく説明され、明確な指示、私はあなたの包括的な指示に従うことができるかどうかを見に行く、アイデアをありがとう。

    素晴らしいものは、デモaccctに接続することができました(唯一のシンボルのサブセットは、それがデモ口座 であることを期待している)そこにあった1つを試してみました AUDHKD しかし、不一致の問題行204で立ち往生 、

    少なくとも1つの配列またはd型が必要です

    ValueError:少なくとも1つの配列またはd型が必要です。

    NZDCNHで試したが、いくつかの反復で動作するようだが、167行目のsklernmulticlassでdatahandlingで失敗した。

    デバッグによると、204行目でvalueerrorが発生している。)


    デフォルトのBoom1000インデックスでは、問題は日付と時刻の100行目です。 raise KeyError(key)

    KeyError: 'time' .私のタイムゾーンはニュージーランドなので、おそらく問題でしょう。

    今日はテストする時間がなかったので、明日もう一度やってみます。
     
    linfo2 デモ口座 であることを期待)そこにあった1つを試してみました AUDHKD しかし、不一致の問題行204で立ち往生 、
    少なくとも1つの配列またはd型が必要です

    ValueError:少なくとも1つの配列またはd型が必要です。

    NZDCNHで試したが、いくつかの反復で動作するようだが、167行目のsklernmulticlassでdatahandlingで失敗した。

    debugによると、204行目でvalueerrorが発生している。)


    デフォルトのBoom1000インデックスでは、問題は日付と時刻の100行目です。 raise KeyError(key)

    KeyError: 'time' .私のタイムゾーンはニュージーランドなので、おそらく問題でしょう。

    今日はテストする時間がなかったので、明日もう一度やってみます。



    1) 'time'カラムは、私が取得したデータの各行を示すUNIXタイムスタンプにブローカーが付けた名前です。多分、あなたのブローカーは、'date'が一般的であるように、代わりに別の名前を使用しています。copy_rates_rangeを呼び出した後のデータフレームを確認してください。KeyError "がスローされるということは、データフレームが完全に空であるか、あるいは'time'という名前のカラムが存在せず、あなたの側で別の名前を使っている可能性があります。

    2) copy_rates_rangeからの出力を検証してください。あなたの説明からすると、そこが原因かもしれません。

    もしこれらの手順がうまくいかなかったら、私に知らせてください。

     

    迅速なフィードバックとアドバイスをありがとう。

    他の人の役に立つかもしれないので、ここに更新します。私の問題点 ;

    1) 新しいデモ口座を 開設してテストしたところ、すべての通貨が利用可能ではありませんでした。 これは、口座を開設し、必要な通貨がアクティブになっていることを確認することで解決しました。

    2)サーバーから提供されたBoom1000指数(データ)がなかった、それはリストにあったが、私は私のアカウントに反していなかった(あなたがアクセスできるものにデフォルトを変更し、それが結果を与えることができることを確認してください) .

    3) 私の場合、解釈結果は標準のpythonでは表示されませんでした。

    このハプニングの後、ドキュメントは明確で役に立ちました。

    公開してくれて本当にありがとう。ニール

     
    linfo2 デモ口座を 開設してテストしましたが、すべての通貨が利用可能ではありませんでした。

    2)サーバーから提供されたBoom1000指数(データ)がなかった、それはリストにあったが、私は私のアカウントに反していなかった(あなたがアクセスできるものにデフォルトを変更し、それが結果を与えることができることを確認してください) .

    3) 私の場合、解釈結果は標準のpythonでは表示されませんでした。

    このハプニングの後、ドキュメントは明確で役に立ちました。

    公開してくれて本当にありがとう。ニール

    ニールが前進しているようで嬉しいよ。

     

    意外なことに、この記事を理解するために最も重要なフレーズは、記事の一番最後にある:

    текущие реализации моделей стеклянного ящика основаны на деревьях решений

     
    Stanislav Korotky # :

    意外なことに、この記事を理解するために最も重要なフレーズは、記事の一番最後にある:

    そうですね、振り返ってみると、その情報はイントロダクションやあらすじで取り上げるべきでした。