最適化結果についてのヘルプが必要 - ページ 3

 
Invalid:

最適化の結果から最適な設定を決めるのが難しいと感じています。

ドローダウンの 少なさ、プロフィットファクター 、その他考慮すべき点など、最適化の結果からどれを選択するのがベストなのか、どなたか教えていただけませんでしょうか。

ありがとうございます。


ただ、これについては私の経験をお話しすると、この6つのコラムについて判別分析を行い、ランダムピックと比較してどの設定が一番フォワードのパフォーマンスが高いかを推測してみたところ、結論は「使えない」です。それは、エージェントが市場に適応しているときは最も良いものを選び、適応していないときは悪いものを選ぶというもので、今現在適応しているかどうかを知ることができないのです。私が使っていたエージェントでは、トレード回数が最も大きな要因で、トレード回数と利益とドローダウンの微妙なバランスがベストチョイスだったのですが、明確な法則を示すことが出来ませんでした。

今はzzueggさんが提案されていることを試しています。最適化で儲かる設定をすべて取り出して、過去にテストして、一番いいものを残すようにしています。このアイデアは、短期と長期のマーケットに適応した設定を同時に持つことです。ご想像の通り、目標は自動最適化を 行うことです。

 
pindurs:


私の経験をお話しすると、この6つの列を判別分析し、ランダムに選んだ設定と比較して、どの設定が最も良いパフォーマンスを示すかを推測することができるかどうかを調べました。それは、エージェントが市場に適応しているときは最も良いものを選び、適応していないときは悪いものを選ぶというもので、今現在適応しているかどうかを知ることができないのです。私が使っていたエージェントでは、トレード回数が最も大きな要因で、トレード回数と利益とドローダウンの微妙なバランスがベストチョイスだったのですが、明確な法則を示すことが出来ませんでした。

今はzzueggさんが提案されていることを試しています。最適化で儲かる設定をすべて取り出して、過去にテストして、一番いいものを残すようにしています。このアイデアは、短期と長期のマーケットに適応した設定を同時に持つことです。ご想像の通り、目標は自動的な最適化を行うことです。


IMO、オプティマイザーをホープジェネレーターとして使用するのは、厄介なビジネスです。フィリップスがいつも言っているように、「市場が最適化期間と全く同じように動くことを期待するようなものだ」。オプティマイザーは、(通常は)sl_tpやperiod_timeに基づいて結果を調整する# cruncherである。私自身それを経験しましたが、有望なパラメータの 多くは、最適化された期間外やフォワードテストではパフォーマンスが低下しているのではないかと思います。オプティマイザーとは別に戦略を立て、2010年のデータでテストし、有望であれば、2009年、2008年、2007年...と移行していくべきだと思っています。過去10年間の最高の結果をもってしても、冷静さを保ち、聖杯は存在しないので、聖杯を持っていると考えないようにしなければなりません。IMO、1が市場で採用するすべての戦略は、例えば、制御不能なリスクのようなリスクを運びます。フィリップ、ゴードン、WHRoeder、BB、その他このサイトの才能あるアナリストやプログラマーが提供しているようなツールの最良の使い方は、システムAがシステムBよりも優れているかどうかを比較することです。では、私は10年間のバックテストに合格するようなシステムを作ったことがあるかというと、全くありません。しかし、最近は、2010年から2008年にかけてうまくいき、どこかで破綻するようなシステムをプログラミングすることが多くなってきました。これは、RSI>80 && MA-1 crosses MA-2 then Sellみたいな初心者の教科書的なプログラムに比べたら進歩です。このようなシステムをバックテスターにかけると、99%失敗する。そして、ほとんどの人はそれをオプティマイザーにかけるという罠にはまる。新しく作ったシステムでは、うまくいかなかった短い期間だけを見て、それをシステムから除外する方法を探したくなるものだ。でも、それはカーブフィッティングの一種に過ぎないのではと危惧しています。私は、ハードコーディング(月曜日1-5-2003=取引しない)だけを話しているのではありません。私は、あらゆるタイプのインジケータやオシレータを使用することを意味します。このような失敗があった場合、私にとっての最良の方法は、うまくいったものをメモリに記録してEAをアーカイブし、それからゼロからプログラミングを始めることです。とにかく、いいスレッドですね。このスレッドを追うのが本当に楽しいです。 。









 
ubzen:


新しく作ったシステムでは、うまくいかなかった短い期間だけを見て、それをシステムから除外する方法を探したくなることがあります。でも、それはカーブフィッティングの一種に過ぎないのではと危惧しています。私は、ハードコーディング(月曜日1-5-2003=取引しない)だけを話しているのではありません。私は、あらゆるタイプのインジケータやオシレータを使用することを意味します。このような失敗があった場合、私にとっての最良の方法は、うまくいったものをメモリに記録し、EAをアーカイブして、ゼロからプログラミングを始めることです。

そうですね、勾配やATRのレベルに応じて履歴をいくつかの期間に分割してみましたが、中断された期間に最適化しても、多かれ少なかれ過去3ヶ月に最適化するのと同じで、カーブフィッティングのリスクは最初の日と同じように存在するのです。

最も理解しにくいのは、大きなレンジ値で過去10年間に最適化したときに利益が出るエージェントにたどり着いたとしても、過去のデータでどれだけ過剰に最適化しているのかがわからないことです。なぜなら、そこにたどり着くまでに何百もの素晴らしいアイデアを捨てているわけですから、オプティマイザの遺伝的アルゴはまさにそれを行っているのです。

いや、本当に私たちは大変な仕事をしています。

 
1005phillip:

破滅のリスクを計算する方法は、期間(月、週、年など)または何らかの増分(取引ごと、10取引ごとなど)を定義し、その期間の統計を集計することです。破滅のリスク計算の結果出力が実際に何を意味するのか(その単位)という点で重要です。

まず、正しい質問をしているかどうかを確認する(言い換えれば、計算しようとしている答えが、実際に必要な/答えてほしい質問に答えるものであるかどうかを確認する)ことに焦点を当てることが役立つ場合があります。

例えば、私のクライアントは月単位でタイムラインを管理しています。日次や週次を気にせず、月次の結果がすべてなのです。ですから、私の場合、毎週の結果や取引単位で破滅のリスクを計算しても、誰も得をしません。

したがって、私がバックテストで行わなければならないことは、月単位で平均収益率(利益、損失、RORなど)を把握することです。次のようなものです。


破滅のリスク指標を計算するためには、まず時間枠のデータを集めなければなりません。この例では、月次収益率の結果を組み立て、月次平均 ROR を計算し、次にこれらの月次収益率の標準偏差を計算する必要があります。

この例では、平均月間RORは12%、標準偏差は8%でした...バックテスト結果から、これは将来的に金となるはずでしたが、そうではありませんでした(ご覧の通り)。私は自分の口座がいつダメになるかを知ることに興味があるのではなく(それは些細な問題です)、むしろ口座がある一定量、例えば20%の水増しをする頻度を知ることに興味があるため、破滅のリスクを損失リスク(ROL)と呼んでいることに注意してください。

つまり、12%の月次RORと8%の標準偏差は、6.5%の確率で口座の価値が7.4%減少することを意味します(月末のイベントの6.5%、つまり約15ヶ月に1度)。



ですから、一見不可解なフォワードテストの結果に最初は驚きましたが、バックテストの結果に基づいて毎月このような結果を予想するのは完全に合理的であり、15ヶ月に一度、私の口座の高水準のドローダウンでこのようなマイナスを予想することができるのです。

つまり、意味のある損失リスク評価を計算するためには、まずどの期間が適切かを決め、その期間のRoRの平均と標準偏差を計算するのに適した形で結果を組み立てなければならないのです。

バックテストのデータがあれば、破滅のリスク(または損失のリスク)の計算を使用して、無数の統計ベースの分析を行うことができます。

これは30グループ50トレードの結果です(2001年3月18日から2010年12月21日まで)

初期預金 $700 で


以下のように計算しました。

の平均ROR => 2.9

標準偏差: 6.5

(これはかなり悪い...ですよね?)

今、50のトレードの各グループについて、私が期待できる最大の損失率は: $0.1 X 50 X (20pips+3pip spread ) = $115

115/700 = 16.5%

50回のトレードセッション でこれ以上の損失は出せません。

損失リスクを計算するときに、それを考慮する方法はありますか?

 
sergeyrar:

を計算しました。

平均RORは⇒2.9

標準偏差⇒6.5

(これはかなり悪い...ですよね?)


そうですね、μ/σ比は1以上、できれば2以上欲しいところです。

また、シャープだけでは不十分で、任意のシャープ値でROLを決定するためにはσ値自体が重要です(これはあまり知られていない事実ですが、レバレッジが問題となる根本的な理由であり、CFTCが米国で最大レバレッジを引き下げている理由でもあります)。



これが、「ベータは殺す」というマントラが存在する理由です。世界で最も優れたμは、σが大きいために口座を最終的な破滅のリスクから救うことはできません。レバレッジはσを大きくし、過剰なポジションサイジングはσを大きくする一方で、人々は大きなμを求めています。

しかし、もしあなたが大きなμを達成する唯一の方法がσを大きくすることであるなら、あなたは破滅する運命にある。数学的に確実なことだが、多くの人はそれを理解したり調べたりする準備ができていない。そこでCFTCは、初心者が大きなポジションサイズを設定する能力を奪うことによって、σをどれだけ大きくできるかの上限を強制的に設定し、彼らのためにそれを行おうとしているのだ。

FXのレバレッジ規制については、CFTCへの怒りが渦巻いていますが、CFTCは本当に、自分たちの最大の敵から人々を救おうとしているのです。

sergeyrar:

今、50のトレードの各グループについて、私が期待できる最大の損失率は: $0.1 X 50 X (20pips+3pip spread ) = $115

115/700 = 16.5%

50回のトレードセッションでこれ以上の損失は出せません。

損失リスクを計算するときに、それを考慮する方法はありますか?


損失のリスク自体は確率分布 であり、あなたが失うことになる最大値(115ドル)は、その分布の1点に過ぎません。このようなシナリオがどのくらいの頻度で発生するかに関心があるのではないでしょうか。115ドルの損失は5年に一度でしょうか、それとも5ヶ月に一度でしょうか?

これらは、RoLを使用して答える質問です。「どのくらいの頻度でXYZを失うと予想されますか?」あなたは、115ドルを失う可能性を尋ねていますが、あなたの手順に基づくRoLの最大許容値は9%です。

 
sergeyrar:

ああ......。

ひとつわからないことがあるんですが、この計算には他の要因はないんでしょうか?

月単位で計算されたRORの結果を見てみましょう。

議論のために)より多くの取引がある月にあなたが得るより高いRORであると仮定してみましょう。

例:0回の取引で0%の利益

10回の取引で5%(平均)の利益

20回の取引で10% (平均) の利益

というように...

30ヶ月の期間中、ROR分布に高い値の広がりがあったと仮定します(各月に行われた取引の数は全く異なる)。

平均リターンが10%、標準偏差が20%で、負のRORはなかったとします(取引回数がマイナスになることはない...)

ここで、20%の標準偏差の損失リスクを計算すると、約37%になります...これは本当に意味がありません...。

あなたは私がここで起こっている場所を参照してください?


本当に馬鹿にしているわけではないのですが、ついていけないのです。あなたがここで提起している議論が理解できないのです。月に10回コインを投げても、20回投げても、表が出る確率はこれまでのコイン投げの歴史に関係なく常に50/50である。コイン投げの現実が統計と異なることがあっても、統計が無効になるわけではなく、統計の有用性が限定的になるだけです。

RoLを計算する目的は、数学的に有効なものであるが、保証されるものではないということである。RoLは、トレード戦略における指標となる(システマティックな)リスクをよりよく捉え、提示するためのガイド、結果評価の方法に過ぎません。しかし、偶然はあくまでも偶然です。損失を経験しないチャンスもあれば、完全に損失を経験するチャンスもあります。

RoLは、取引戦略や最適化されたパラメータを ランク付けし、選択するのに適した方法で、このチャンスを計算するのに役立ちます。しかし、もし未来が統計的に過去と同等であるならば、過去の統計を未来の統計に対応させようとする正当な主張があります(これは、気象モデラーがモデルのアンサンブルを使って予測を準備する際に行うことです)。

これが、あなたが期待する最善の方法なのです。

 

お時間をいただきありがとうございました。本当にありがとうございました。

だから、次のテスト結果によって、私はちょうど非常に幸運だったのですか?

この全体の期間(約50トレードの約23グループ - 1つのテストに全部を圧迫することができませんでした)の連続負けの取引の最大量は41(50トレードの2つのグループに分割することができる)でした。

私はこのようなドローダウンをもっと頻繁に見るべきでしたか?

最終的に私はこのゲームを "再生 "を続ければ、私はその種の失われたストライキの時間の9%を取得するのだろうか?

さて、もう一つのこと

この報告書によると

儲かる取引は8.85%で、負ける取引は91.15%です。

ということは、50回連続で負ける確率は、0.9115^50 = 0.97% ...です。

となり、9%からかなり離れてしまうのですが、どうしてでしょうか?

もし、95.3%の確率で負けるとしたら、それは正しいことで、そのような確率では、私の期待値はマイナスになりますO_O。

Ex= 0.953*(-23)+0.047*(247) = -10.31 pips の利益/トレード

 

私の理解では、破滅のリスクはポアソン/確率過程の期待値に基づいて計算されたものですが、あなたは分布をガウス分布の関数型に当てはめています。

もし、この式の導出を理解したいのであれば、以下の本を読むことをお勧めします。



私自身、バックテストやフォワードテストに損失リスク評価を導入する過程で、コックスとミラー、そしてチャムネスの方程式を取り入れ、変数の簡単な置換と(IMO)有用な統合ステップを行い、結果として得られた方程式は、正規化RORベースの損失リスクに基づいてトレード戦略パラメータをランク付けするのに役立っています。(RAROCの1倍と同様)

 
1005phillip:

私の理解では、破滅のリスクの計算はポアソン/ストキャスティック過程の期待値に基づいて導出されたものです。

もし、この式の導出を理解したいのであれば、以下の本を読むことをお勧めします。



私自身、バックテストやフォワードテストに損失リスク評価を導入する過程で、コックスとミラー、そしてチャムネスの方程式を取り入れ、変数の簡単な置換と(IMO)有用な統合ステップを行い、結果として得られた方程式は、正規化RORベースの損失リスクに基づいてトレード戦略パラメータをランク付けするのに役立っています。(RAROCの1倍と同様)


私のような扱い方(グアシアン分布として)は間違っているのでしょうか?

重そうな本ですが

でも、とりあえず買ってみた。

ありがとうございます。

 

それは間違いではなく、あなたが考えているような計算結果を得ることができないだけです。

例えば「1+1=2」と言うのは間違いではありません...計算が正しいのは明らかだからです。

しかし、「1+1=2、つまり計算結果が2なので、6ヶ月で口座が2倍になることが期待できる」と言うのは間違いでしょう。

とにかく、61ページの91式に至る導出に注意を向けたいものです。