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

 
はっきりさせたほうがいいかもしれませんね。 diam0nd は決して褒められたものではありませんでしたが、それでも彼が新しい顔としてここにいることは喜ばしいことです :)

Dlia angloyazi4nih uzverey esty angloyazi4niy forum.Vot ya sobsno i predlogil emu tam i pisaty, tk zdesy onloko ask questions, em osobo nevezvayut a on vse prodolgaet raspaliatsia.英語版フォーラムを開設しました。)
 
ただ、誤解を解くために。
...私たちの目は、数千年にわたる進化の圧力の集大成であり、パターン(食物、ライオン)が私たちを感知する前に、パターンを感知するように設計されています。(Marchette D.J.統計的パターン認識のためのランダムグラフ (Wiley 2004))
:)
 
2アレックス・ニローバ
当初、このスレッドを立ち上げることで、同じ志を持つ人、つまりエリオットの波動理論に精通している人を探そうとしていました。
ZigZagaをベースにした効果的なインジケータを書くことで、次のようなことができるようになりました。
波動を認識し、将来の価格挙動をチャート上に描くことができる。

アレックス 最初からそう言ってくれれば、面白い議論ができたかもしれませんね。しかし、あなたが具体的な話をしようとしないので、みんなはウラジスラフの戦略の話に移り、彼が具体的以上に定式化したのです。

しかし、(希望者は)今すぐそれを行うことを妨げるものは何もありません。ロッシュの意見だけでなく、他の人の意見も知りたいと思うのではないでしょうか。

一時期はZigZagaも始めました(たぶん誰もが経験することだと思います :)。標準のものが自分に合わなかったので、自分で書いたこともあります。その結果、ZigZagだけでなく、エリオットの理論についても理解することができました。というわけで、私はファンではありません。

私は「エリオット波動理論に精通している」とは思っていない。しかし、その過程で見えてきたある種の理解が、より深い解決策を見出させてくれるのです。エリオットのアプローチは定性的な解決策しか提供できないというのが、私の一番の動機かもしれません。そして、トレーディング(マニュアルとオートの両方)のためのそれは十分ではありません。だから、エリオット派は、第3波がどこで、第5波がどこかという問題を超えられないのです。

しかし、そのような話題があれば、興味を持って参加するつもりです。
頑張ってください。
 
2デイブ・メイソン
解決策はありませんが、スタートは切りました。<br / translate="no">私はシックスさんに、"I would also guess that work on this topic has been done." という意味を説明するように頼みました。そこで、もし彼女が「無料」で説明してくれるなら、情報を共有することにしよう。


もしご興味があれば、これだけはお伝えします。
当時、ZigZagを扱っていたときは、1つのパターンだけを検出して取引する非常にシンプルなExpert Advisorを書きました。ZigZagの挙動を視覚的に分析し、自分で作ったパターンの構成です。

このEAのヒストリーテスト(6ヶ月)では、期間中26%の利益を出しています。MT4に内蔵されているスクリプトテスターではなく、自作のスクリプトテスターでテストしました。この結果も、いろいろな事情を理解した上で、納得のいくものではありませんでした。だから、この方法を断念したのです。

あなたに関係する事情の一つを、ここにあげます。
パターンのSELECTINGのアルゴリズムが不十分である。この選択基準は全く定義されていない。
そのため、まずパターンを考え、それが使えるかどうかを検証する方法しかなかったのです。このやり方は、恣意性が強すぎて好きではありません。

グラフ理論を応用してなんとかパターンを抽出できれば、それはそれで根本的な解決になるのでしょう。しかし、IMHOは、Expert Advisorとは別に行う必要があります。また、Expert Advisorは、定義されパラメータ化されたパターンで動作する必要があります。それが成功すれば、エリオットの理論はまったく必要なくなります。
 
2 ユリックス
私にとって(これは私の意見ですが)エリオット波動理論(EWT)はグラフの理論について、あるいはFXのさらなる値動きは、グラフの理論を通して、厳密に数学的に説明できるかもしれません。残念ながら、私は数学者ではありませんし、数学者であれば誰でもそうだと思いますが、EWTは本当の数学理論ではありません。だから、いつ、どの波が、どの波より後なのか、誰にもわからないのだ。
推測に過ぎず、本当の数学の理論ではありません。
まあ、グラフの理論なんて、私の能力を超えていますからね。
しかし、6さんから返事が来た。
"こんにちは デイブ

いいえ、これはファンタジーではありません。

きっと、研究者や企業の方々は
掲載された研究論文やホワイトペーパーをご覧いただけます。
面白いですね。 googleの最初の検索で見つからなかった場合。
努力し続ける

がんばれー


リーズナブル。
ジャネット・シックス(Ph.D.


Dave Mason さんが書き込みました。

> 早速のご依頼ありがとうございます。
> このトピックに関する仕事がある」というのはどういう意味か、教えてください。
> されている」?FXフォーラムの同僚が考えているので、指定してください。
>これが「ファンタジー」であること。
> よろしくお願いします。
> デイブ
"
まあ、彼女はこれが「ファンタジー」ではないと言っているのですが。
しかし、誰かがgoogleや...で何かを見つけたとしても、これでは問題は解決しない。
これは、数学のプロフェッショナルが行う真剣勝負の仕事です。
そこで、グラフ理論のプロ中のプロである教授にお願いして、何とか助けてもらうことにしました。数週間後に回答するとのことです。
 
そこで、グラフ理論のプロ中のプロである教授にお願いして、何とか助けてもらうことにしました。数週間後に回答するとのことです。

ジャネット・シックス(Ph.D.)以上のことを言うとは思えない。 :-)
でも、それはあくまで私の意見です。見てみよう。

私にとって(これは私の意見ですが)エリオット波動理論(EWT)はグラフの理論について、あるいはFXのさらなる値動きは、グラフの理論を通して、厳密に数学的に説明できるかもしれません。

それはないと思います。もし本当にそうなら、FXの値動きはとっくの昔に「厳密に数学的に」予測されているはずだ。しかし、従来の常識はその逆で、いくら数学を駆使しても値動きを正確に予測することはできない。

残念ながら、私は数学者ではありませんし、数学者であれば誰でもそうだと思いますが、EWTは本当の数学の理論ではありません。だから、いつ、どの波が、どの波より後なのか、誰にもわからないのだ。
推測に過ぎず、本当の数学の理論ではありません。

それは、私もまったく同感です。だからこそ、純粋数学者であるマンデルブロは、論文の中でエリオットに言及することが適切でなかったと思うのです。その記事といえば、高校生レベルの文章で、何の実用性もない。そもそも、なぜ書かれたのでしょうか?

エリオットの理論についてIMHO。5-3の波模様は、視覚的に確定できるほど頻繁に市場で発生します。これは、エリオットにとって明らかに説明を求めるに足るものであった。彼が提案したのは、残念ながら、純粋に定性的な、しかも「心理学的」な説明である。そのため、市場の状況を知っているような印象を与えるが、ほとんど意味がない。残念なことに、それは印象にしか過ぎない。

そういう説明をもっとたくさんしたほうがいいんじゃないですか。例えば、私自身の、原始的なまでにシンプルで、完全に明白なものを提供します。
MinとMax(またはその逆)を結ぶ折れたジグザグは、常に奇数のセグメントを持つ。
つまり、Min-Maxは1セグメント(ただし頂点は2つ)。
Min-Max-Min-Max - 3セグメント(ただし頂点は4つ)。
Min-Max-Min-Max-Min-Max - 5セグメント(ただし頂点は6個)、など。
上昇トレンドの場合、ジグザグのステップ数は、明らかに下降のステップ数を上回ります。
最も単純なケースでは、5対3という比率になります。下降トレンドの場合はその逆で、3-5。
そして、3-3や5-5の比率は、推測できるように、フラットです。

相場にはいろいろなパターンがあることは、その目で相場を見たことのある人なら誰でも知っていることだが、5-3はその一つに過ぎない。しかも、どのパターンも原理的に不可能だとは、誰もあえて言わない。しかし、3-1が上昇トレンドの最小バリエーションで、21-1や、例えば21-19というバリエーションはとてもとてもありえないことです。だから、5対3はあくまであり得ないパターンです。そして、その確率的な、さらには混沌とした性質を理解していない人だけが、5-3や3-5の相場を「引っ張ろう」とするのである。

したがって、第3の波と第5の波を見分けようとする前に、様々なパターンの頻度分布を(少なくとも歴史を通じて実験的に)計算する必要があります。分布が二次元になること、ジグザグ価格を上下に分けるアルゴリズムがあいまいであることなど、難しいという理由で行われていない。そしてさらに、ジグザグであっても、いくつもの、大きく異なる方法で構成することができるのです。

このような状況で、どのような「理論」を語ればいいのでしょうか。エリオット波動はある、異論はない。しかし、残念ながら理論はありません。

誰か理詰めで反論してみよう。
 
もっと正確に定義してください。
私は、予測ではなく、説明と言ったのです。
 
もっと正確に定義してください。<br /> 翻訳="no"> 私は、予測ではなく、説明と言ったのです。


はい、もちろんです。ただ、問題は「より正確に」というのがどうなのかということです。この精度が測定できれば、何かと話題にもなります。そうでなければ、またしても「定性的」な議論のレベルにとどまってしまう。

そして、私の考えでは、課題はまさに「予測すること」です。そして、好ましくは、先験的に決定することができる既知の確実性の程度を有する。そして、どんなことでも説明できる。EWTは非常にうまくマーケットを説明しています。ただし、これらの説明では、まだエリートを優先していない。
 
インジケータを少し修正しました。

バージョン3では、日本円を含む通貨ペアの下位タイムフレームでのライン表示が正しく行われないという不具合を修正しました。
黄色で表示された中心線が導入されました。赤と緑のレベルの算術平均値である。使い方としては、このラインを抜ければ、赤や緑の水準ですでに利益が出ているポジションに追加できる、という前提がある。時間が経てば、別の解釈で使われることもあるかもしれませんが。

//+------------------------------------------------------------------+
//|                                     AMPLITUDE_STAT_LEVELS_v3.mq4 |
//|                                        Copyright © 2006, Solandr |
//|                                                solandr99@mail.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2006, Solandr"
#property link      "solandr99@mail.ru"
#property indicator_chart_window

//В версии 3 поправлена ошибка неверного отображения линий на младших таймфреймах валютных пар, с участием японской йены.
//Введена центральная линия, обозначаемая жёлтым цветом. Она является средним арифметическим значением красных и зелёных 
//уровней. По поводу её использования имеется предположение, что при прохождении этой линии можно добавляться к уже 
//прибыльной позиции, открытой на красных или зелёных уровнях. Хотя с течением времени возможно появление также и других 
//трактовок её использования.
//
//В версии 2 происходит относительный расчёт размахов в соответствии со средней ценой за 25 баров.
//В принципе при достаточном количестве баров истории это эквивалентно отношению среднеарифметического значения размаха
//к среднему значению цены на истории, умноженное затем на текущее среднее значение цены (например по последним 25 барам).
//Но решено оставить всё-таки более сложный алгоритм расчёта (нормировка каждого из значений амплитуд по текущей средней 
//цене), поскольку он наверное будет вполне уместен и в случаях когда баров истории совсем немного. 
//
//Версия 1. Первоначальный вариант индикатора.
//
// ============================================================================================
//"Купи подешевле, продай подороже" - основа, на которой базируется спекуляция на финансовых рынках. 
//Данный индикатор предлагает своё видение этих уровней "подешевле" и "подороже". Он основан на простом 
//статистическом расчёте размахов (амплитуд High-Low) баров по имеющейся истории котировок.
//Расчёт амплитуд происходит по сериям от 1 до 10 баров. То есть в выбранной серии на истории находитcя разница между 
//максимальным и минимальным значением цены. Далее окно серии смещается на 1 бар и получаем следующий размах амплитуды 
//баров для выбранной серии баров. После усреднения значения полученных размахов с учётом нормировки по среднему значению 
//цены на 25 барах мы имеем среднее арифметическое диапазона колебания цены для выбранной серии баров (а точнее его 
//нормированное значение). Это значение помещается в глобальные переменные терминала.
//
//Далее при расчёте текущих уровней из глобальных переменных терминала извлекается требуемое нормированное значение 
//диапазона колебаний и умножается на среднюю цену, вычисленную по последним 25 барам. Полученное таким образом значение 
//амплитуды откладывается на графике по следующему принципу. К минимуму текущей серии 
//баров прибавляется это вычисленное значение. Так мы получаем возможный среднестатистический максимум цены для текущей 
//серии баров. То же самое делаем для нахождения среднестатистического минимума для текущей серии баров. То есть от 
//максимума текущей серии баров отнимаем полученное значение амплитуды, посчитанное для данной серии баров по историческим 
//данным. Индикатор производит описанные выше действия для серий от 1 до 10 баров. На уровнях присутствуют надписи, 
//поясняющие для какого текущего временного промежутка построен данный уровень. С параметром TF_needed="AUTO" уровни 
//строятся для серий баров текущего таймфрейма. Если требуется зафиксировать уровни какого-то таймфрейма на остальных 
//периодах, то необходимо установить это значение в MN, W1, D1, H4, H1, M30, M15, M5, или в M1. Например для значения 
//TF_needed="D1" на всех периодах будут отображаться уровни для временных промежутков от 1 до 10 дней, обозначаемых 
//соответственно как D1,...,D10.
//
//При настройках по умолчанию индикатор производит перерасчёт среднестатистических амплитуд по истории один раз в день 
//с их внесением в глобальные переменные терминала. Если по какой-то причине (например импортирование дополнительных 
//котировок) требуется произвести перерасчёт среднеарифметических значений амплитуд для серий баров не дожидаясь 
//следующего дня, то необходимо установить force_recalculation=true и будет произведён перерасчёт среднеарифметических 
//значений размахов для серий баров при следующей инициализации индикатора. После проведения принудительного пересчёта 
//значение force_recalculation нужно вернуть в значение false для исключения постоянного пересчёта данных!
//
//Данный индикатор может быть полезен при принятии решений о входе в позицию. Может поспособствовать сохранению депозита
//особенно начинающих трейдеров. Продавайте на красных уровнях и покупайте на зелёных и за Вас будет играть математика! ;o))) 
//Если Вы например купили на зелёных уровнях и курс пошёл резко против Вас, то убыточную позицию есть смысл удерживать лишь 
//до тех пор пока красные уровни не окажутся ниже Вашей открытой позиции. И когда цена окажется на этих красных уровнях - 
//закройте убыточную позицию с минимальным убытком, а во многих случаях и с маленьким плюсом. Желаю успехов!:o)
// ============================================================================================

extern string TF_needed="AUTO";
extern bool force_recalculation=false;//принудительный перерасчёт

double average_price;
bool recalculation_needed=false;
bool aver_pr_recalc_needed=true;
int last_aver_pr_recalc_bars;
double delta[11];
string work_symbol;
int TF;

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
{
   int i,k,all_bars,counter_counted_bars;
   string b_str,global_name;
   double average_price_array[10];
 
   work_symbol=Symbol();
   
   //Выбор требуемого тайфрейма для расчёта;
   if(TF_needed=="AUTO" || (TF_needed!="MN" && TF_needed!="W1" && TF_needed!="D1" && TF_needed!="H4" && TF_needed!="H1" && TF_needed!="M30" && TF_needed!="M15" && TF_needed!="M5" && TF_needed!="M1")) TF=Period();
   if(TF_needed=="MN") TF=43200;
   if(TF_needed=="W1") TF=10080;
   if(TF_needed=="D1") TF=1440;
   if(TF_needed=="H4") TF=240;
   if(TF_needed=="H1") TF=60;  
   if(TF_needed=="M30") TF=30;  
   if(TF_needed=="M15") TF=15;  
   if(TF_needed=="M5") TF=5;  
   if(TF_needed=="M1") TF=1;  
      
   //Проверяем наличие посчитанных данных амплитуд для данного TF, а также производим проверку дня, в который был произведен расчёт этих данных
   global_name=work_symbol+"_"+TF+"_counted_day";
   if(GlobalVariableCheck(global_name) && !force_recalculation) 
   {  
      if(MathAbs(GlobalVariableGet(global_name)-DayOfYear())>0) recalculation_needed=true;
   }
   else recalculation_needed=true;
         
   if(recalculation_needed)
   {//Производим расчёт средней амплитуды бара (серии баров) по таймфрейму TF на символе work_symbol
      all_bars=iBars(work_symbol,TF);
      ArrayResize(average_price_array,all_bars);
   
      //Рассчитываем массив средних цен для каждого расчётного момента времени на основе 25 баров
      for(k=all_bars-1;k>=0;k--) 
      {      
            average_price_array[k]=0;
            counter_counted_bars=0;
            for(i=k;i<=k+24;i++)//вычисляем среднюю цену на 25 барах
            {
               if(i<all_bars) 
               {
                  average_price_array[k]=average_price_array[k]+(iOpen(work_symbol,TF,i)+iHigh(work_symbol,TF,i)+iLow(work_symbol,TF,i)+iClose(work_symbol,TF,i))/4;
                  counter_counted_bars++;
               }
            }
            if(counter_counted_bars>0) average_price_array[k]=average_price_array[k]/counter_counted_bars;
      }
   
      for(i=1;i<=10;i++) delta[i]=0;
   
      for(i=1;i<=10;i++)
      {      
         for(k=all_bars-i;k>=0;k--) 
         {  
            if(average_price_array[k]>0) delta[i]=delta[i]+(iHigh(work_symbol,TF,Highest(Symbol(),TF,MODE_HIGH,i,k))-iLow(work_symbol,TF,Lowest(Symbol(),TF,MODE_LOW,i,k)))/average_price_array[k];
            else Print("average_price_array[",k,"]<=0 при i=",i," и k=",k);
         }
         delta[i]=delta[i]/(all_bars-i+1);   
         global_name=work_symbol+"_"+TF+"_"+i;
         GlobalVariableSet(global_name,delta[i]); 
         //Print("delta",i,"=",DoubleToStr(delta[i],8));
      } 
      global_name=work_symbol+"_"+TF+"_counted_day";
      GlobalVariableSet(global_name,DayOfYear()); 
      recalculation_needed=false;
   }//if(recalculation_needed)
   else
   {//Если данные имеются в глобальных переменных терминала, то берём имеющиеся расчётные данные амплитуд из глобальных переменных терминала
      for(i=1;i<=10;i++)
      {
         global_name=work_symbol+"_"+TF+"_"+i;
         delta[i]=GlobalVariableGet(global_name);
         //Print("Глобал ",i," ",delta[i]);
      }
   }
}   
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
{
//----
   int i;
   string b_str;
   for(i=1;i<=10;i++)
   {
      b_str="up_line"+i;
      ObjectDelete(b_str);
      b_str="down_line"+i;
      ObjectDelete(b_str);
      b_str="up_line_txt"+i;
      ObjectDelete(b_str);      
      b_str="down_line_txt"+i;
      ObjectDelete(b_str);       
   }
   
   b_str="centr_line";
   ObjectDelete(b_str); 
   
}   

//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
   int i;
   string line_name;
   double buffer,c_line=0;
  
   /*
   for(i=iBars(work_symbol,TF)-1;i>=0;i--) average_price=average_price+(iOpen(work_symbol,TF,i)+iHigh(work_symbol,TF,i)+iLow(work_symbol,TF,i)+iClose(work_symbol,TF,i))/4;
   average_price=average_price/iBars(work_symbol,TF);
   Print("Средняя цена по всей выборке=",NormalizeDouble(average_price,Digits));
   average_price=0;
   */
   
   if(iBars(work_symbol,TF)!=last_aver_pr_recalc_bars) aver_pr_recalc_needed=true;
   
   if(aver_pr_recalc_needed)
   {  
      average_price=0;
      for(i=0;i<=24;i++) average_price=average_price+(iOpen(work_symbol,TF,i)+iHigh(work_symbol,TF,i)+iLow(work_symbol,TF,i)+iClose(work_symbol,TF,i))/4;
      average_price=average_price/25;
      aver_pr_recalc_needed=false;
      last_aver_pr_recalc_bars=iBars(work_symbol,TF);
   }
   //Print("average_price=",NormalizeDouble(average_price,Digits));
   
   for(i=1;i<=10;i++)
   {  
      if(TF==43200) line_name="MN"+i;   
      if(TF==10080) line_name="W"+i;
      if(TF==1440) line_name="D"+i;
      if(TF==240) line_name="H"+4*i;
      if(TF==60) line_name="H"+i;
      if(TF==30) line_name="M"+30*i;
      if(TF==15) line_name="M"+15*i;
      if(TF==5) line_name="M"+5*i;
      if(TF==1) line_name="M"+i;
      
      buffer=iLow(NULL,TF,Lowest(work_symbol,TF,MODE_LOW,i,0))+delta[i]*average_price;      
      up_line(i,buffer,line_name);
      c_line=c_line+buffer;
      buffer=iHigh(NULL,TF,Highest(work_symbol,TF,MODE_HIGH,i,0))-delta[i]*average_price;
      down_line(i,buffer,line_name);
      c_line=c_line+buffer;      
   }
   
   c_line=c_line/20.0;
   centr_line(c_line);
   
   return(0);
  }
//+------------------------------------------------------------------+
int up_line(int q_days, double level, string ln)
{
   string b_str="up_line"+q_days;

   if(ObjectFind(b_str) == -1) 
   {
     ObjectCreate(b_str, OBJ_TREND, 0, Time[1], level, Time[1]+2700000,level);
     ObjectSet(b_str, OBJPROP_STYLE, STYLE_DOT);
     ObjectSet(b_str, OBJPROP_COLOR, Brown);
     ObjectSet(b_str, OBJPROP_RAY, true);
     ObjectSet(b_str, OBJPROP_WIDTH, 1);
     ObjectMove(b_str, 0, Time[1],  level);
   }
   else 
   {
      if(MathAbs(level-ObjectGet(b_str, OBJPROP_PRICE1))>0.9*Point) ObjectDelete(b_str);
   }
   
   b_str="up_line_txt"+q_days;
   string b_txt=ln;
   datetime t_bar;
   if(ObjectFind(b_str) == -1) 
   {
     ObjectCreate(b_str, OBJ_TEXT, 0, Time[0], 0);
     ObjectSetText(b_str, b_txt, 8, "Arial", Brown);
     ObjectMove(b_str, 0, Time[0]+2*q_days*Period()*60,  level);
   }
   else 
   {
     ObjectMove(b_str, 0, Time[0]+2*q_days*Period()*60,  level);
   }      
   
   return(0);
}

int down_line(int q_days, double level, string ln)
{
   string b_str="down_line"+q_days;
   
   if(ObjectFind(b_str) == -1) 
   {
     ObjectCreate(b_str, OBJ_TREND, 0, Time[1], level, Time[1]+2700000,level);
     ObjectSet(b_str, OBJPROP_STYLE, STYLE_DOT);
     ObjectSet(b_str, OBJPROP_COLOR, DarkGreen);
     ObjectSet(b_str, OBJPROP_RAY, true);
     ObjectSet(b_str, OBJPROP_WIDTH, 1);
     ObjectMove(b_str, 0, Time[1],  level);
   }
   else 
   {
      if(MathAbs(level-ObjectGet(b_str, OBJPROP_PRICE1))>0.9*Point) ObjectDelete(b_str);
   }
   
   b_str="down_line_txt"+q_days;
   string b_txt=ln;
   if(ObjectFind(b_str) == -1) 
   {
     ObjectCreate(b_str, OBJ_TEXT, 0, Time[0], 0);
     ObjectSetText(b_str, b_txt, 8, "Arial", DarkGreen);
     ObjectMove(b_str, 0, Time[0]+2*q_days*Period()*60,  level);
   }
   else 
   {
     ObjectMove(b_str, 0, Time[0]+2*q_days*Period()*60,  level);
   }      
   
   return(0);
}

int centr_line(double level)
{
   string b_str="centr_line";
   
   if(ObjectFind(b_str) == -1) 
   {
     ObjectCreate(b_str, OBJ_TREND, 0, Time[1], level, Time[1]+2700000,level);
     ObjectSet(b_str, OBJPROP_STYLE, STYLE_DOT);
     ObjectSet(b_str, OBJPROP_COLOR, Yellow);
     ObjectSet(b_str, OBJPROP_RAY, true);
     ObjectSet(b_str, OBJPROP_WIDTH, 1);
     ObjectSet(b_str, OBJPROP_BACK, false);
     ObjectMove(b_str, 0, Time[1],  level);
   }
   else 
   {
      if(MathAbs(level-ObjectGet(b_str, OBJPROP_PRICE1))>0.9*Point) ObjectDelete(b_str);
   }
   
   return(0);
}
 
<br/ translate="no">
エリオット波動はある、異論はない。しかし、その理論は、残念ながら、そうではありません。

誰か理詰めで反論してみよう。



ジグザグを使った理論がわかったのに、なぜダメなのですか?そして、そのすべてを説明した :-)ジグザグだけは、価格の反対方向への乖離率を示す指標に過ぎない。十字やジグザグは、同じことをするのですが、割合ではなく、
絶対値 で表しているのです。画像を比較するためには、少なくともスケッチを認識する必要がありますが、ジグザグの場合、これは問題です。エリオットがレッスン12で始め、ニーリーがチャプター5-9で、あるいはチャプター6-1で、そしてマルチポイントが(無意識のうちに)波の識別方法を示した。そして、それが功を奏する。オンラインで分単位のチャートを試したり、朝から晩まで繰り返した結果、全て揃いました。何かを変えなければならないことは、めったにありません。ダブルの後にチャネル(トレンドライン)が少し下がって、伸びた3分の1のタッチを捉えることがあります。