著者の対談です。アレクサンドル・スミルノフ - ページ 5

 
Prival:

ASmirnoff 2008.01.25 11:08


以下の質問に対するあなたの回答は、私にとって重要なものです。1.私とジュリツァのアルゴリズムはどちらが優れているか?どれくらい良くなった?2.Djuricaのアルゴリズムはありますか?3.どのように違うのですか?

このフォーラムに参加できてとてもうれしいです。そして、研究に協力したいと思います。残念ながら、ここ(「最小のラグを持つ効率的な平均化アルゴリズムとその指標への利用」)がそれらの「真の」ジュリック・アルゴリズムであると断言することはできない。でも、それらも含めて使えると思うんです。比較のために、私のフィルターをいくつか提供する用意がありますが、それについては後ほど詳しく説明します。


私の提案は次の通りです。2つの指標を比較し、どちらが優れているかという問いに答える必要がある場合。まず、基準を決める必要があります。複数ある場合は、畳み込みを行う。重要なのは、ある指標が他の指標より優れているという哲学的な主張ではなく、まさにその事実を数学的に証明することである。さらに、「どのくらい良くなったか」という質問は、具体的にどのようにしたのでしょうか?


そこで、第一段階として、次のようなコンセプトを定義したいと思います(MAの欠点は、あなたの記事から引用しています)。

  1. 平均化の時間遅れ。どの時点で、どのように計算すればいいのか?補間が必要か外挿が必要かを判断するため?それとも両方を比較する?
  2. 相対的に高いボラティリティ・・・さらに、Slutsky-Yula効果はGibbs現象なのか、それとも別のものなのか?(ギブス現象を説明したファイルを添付します)。もし、根本的に違うもので、読んでみたい、資料をお持ちの方がいらっしゃいましたら、ぜひ教えてください。
  3. 線形 周波数歪み」の概念を開示してほしい。
  4. "非線形な価格動向をあるバイアスで分離することによる線形化"。

トレンドとは何を意味するのか、数式で説明してください。非線形な価格動向、数式+何に対してどのようにシフトしていくのか、何がシングル化されるのか、何を理解するのか。


問題は、2つの指標を比較するためには、何かインプットを与える必要があるということです。そして、どちらのフィルターが優れているか(スムージング、ディレイなど)という質問に答えるには、私たちが入力に何を与えているのか、真実を知る必要があります。パラメータがわかっているノイズの多い正弦波を想定してみましょう。


このデータセットをフィルタリング(平滑化)することで、どちらが私たちの知っている真実をよりよく伝えているかを判断することができます(青い曲線)。

Djuricが彼の指標の優秀さを実証するために使用したような、様々な入力信号を合成することが可能です。(http://www.jurikres.com/catalog/ms_ama.htm#top)。要はどれかを見極めればいいのです。

研究の最終段階では、AFC、IFR、ACFを特徴とする合成価格系列(人工価格系列)を出力し、1週間以内に任意の選択した通貨の価格系列と一致させる準備が整っています。ここでは、「ランダムフロー理論とFOREX」で似たようなことをやりました。カルマンフィルタとバターワースフィルタを比較しました。


論文では、ある定常モードのAFCとFFC、そして独自の基準についてお話されていますね。

もし、ある程度の定常モード+信号のAFCとFFIが定常状態であることを実現できたなら、私のDSPの知識を総動員して、最適に近いデジタルフィルターを合成する準備はできています。ベイズでは、先験的なデータの十分な完全性が必要なので、うまくいかないと思いますが、最尤法や理想的な観察者の基準であれば、できると思います。何が信号で(少なくともAFCでは)何がノイズなのかを見極めればよいのだろう。

実は、ジュルリクアルゴリズム自体もいらないんです。価格チャートの50-100バーのセグメントと、真のDjuricアルゴリズムの出力プロダクトが必要です。そして、インパルス応答サンプルの推定値を求め、アルゴリズム自体の合成を行います。

 
Integer:
ASmirnoff

...サンの記事は、あなたの興味を引きます。


ということは、私たちが「軍隊」に所属しているときに読んだ、まさにあの「コマンドー候補生」の作者ということでしょうか:-)

1.私とジュリツァのアルゴリズムはどちらが優れているか?どれくらい良くなった?

教えてくれ、鏡よ、真実をすべて教えてくれ...。


2.Djuricaのアルゴリズムはありますか?

3.両者の違いは何ですか?


アレクサンダーさん、こんな派手なタイトルの記事なのに、面白い質問ですね。社会人なら、せっかく理系なんだからJuricのコードを分解してアルゴリズムを理解したらどうだ?

今のTAPは水が多くて適格な解説が少ないので、こういう記事は興味深いと思います。指標となるアルゴリズムの相関分析では、約10〜15%が真にオリジナルで、互いに独立したものであることが示された。ジュリッチは、自分の "発案 "で儲けている。私のアイデアを無償で提供したのです。ありがとうございますと言うしかないでしょう。
 
ASmirnoff:
ニュートロン

はい、どういたしまして。

記事をざっと流し読みしてみました。きっと、私が作者を理解できていなかっただけなのでしょう

アンチエイリアスアルゴリズムを使用した場合の群遅延(GD)の発生について書かれている箇所では、リバースランを使用することで群遅延を「取り除く」レシピが紹介されています ...これはジョークなのか?カジュアル(BPの右端で作業する)なシステムでは、原理的にGZが避けられないことが知られています。しかし、もちろん、BPが定義されていて、それを(右端ではなく)行の真ん中で扱う予定であれば、著者がアドバイスするように、同じパラメータで逆方向の再平均化を行うことで、ラグを取り除くことができます。しかし、このような平均化アルゴリズムを用いると、どうしても最後のバーで再描画が発生してしまうことについては、著者は言及していない。忘れてしまったのか、それとも知らないのか。それとも他に?

以下、記事からの引用です。

"このように、上記の提案により、m/2のタイムラグ(従来のスライディングアベレージの第一の欠点)を部分的に補うことができるのである。そして、2つ目の悪影響は解消される・・・。そして3人目、4人目・・・。

また、提案する平均化アルゴリズムを用いることで、線形周波数歪みを大幅に低減することができ..."

集団遅延補償の考え方は、私が考えたものではなく、アメリカの科学者が考えたものです。しかし、現実の時間軸の外では「うまくいった」のです。まあ、例えば電波天文学ではね。私の成果は、合成移動平均という形で、実質的なアルゴリズムを提案できたことです。同僚、似非科学的な議論を始める前に、「材料となる部分」を勉強してください。


私を再び数学の世界に送る前に、率直な質問に答えてください。「同僚」であるあなたは、平均化曲線の右端を常に描き直すことを伴う場合、金融時系列 解析のためのあなたのアルゴリズムの実用的価値をどのように考えているのでしょうか?私たち(トレーダー、MTS)が決断を迫られるまさにその時!?

そして、アメリカ人、宇宙飛行士などに訴えないでください。彼らは皆、自分の任務のためにこの問題を解決し、あなたと違って完璧に解決していることに疑いの余地はありません。また、積分したランダムなノイズの上でアルゴリズムを実行しても、同じように完璧に平滑化されます。え、原理的に不可能な未来を予測できると今更主張するんですか?カーブの右端を見ると、(スムージング部分の他の部分と比較して)実験点と大きく異なっているのがわかるので、そうでなければいいのですが。そして、何度も(m/2ポイントくらい)いじくり回して初めて、「立派な」ポジションを取るのです。でも、私たちにとっては暑くもなく寒くもない。つまり、あなたの調和的な構築(FCがほとんどない、LA、低い「ボラティリティ」等)は、あなたの手から吸い上げたような土台(リバースランの適用可能性)の上に成り立っており、市場系列の分析には適用できないことを言いたいのです。

皆さん!私は、「VS」誌の記事に大変興味を持たれているアレクサンドル・スミルノフです。私は科学者ですが、過去には実践的なトレーダーでもありました。私はTARが得意です。私は応用数学者です。
:-)
 
ASmirnoff: WPIのアルゴリズムは正しいのですが、それを実装したプログラマーは、この言語の経験がないのです。真理の基準は実践です。このアルゴリズムは、平均化ウィンドウのサイズに関係なく、平均化プロダクトに1バールの遅延を与える。

遅延が1小節で済むのは非常に良いことです。実際に見ていただくことは可能でしょうか?既製のインジケーターはどこで手に入りますか?
 
LeoV これは、ダイナミクスで見なければなりません。完璧なインパルス応答を持つどんな滑らかな曲線も、描き直せば(私たちの課題に適用するには)無価値となる。
 
Mathemat:
LeoV これは、ダイナミクスで見なければなりません。完璧なインパルス応答を持つどんな滑らかなカーブも、オーバードローしてしまえば(私たちの問題に適用するには)何の価値もないのです。

再描画されますか?じゃあ、私たちの問題に応用することはできないね。アルゴリズムSSA(キャタピラー)も良いアルゴリズムなのですが、残念ながら再描画してしまうので......。
 
<br /> translate="no">どうにかして実物を見ることはできないのでしょうか?既製のインジケーターはどこで手に入りますか?


Iasiから翻訳しようとしている。


//+------------------------------------------------------------------+
//|                                                   SmirnoffMA.mq4 |
//+------------------------------------------------------------------+
#property copyright "Smirnoff moving average"
#property link      "www.spekulant.ru"
#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Yellow
//---- input parameters
extern int per=4;   // должна быть кратна 4!(4,8,12,и т.д.)
//---- buffers
double ExtMapBuffer1[];
//----
int n;
double alf=0.0,q1[],q2[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
   SetIndexStyle(0,DRAW_LINE);
   SetIndexBuffer(0,ExtMapBuffer1);
   //
   alf=2.0/(per/2+1);
   n=per-1;
   ArrayResize(q1,per); ArrayResize(q2,per);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
   int    counted_bars=IndicatorCounted();
   if(counted_bars < 0)    return(-1);
   if(per%4!=0)            return(-1);
   int lm = Bars - counted_bars + 1; 
   //----
   for(int shift=0; shift<lm; shift++)
      {q1[0]=Close[shift];
       for(int j=1; j<per; j++) q1[j]=q1[j-1]+alf*(Close[shift+j]-q1[j-1]);
       for(int s=1; s<per/2; s++)
          {for(j=0; j<per; j++) q2[j]=q1[n-j];
           q1[0]=q2[0];
           for(j=1; j<per; j++) q1[j]=q1[j-1]+alf*(q2[j]-q1[j-1]);
          }
       ExtMapBuffer1[shift]=q1[n];
      }
   //----
   return(0);
  }
//+------------------------------------------------------------------+
ファイル:
 
zigan: Iasiから翻訳しようとしている。

では、このインジケーターは再描画をするのかしないのか?
 
いいえ。
 

アレキサンダー! こんな感じでいいのかな?青がzigan さんのアルゴリズムで、ネイビーがCode BaseのJMAです。いずれもパラメータ12

もう一つの図は、両方のカーブでパラメータが4と等しい場合です。

結論(ziganの アルゴリズムが正しく翻訳された場合)。

1.あなたのカーブは「チグハグ」です。

2.パラメータを上げると、カーブがアンダーになり、つまりジュリックの方が強い動きに対応できるようになります。