記事についてのディスカッション - ページ 5

 
1.一般的なパターンが N 個の商品それぞれにほぼ等しく機能することが分かったと仮定すると、1 つの商品 の結果に基づき、同時に取引される商品を増やすという観点からシステムの能力をおおまかに見積もる と、以下のようになります:

O = Z * Tcr * ( 1 + ( N - 1 ) * Corr ) / Tp,
ここで、
Z - 1つの商品の取引数 (一連の取引)、
Tcr - 1つの取引の平均期間 (日単位)、
N - 商品の数、
Corr - 商品間の相関係数 [0..1],
Tp - 取引期間(日)。

O が 1 より小さい場合、同時に取引する商品の数を増やしても、最大ドローダウンは増えない可能性が高く、総利益は N 倍になる傾向がある。
100 の商品を同時に取引するには、最小の取引時間(これはカウンタートレンド戦略にとって非常に難しい)と最小の取引商品の相関(これも難しい)を確保する必要がある。

2.いくつかのシンボルを取引する際に、「部分決済」をスケッチして急遽テストしてみた。ドローダウンは減少し、エクイティグラフはバランスグラフに近づいた。しかし、大きなドローダウンはまだ現れている。パーシャル・クローズ」なしで比較すると、同じ深さではなく、少し間違った場所にある。
テール・カット(最も収益性の低いシリーズまたはその一部のクローズ)を定期的かつうまく機能させるためには、クローズに成功したシリーズを常に残高に供給する必要があり、この流入はマイナスをクローズしてポケット(残高)に20%を残すのに十分でなければならない。しかし、「ジュニア」シリーズにこのような利益提供の仕組みがある場合、「シニア」シリーズに関与する意味はない。
一つの商品でロックされたシリーズを考えた場合、例えば、マイナス買い(1)を持ち、いくつかの売り(2)を成立させた場合、私にはうまくいきませんでした(長期にわたって安定したプラスという意味です)。私は何もキャンペーンしていないし、数学なしで、もっぱらこの: "私はチェックした..."。:)

一般的に、このシステムには顕著な非対称性がある。不利な動きの場合、ポジションは積み上がる。その場合、正しいエントリーの割合が誤ったエントリーよりもはるかに高くなるか、十分なプルバックまたはドローダウンのための大きな準備が予想されます。一方、形成された各ブロックのポジションを、エントリーに対しても利益に対しても積み上げることも可能である。すべてのシリーズが計画された利益の合計で決済されることを条件に、このような決定はより良い結果をもたらします。また、「テール」ブロックにのみエントリーすることで、ドローダウンが減少します。

このシステムは興味深いもので、さまざまな方向に非常に変化します。例えば、私は以下のパラメーターを試している:
-ブロック:
-- トレンド/フラットニングを検索する最小および最大ステップ数(8 - 非常に短いセクションか?),
-- ブロック・セット・サイズ、セット内の標高変化の開始とステップ,
-- トレンドとフラットの境界をどこに引くか,
さらに:
--オープン時:
-- アセット・ヘッジ・コントロールを使うかどうか(許容できる相関関係を持つ特定の商品セットについては、コントロールしないほうがよい)、
--反転シグナルに取り組むかどうか(元の方向にチゼルを入れるか、エグジットするが反転はしないほうがよいと思う)、
--シグナルの場合、ブロックの動きに逆らってエントリーするか、動きに乗ってエントリーするか、あるいは両方のケースでエントリーするか(ここはさまざま)、
--エントリー量:固定ロット、または現在のブロックの固定値、または最大サイズのブロックの固定値から
-- シグナルを失ったときの対処法:クローズする、他のパラメータで新しいものを探す、最後のものを続ける、
-- クローズするとき:
-- 動きの静的な予想に基づくTP、またはブロック値に相対する$の一定の利益(ドローダウンやビルドアップに関係なく、どのシリーズからも$10欲しいような)によってシリーズから終了する計画
-- すべてのオープンシリーズの合計利益を使用するかどうか、またブロック値に相対するどのボリューム(すべてのシリーズから合計30、そしてクローズ?)
-- 部分的なクローズ・メカニズムを使うかどうか。

著者がこれらの疑問を声に出していないのは明らかで、もしかしたらすべて不要なのかもしれない。私がシステムを理解している範囲内で、その実装の質をひねり出しているのは明らかだ。しかし、私はこのシステムそのものが好きだし、その研究の過程も好きだ。著者のおかげで、私は興味を持ってついていっている。
すべての質問-パラメータは複数のテストを必要とするが、これはブロック構築のオリジナル版では非常に難しい(計算量が多い)。私は計算とブロックセットの構築を簡素化しようとした(最後のバーからの計算の代わりに、計算のためのまれな固定参照日を使用する)。計算のスピードはほとんどコスモスのようですが、残念なことに、受信したシグナルの品質が低下していることに気づきました :( 今、どのように組み合わせるか、頭を悩ませています...

また、資産別にヘッジを制御する場合、バイナリ制御よりもボリュメトリック制御の方がうまく機能することがわかりました。バイナリー - 通貨別のオープンポジションの方向だけを コントロールする場合。ボリュメトリック - 「資産」タブのアナログを計算し、新規ポジションをゼロから、または累積額に対して建てる。(ところで、MQL5 でこのタブからデータを取得する標準的な手段はありますか?)

一般的には、なんとなく。

追伸: システムが形成されたバー(始値のみ)で決定を下すように設計されている場合、ポジションに SL と TP がマークされておらず(アルゴリズムには存在する可能性がありますが)、「OHLC M1」には信頼できるテストのための十分な冗長性がすでに含まれています。
 
Amba404:


1.N 個の商品のそれぞれにほぼ等しく機能する一般的なパターンを見つけたと仮定すると、1 個の商品の結果に基 づいて、同時に取引される商品を増やすという観点でシステムの能力をおおまかに見積もるには、以下のようになります:O = Z * Tcr * ( 1 + ( N - 1 ) * Corr ) / Tp, ここで、 Z - 1つの商品の取引数 (一連の取引)、 Tcr - 1つの取引の平均期間 (日単位)、 N - 商品の数、 Corr - 商品間の相関係数 [0..1], Tp - 取引期間(日)。 O が 1 より小さい場合、同時に取引する商品の数を増やしても、最大ドローダウンは増えない可能性が高く、総利益は N 倍になる傾向がある。 100 の商品を同時に取引するには、最小の取引時間(これはカウンタートレンド戦略にとって非常に難しい)と最小の取引商品の相関(これも難しい)を確保する必要がある。 2.いくつかのシンボルを取引する際に、「部分決済」をスケッチして急遽テストしてみた。ドローダウンは減少し、エクイティグラフはバランスグラフに近づいた。しかし、大きなドローダウンはまだ現れている。パーシャルクローズ」なしで比較すると、同じ深さではなく、少し間違った場所にある。テール・カット(最も不採算なシリーズまたはその一部のクローズ)を定期的かつうまく機能させるためには、クローズに成功したシリーズを常に残高に供給する必要があり、この流入はマイナスをクローズしてポケット(残高)に20%を残すのに十分でなければならない。しかし、「ジュニア」シリーズにこのような利益提供の仕組みがある場合、「シニア」シリーズに関与する意味はない。一つの商品でロックされたシリーズを考えた場合、例えば、マイナス買い(1)を持ち、いくつかの売り(2)を成立させた場合、私にはうまくいきませんでした(長期にわたって安定したプラスという意味です)。私は何もキャンペーンしていないし、数学なしで、もっぱらこの: "私はチェックした..."。:)一般的に、このシステムには顕著な非対称性がある。不利な動きの場合、ポジションは積み上がる。その場合、正しいエントリーの割合が誤ったエントリーよりもはるかに高くなるか、十分なプルバックまたはドローダウンのための大きな準備が予想されます。一方、形成された各ブロックのポジションを、エントリーに対しても利益に対しても積み上げることも可能である。すべてのシリーズが計画された利益の合計でクローズされることを条件に、このような決定はより良い結果をもたらします。また、「交差」ブロックにのみエントリーすることで、ドローダウンを減らすことができます。 このシステムは興味深いもので、さまざまな方向に非常に変化します。例えば、私は以下のパラメーターを試している。 -ブロック: -- トレンド/フラットニングを検索するステップの最小数と最大数(8 - 非常に短いセクションか? 50 - そんなにたくさん必要か?), -- ブロック・セット・サイズ、セット内の標高変化の開始とステップ, -- トレンドとフラットの境界をどこに引くか, さらに: --オープン時:-- アセット・ヘッジ・コントロールを使うかどうか(許容できる相関関係を持つ特定の商品セットについては、コントロールしないほうがよい)、 --反転シグナルに取り組むかどうか(元の方向にチゼルを入れるか、エグジットするが反転はしないほうがよいと思う)、 --シグナルの場合、ブロックの動きに逆らってエントリーするか、動きに乗ってエントリーするか、あるいは両方のケースでエントリーするか(ここはさまざま)、 --エントリー量:固定ロット、または現在のブロックの固定値、または最大サイズのブロックの固定値から -- シグナルを失ったときの対処法:クローズする、他のパラメータで新しいものを探す、最後のものを続ける、 -- クローズするとき:-- 動きの静的な予想に基づくTP、またはブロック値に相対する$の一定の利益(ドローダウンやビルドアップに関係なく、どのシリーズからも$10欲しいような)によってシリーズから終了する計画 -- すべてのオープンシリーズの合計利益を使用するかどうか、またブロック値に相対するどのボリューム(すべてのシリーズから合計30、そしてクローズ?) -- 部分的なクローズ・メカニズムを使うかどうか。 著者がこれらの疑問を声に出していないのは明らかで、もしかしたらすべて不要なのかもしれない。私がシステムを理解している範囲内で、その実装の質をひねり出しているのは明らかだ。しかし、私はこのシステムそのものが好きだし、その研究の過程も好きだ。著者のおかげで、私は興味を持ってついていっている。 すべての質問-パラメータは複数のテストを必要とするが、これはブロック構築のオリジナル版では非常に難しい(計算量が多い)。私は計算とブロックセットの構築を簡素化しようとした(最後のバーからの計算の代わりに、計算のためのまれな固定参照日を使用する)。計算のスピードはほとんどコスモスのようですが、残念なことに、受信したシグナルの品質が低下していることに気づきました :( 今、どのように組み合わせるか、頭を悩ませています... また、資産別にヘッジを制御する場合、バイナリ制御よりもボリュメトリック制御の方がうまく機能することがわかりました。バイナリー - 通貨別の






































オープンポジションの方向だけを コントロールする場合。ボリュメトリック - 「資産」タブのアナログを計算し、新規ポジションをゼロから、または累積額に対して建てる。(ところで、MQL5 でこのタブからデータを取得する標準的な手段はありますか?) 一般的には、なんとなく。 追伸: システムが形成されたバー(始値のみ)で意思決定を行うように設計されている場合、(アルゴリズムには存在するかもしれないが)ポジションに SL と TP がマークされておらず、"OHLC M1 "には信頼できるテストのための十分な冗長性がすでに含まれています。



興味深い。ドローダウンの推定式に同意します。一般的にロジックは正しいです。

クローズしたシリーズの流入に関してもロジックは正しく、新しいシリーズはできるだけ頻繁にクローズすべきです。ここで、アルゴリズム自体の質を向上させ、不採算シリーズに入ることができるだけ少なくなるようにする必要がある。そのためには、スケーリング・アルゴリズムを改良する必要がある。私は新しいバージョンでそれを改良し、すでにずっとよく機能するようになりました。考え方は、市場が何をどのように動かすかを説明する理論的な価格設定ベースが必要だということです。理論モデルが優れていればいるほど、ドローダウンは小さくなり、商品間の相関性も低くなります。

ロックポジションは理にかなっており、(私のアルゴリズムでは)ロックポジションがある場合よりもない場合の方がうまくいく。しかし、成長率と下落率が対称的な商品に限ります。非対称な商品の場合、ロング・ポジションとショート・ポジションのシグナルを生成するために、非対称なパラメーターを使用する必要があります。そのため、当面は株式のロング・ポジションのみが許容され、追加シリーズをロックすることはできません。ロックは条件付きの仕組みであり、視覚化するために必要であり、考えやすくするために必要である。現実には、ネット取引では、もちろんロックはありません。

理想的には、このアルゴリズムとロックは必要なく、市場データに基づいて価格反転の最も高い確率のポイントを計算する必要があります。しかし、これは今のところ行われている方法です。理論的根拠が必要なレベルに達すれば、アルゴリズムは単純化されるだろう。

私の観察によると、値動きに対してのみポジションを構築することは理にかなっている。ポジションが「買い」なら、下落するブロックごとにのみ「買い」を入れる。このアプローチ自体は、価格の動きのいくつかの理論的な特殊性のために、すべてのことなく、プラスに期待を引っ張る。つまり、感覚はメイントレンドの方向にトレンドに逆らって取引に固有のものである。それは常に、その秋に資産を購入し、その成長に売却する方が有益である。

テーゼ:

- 最小および最大ステップ数は、市場の特性には依存しませんが、アルゴリズムのパラメータにのみ依存します。ステップ・サイズが小さいほど精度は低くなり、ステップ・サイズが大きいほど精度は高くなりますが、より多くのポジションを建てることになります。ブロックは、より見やすくするために作られた慣習です。100ブロックのウィンドウを分析できるようにシステムを作り直すこともできますが、取引結果は24ブロックのウィンドウと同じようになります。私はこのようにしました。

- ブロック・サイズは、手数料と(分析にローソク足が使用されることによる)ブロック・クローズ誤差を考慮した上で、利益を得ることができる最小のサイズに選ばれます。重要な特徴として、ここでは説明しません。それは、ローソク足の終値がブロックの終値と一致しないために発生するトレンド・エラーである。これは、ローソク足の終値とブロックの終値が一致しないために発生する。そうすれば、シグナルの質は大幅に向上するでしょう。しかし、ブロック・サイズ自体は市場パラメーターに基づいて選択されるべきである。相場の過去の統計によって変えるべきです。シリーズ開始前にスケールを修正するのに役立つ特殊性が1つある。

- トレンドとフラットの間に境界線はありません、それは市場の平均で、各次のステップの方向を変更する確率は約50%であるという事実に基づいて、慣習です。しかし、50%を下回る、つまりトレンドが発生している商品もあります。局所的な乖離は利用され、将来的には平均に戻るでしょう。そうでない場合は、より単純なアルゴリズムですぐにお金を稼ぐことができるからです。

- 私はオープンで資産ヘッジコントロールを使用しています。

- 反転信号が動作していない、閉じた後、すべてが再び開始されますが、それはここでもそれほど単純ではありません。それを解決する必要がありますが、理論的根拠はまだできていません。

- 動きに対してのみエントリーする

- エントリー量は重要な問題である。修正する必要がある。私はいくつかの修正方法を開発した。株と為替とでは仕組みが違う。株式ではポートフォリオの出来高を調整する必要があり、為替でも同様だ。ブロック価格はすべての商品でほぼ同じでなければならない。ロット単位ではなくドル単位で取引し、ドル建ての取引量からロットを調整する必要がある。固定されたドル数(株式)で取引することで、期待値が高まります。通貨については、私はまだ理論的なモデルを開発していません。新しいバージョンでこれを実装してテストする予定ですが、今のところ、このプロセスには至っていません。

- シグナルがなくなったら、やり直します。

- シリーズの終了は、統計的な動きと理論的な終値に基づいて計画されます。想定外の要因で終値を逃した場合、負けたポジションを補うメカニズムが働く。理論モデルが優れていればいるほど、失敗することは少なくなる。10ドルの修正は、ランダム化によってシステムを期待値0に戻す。

- 利益の合計を使うことはできると思いますが、それもダイナミックであるべきです。つまり、ランダムな彷徨い(急激な価格高騰)から利益の合計が大きく乖離した場合にのみ、クローズされるべきである。これは論理的に理にかなっている。

- 私は部分的なクローズ・メカニズムを試してみようと思っていた。しかし、それがどのように機能するかはまだわからない。理論的な終値に近づいたときに使いたかった。利益を確定するのではなく、終値から±10%の範囲でポジションを徐々に決済していく。これは条件付きパーセンテージです。何かに基づいて計算する必要がありますが、私はまだこの問題を詳しく扱っていません。


ボリューム・ヘッジのコントロールに関しては興味深い解決策だ。)

このシステムはm1 ohlcで動作するように設計されていますが、ohlcモードとリアル・ティックのモードでどのように異なるかを後でお見せします。ヒストリーの質や取引中のサーバーの中断に影響されないように特別に作った。

 
Petros Shatakhtsyan:

ここでは、数年にわたるたくさんのグラフが示されている。

TSを評価させたいのであれば、少なくともダニ(Every Tick)ではなく、 実際の ダニ(Every Tick based on real ticks )でのテスト結果を 少なくとも 今年、3-4組分示してください。

それも難しいですか?

お約束の2つのテストです。最初のテストは OHLC 2020-2021 GBPUSD m1 モードです。

そして2番目のテストは、同じ期間と商品で、リアル口座からリアルティックモードで行ったものです。

ティックによる利益は少し高く、ドローダウンは少し低く、取引はほぼ同じで、収益性のチャートもほぼ同じであることがわかります。

技術的には、ロボットはOHLCに従って動作するように作られており、ティックモードでは、より高い精度のため、少し良く動作することは理解できます。しかし、これらは純粋に技術的な側面です。私は、より長い期間、より多くの金融商品でテストするつもりはありません。

 
Maxim Romanov:

つの楽器を動かすのに1時間半かかる。

なぜそんなに遅いのですか?機能を失うことなくスピードアップできるはずなのに。

 
Andrey Khatimlianskii:

なぜこんなに遅いのですか?機能を失うことなく、スピードアップすることは可能だと思います。

私もスピードアップは可能だと思いますが、まだやっていません。開発した改造をすべて実装し、適切なリスクと利益の比率に持っていき、それからリソース消費の最適化に着手するつもりだ。アルゴリズム計画は少し残っていて、作業 的にはたくさん残っている。

 
Maxim Romanov:

高速化も可能だと思うが、まだやっていない。基本的な機能の仕上げに問題がある......。私が開発したすべての修正を実装し、適切なリスクと利益の比率に持っていき、それからリソース消費の最適化に着手するつもりだ。アルゴリズム計画は少し残っていて、作業的にはたくさん残っている。

Expert Advisorを素早くテストできれば、開発のスピードは上がるのでは?オーナー次第です。

 
Maxim Romanov:

お約束の2つのテストです。最初のテストは OHLC 2020-2021 GBPUSD m1 モードです。

そして 2 番目のテストは、同じ期間とインストルメントで、リアル口座からリアル・ティック・モードで。

ティックによる利益は少し高く、ドローダウンは少し低く、取引はほぼ同じで、収益性のグラフはほぼ同じであることがわかります。

技術的には、ロボットはOHLCに従って動作するように作られており、ティックモードでは、より高い精度のため、少し良く動作することは理解できます。しかし、これらは純粋に技術的な側面です。私は、より長い期間、より多くの商品でテストするつもりはありません。

ありがとうございます。

両方のチャートが同じようなものであれば、1分以内のティックをフィルタリングすれば同じになります。

あなたのアルゴリズムはすべての通貨ペアで同じように機能すると宣言していますが、Market Watchのすべてのシンボルでテストしたことはありません。

また、自己適応型アルゴリズムには、時間間隔、固定レベル、注文の開閉のためのpips数などの固定パラメータがあってはなりません。

 
Andrey Khatimlianskii:

EAを素早くテストできれば、開発スピードが上がるのでは?それはオーナー次第だ。

1年で機能の半分を完成させ、その後問題を抱えるのではなく、それを素早く行うスペシャリストがいれば、開発は間違いなく速くなる。

 
Maxim Romanov:

1年で機能の半分を完成させ、その後問題を抱えるのではなく、それを素早く行う専門家がいれば、開発は間違いなく早く進むだろう。

アルゴリズムのスピードアップは問題ではない。最適化作業に従事していた人は、すぐにやってくれるだろう。

ポイントは違います。あなたの図面にはいくつかの固定値があります。私はそれに印をつけた。

もし 固定値が取引に使われるなら、常に変更しなければならない。



 
Petros Shatakhtsyan:

アルゴリズムの高速化は問題ではない。最適化作業に携わってきた人なら、すぐにやってくれるだろう。

別の問題です。あなたの図面には固定値がいくつかあります。マークしておきました。

トレーディングで固定値を 使うと、常に変更しなければならない。



例えば、これは固定値です。アルゴリズムでは、マーケットに関することはほとんどすべて自分で修正します。分析するブロック数のような固定値もあり、私は24~32ブロックの範囲を使っています。しかし、これらの値は市場とは関係なく、アルゴリズム自体のパラメータであり、実際、アルゴリズムが機能する精度です。そんなところだ。今はオーバーウェイトのパーセンテージは固定されていますが、近代化されるでしょう。一般的に、トレードの質を許容できるレベルにするために改善すべき点がある。