トレーディングにおける機械学習:理論、モデル、実践、アルゴトレーディング - ページ 818

 
Dr.トレーダー

そのためには、森を使うのが一番です。このモデルでは、そのようなルールのセットを作成します。


1: DeltaLess350 <= 0.5
2: ZZ_D <= 0
決定 0

1: DeltaLess350 <= 0.5
2: ZZ_D > 0
3: DeltaMore350 <= 0.5
決定 0

1: DeltaLess350 <= 0.5
2: ZZ_D > 0
3: DeltaMore350 > 0.5
決定事項 1

DeltaLess350 > 0.5
決定事項 1


この記事では、Rで行う方法を説明しています。
https://www.mql5.com/ru/articles/1165

Model "タブでforestを選択し、settingの木の本数を1に設定してモデルを作成し、Rulesボタンをクリックすると、次のようなルールのリストが表示されます。

回答ありがとうございます、私の読み方が悪いのかもしれませんが、データのある行の最初(とそれ以降)のエクセル式「= IF(AND(B2=1;D2=1);AND(C2=1;D2=1));1;0) 」からモデルがおかしくなっているようなのですが、どうなんでしょう?

つまり、明確なロジックのためには、足場を使った方が良いということですか?特徴抽出と同じですね。

記事ありがとうございます!もう一度勉強してみます!昔読んだ記憶がありますが、今はもう少し知識があるので、もしかしたら分かりやすいかもしれませんね。

追記:絵は面白いのですが、明らかにロジックが推測できていません...。なのか、それとも
 

森ではなく木を使って、少し記事を書き直したので、より便利になりました。どちらの場合も、計算式は違って見えますが、答えは正しいです。

入力データの値の正しい組み合わせで答えが出るなら、フォレストはうまく機能する、そうです。足し算や掛け算など、あらゆる演算が森では通用しない。

 
アレクセイ・ヴャジミキン

最初の行(とその後の行)のデータ "=If(OR(AND(B2=1;D2=1);AND(C2=1;D2=1));1;0)" の数式をエクセルで見るとモデルが正しくないようです。

どうだろう。エクセルで確認 - 森の数式が2、3回だけ間違っていた。木の式はすべてのケースで一致した。

 
Dr.トレーダー

森ではなく木を使って、少し記事を書き直したので、より便利になりました。どちらの場合も、計算式は違って見えますが、答えは正しいです。

入力データの値の正しい組み合わせで答えが出るなら、フォレストはうまく機能する、そうです。足し算や掛け算など、あらゆる演算がうまくいかないのです。

さて、これで結果は出たのですが、条件を1行、1関数にまとめて、修正後すぐにコードに反映させる方法はないでしょうか?それとも、論理の展開をすべて自分で記述し、同時に結果の解釈も間違えないようにしなければならないのでしょうか?ただ、入力される数値が数十単位であれば、非常に時間のかかる作業ではありますが...。

 
Dr.トレーダー

どうだろう。Excelで確認したところ、森の式が2、3回だけ間違っていた。ツリー式はすべてのケースで一致した。

そう、ツリーからの数式は、コードから判断して除外で行ったのですが、それが正解になったのです。

 

さらに簡単で、数式に悩まされることもなく、学習後は通常のRモデルが得られ、それを使って新しいデータに対して予測を行うことができます。

すべての予測は1つの関数で行われる

predict(model, newdata)

model - これは以前に作成されたモデル(木、森、ニューロンなど、Rでは何百種類ものモデルがあります)です。newdataは予測用の新しいデータを格納したテーブル

 
Dr.トレーダー

さらに簡単で、数式に悩まされることもなく、学習後は通常のRモデルが得られ、それを使って新しいデータに対して予測を行うことができます。

すべての予測は1つの関数で行われる

model - これは以前に作成されたモデル(木、森、ニューロンなど、Rでは何百種類ものモデルがあります)です。newdata - 予測のための新しいデータを含むテーブル.

面白いんだけど、まだはっきりしないんだよねー、Rを扱ったことがないから...。私がやるべきだ、そうすれば真相がわかるから。

もう一つ質問ですが、入力データに純粋にランダムな誤りのデータがあった場合、forest/treeはそれを検出できるのでしょうか?入力データの列挙について、左利き用データを検索して除外するなど、列ごとに自動的に無効化するような整理は可能でしょうか?

 

最も一般的なフォレストは、ターゲットを定義するための最小限のデータセットを見つけるだけである。しかし、ノイズや誤差が予測精度の向上に役立つのであれば、それらを利用しても解析することはない。ですから、たとえばFXの指標をたくさん並べて、トレンドを予測しようとしても無理なのです。

森にはさまざまな高度な改造が施されていて、ノイズやエラー、あなたが書いたものすべてを排除する試みがなされているのです。例えばRのgbm,xgboost パッケージなどです。全体としてはうまくいくのですが、FXには弱く、他の仕掛けが必要です。

 
アレクセイ・ヴャジミキン

Calc」列のロジック(ニューロン)を特定するために、どのニューラルネットワークアルゴリズムを使用できるか教えてください。 補足1:機械学習なしでできるのであれば、そうしてください :)

1: サンプルサイズを決めてください、あなたのサンプルは非常に小さいです

2. 単純な(線形)分類/回帰モデルで、ほとんどの場合うまくいきますが、誤差が大きすぎる場合は、より複雑な(非線形)モデルで試してみてください。

3) 特にR側のアドバイスは絶対に受けない :)) この掲示板から追放した方がいい。

4.機械学習がなくても解決できる問題であれば、使わないほうがいい。

 
Dr.トレーダー

最も一般的なフォレストは、ターゲットを定義するための最小限のデータセットを見つけるだけである。しかし、ノイズや誤差が予測精度の向上に役立つのであれば、それらを利用しても解析することはない。ですから、たとえばFXの指標をたくさん並べて、トレンドを予測しようとしても無理なのです。

森には様々な高度な改造が施されていて、ノイズやエラー、書いたものすべてを取り除く試みがなされています。例えばRのgbm, xgboostパッケージなどです。全体としてはうまくいくのですが、FXには弱いので、ここは他の仕掛けが必要です。

私は指標の値を与えるためにしたくない、私の目標は、論理的に記述された観測を与えることである(それはニュースやお互いに相対的な空間内の異なる指標の比率かもしれません - 一般的に私は意思決定を行うために実際の取引で使用)、以前にこれらの指標を用いて構築し、偽を排除しようと、すなわち入力データは0と1、またはわずかに1入力上の数字になります(ここで質問ですが、私は平日の 効果を見てみたい場合、私は良いだろう別の入力ペアを作成します

また、私の例のように答えが分かっている場合はともかく、より複雑なタスクの効率性について、異なるアルゴリズムの比較を行ったことのある人はいますか?