バックテスト/最適化 - ページ 28

 

想像してみてください、毎日午前0時にEAが(通常業務中に)X量のデータ(1ヶ月、2ヶ月、1年、1日)に対して(遺伝的アルゴリズムによる)最適化を開始し、最適化の終わりに結果をチェック し、最良の結果(高利益、低ドローダウン)をもたらした値を選択し、彼の仕事を停止せずに新しい値で修正します!

手動で行うこともできますが、自動で行うことができれば、より良いものになるのではないでしょうか?

 

私の経験

初心者でなく、ティックの品質が90%あるとして。

1.テスターは大きな銃です。使い方を知っていればうまくいく。そうでなければ、EAのテストに人生を費やし、少なくとも2-3年はライブデータで待つ必要がある。

2.2.テスターはマルチタイムフレーム、マルチカレンシーのシステムには不向きです。もし、あなたのシステムが複雑なポイントを強いるものであれば、プロデューサーに相談してください。

3.3.ネット上に貴重な専門家がいない。だから、これはテスターの問題ではありません。でも、テスターが悪いと言われます。いいえ、私たちが悪いのです。

4.外国為替市場の波は年々変化しています。ある年にうまくいったシステムが、翌年には失敗することもあります。だから、専門家は何年もかけて教育されなければならない。

5.5.この市場で唯一信頼できるトレンドは、(月足)であっても(5年足)のトレンドです。しかし、これらのトレンドは高レバレッジには適していません。このため、高レバレッジのEAを使う機会が減っています。

ありがとうございます。

Cengiz

 

機械学習における細かな工夫

w4rn1ng:
想像してみてください。毎日午前0時にEAが(通常業務中に)X量のデータ(1ヶ月、2ヶ月、1年、1日)に対して最適化を開始し、最適化の最後に結果をチェックし、最高の結果(高利益、低ドローダウン)をもたらした値を選択し、彼の仕事を中断せずに新しい値で値を変更します!手動で行うこともできますが、もし、EAを使用する場合は、そのEAを停止して、新しいデータを使用する必要があります。手動で行うこともできますが、自動で行うことができれば、より良いものになるのではないでしょうか?

正確に記述できるものはすべて、プログラムすることもできる。mq4はそれを行うのに最も適したツールではないかもしれませんが、それは可能です。

実用的な詳細:あなたのEA/指標/最適化間隔によりますが、自動最適化は多くの時間を食うことがあります。つまり、翌日のパラメータを 再最適化するために、5分ではなく5日必要です。

質問です。

1.) あなたのアイデアを手作業でテストしましたか?それは成功しましたか?

2.)なぜ2ヶ月もの間、最適化を繰り返したのですか?なぜ1.5や2.5ではないのですか?

3.) "最高の結果 "とはどういう意味ですか?500ドルのドローダウンで1000ドルの利益、あるいは100ドルのドローダウンで600ドルの利益、どちらがお好みですか?あなたは2000ドル(最初の週は2200ドル、次の7週間は2000ドルにダウン)を作ったシステムを好む、または毎週100〜200ドル(合計1300ドル)を作った別のシステムを好むのですか?

 

2006年は手作業で最適化し、最適なパラメータを 見つけ、それを2007年でテストするのがベストだと思います。両者が同じような結果を示した場合、2004年から2007年の期間をチェックします。それがうまくいったら、そのパラメータを維持します。

毎月最適化すると、EAが正常に動作しなくなることは、すでに確認済みです。1年ごとに最適化するのが一番良い結果が得られます。

また、相場の状況に合わせて最適化することもできます。トレンド期間には1セットのパラメータを使用し、スローマーケット/サイドマーケット期間には別のセットを使用する必要があります。しかし、今がどの時期なのか、誰が判断できるでしょうか?

毎日最適化し直すと、ひどい結果になります。

それと、EAの動作がおかしくなったデータについてですが、心配しないでください。EUR/USDのデータをGBP/USDのデータでアップロードしたら同じ結果になった。結果は混合相場でした。気配値を削除してオフラインモードでMT4を再起動し、1組の気配値(正しいもの)だけをアップロードすれば、問題なく動作するはずです。

また、モデリングがうまくいっているかどうかを確認するために、私はMTの別コピーをいくつか持っており、異なるブローカーの異なるMTでEAをチェックしています。結果は多少異なるが、特に問題はない(問題を特定するのに役立つ)。

 
autopips:
このように、説明できることはすべて、プログラム化することができます。mq4はそれを行うのに最適なツールではないかもしれませんが、それは可能です。

実用的な詳細: あなたのEA/指標/最適化間隔によりますが、自動最適化は多くの時間を食うことがあります。つまり、次の日のためにパラメータを再最適化するには、5分ではなく5日必要です:-)

質問です。

1.) あなたのアイデアを手作業でテストしましたか?それは成功しましたか?

2.)なぜ2ヶ月もの間、最適化を繰り返したのですか?なぜ1.5や2.5ではないのでしょうか?

3.) 「最高の結果」とは具体的に何を意味するのでしょうか?500$のドローダウンで1000$の利益が出るのがいいのか、それとも100$のドローダウンで600$の利益が出るのがいいのか?あなたは2000ドル(最初の週は2200ドル、次の7週間は2000ドルにダウン)を作ったシステムを好む、または毎週100〜200ドル(合計1300ドル)を作った別のシステムを好むのでしょうか?

ええ、おそらくこのプロセスでmt4を支援する新しいプログラムをコード化する必要があります。アイデアは悪くないのですが、ご存知のように市場は絶えず変化しているので、EAを常に使えるようにする良い方法は、毎日最適化することであり、ここに自動処理の必要性が出てきます。私のEAは4時間ごと(あるいは8時間ごと、12時間ごと、16時間ごと...など)に1回操作します。4hcandleの開始時に、それは市場を入力または終了する場合であるかどうかを調べ、すぐにそれはポジションを取ったか、または終了すると、それは別の4時間以上待つので、我々はtickbytick 90%のmodeiling品質を必要としない、最適化は(CPU作業の1日を必要とするかもしれないもの)5〜10分以上(と結果は90%のmod品質またはフォワードテストと同じです)、私のアイデアは、EAが毎日過剰最適化することです、良い方法は、00でEAがチェックすることができることがあります。例えば)リモートサーバー(私のオフィスサーバー)にあるxmlファイルをチェックし、そのファイルから設定をダウンロードします(ニュースインジケータのように)、明らかに反対側(EAにxmlを与えるサーバー)に、毎日最適化を行う私がいるでしょう、またはmt4と一緒に最適化しxmlファイルに結果を入れる別のプログラムが完全に自動的にあるでしょう

 
mcbalta:

4.FXの波動は年々変化しています。ある年にうまくいったシステムが、翌年には失敗することもあります。だから、専門家は何年もかけて教育されなければならない。

その通りです。私も月ごとに変化していると思います。前月に最適化されたEAは、翌月にはトレンドフォローのメンタリティーを持ち、不安定な月には多くのお金を浪費することになります)、しかし、あなたが見れば、市場の状態から別のものに「変化」は1分で起こるものではありません、はい、市場は絶えず変化しますが、それはゆっくりと変化しています。優秀なトレーダーは、トレンドの期間を終え、チョッピーな期間(1ヶ月、1週間、1年、違いはありません)を開始することに気づき、彼の戦略を変更し、利益を得ます。変化を理解せず、トレンドフォローの精神で取引を続ける他のトレーダーは(ちょうどこの例では)多くのお金を失うでしょう、そして月末にはチャートを見て言うでしょう。「今になってはっきりわかったのですが、私はチョッピーな月でもトレンドがあるかのようにトレードしていたのです!なんて馬鹿なことをしたのでしょう!」と言うでしょう。

日々最適化していけば、EAはトレンドからチョッピーまで、日々自分の取引 戦略を理解し、変化させていくことができます。(トレンド相場とチョッピー相場の両方を取引するのに適したEAがあると仮定すると(明らかに異なる設定で))。

これは私が言っていることで、市場は絶えず変化しており、ダイナミックな市場であり、EAが失敗するのはダイナミックではないからです。しかし、もしEAがダイナミックになったらどうでしょうか?

 

ティックデータの結合に関するヘルプ

こんにちは。

私は収集したティックデータをマージするためにDelphi(またはJava、またはC#)の開発者を探しています。私は2つのブローカーからすべてのティックを ログに記録する異なるインターネットプロバイダと複数のコンピュータを持っています。私は2つのデータベース(2つのブローカーのそれぞれについて)に異なるコンピュータから収集したすべてのこれらのティックをマージしたい。私を助けてくれる開発者は、私がこれまでに収集したすべてのティックデータ(2007年1月1日から)にアクセスすることができます。私にPMまたは電子メールを書いてください:hiller159 [at] yahoo [dot] com

 

ありがとうございました

FX_ベイブ

holyguy7:
ステップバイステップで、より良いバックテスト結果を得る方法

1.ここに あるバックテストをしたい通貨ペアのMT4データをダウンロードしてください。必ずM1データをダウンロードしてください。2004年まで遡って1分毎のデータが得られるはずです(約1.5年分のバックデータ)。

2.2. ハードディスクにデータを解凍した後、メタトレーダー4にデータをインポートする必要があります。

3.メタトレーダー4を開く(プログラムを起動する)。

4.メタトレーダー4のヒストリーセンターへ移動してください。キーボードのF2キーを押してください。または、メタトレーダーの上部をクリックします。ツール(Tools)からヒストリーセンター(History Center)を選択します。

5.5. Forex を開き、インポートする通貨ペアを開き、M1 を開く。

6.Import をクリックし、通貨ペアのデータを解凍した場所を参照します。

7.7. File Type が Metaquotes files になっていることを確認します。Openをクリックし、OKをクリックします。その後、Closeをクリックします。

8.8. Metatrader 4プログラムの左側にあるNavigatorウィンドウで、Scriptsを開いてください。Custom Indicatorsのすぐ下にあるはずです。

9.9. File- Openoffline- SELECTでオフラインのチャートを開き、Pair on M1 Timeframeを開いてください。

10.10. その通貨ペアのM1チャート(オフライン)を開いてください。Period Converter スクリプトをダブルクリックする必要があります。

10.Inputタブをクリックすると、Valueが3と表示されます。

11.次に、ツール-オプション-チャートタブをクリックし、ヒストリーの最大バーとチャートの最大バーを99999999に変更し、OKをクリックします。

基本的には、インポートしたM1データを、テストしたい異なるタイムフレームに変換することになります。一度に一つずつやってもいいし、全部やってもいい。

私は通常、5を選んでからOKをクリックします。次に、Period Converterをもう一度ダブルクリックして、値を15に変更してからOKをクリックし、もう一度クリックして値を30に変更してからOKをクリックし、タイムフレームを完了させます。

注意:「本当にperiod_converterを停止して、チャートM1でperiod_converterを実行しますか」という警告が表示されます。

という警告が出ますが、「はい」をクリックし、再度period_converterをダブルクリックすると、M1のデータをすべてのタイムフレームに変換し続けることができます。

私は、すべてのタイムフレームでダウンロードできるすべての通貨ペアでこれを実行しました。これは、何かがうまくいくかどうかのヒントを与えてくれるので、持っておくとよいでしょう。

お役に立てれば幸いです。
 
w4rn1ng:
こんにちは、ここで私は何をしたいです。

私は私のEAに自分自身を最適化させたい(過去2ヶ月の最適化)、そしてそれは最適化の間に彼がより良い変数を見つけた場合、彼の変数を自動的に変更する必要があります(それは24時間24時間、すべての日、すべての日を最適化する予定です)。

あなたはそれがこのような何かをコーディングすることが可能だと思いますか?多分スクリプトまたは私は知らない何か、あなたはどう思いますか?

以下は、EAの自動最適化について書かれたロシアの記事へのリンクです。

Автоматическая оптимизация торгового робота в процессе реальной торговли - Статьи по MQL4

で、英語に翻訳するサイトへのリンクです。

AltaVista - バベルフィッシュ翻訳

Wackena

 
Wackena:
EAの自動最適化について述べているロシア語の記事へのリンクはこちらです。

Автоматическая оптимизация торгового робота в процессе реальной торговли - Статьи по MQL4

で、英語に翻訳するサイトへのリンクです。

AltaVista - バベルフィッシュ翻訳

Wackena

こんにちは、ご返信ありがとうございます、ええ、私はすでに数週間前にそれを見つけた、とにかくあなたの助けに感謝します、それは非常に良いことだ!.