記事"ランダムフォレストの予測トレンド"についてのディスカッション

 

新しい記事 ランダムフォレストの予測トレンド はパブリッシュされました:

本稿は Forex における通貨ペアのロングおよびショートポジションを予測するパターンを自動検索するための Rattle パッケージの使用について考察を行います。本稿は初心者トレーダーにも経験あるトレーダーにも有用な内容です。

トレーディングシステムを構築する最初の目的はマーケットインスツルメント、たとえば通貨ペア、のふるまいを予測することです。予測の目的はさまざ まです。われわれはトレンド予測、正確には通貨ペアクオートの成長(ロングポジション)または衰退(ショートポジション)に限定します。

通貨の動きを予測するにはトレーダーは通貨ペアチャートに数個のインディケータをアタッチし、予測力のあるパターンを見つけようとします。

本稿ではパターンの自動選択とR 統計解析システムのライブラリであるRattle パッケージを用いたその事前評価について考察します。

われわれは金融マーケットを予測するのに理想的な通貨ペアの動向を予測するのに R を利用していきます。とはいう物の、R は主に有資格の統計家用プログラム言語でトレーダーの多くの理解の及ぶところではありません。予測のためのツールが数多くありR の基本機能を作る多数のパッケージに散らばっていることで R はより複雑になっています。

Rattle(簡 単に学習するための R 分析ツール )は1式の R パッケージに統合しています。それはトレーディングシステム開発にとっては重要なことですが、初心者には個別に利用するのは簡単ではありません。R が Rattle と連携しはじめるのを理解する必要はありません。Rattle との連携結果は R のコードです。それは実際のトレーディングシステムを開発するために使用できるものです。ただしこの段階では R の知識が必要です。

とにかく Rattle はトレーディングシステムを作成する段階において外せないツールです。それにより初心者でさえ多様な考えの結果を確認し、それを評価することができるのです。

Rattle (Williams, 2009) はパッケージとして作成されたオープンソースコードを持つ無料のソフトウェアで、R(R の開発ワーキンググループ, 2011)の一部です。無料のソフトウェアなので、Rattle および R のソースコードは無制限に利用可能です。Rattle ソースコードは С 言語で書かれた折、ユーザーはコードを学習し検証し拡張することが許され、また奨励されています。

図1 ZigZag インディケータ

作者: СанСаныч Фоменко

 

記事を読んで最初に思ったのは、「なんて粗悪な翻訳なんだろう」ということだった。

著者がどこの国の人なのか調べてみたが、結局翻訳ではないことが判明した)))。

В качестве инструмента для предсказания поведения валютных пар выберем систему R, которая идеально подходит для задач предсказания на финансовых рынках и, в частности, предсказания поведения валютных пар.

悪いことは言いたくなかった。この記事はいいのかもしれないし、とてもいいのかもしれない......。

 

アイデア自体に興味がある(ランダムフォレストについては 知らなかった)。人為的なツール。具体的に何が行われたのか、どのようなデータベクトルが使用されたのかが明示されていない。ジグザグのパラメータが省略されている。対象読者はRattleパッケージのユーザーか?それともRで書いている人たち?彼らの研究がなければ、記事の多くの点が理解できない。結論は漫然としており、この方向性が有望かどうかは記事からはわからない。トレードの例を挙げることは可能だろう。一般的な印象-狭い範囲に向けて書かれたような。

追記記事からTC.Rdataを開こうとすると、以下のように表示される:

Ошибка в sqrt(ncol(crs$dataset)) : 
  нечисловой аргумент для математической функции
Вдобавок: Предупреждение
In rm(crs) : объект 'crs' не найден
 
wmlab:
アイデア自体に興味がある(ランダムフォレストについては知らなかった)。人為的なツール。具体的に何が行われたのか、どのようなデータベクトルが使用されたのかが明示されていない。ジグザグのパラメータが省略されている。対象読者はRattleパッケージのユーザーか?それともRで書いている人たち?彼らの研究がなければ、記事の多くの点は理解できない。結論は漫然としており、この方向性が有望かどうかは記事からはわからない。トレードの例を挙げることは可能だろう。全体的に狭い範囲に向けて書かれたような印象。

何かうるさい。例えば、数学者でない私は、もっと詳しく説明されるべきいくつかの点を除いて、本質をよく理解した。例えば、"ツリー・スプリッティング "という用語がよく理解できなかった。何度も出てくるが、具体的に何を意味しているのかよくわからない。 結論については、どんな結論が必要なのか? "バリケードに行け"?例えば私は、この本を読んだ後、自分が自転車を発明し、既成の解決策を使うのではなく、似たようなアルゴリズムを自分で発明しようとしていることに気づいた。私が理解したように、主なアイデアは、統計に興味のあるアマチュアの間でRパッケージを普及させることであった(しかし、「バカ」向けではない)。 そして、それは非常にうまくいったと私は思う。

 
wmlab:

アイデア自体に興味がある(ランダムフォレストについては知らなかった)。人為的なツール。具体的に何が行われたのか、どのようなデータベクトルが使用されたのかが明示されていない。ジグザグのパラメータが省略されている。対象読者はRattleパッケージのユーザーか?それともRで書いている人たち?彼らの研究がなければ、記事の多くの点は理解できない。結論は漫然としており、この方向性が有望かどうかは記事からはわからない。トレードの例を挙げることは可能だろう。一般的な印象 - 狭い範囲に向けて書かれたような。

追記。そして、この記事からTC.Rdataを開こうとすると、次のようになる:

対象読者 - Rattleパッケージのユーザー?それともR言語で書いている人たち?それらを勉強しないと、記事の多くの点が理解できない。

Rattleを使用する場合、私は2つの対象読者を特定する:

自分で入力.csvファイルを作成し、ランダムフォレストだけでなく、6つのモデルの結果を作成し評価することができる、Rの訓練を受けていないユーザー。主な問題はモデルではなく、モデルの入力データである。初期データを見つけることができれば、プログラミングを注文する ことができる。要はアイデアであり、プログラミングのテクニックも応用できる。

PS.そして、記事からTC.Rdataを開こうとすると、以下のようになる:

再確認したが、すべて正常である。一連の動作は以下の通り:

  • Rを起動する。
  • タブ{ファイル/ワークスペースをロード
  • 次に、解凍されたアーカイブからTC.RDataファイルを探す。
  • ラトルを起動する。
  • DataR Datasetタブ
  • ドロップダウンメニューのData NameウィンドウでTC nameを探す。
  • "Run "をクリックする。

関心のあるベクトルのリストが得られます。

もう一つの対象は、訓練されたユーザーである。ラトルは、モデルの初期データを選択するのに便利なツールです。取引システムを構築する際の主な時間は、初期データの選択に費やされます。そこでラトルは非常に便利です。非常に複雑な数学的モデルを構築することなく、非常に迅速に最終的な見積もりを得ることができます。

頑張ってください。

 
meat:

あなたはただ小うるさいだけだ。例えば、私は数学者ではないが、本質をよく理解していた。例えば、"ツリー・スプリッティング "という用語が何度も出てくるが、具体的に何を意味しているのかよくわからない。 結論については、どんな結論が必要なのか? "バリケードに行け"?例えば私は、この本を読んだ後、自分が自転車を発明し、既成の解決策を使うのではなく、似たようなアルゴリズムを自分で発明しようとしていることに気づいた。私の理解では、Rパッケージを統計に興味のあるアマチュアに普及させることが主な目的だった。 そして、それは非常にうまくいったと思う。

例えば、私は "ツリー・スプリッティング "という言葉をよく理解していなかった。

木の根を取る。

根を分割し、根から2本の線を引きます。根を分割し、各レベルで同じ操作をします。

ツリーの各ノードでは、アルゴリズムによって定式化された何らかの条件がチェックされる。たとえば、eurusd> 1.35であれば左の分岐を進み、そうでなければ右の分岐を進む。

このアルゴリズムは、このようなツリーを500個生成しすぎた。10000の条件があるはずだ。

次にすべての予測変数の値の到着時に - 各予測変数の1つの値 - 私は合計で88個を持って、木と比較され、88個の値のこの特定のセットは、ロングまたはショートを伴うことを決定します。つまり、パターンのアナログ的なものだ。

 
faa1947:

ダブルチェックしたが、問題ない。 シーケンスは以下の通りだ:

  • Rを実行
  • ファイル/ロード・ワークスペース・タブ
  • 解凍されたアーカイブからTC.RDataを探す。
  • ガラガラを起動する。
  • DataR Datasetタブ
  • のドロップダウンメニューからData NameウィンドウのTC nameを探す。
  • "Run "をクリックする。

ご希望のベクトル・リストが得られます。

ありがとう!これではっきりしました。

ZZ.75、ZZ.35?
*.dif1、*.dif2、*.dif3は何ですか?インクリメントですか?
ベクトル eur, gbp, etc.?- それらは何ですか?

そしてグローバルな質問ですが、なぜ指標のデータが追加されるのですか?x, f1(x), f2(x)]と同じではないですか?私は冗長さをほのめかしているのです。クロージャのインクリメントだけを供給することは試していないのですか?

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

 
wmlab:

ありがとう!これではっきりしました。

ZZ.75、ZZ.35?
*.dif1、*.dif2、*.dif3とは何ですか?インクリメントですか?
ベクトル eur, gbp, etc.?- それらは何ですか?

そしてグローバルな質問ですが、なぜ指標からデータを追加したのですか?x, f1(x), f2(x)]と同じではないですか?私は冗長さをほのめかしているのです。クロージャのインクリメントだけを供給することは試していないのですか?

お返事ありがとうございます。

ZZ.75、ZZ.35というベクトルの本質を説明していただけますか?

これらは最小反転距離75pipsと35のZZです。ターゲット変数TRENDはZZ.35から得られます。これらの変数をモデルで使用することはできません。

ベクトル*.dif1、*.dif2、*.dif3とは何ですか?インクリメントか?何に対する増分?

前のバー、前の(-2)バー、(-3)バーに対する増分。トレンドを考慮することです。

ユーロ、ポンドなどのベクトル。- これらは何ですか?

eurusd, gbpusd は最初のシンボルです。

私は冗長性をほのめかしています。終値の増分だけを入力してみましたか?

いろいろ試したよ。この記事は可能性のデモンストレーションであり、同時に冗長性でもある。選択は非常に単純に行われます - 変数はIgnoreとしてマークされます。

 

SanSanychの記事、おめでとう!

もちろんRではもっとコンパクトになるだろうが、まずはそこから始めるべきだろう。

今、"Deep "学習に関する記事を書き終えているところだ。あなたのデータを使って、結果を比較してみようと思います。

幸運を祈る。

 

データセットをよく見てみたが、ダメだ。引用符は捨てる必要がある。つまり、最初の48個の変数は削除される。42の入力変数と1つのターゲット変数のデータセットが残る。

まあ、それはオーナー次第であり、誰もが自分の好みや経験などに応じて選択する。しかし、このモデルについて1つ言いたいことがある。「RandomForestが素晴らしいのは、前処理を必要としないからだ。生データを見事に受け入れてくれる。

それ以外の点でも、もちろんこの記事は非常に有用である。

 
vlad1949:

SanSanychの記事、おめでとう!

もちろんRではもっとコンパクトになるだろうが、まずはそこから始めるべきだろう。

今、"Deep "学習に関する記事を書き終えているところだ。あなたのデータを使って、結果を比較してみようと思います。

幸運を祈る

あなたのスレッドをここで繰り返すのはとても良いことだと思います。

とても有益な資料だった。