記事「ニューラルネットワークが簡単に(第46回):目標条件付き強化学習(GCRL)」についてのディスカッション

 

新しい記事「ニューラルネットワークが簡単に(第46回):目標条件付き強化学習(GCRL)」はパブリッシュされました:

今回は、もうひとつの強化学習アプローチを見てみましょう。これはGCRL(goal-conditioned reinforcement learning、目標条件付き強化学習)と呼ばれます。このアプローチでは、エージェントは特定のシナリオでさまざまな目標を達成するように訓練されます。

この研究では、変分オートエンコーダの個別学習をやめ、そのエンコーダをエージェントモデルに直接組み込むことにしました。このアプローチは、オートエンコーダの訓練の原則にやや反すると言わざるを得ません。結局のところ、オートエンコーダを使う主なアイデアは、特定のタスクを参照することなくデータを圧縮することです。しかし現在では、同じソースデータから複数の問題を解くためにエンコーダを訓練するというタスクには直面していません。

その上、エンコーダの入力には環境の現在の状態しか供給しません。ここでの場合、これらは商品価格と分析指標のパラメータの動きの履歴データです。言い換えれば、口座ステータスに関する情報は除外します。スケジューラ(この場合はエンコーダ)は、過去のデータに基づいて使用するスキルを形成すると仮定します。これは、上昇市場、下落市場、横ばい市場で働くための方策となり得ます。

口座ステータスに関する情報に基づいて、エージェントがエントリーポイントまたはエグジットポイントを検索するためのサブタスクを作成します。

テストグラフ

GCRL方式を採用するプラス面には、ポジションを維持する時間の短縮があります。テスト中、最大ポジション保持時間は21時間15分でした。ポジションの平均保有時間は5時間49分でした。覚えておいでかもしれませんが、ポジションを閉じる作業を完了しなかった場合、保有1時間ごとに累積利益の1/10のペナルティを設定しています。つまり、10時間拘束した時点で、違約金がポジションからの収入を上回ったのです。


作者: Dmitriy Gizlyk

 
私は、mql5のダウンロードファイルと履歴データとテストデータの日付範囲から、あなたの結果を再現できませんでした。
 

いい記事だね。

ナイジェル、あなただけではない。

かなり長い時間をかけてコードをデバッグしたり、正しい使い方を発見したりしない限り、再現性を妨げるほどの内容が提示されている。

例えば

"例のデータベース "GCRLResearch.mq5 "を収集するEAの作業を完了した後、ストラテジーテスターの 低速最適化モードで起動する"

単純な質問ですが、実際、どのパラメータを最適化するのでしょうか?

 
Chris ストラテジーテスターの 低速最適化モードで起動する"

素朴な疑問ですが、実際、どのパラメータを最適化するのでしょうか?

すべてのパラメータはデフォルトです。最適化するパラメータはAgent番号だけ設定すればよい。これはテスターの反復回数を設定するのに使います。

 
Dmitriy Gizlyk #:

すべてのパラメータはデフォルトです。最適化にはエージェント番号のみを設定する必要があります。これはテスターの反復回数を設定するために使用します。

こんにちは、ドミトリー、

あなたのライブラリに何か問題があるのでしょう。いくつかのテストで、私は同じ欠点を持つ同じ結果を得ました。

テスト・ストラテジーは、時間的に区切られた2つの注文を生成します。最初に買い注文、次に売り注文です。

売り注文は、テスト期間が終了した瞬間以外、決済されることはありません。

他のストラテジーをテストしても同じ動作が観察されるので、バグはストラテジー共通のクラスにあるのだろう。

もう一つの原因として、テストの初期状態に影響されやすいことが考えられます。

私のテストレポートを添付します。

ファイル: