エリオット波動理論に基づくトレーディング戦略 - ページ 7

 
 
アレックス・ニローバ、なぜ私だけがそんなに個人的に扱われるのですか?
 
<br / translate="no"> アレックス・ニローバ 11.03.06 17:50
...
確かに絵は完全ではありませんが、いくつかのキャラクターを見ることができます。
はやめに結論を出す
...

ニロバさん、お人形遊びでもするつもりなんですか?あるいは狼と羊 :)?
 
solandr さんのご指摘の通り、極めて的確です。
このスレッドには、すでに3ページにわたって、何の有用な情報もない無駄なゴミが含まれています

そして、私見ですが、これ以上の楽しみはないと思っています。少なくともこのスレッドを立てた方にとっては、全く何も言うことはないのですから。今日、彼は新しい投稿をしたのですが、残念ながらモデレーターはそれを完全に削除することにしました。残念です。このニローバは 、3日目に私にこう書きました。
あなたは自分がとても賢いと思っているようですが、まだまだマナーを学ぶ必要があります。

見習いたいと思ったが、その機会はなかった。どうやら、このマナーの達人は、時々言葉を拾えないだけでなく、拾ったとしても、あまり咎めないようだ。

さて、どうしたものか。質問が違う。
スレッドを立てた人が、言葉以外何も提供できないのであれば、ここで何をしているのでしょうか?
なぜこのスレはまだ生きているのか?
 
トレーディングセッションの 合間に鳴くのも面白いですよ :)
 
<br/ translate="no"> ウラジスラフさん、このスレッドにはすでに3ページにわたって有益な情報のないゴミが含まれていますよ。しかし、あなたの戦略をもっと詳しく説明すれば、このスレッドを救うことができるように思えます。


私の予測の根拠となる指標は、スパイダー上で自由に利用することができます)。ここにも書いておきますが、マレーレベルの指標になります。 このレベルの最大の問題は、事後的に重要性を示すことは非常に簡単ですが、先験的に定義することは自明ではないことです。ネイティブのサイトでは、改善方法がたくさん紹介されていますが、私には数学的に正しいとは思えませんでした(GannやElliottの理論もそうですが、つまり、定性的な記述は高いが、定量的に推定するとなると、不確実性が高いのです)。 問題の解決のために与えられた状況で(文と意思決定の方法については、一度センチメントについてのブランチでクモに来ることを試みたが、彼らはそこに面白いと考えられていない:)。- 定量的な評価で方法を考えるより、共通のテーマで議論する方が簡単ですからね。)- しかし、それは過去のことです)そうですね、問題提起、仮定、適切な解決方法の選択と評価については、別のトピックになります。最も重要なことは、非ランダムな予測の可能性と、得られた結果の確率的な評価を意味するような問題を設定したことである。ここで、市場の効率性に関する理論についての質問を省略する。私は、それが単なる理論であり、他の非自己対戦型アプローチと比較して、それ以上でもそれ以上でもそれ以下でもないことに注意したい。例えば、ユーロ価格の系列では、RhexS統計量(Hurst基準としても知られる)が0.5以上(約0.64 - すべての系列を対象とした場合)であり、これは、非ランダム予測の可能性とトレンド予測モデルの優位性を意味するものです。例えば私は、信頼できる予測が可能な場合(ハースト係数が0.5から大きく異なる)と不可能な場合(あまり変わらない)がある、という異なるアプローチをとっています。トレンド手法が有利な場合(kファクターが1程度)と、カウンタートレンド手法が有利な場合(kファクターが0程度)がある。その結果、ピボットポイントの元となるマレー水準だけでなく、現時点での統計的有意性も得ることができた。それは、同じレベルのものが、異なる時期に異なる姿で現れるということです(なんて適当なんだ)。つまり、このレベルがブレイクアウトとして機能する場合もあれば、全く考慮されない場合もあり、またブレイクアウトレベルである場合もある。しかし、このレベルがブレイクアウトとして定義された場合、戦略によれば、トレーダーはポジションを持つべきで、このポジションは通常利益が出ているので、やるべきことはストップを適切なレベルに移動することだけである。より正確には、計算の結果、トレーダーは、マレーレベルとチャネルの境界によって制限されたいくつかの回転領域を得る(




信頼区間の 予測が行われるときです) - 信頼区間のレベル自体が予測の履行確率レベルを切断し、チャネルの境界とマレーレベルの交差点は時間によって評価を提供します。チャートで見るとよくわかります。 これは一般的な、いわば「指の上」の話です。 具体的には、線形回帰チャネルによるトレンドの動きの予測+与えられたチャネルに対するハースト基準の計算(チャネルを描くためのサンプリング基準も自明ではない)でマレーレベルの計算を補う。 選択理由:上でハースト基準について書きましたが、チャンネルについて:どの瞬間でもかなり多くの線形回帰チャンネルを作ることができますが、誤差が最小になるのはその線形回帰チャンネルだけです。予測には、ある時点での最良の近似値をとるのがよい。それくらい、まずは十分です ;) .これによって、これまで研究に費やしてきた時間が非常に短縮されます。もし、プログラミングに「飽きた」のであれば、MT4の標準的な手段を使えば、ほとんどすべてのことが可能です。ただし、マレーレベルとハースト基準は例外ですが、レベルは自由に利用でき、ハーストがなくても、それほど効果的ではありません。 また、以前のバージョンでは、履歴の描画がおかしくなる小さなミスがあったことを指摘しておきます。だから、ここで手に入れた方がいいんです。





//+------------------------------------------------------------------+
//|                                            Murrey_Math_MT_VG.mq4 |
//|                       Copyright © 2004, Vladislav Goshkov (VG).  |
//|                                           4vg@mail.ru            |
//+------------------------------------------------------------------+
#property copyright "Vladislav Goshkov (VG)."
#property link      "4vg@mail.ru"

#property indicator_chart_window

// ============================================================================================
// * Линии 8/8 и 0/8 (Окончательное сопротивление).
// * Эти линии самые сильные и оказывают сильнейшие сопротивления и поддержку.
// ============================================================================================
//* Линия 7/8  (Слабая, место для остановки и разворота). Weak, Stall and Reverse
//* Эта линия слаба. Если цена зашла слишком далеко и слишком быстро и если она остановилась около этой линии, 
//* значит она развернется быстро вниз. Если цена не остановилась около этой линии, она продолжит движение вверх к 8/8.
// ============================================================================================
//* Линия 1/8  (Слабая, место для остановки и разворота). Weak, Stall and Reverse
//* Эта линия слаба. Если цена зашла слишком далеко и слишком быстро и если она остановилась около этой линии, 
//* значит она развернется быстро вверх. Если цена не остановилась около этой линии, она продолжит движение вниз к 0/8.
// ============================================================================================
//* Линии 6/8 и 2/8 (Вращение, разворот). Pivot, Reverse
//* Эти две линии уступают в своей силе только 4/8 в своей способности полностью развернуть ценовое движение.
// ============================================================================================
//* Линия 5/8 (Верх торгового диапазона). Top of Trading Range
//* Цены всех рынков тратят 40% времени, на движение между 5/8 и 3/8 линиями. 
//* Если цена двигается около линии 5/8 и остается около нее в течении 10-12 дней, рынок сказал что следует 
//* продавать в этой «премиальной зоне», что и делают некоторые люди, но если цена сохраняет тенденцию оставаться 
//* выше 5/8, то она и останется выше нее. Если, однако, цена падает ниже 5/8, то она скорее всего продолжит 
//* падать далее до следующего уровня сопротивления.
// ============================================================================================
//* Линия 3/8 (Дно торгового диапазона). Bottom of Trading Range
//* Если цены ниже этой лини и двигаются вверх, то цене будет сложно пробить этот уровень. 
//* Если пробивают вверх эту линию и остаются выше нее в течении 10-12 дней, значит цены останутся выше этой линии 
//* и потратят 40% времени двигаясь между этой линией и 5/8 линией.
// ============================================================================================
//* Линия 4/8 (Главная линия сопротивления/поддержки). Major Support/Resistance
//* Эта линия обеспечивает наибольшее сопротивление/поддержку. Этот уровень является лучшим для новой покупки или продажи. 
//* Если цена находится выше 4/8, то это сильный уровень поддержки. Если цена находится ниже 4/8, то это прекрасный уровень 
//* сопротивления.
// ============================================================================================
extern int P = 64;
extern int MMPeriod = 1440;
extern int StepBack = 0;

extern color  mml_clr_m_2_8 = White;       // [-2]/8
extern color  mml_clr_m_1_8 = White;       // [-1]/8
extern color  mml_clr_0_8   = Aqua;        //  [0]/8
extern color  mml_clr_1_8   = Yellow;      //  [1]/8
extern color  mml_clr_2_8   = Red;         //  [2]/8
extern color  mml_clr_3_8   = Green;       //  [3]/8
extern color  mml_clr_4_8   = Blue;        //  [4]/8
extern color  mml_clr_5_8   = Green;       //  [5]/8
extern color  mml_clr_6_8   = Red;         //  [6]/8
extern color  mml_clr_7_8   = Yellow;      //  [7]/8
extern color  mml_clr_8_8   = Aqua;        //  [8]/8
extern color  mml_clr_p_1_8 = White;       // [+1]/8
extern color  mml_clr_p_2_8 = White;       // [+2]/8

extern int    mml_wdth_m_2_8 = 2;        // [-2]/8
extern int    mml_wdth_m_1_8 = 1;       // [-1]/8
extern int    mml_wdth_0_8   = 1;        //  [0]/8
extern int    mml_wdth_1_8   = 1;      //  [1]/8
extern int    mml_wdth_2_8   = 1;         //  [2]/8
extern int    mml_wdth_3_8   = 1;       //  [3]/8
extern int    mml_wdth_4_8   = 1;        //  [4]/8
extern int    mml_wdth_5_8   = 1;       //  [5]/8
extern int    mml_wdth_6_8   = 1;         //  [6]/8
extern int    mml_wdth_7_8   = 1;      //  [7]/8
extern int    mml_wdth_8_8   = 1;        //  [8]/8
extern int    mml_wdth_p_1_8 = 1;       // [+1]/8
extern int    mml_wdth_p_2_8 = 2;       // [+2]/8

extern color  MarkColor   = Blue;
extern int    MarkNumber  = 217;


double  dmml = 0,
        dvtl = 0,
        sum  = 0,
        v1 = 0,
        v2 = 0,
        mn = 0,
        mx = 0,
        x1 = 0,
        x2 = 0,
        x3 = 0,
        x4 = 0,
        x5 = 0,
        x6 = 0,
        y1 = 0,
        y2 = 0,
        y3 = 0,
        y4 = 0,
        y5 = 0,
        y6 = 0,
        octave = 0,
        fractal = 0,
        range   = 0,
        finalH  = 0,
        finalL  = 0,
        mml[13];

string  ln_txt[13],        
        buff_str = "";
        
int     
        bn_v1   = 0,
        bn_v2   = 0,
        OctLinesCnt = 13,
        mml_thk = 8,
        mml_clr[13],
        mml_wdth[13],
        mml_shft = 35,
        nTime = 0,
        CurPeriod = 0,
        nDigits = 0,
        i = 0;
int NewPeriod=0;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init() {
//---- indicators
   if(MMPeriod>0)
      NewPeriod   = P*MathCeil(MMPeriod/Period());
   else NewPeriod = P;
   
   ln_txt[0]  = "[-2/8]P";// "extremely overshoot [-2/8]";// [-2/8]
   ln_txt[1]  = "[-1/8]P";// "overshoot [-1/8]";// [-1/8]
   ln_txt[2]  = "[0/8]P";// "Ultimate Support - extremely oversold [0/8]";// [0/8]
   ln_txt[3]  = "[1/8]P";// "Weak, Stall and Reverse - [1/8]";// [1/8]
   ln_txt[4]  = "[2/8]P";// "Pivot, Reverse - major [2/8]";// [2/8]
   ln_txt[5]  = "[3/8]P";// "Bottom of Trading Range - [3/8], if 10-12 bars then 40% Time. BUY Premium Zone";//[3/8]
   ln_txt[6]  = "[4/8]P";// "Major Support/Resistance Pivotal Point [4/8]- Best New BUY or SELL level";// [4/8]
   ln_txt[7]  = "[5/8]P";// "Top of Trading Range - [5/8], if 10-12 bars then 40% Time. SELL Premium Zone";//[5/8]
   ln_txt[8]  = "[6/8]P";// "Pivot, Reverse - major [6/8]";// [6/8]
   ln_txt[9]  = "[7/8]P";// "Weak, Stall and Reverse - [7/8]";// [7/8]
   ln_txt[10] = "[8/8]P";// "Ultimate Resistance - extremely overbought [8/8]";// [8/8]
   ln_txt[11] = "[+1/8]P";// "overshoot [+1/8]";// [+1/8]
   ln_txt[12] = "[+2/8]P";// "extremely overshoot [+2/8]";// [+2/8]

   //mml_shft = 3;
   mml_thk  = 3;

   // Начальная установка цветов уровней октав и толщины линий
   mml_clr[0]  = mml_clr_m_2_8;   mml_wdth[0] = mml_wdth_m_2_8; // [-2]/8
   mml_clr[1]  = mml_clr_m_1_8;   mml_wdth[1] = mml_wdth_m_1_8; // [-1]/8
   mml_clr[2]  = mml_clr_0_8;     mml_wdth[2] = mml_wdth_0_8;   //  [0]/8
   mml_clr[3]  = mml_clr_1_8;     mml_wdth[3] = mml_wdth_1_8;   //  [1]/8
   mml_clr[4]  = mml_clr_2_8;     mml_wdth[4] = mml_wdth_2_8;   //  [2]/8
   mml_clr[5]  = mml_clr_3_8;     mml_wdth[5] = mml_wdth_3_8;   //  [3]/8
   mml_clr[6]  = mml_clr_4_8;     mml_wdth[6] = mml_wdth_4_8;   //  [4]/8
   mml_clr[7]  = mml_clr_5_8;     mml_wdth[7] = mml_wdth_5_8;   //  [5]/8
   mml_clr[8]  = mml_clr_6_8;     mml_wdth[8] = mml_wdth_6_8;   //  [6]/8
   mml_clr[9]  = mml_clr_7_8;     mml_wdth[9] = mml_wdth_7_8;   //  [7]/8
   mml_clr[10] = mml_clr_8_8;     mml_wdth[10]= mml_wdth_8_8;   //  [8]/8
   mml_clr[11] = mml_clr_p_1_8;   mml_wdth[11]= mml_wdth_p_1_8; // [+1]/8
   mml_clr[12] = mml_clr_p_2_8;   mml_wdth[12]= mml_wdth_p_2_8; // [+2]/8
   
   
//----
   return(0);
  }

//+------------------------------------------------------------------+
//| Custor indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit() {
//---- TODO: add your code here
Comment(" ");   
for(i=0;i<OctLinesCnt;i++) {
    buff_str = "mml"+i;
    ObjectDelete(buff_str);
    buff_str = "mml_txt"+i;
    ObjectDelete(buff_str);
    }
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start() {

//---- TODO: add your code here

if( (nTime != Time[0]) || (CurPeriod != Period()) ) {
   
  //price
   bn_v1 = Lowest(NULL,0,MODE_LOW,NewPeriod,StepBack);
   bn_v2 = Highest(NULL,0,MODE_HIGH,NewPeriod,StepBack);

   v1 = Low[bn_v1];
   v2 = High[bn_v2];

//determine fractal.....
   if( v2<=250000 && v2>25000 )
   fractal=100000;
   else
     if( v2<=25000 && v2>2500 )
     fractal=10000;
     else
       if( v2<=2500 && v2>250 )
       fractal=1000;
       else
         if( v2<=250 && v2>25 )
         fractal=100;
         else
           if( v2<=25 && v2>12.5 )
           fractal=12.5;
           else
             if( v2<=12.5 && v2>6.25)
             fractal=12.5;
             else
               if( v2<=6.25 && v2>3.125 )
               fractal=6.25;
               else
                 if( v2<=3.125 && v2>1.5625 )
                 fractal=3.125;
                 else
                   if( v2<=1.5625 && v2>0.390625 )
                   fractal=1.5625;
                   else
                     if( v2<=0.390625 && v2>0)
                     fractal=0.1953125;
      
   range=(v2-v1);
   sum=MathFloor(MathLog(fractal/range)/MathLog(2));
   octave=fractal*(MathPow(0.5,sum));
   mn=MathFloor(v1/octave)*octave;
   if( (mn+octave)>v2 )
   mx=mn+octave; 
   else
     mx=mn+(2*octave);


// calculating xx
//x2
    if( (v1>=(3*(mx-mn)/16+mn)) && (v2<=(9*(mx-mn)/16+mn)) )
    x2=mn+(mx-mn)/2; 
    else x2=0;
//x1
    if( (v1>=(mn-(mx-mn)/8))&& (v2<=(5*(mx-mn)/8+mn)) && (x2==0) )
    x1=mn+(mx-mn)/2; 
    else x1=0;

//x4
    if( (v1>=(mn+7*(mx-mn)/16))&& (v2<=(13*(mx-mn)/16+mn)) )
    x4=mn+3*(mx-mn)/4; 
    else x4=0;

//x5
    if( (v1>=(mn+3*(mx-mn)/8))&& (v2<=(9*(mx-mn)/8+mn))&& (x4==0) )
    x5=mx; 
    else  x5=0;

//x3
    if( (v1>=(mn+(mx-mn)/8))&& (v2<=(7*(mx-mn)/8+mn))&& (x1==0) && (x2==0) && (x4==0) && (x5==0) )
    x3=mn+3*(mx-mn)/4; 
    else x3=0;

//x6
    if( (x1+x2+x3+x4+x5) ==0 )
    x6=mx; 
    else x6=0;

     finalH = x1+x2+x3+x4+x5+x6;
// calculating yy
//y1
    if( x1>0 )
    y1=mn; 
    else y1=0;

//y2
    if( x2>0 )
    y2=mn+(mx-mn)/4; 
    else y2=0;

//y3
    if( x3>0 )
    y3=mn+(mx-mn)/4; 
    else y3=0;

//y4
    if( x4>0 )
    y4=mn+(mx-mn)/2; 
    else y4=0;

//y5
    if( x5>0 )
    y5=mn+(mx-mn)/2; 
    else y5=0;

//y6
    if( (finalH>0) && ((y1+y2+y3+y4+y5)==0) )
    y6=mn; 
    else y6=0;

    finalL = y1+y2+y3+y4+y5+y6;

    for( i=0; i<OctLinesCnt; i++) {
         mml[i] = 0;
         }
         
   dmml = (finalH-finalL)/8;

   mml[0] =(finalL-dmml*2); //-2/8
   for( i=1; i<OctLinesCnt; i++) {
        mml[i] = mml[i-1] + dmml;
        }
   for( i=0; i<OctLinesCnt; i++ ){
        buff_str = "mml"+i;
        if(ObjectFind(buff_str) == -1) {
           ObjectCreate(buff_str, OBJ_HLINE, 0, Time[0], mml[i]);
           ObjectSet(buff_str, OBJPROP_STYLE, STYLE_SOLID);
           ObjectSet(buff_str, OBJPROP_COLOR, mml_clr[i]);
           ObjectSet(buff_str, OBJPROP_WIDTH, mml_wdth[i]);
           ObjectMove(buff_str, 0, Time[0],  mml[i]);
           }
        else {
           ObjectMove(buff_str, 0, Time[0],  mml[i]);
           }
             
        buff_str = "mml_txt"+i;
        if(ObjectFind(buff_str) == -1) {
           ObjectCreate(buff_str, OBJ_TEXT, 0, Time[mml_shft], mml_shft);
           ObjectSetText(buff_str, ln_txt[i], 8, "Arial", mml_clr[i]);
           ObjectMove(buff_str, 0, Time[mml_shft],  mml[i]);
           }
        else {
           ObjectMove(buff_str, 0, Time[mml_shft],  mml[i]);
           }
        } // for( i=1; i<=OctLinesCnt; i++ ){

   nTime    = Time[0];
   CurPeriod= Period();
   
   string buff_str = "LR_LatestCulcBar";
   if(ObjectFind(buff_str) == -1) {
      ObjectCreate(buff_str, OBJ_ARROW,0, Time[StepBack], Low[StepBack]-2*Point );
      ObjectSet(buff_str, OBJPROP_ARROWCODE, MarkNumber);
      ObjectSet(buff_str, OBJPROP_COLOR, MarkColor);
      }
   else {
      ObjectMove(buff_str, 0, Time[StepBack], Low[StepBack]-2*Point );
      }

   }
 
//---- End Of Program
  return(0);
  }
//+------------------------------------------------------------------+ 



レベルの解釈が重要なため、インジケーターの元となった記事の一部をコメントとして中に入れています。しかし、MMPeriod変数(デフォルトでは1440-日)を変更すると、任意の時間枠に他の期間のレベルを表示できます(もちろん、適切に機能するためには、表示されるレベルの期間が現在の期間より短くならないようにする必要があります)。ちょっと行き当たりばったりな考えを披露してしまったかもしれません。頑張って、良い流れを作ってください。




 
<br / translate="no"> 実は秘密はなく、それ以上に、私が予想に使っている指標は、スパイダー上で自由に利用できます :) 。ここにも書いておきますが、マレー・レベルのインジケーターです。

Vladislavさん、ありがとうございます。ようやくこのフォーラムのテーマに直結した、実質的な会話ができるようになった気がします自分の扱っているもの、対処法(FOREX)を理解してくれている人と話ができるのは嬉しい。私も、FOREXは数値的な特徴を表すことができる統計的なデータに基づいてのみ伝えるべきであると確信しています。なぜなら、ジグザグ法やエリオット法などの定性的な推定を行う方法はすべて運任せで、ほとんどモニターの近くにいながらプレイしなければならないからです。基本的に、弾けるようになった人は、とても上手です。でも、ほとんどの人が弾けるようになることはない。しかも、ゲームの研究時間にも及ばない。
掲載されているインジケーターについて、明らかにしたいと思います。
コンパイル時に、変数mm_period, StpBckが定義されていないと表示される。これらの変数の値を指定することはできますか?
 
<br / translate="no"> コンパイル時に、変数 mm_period, StpBck が定義されていないと表示されます。これらの変数の値を指定することはできますか?


コードが修正されました - 再ダウンロードしてください。この断片は、他のプログラムから挿入されたものです :)。すべてコンパイルできるようになりました。
もうひとつ忘れていたのですが、MMRead = 0に設定すると、現在のtfのデータで構築された対応するオクターブ(その次元はP変数で指定され、推定で64が最良の選択肢です)を見ることができます。
そして、最も重要なこと:このアプローチは、統計的妥当性とあまりにも速いクラッシュ(そして最も可能性の高い方法は、市場の動きの潜在的な非効率性を「削除」することができ、クラッシュが予想されない、確かにこの方法は唯一のものではありませんが;)希望を与える外国為替機器だけでなく動作しています。) が、多少なりとも適切な数学教育を受けている私には、信頼できるように思える。

頑張って、良い流れを作ってください。
 
ウラジスラフさん、このような詳しい説明をどうもありがとうございます。

がんばってください。
 
<br/ translate="no"> 例えば、RS統計(ハースト基準としても知られています)は、ユーロ価格シリーズについて0.5より高い推定値を与えます(約0.64、つまりシリーズ全体を考慮した場合)。例えば私は、信頼できる予測が可能な場合(ハースト係数が0.5から大きく異なる)と不可能な場合(あまり変わらない)がある、という異なるアプローチをとっています。トレンド手法が有利な時(係数1程度)と、カウンタートレンド手法が有利な時(係数0程度)がある。

トレンドとカウンタートレンドの運用方法の「確実な予測」が行われるストラテジーの部分にとても興味があります。もう少し詳しく教えてください。つまり、マーケットが横ばいの状態にあり、しばらくはその状態が続くと予測するにはどうしたらいいのでしょうか。 私は予後を判断することができません。私の戦略では、相場の局面を条件付きで2つに分けるだけです。フェーズ1-市場に何らかの動きがある場合(強いトレンド、ニュースなど)、フェーズ2-落ち着いた局面(横ばいチャンネル)です。MT4の配信に含まれる
Standard Deviationインジケータという 些細な方法を使ってやっています。私は、このような乖離期間と指標値が、この2つの局面を示すと定義し、これに基づいて、指値注文を出すか(現在横ばいであれば)、単に指値を外す(何らかの動きがある、つまり指標値が閾値を超えた場合)だけにしています。しかし、この指標は現在の市場の状態を示しているに過ぎないことに注意しなければなりません例えば、これから1時間後に何が起こるかを示したり、予測したりすることはできませんそして、「確実な予測」の可能性について発言しているあなたは、それをどう証明するのでしょうか。使用している予測手法の詳細を教えてください。