記事"直近のピップのプロフィットダウンを抽出"についてのディスカッション - ページ 21

 

偽のgraalityをフィルタリングするために、スプレッドがゼロのダニをダニ履歴から捨てた。まさか、それがこのような災いを招くとは思ってもみなかった。


実際のティック履歴の取引ロジックでスプレッドがゼロのティックを無視すると、結果は15%改善する。

void OnTick
{
  if (Bid == Ask)
    return;

// ...

結果は15%改善する。つまり、このようなロジックを入れる前は1900pipsの利益があったのが、規定されると一気に2150pipsになります。しかも同じトレード回数で である。


このような無意味なことが結果にこれほど大きな影響を与えるのだから、TSは全くのたわごとだと一度は思った。しかし、少し調べてみることにした。

その結果、7500Kのうち187Kのティックがあることがわかった。しかし、その中で19Kのティックが局所極大の形成に影響を与えていた。


そして、それがすべてを正しい位置に置いた。ゼロ・スプレッド・フィルターは間違いだ。スプレッドは収益性とは何の関係もない虚構だ。同時に、私は昔ながらの方法でフィルタリングに使うことにした。それはできない。少なくとも、ティック・アーカイブに書き込む際に技術的な障害が発生した場合に備えて、マイナスのスプレッドだけをフィルタリングする。


なぜスプレッドがゼロのティックが局所的な極値に現れるのでしょうか?おそらく、価格集計の特殊性でしょう。


一般的に、ゼロ・スプレッドでフィルターをかけないでください。

Документация по MQL5: Торговые функции / HistoryDealsTotal
Документация по MQL5: Торговые функции / HistoryDealsTotal
  • www.mql5.com
Возвращает количество сделок в истории. Перед вызовом функции HistoryDealsTotal() необходимо получить историю сделок и ордеров с помощью функции HistorySelect() или HistorySelectByPosition(). Не следует...
削除済み  
fxsaber:

スプレッドがゼロのティックが局所的な極値に現れるのはなぜか?おそらく、価格集計の特殊性であろう。

なぜ正当化する必要があるのか?ゼロ・スプレッドはおそらく価格の流れの中で均等に 分布している。

そして、スプレッドがゼロのティックが出現した瞬間、それが極端になることは誰にもわからない。

 
trader_number_one:

なぜここで何かを正当化する必要があるのか?スプレッドがゼロであれば、おそらく価格の流れは均等になる。

そして、スプレッドがゼロのティックの瞬間、それが極端になることは誰にもわかりません。

理にかなっている。


興味深いことに、相場のパターンがある場合、利益の出るTSを書くのは非常に簡単です。まったく異なるTSを書くこともできますが、市場の規則性が存在するため、同じような結果が得られます。

つまり、重要なのは最適なTSを見つけることではなく、時間内にパターンの存在を確認することなのだ。


私は、全く愚かなものから非常に複雑な取引ロジックまで試しました。すべてプラスマイナスで同じことだ。質的に異なる結果は得られない。パターンの存在を知れば、どのようなロジックを思いついたとしても、それをトレードしないことはほとんど不可能だということがわかった。


このことから、儲かるTSとは、複雑な規則性を見出した特別なものではないと結論づけることができる。そして、ロジックは、稼ぐためではなく、流出させないために少し役立つだけである。バカでも儲かるTSで儲けることはできるからだ。負けないことの方が難しい。


何が言いたいのか?この19Kティックへの依存はまだ少し心配だが、結果が15%変わるということは、TSのロジックが完全に間違っているのではないだろうか?つまり、最悪なのはパターンではなく、それをトレードするTSの多くのバリエーションの一つなのだ。

削除済み  
fxsaber:

そしてここから、儲かるTSは複雑なパターンを発見したユニークなものではないと結論づけることができる。そして、ロジックは、稼ぐためではなく、流出させないために少し役立つだけである。なぜなら、バカでも儲かるTSで儲けることができるからだ。損をしない方が難しい。

その通りだ。すべてのTSで、夜のクロスでの取引は、これは常に発生します。誰かが最初に気づき、次にリピートの群衆とすべてのチョップマネーがしばらくの間、その後、チャネルはクレイジーになり、もはやそれほど理想的ではありません、価格はますます頻繁にチャネルを離れると、非理想的なチャネルから最大絞り出すことができる人が最も長く続くでしょう。そして誰かが別のクロスを見つけ、歴史は繰り返される。

何が言いたいのか?この19Kティックへの依存は、結果が15%変化する場合、まだ少し心配であり、TSの完全なロジックではありません....つまり、最悪なのはパターンではなく、それを取引するTSの多くのバリエーションの一つなのだ。

説明はとても簡単だと思う。「データのセットを非常に長い間拷問すれば、どんな結果でも得られる」(c)そんな感じだ。

今日、同じようなことがあった。同じようなTCが2つある。一方は2時と3時、もう一方は6時と7時に取引している。時々、3時からのトレードがハングアップすることがあるので、6時の時点でそれをどうにかしなければならない(反対側のトレードをオープンした場合、それをクローズしなければならない。)私は(ずいぶん前に)グルーイング・アルゴリズムを書いた。すべてうまくいく。しかし、アルゴリズムが時間順に並べられたすべての取引(2時間、3時間、6時間、7時間分)を受け取ると、間違ったものを捨ててしまう。私はそのことを常に忘れている。その結果、今日このようなグルーイングを行った後、収益が1.5倍になった。私もここに座って、もしかしたらそうなのかもしれない、そこには何か深い意味があるのかもしれない、収益性を上げることは可能なのかもしれない、と考えている!しかし、おそらくそうではないだろう。

 
trader_number_one:

その結果、今日、このような接着の後、採算が1.5倍になった。

運が向いてきたようだ。やはり、糊付けに磨きをかけたほうがいい。しかし、デバッグを確実に行うのは難しいものだ。ほとんどリアルタイムだからだ。シンクロナイザーのデバッグでも同じ話だ。


そして、壊れたグルーイングの深い意味について。TCのポートフォリオを作り、バックテストでそれを見る必要がある。そうすることで、少なくとも自己保証のための議論が可能になる。

 
trader_number_one:
誰かが最初に気づく

パターン開始から1ヶ月後に特定があれば、素晴らしい結果だ。MultiTesterのようなソリューションはこの意味で非常にクールです。

2週間後に発見できることもあります。しかし、期間が短ければ短いほど、議論ではなく、派手さが増します。

 
fxsaber:

予告編では、このスクリプトを 1回実行した後の全レポートを掲載している。

その中にクリーンアップされた例がある。

カーブボールが何なのかはわからない。

 
trader_number_one:
そしてリピーターが続々と現れ、しばらく稼ぎ続ける。

この記事でもそうなると思った。しかし、そうはならなかった。


ナイトスキャルパーのモニターはたくさんある。そこではすべてが手のひらのように明確だ。取引間隔もシンボルもはっきりと表示されている。ただひとつだけマイナス点がある。平均して、1シンボルにつき1日1回の取引。あるいはもっと少ない。


この意味で、この記事はもう少し進んでおり、金の 岩を見つける方法だけでなく、取引頻度の高い岩の一つを明確に示している。誰もわざわざ岩を薄くするための初歩的なふるいを書こうとはしなかった。これはどうやら、社会学者が研究する現象のひとつの帰結のようだ。利益を絞り出すことのできるTSのバリエーションは膨大な数にのぼる。しかし、読者はここに何か未解決の謎があるという考えに固執している。


記事全体は読者に対する不気味ないたずらであり、いつかは実現するだろう。それまではいい。

 
fxsaber:

そしてここから、儲かるTSは複雑なパターンを発見したユニークなものではないと結論づけることができる。そして、ロジックは、稼ぐためではなく、流出させないために少し役立つだけである。なぜなら、バカでも儲かるTSで儲けることができるからだ。損をしない方が難しい。

計算はこの仮説を支持する論拠を投げかけた。私はそこに最適化するときにいくつかのセクションで顕著なプラスを示している記号を取った。単なるプラスではなく、「壮大な」という接頭語がついている。

そして、その記号の上には年間区間があり、そこでは最適化された優れたパスから最高のパスまで、すべてが最低になる。


そこで私は、このうんざりするような年次間隔だけを取り出し、BestIntervalを使って最適化した。その結果、おそらくフィッティングプラスが得られた。そして、そのバリアントがゴージャスな間隔でどのように振る舞うかをチェックした。

sinput int inMinTrades = 500; // 最低取引数(ポジション)。

#define  BESTINTERVAL_ONTESTER_FORMULA BestInterval.GetTotal() > inMinTrades ? BestInterval.GetProfit() : 0 


それはほとんど素晴らしい振る舞いだった!


つまり、超利益スポットを迂回してその超利益を得られないようにするのは非常に難しい。


ZЫ 非常に興味深いのは、嫌な年間インターバルでのBestIntervalが、優れたインターバルでトレードするのが最適であるところ、まったく同じトレード時間を示したことです。厄年には梅のような部分と儲かる部分が混在しているように感じます。そして、BestIntervalは儲かる部分を掘り起こした。今年以外は、価格設定の儲かる部分のスイッチが切られたかのようだ。

 

fxsaber:

排水溝を待つ

やったよ。取引停止。