Было
from bots.botlibs.labeling_lib import get_labels
from bots.botlibs.tester_lib import test_model
from bots.botlibs.export_lib import export_model_to_ONNX
Стало
fromlabeling_libimportget_labelsfromtester_libimporttest_modelfromexport_libimportexport_model_to_ONNX
こんにちは、マキシム。同僚の皆さん、こんにちは。
切実な質問があります。
ボットに追加機能(ブレークイーブンとトロールスラムへのポジション出力)を追加したかったのですが、ソースコードのコンパイルが不可能なことに遭遇しました(私はMT5パッケージの標準コンパイラを使用しています)。
、著者が記事に添付した オリジナルのソースコード平均reversion.mq5さえも通りません。
問題は、関数OnnxSetInputShapeとOnnxSetOutputShape(51、58、66、71行目)にあります。 mql5のヘルプによると、これらの関数の入力データは3つの変数で、2つはlong型、3つ目はconst ulong型です。しかし、Expert Advisor のコードによると、検討中の関数で初期変数として使用されている 変数ExtInputShape、 ExtInputShape2、output_shape は const long として初期化されています ( 31、32、65 行目)。
変数のデータ型をconst ulongに変更すると、コンパイルは成功します。しかし、ボットは "利益中 "に動作しなくなります。つまり、実装された取引戦略アルゴリズムが実行されません。
この問題を解決する方法を教えてください。最後に外部コンパイラを使用するオプションを考えています。コードの正しさをチェックすることなく、標準のMT5ツールでコンパイルすることは可能ですか?
変数のデータ型をconst ulongに変更すると、コンパイルは成功します。しかし、ボットは "利益中 "に停止します。つまり、実装された取引戦略アルゴリズムは実行されません。
この問題を解決する方法を教えてください。最後に外部コンパイラを使用するオプションを考えています。コードの正しさをチェックすることなく、標準のMT5ツールでコンパイルすることは可能ですか?
このオプションを試してみてください。ulong以外に何を変更したか覚えていません。そうそう、アップデート後、いくつかのph-iaseが以前と違う動作をするようになった。
インクルードファイルからフェーズの名前を#defineに書いてください。このオプションを試してみてください。ulong以外に何を変えたか覚えていない。そうそう、アップデート後、いくつかのph-iaseが以前と違う動作をするようになった。
defineには、インクルードファイルのフェーズ名を書いてください。いい日だ。
やったよ。しかし、残念ながら原因は他にあります。コンパイルしたバージョンと、変数の型をulongに置き換えたバージョンの結果のスクリーンショットを添付します。
こんにちは。
やったよ。しかし、残念ながら原因は他にあります。あなたのコンパイルしたバージョンと変数型をulongに置き換えたバージョンの結果のスクリーンショットを添付します。
ボットでトレーニング時と同じタイプの属性を使用していますか?python スクリプトでは属性を変更しているのに、inklulnik では変更していないことがあります。
おそらく。
しかし、モデルトレーニングのアルゴリズムはまだ研究・実現段階にある。Mql5では問題ないのですが、Pythonではまだ友達になるのに苦労しています。
おそらく。
ただ、モデル学習のアルゴリズムはまだ研究・実現の段階です。Mql5は問題ないのですが、pythonとの親和性がまだちょっと難しいです。
確認したところ、すべて動作しています。上記の記事と更新したボットの学習済みモデルのファイルを添付します。
記事にはデモモデルが添付されているので、その後再学習するのが望ましい。pythonスクリプトが理解できたら。
確認したところ、すべてうまくいった。記事の学習済みモデルのファイルと、上記の更新されたボットを添付します。
記事にデモモデルが添付されているので、その後再トレーニングするのが望ましい。pythonスクリプトが理解できたら。
はい、このリリースではボット自体はコンパイルされ、正しく動作します。しかし、モデルの再トレーニングが必要です。そして一般的に、私が理解しているように、それは定期的に行われるべきです。
私はpythonを理解しつつありますが、まだすべてを理解しているわけではありません。ノートパソコンでRutopのメインリリースを起動し、現在のバージョンにアップデートした。必要なパッケージ(pandas, numba, numpy, catboost, scipy, scikit-learn)を全てインストールした。引用符をダウンロードした。MT5のメインカタログのFilesフォルダに、quotesのファイルとすべてのスクリプトを入れた。モデル・トレーニング・スクリプトのコードにパスを書きました。
MetaEditoreでスクリプトコードを修正した。そこからスクリプトを実行しようとしました。プロセスはエラーでクラッシュします(pythonのbotsパッケージが見つからず、他のパッケージのインストールスキームに従ってインストールしようとしてもエラーで終わります)。pythonコンソールからスクリプトを実行しても同じエラーが発生します。
このトピックをどの方向に掘り下げるべきかアドバイス いただけますか?
はい、このリリースではボット自体はコンパイルされ、正しく動作します。しかし、モデルの再学習が必要です。そして一般的に、私が理解しているように、それは定期的に行われるべきです。
私はpythonを理解しつつありますが、今のところすべてがうまくいっているわけではありません。ノートパソコンでRutopのメインリリースを起動し、現在のバージョンにアップデートしました。必要なパッケージ(pandas, numba, numpy, catboost, scipy, scikit-learn)を全てインストールした。引用符をダウンロードした。MT5のメインカタログのFilesフォルダに、quotesのファイルとすべてのスクリプトを入れた。モデルトレーニングスクリプトのコードにパスを書きました。
MetaEditoreでスクリプトコードを修正した。そこからスクリプトを実行しようとしました。プロセスはエラーでクラッシュします(pythonのbotsパッケージが見つからず、他のパッケージのインストールスキームに従ってインストールしようとしてもエラーで終わります)。pythonコンソールからスクリプトを実行しても同じエラーが発生します。
このトピックをどのような方向に掘り下げるべきかアドバイス いただけますか?
Bots は記事のモジュールがあるルートディレクトリ(フォルダ)です。もしスクリプトがモジュール(追加ファイル)をインポートするときにそれらを見ないなら、ファイルへのフルパスを書いてください。
もしくは、これらのファイルをメインスクリプトと同じフォルダに放り込んで、代わりにこれをやってください:
PythonをインストールしたときにPYTHONPATHが設定されていないと、このようなことが起こります。Pythonのインストール時にPYTHONPATHが設定されていない場合、このようなことが起こる可能性があります。つまり、Pythonはディスク上のファイルを見ません。
あるいは、インターネット上のモジュールのインポートに関する基本的なコースを読んでください。
Bots は、記事のモジュールが置かれるルートディレクトリ(フォルダ)です。モジュール(追加ファイル)をインポートするときに、スクリプトがそれらを見ない場合は、ファイルへのフルパスを書いてください。
あるいは、これらのファイルをメインスクリプトと同じフォルダに放り込んで、代わりにこうしてください:
これは Python をインストールしたときに PYTHONPATH が設定されていなかった場合に起こる可能性があります。Pythonのインストール時にPYTHONPATHが設定されていない場合、このようなことが起こる可能性があります。つまり、pythonはディスク上のファイルを見ません。
あるいはインターネットでモジュールのインポートに関する基本的なコースを読んでください。
ごきげんよう、マキシム。ありがとう。ほぼすべて解決しました。最後の質問です。
トレーニングモデル用のメインスクリプトにコメント行(154-182)があります。私の理解では、これらは代替ディールサンプラー(マークアップ)です。しかし、試すことができません。マークアップのどれかがコメントアウトされておらず(条件付きで、154-158行目)、オリジナルのものがコメントアウトされている場合(149-153行目)、スクリプトが開始されません。
原因は何でしょうか?
ありがとうございます。)
こんにちは、マキシム。ありがとう。ほぼすべて解決しました。最後の質問です。
モデルをトレーニングするためのメインスクリプトにコメント行(154-182)があります。私の理解では、これらは代替ディールサンプラー(マークアップ)です。しかし、試すことができません。マークアップのどれかがコメント解除され(条件付きで154-158行目)、オリジナルのものがコメントされると(149-153行目)、スクリプトが起動しません。
原因は何でしょうか、どこを見ればよいでしょうか?
ありがとうございます。)
Python インタプリタが何を書いたかのログが必要です。