記事「MQL5で自己最適化エキスパートアドバイザーを構築する」についてのディスカッション - ページ 2

 

あなたの貴重な取り組みに感謝します。特に、新しい視野に心を開く機会を与えてくれたことに感謝します。

実用的で素朴な質問があります。

  • EAを追跡するためにマジックナンバーとコメントをどのように置くのですか?
  • LotSizeはどのように変更するのでしょうか?

ありがとうございました。

ごきげんよう。

 
Gamuchirai Zororo Ndawana #:
私はあなたの積極的なアプローチが好きだ。おっしゃるとおり、ヒストリカル・データを取得しようとすると、いくつかの例外が発生することがあります。例えば、取引セッションの途中でタイムフレームを変更しようとすると、「-nan」問題が再び発生する可能性があります。


メッセージをわかりやすく保つことと、私が観察したバグをすべて修正することとは、本質的にトレードオフの関係にありました。もし後者を選んだとしたら、コードは必然的に複雑になり、現在のようにわかりやすくなかったかもしれない。だから、私は、あなたがそれを素早く拡張できるようにすることを意図して、それを簡単にフォローし続けることにしました。

あなたのソリューションはとても期待できそうですね。

こんにちは、ログインするためにアカウントを作り直しました。
LinearRegressionEAを実行してみましたが、エキサイティングなコンセプトだと思います。私は主にGOLD CFDを取引しており、この例のWPRインジケータが気に入りました。
時々、100倍の範囲外の間違った予測価格が出ますが、正しい時もあります!
もし誰かがこの問題を解決してくれたら、とても感謝します。

取引の優先期間について何か書かれているかは知りませんでしたが、私は30分に設定しています。

そのシナリオでは、
まだ取引がない場合、
EAが'analyse_indicators()'関数を実行します。
これはバーごとに1回実行されるので、私の場合は30分ごとに1回実行されます。
つまり、インジケータが取引判断のために並ばない場合、これは次のバーまで、私の場合は30分後まで再試行されないということです。

。そこで、分析ステップを10秒ごとに実行するタイマー・タスクを追加し、指標が取引に有利な状態になるまで分析ステップを実行するようにしました。
、買いまたは売りの注文を確定し、manage_position() 関数の通常のバーごとの処理に戻ります。
 
Giulio Braga #:

特に、新たな視野に心を開く機会を与えてくれたことに感謝している。

実用的な、そして多分素朴な質問があります。

  • EAを追跡するためにマジックナンバーとコメントをどのように置くのですか?
  • どのようにLotSizeを変更するのでしょうか?

ありがとうございます。

ごきげんよう



マジックナンバーとカスタムコメントを設定するには、代わりに適切な関数を呼び出してコードを拡張するだけです。

PositionOpenがお探しのものだと思います。こちらのリンクから ドキュメントを確認できます。

もし、それでもご希望に添えない場合は、こちらのリンクから YouTubeのチュートリアルをお試しください。

これらのリソースがどれもあなたの助けにならない場合、私はこれらのようなもっと役に立つ記事を投稿するチャンネルを持っています。このリンクから 見つけることができます。

Documentation on MQL5: Standard Library / Trade Classes / CTrade / PositionOpen
Documentation on MQL5: Standard Library / Trade Classes / CTrade / PositionOpen
  • www.mql5.com
Opens a position with the specified parameters. Parameters symbol [in]  Name of trade instrument, by which it is intended to open position...
 
Gunnar Forsgren #:
ログインするためにアカウントを作成し直しました。 LinearRegressionEAを実行してみましたが、エキサイティングなコンセプトだと思います。私は主にGOLD CFDを取引しており、この例のWPRインジケータが気に入りました。 時々、100倍の範囲外の間違った予測価格が出ますが、正しい時もあります! もし誰かがその問題を解決してくれたら、とても感謝します。 取引の優先期間について何か書かれているかは知りませんでしたが、私は30分に設定しています。 そのシナリオでは、 まだ取引がない場合、 EAが








'analyse_indicators()'関数を実行します。 これはバーごとに1回実行されるので、私の場合は30分ごとに1回実行されます。つまり、インジケータが取引判断のために並ばない場合、これは次のバーまで、私の場合は30分後まで再試行されないということです。 。そこで、分析ステップを10秒ごとに実行するタイマー・タスクを追加し、インジケータが取引に有利になるまで分析ステップを実行するようにしました。 、買いまたは売りの注文を確定し、




manage_position() 関数の通常のバーごとの処理に戻ります。


ログインに問題があったとのこと、申し訳ありません。

おっしゃるとおり、現在のモデルによる予測は、許容範囲から大きく外れることがありますが、コードにバグはありません。

なぜこのようなことが起こるのかを説明しましょう。

モデルの係数を最適化するために、勾配降下アルゴリズムの簡単な実装を使用しています。残念ながら、勾配降下法は係数の開始位置に敏感です。これを改善するために、確率的勾配降下(SGD)アルゴリズムが開発されました。SGDは、最適な係数を見つける確率を最大化するために、毎回開始係数を変更して最適化を行います。簡単のため、係数を固定にしましたが、これはモデルが悲惨な状態に陥る可能性があります。ユーチューブの動画が参考になると思いますので、こちらのリンクを ご利用ください。

はい、その通りです。私は意図的にすべてのローソク足で計算を実行するように呼びかけました。この機能をオフにするには、"if(timestamp != current_time) "という条件チェックを削除するだけです。

さらに、手持ちのデータに合わせてモデルをカスタマイズするように構築する方法もあります。このリンクで その情報を見つけることができます。
134 - What are Optimizers in deep learning? (Keras & TensorFlow)
134 - What are Optimizers in deep learning? (Keras & TensorFlow)
  • 2020.06.18
  • www.youtube.com
microscopy, python, image processing
 

こんにちは!ありがとう!

私はこの行を取得します:

2024.06.08 07:00:42.212 Core 01 2024.05.01 00:00:00   Validation mae: 
2024.06.08 07:00:42.212 Core 01 2024.05.01 00:00:00   [inf,0.006448762386408615,0.006380585312229991,0.006373808727022462,0.006373131478053022,0.006373063757231861,0.006373056987294832,0.006373056310301126,0.006373056241302974,0.00637305623338131,0.00637305623026851,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.006373056230211261,0.0

どうすれば直りますか?

どなたかこの問題をお持ちの方はいらっしゃいますか?

 
Javier Santiago Gaston De Iriarte Cabrera #:

こんにちは!ありがとう!

こんなセリフが出ます:

どうすれば直りますか?

どなたかこの問題をお持ちの方はいらっしゃいますか?

ハビエル、ターミナルからの出力をもっとアップロードしてくれるかい?

君が共有したものは正常のようだから、そのような出力を期待するよ。

しかし、君の出力で気づいた問題は、最後の「0.0」だ。誤差が0.0ということは、モデルが完璧であることを意味しますが、現実的には不可能です。


 

がむしゃらさん、こんにちは、

(こんにちは、がむしゃらです。)

私は自分の非常に素朴なコードを改善する機会を見つけたいと強く思っているので、あなたの記事を非常に興味深く読んでいます。私はMQL4からMQL5に移行したばかりで、数学のバックグラウンドはありません。



予測価格を示すコメントが常に0.0000nnnnnnnと表示されますが、これは間違っているようです。

初心者のため、この明らかなエラーがどこにあるのか特定することができません。

ご配慮と、お手本を示して教えてくださる素敵な方法に感謝します。


よろしくお願いします。
Bryan

ファイル:
Regression.JPG  213 kb
 
Giulio Braga

どのようにLotSizeを変更できますか?

良い一日を

コメントを使用してポジションを追跡することは考えていませんでしたが、シンプルなアルゴリズムなので失敗することはないでしょう。そうでなければ、マジックナンバーはMQL5のAPIで十分にカバーされている。IDEのF1を押して検索するか、ネットやフォーラムで調べてみてくれ。

Moneyその他、マジックナンバーはMQL5 APIで十分にカバーされています。 IDEでF1キーを押してから検索するか、オンラインやフォーラムで調べてください。 お金の管理は、現在、私たちの一連の記事でカバーされています。

 
Javier Santiago Gaston De Iriarte Cabrera # :

それは素晴らしい!

こんなセリフがありました。

この問題を解決するには?

この問題に遭遇した人はいますか?

こんにちは、ハビエル。私たちのコミュニティでは生涯学習の旅をしていることは知っていると思うが、この記事を書いてから経過した時間で私が学んだことから言うと、実装は安定していない。私はこの記事を見直して、より数値的に安定した解を更新します。幸いなことに、この記事全体で私が行ったことを1行で簡単に解くことができるコンパクトな解が存在する。

 
Bryan John Aldridge 初心者なので、どこに明らかな間違いがあるのかわかりません。 EA .

ご配慮と素敵なお言葉をありがとうございました。


よろしく、ブライアン

こんにちは、ブライアン。あなたの懸念は材料です。 ご安心ください、あなたのせいではありません。この記事で実装したアルゴリズムは良いスタートですが、安定したものではありません。この記事で実装したアルゴリズムは良いスタートですが、安定したものではありません。