エリオット波動理論に基づくトレーディング戦略 - ページ 256 1...249250251252253254255256257258259260261262263...309 新しいコメント Forex Trader 2007.03.09 16:49 #2551 <br / translate="no"> ありがとうございます、セルゲイさん、これで多くのことが明確になりました。何をどう計算するかではなく、何を見せたいかを理解することが大切です。 ええ、私はお話が下手なのは分かっています。何度も繰り返さない方がいいと思い、できる限り説明しました。:о))) 私が理解する限り、ある時点のPEの値は、現在のカウントがどんどん右に移動するにつれて変化するのでしょうか?何しろ、この地点と現在のデータムを結ぶ水路が変化しているのだから。 まさにその通りです。ここに変化のダイナミクスを加えると、プロセスに関する知識を広げることができます。バイクの話に戻ると、古典的な物理学の問題から少し抽象化する必要があります。ある時点で均衡点がわかり、それだけがわかったとする。直進しているのか、曲がり始めているのか、急旋回しているのか、一概には言えない(私たちは特定の問題から抽象化されており、特定のシステムについてはほとんど知らないのだ)。この問いは、もちろん間接的に、過去の運動時間軸の均衡を知ることで答えられる。 私が行うのは、長さNのプロセスを観測した各タイムフレームの窓Nに対する局所極値(この場合は安値)の変化のダイナミクスをトレースするだけです(装飾的です)。 写真では、窓が時間と共に「形成」されていく様子を見ることができます。次に、単純に組み合わせます。 この方法では、長さNのウィンドウは常に一定値でなければならない。マトリックス、つまり表面は次のような大きさである[N:(N-zone)]。Nの選択そのものは別の話です。 Forex Trader 2007.03.09 18:59 #2552 つまり、PEグラフは、現在の基準フレームに対する局所的な極値の軌跡なのですね。 Forex Trader 2007.03.11 23:44 #2553 お集まりの皆様、こんにちは。 昨日、ある投稿を目にしたのですが、非常に興味深く、ここで議論されているトピックと重なる部分がありました(イミフ)。 http://forum.fxclub.org/showthread.php?t=22097&page=3 によるスレッドの先行投稿です↑(長文です) Forex Trader 2007.03.12 19:48 #2554 こんばんは 以下、状況です EURUSD h1 216 barのサンプル(Close)をどこでもいいので取り、このサンプルで放物線回帰の係数を計算すると。F(x)=A0+A1*x+A2*x^2 ポテンシャル勾配計算後 int shift=215; for (int j=shift-3;j>=0;j--) { ArrayResize(a_Price,shift+3-j); ArrayInitialize(a_Price,0); int s=1; for (int i=shift;i>=j;i--) { a_Price[s]=Close[i]; s++; }. Raschet_koefficientov_paraboli(a_Price,shift-j); double summGradienta=0; for (int x=1;x<=shift-j;x++) { summGradienta+=Close[shift-x+1]-(A0+A1*x+A2*MathPow(x,2)); } 。 GP[j]=summGradienta*100000000000; } 変な数値(常にマイナス)が出て、およそ-0.0278付近 そして、可視化で履歴を見ながら実行すると、この指標のアウトラインは一定で、特にサンプルが多いほど安定します。 最も重要なのはアウトラインがタイムフレームや通貨ペアに依存しないこと 関数の本質 Raschet_koefficientov_paraboli IOCと逆行列によるシステム解決 どう使えばいいのですか。 PS.これはsolandr 08.07.06 20:12からの投稿で私の "失敗 "の試みです 私は得ることができないようなそこに写真 謹んで PPS 誰もが必要とすれば、私は完全にここで私のコードを投稿します。 a trading strategy based Comparing, sorting, and searching 最後の改革 Forex Trader 2007.03.12 22:02 #2555 2olyakish コードを挿入 する場合は、code タグを使用します。そうすれば、文章はもっと読みやすくなるはずです。 また、ANCによる放物線回帰係数の計算を行うと、3ウランの系が得られます。一般的な形で解くことが十分可能です。この結果、3つの回帰係数の計算式ができ、それほど複雑ではありません。その計算は、逆行列の構築よりもはるかに簡単で、最も重要なことは、より信頼性が高いということである。 実際、コードがないので、何も言うことはないのですが。でも、それを出せば、solandrが 解決してくれると思うんです。 Forex Trader 2007.03.13 00:34 #2556 以下は、インジケーターのテキストです。 //+------------------------------------------------------------------+ //| Gradient_Potenciala_ind.mq4 | //| olyakish | //| | //+------------------------------------------------------------------+ #property copyright "olyakish" #property link "" #property indicator_separate_window #property indicator_buffers 2 #property indicator_color1 Red #property indicator_color2 Blue #property indicator_level1 0 /* #property indicator_level2 0.0254 #property indicator_level3 -0.0229 */ #property indicator_minimum -0.03 #property indicator_maximum 0.03 double Matrica[4,5]; double det,det1; double Matrica`[4,4]; double A0,A1,A2; double a_Price[]; double GP[],MA[],GP_Rev[]; int shift; double NullGradient; //---- функция расчета коэффициентов параболы типа F(x)=A0+A1*x+A2*x^2 //---- передаем массив цен по которым происходит расчет коэффициентов и количество баров для расчета int init() { SetIndexStyle(0, DRAW_LINE); SetIndexBuffer(0, GP); SetIndexLabel(0, "Gradient_Potenciala"); SetIndexStyle(1, DRAW_LINE); SetIndexBuffer(1, MA); SetIndexLabel(1, "MA"); shift=iBarShift(NULL, 0, ObjectGet("Start", OBJPROP_TIME1),false); SetIndexDrawBegin(0, 10); return(0); } void Raschet_koefficientov_paraboli(double Mass_Price[], int bars_in) { //---- метод наименьших квадратов и решение системы уравнений обратной матрицей // --- имеем заполненную матрицу 3*4 ArrayInitialize(Matrica,0); ArrayInitialize(Matrica`,0); Matrica[1,1]=bars_in; for (int i=1;i<=bars_in;i++) { Matrica[1,2]+=i; Matrica[1,3]+=MathPow(i,2); Matrica[2,3]+=MathPow(i,3); Matrica[3,3]+=MathPow(i,4); Matrica[1,4]+=Mass_Price[i]; Matrica[2,4]+=Mass_Price[i]*i; Matrica[3,4]+=MathPow(i,2)*Mass_Price[i]; } Matrica[2,1]=Matrica[1,2]; Matrica[2,2]=Matrica[1,3]; Matrica[3,1]=Matrica[2,2]; Matrica[3,2]=Matrica[2,3]; // ее det det= (Matrica[1,1]*Matrica[2,2]*Matrica[3,3]+Matrica[2,1]*Matrica[3,2]*Matrica[1,3]+Matrica[1,2]*Matrica[2,3]*Matrica[3,1])- (Matrica[1,3]*Matrica[2,2]*Matrica[3,1]+Matrica[1,2]*Matrica[2,1]*Matrica[3,3]+Matrica[1,1]*Matrica[2,3]*Matrica[3,2]); //Comment ("det=",det); //обратную матрицу Matrica`[1,1]=((Matrica[2,2]*Matrica[3,3])-(Matrica[2,3]*Matrica[3,2])); Matrica`[1,2]=-((Matrica[2,1]*Matrica[3,3])-(Matrica[2,3]*Matrica[3,1])); Matrica`[1,3]=((Matrica[2,1]*Matrica[3,2])-(Matrica[2,2]*Matrica[3,1])); Matrica`[2,1]=-((Matrica[1,2]*Matrica[3,3])-(Matrica[1,3]*Matrica[3,2])); Matrica`[2,2]=((Matrica[1,1]*Matrica[3,3])-(Matrica[1,3]*Matrica[3,1])); Matrica`[2,3]=-((Matrica[1,1]*Matrica[3,2])-(Matrica[1,2]*Matrica[3,1])); Matrica`[3,1]=((Matrica[1,2]*Matrica[2,3])-(Matrica[1,3]*Matrica[2,2])); Matrica`[3,2]=-((Matrica[1,1]*Matrica[2,3])-(Matrica[1,3]*Matrica[2,1])); Matrica`[3,3]=((Matrica[1,1]*Matrica[2,2])-(Matrica[1,2]*Matrica[2,1])); //расчет коэффициентов параболы A0-с, A1-b, A2=a A0=(Matrica`[1,1]*Matrica[1,4]+Matrica`[1,2]*Matrica[2,4]+Matrica`[1,3]*Matrica[3,4])/det; A1=(Matrica`[2,1]*Matrica[1,4]+Matrica`[2,2]*Matrica[2,4]+Matrica`[2,3]*Matrica[3,4])/det; A2=(Matrica`[3,1]*Matrica[1,4]+Matrica`[3,2]*Matrica[2,4]+Matrica`[3,3]*Matrica[3,4])/det; return(0); } int start() { if(ObjectFind("Start")!=0) {Comment ("Вертикальная линия Start не найдена");}////return(0);} else {Comment ("Вертикальная линия Start на баре ",iBarShift(NULL, 0, ObjectGet("Start", OBJPROP_TIME1),false) );} shift=iBarShift(NULL, 0, ObjectGet("Start", OBJPROP_TIME1),false); shift=215; GP[shift+1]=0; GP[shift]=0; GP[shift-1]=0; GP[shift-2]=0; for (int j=shift-3;j>=0;j--) { ArrayResize(a_Price,shift+3-j); ArrayInitialize(a_Price,0); int s=1; for (int i=shift;i>=j;i--) { a_Price[s]=Close[i]; s++; } Raschet_koefficientov_paraboli(a_Price,shift-j); double summGradienta=0; for (int x=1;x<=shift-j;x++) { summGradienta+=Close[shift-x+1]-(A0+A1*x+A2*MathPow(x,2)); } GP[j]=summGradienta*100000000000; } SetIndexLabel(0, "Gradient_Potenciala"+GP[1] ); Comment (GP[1]); ////////////////////////------------------------------------------------------------ //-0.0216 /* ArrayResize(a_Price,shift+2); ArrayInitialize(a_Price,0); int s=1; for (i=shift;i>=1;i--) { a_Price[s]=Close[i]; s++; } */ /* for(i=1;i<=200;i++) { a_Price[s]=Close[2]-100*Point+i*Point; Raschet_koefficientov_paraboli(a_Price,shift-1); summGradienta=0; for (x=1;x<=shift-j;x++) { summGradienta+=Close[shift-x+1]-(A0+A1*x+A2*MathPow(x,2)); } summGradienta =summGradienta*1000000000; // Alert(Close[2]-100*Point+i*Point,"=",summGradienta); } */ /* ArrayResize(GP_Rev,ArrayRange(GP,0)); ArrayCopy(GP_Rev,GP,0,0,WHOLE_ARRAY); // ArrayIsSeries(GP_Rev); ArraySetAsSeries(GP_Rev,1); int ma_period=25; for(i=shift-ma_period-15;i>=1;i--) { MA[i]= iMAOnArray(GP_Rev,0,ma_period,0,MODE_SMA,i); } */ // MA[2]= iMAOnArray(GP_Rev,0,10,0,MODE_SMA,2); // MA[3]= iMAOnArray(GP_Rev,0,10,0,MODE_SMA,15); // Comment ("MA[1]",MA[1]); return(0); } //+------------------------------------------------------------------+ ビジュアライゼーションに描かれたものを見てください。 Forex Trader 2007.03.13 07:45 #2557 正直、他人のコードを理解するのはとても難しいです。これは、正確には和算のやり方が違うとしか思えませんね。また私の計算の考え方を述べるしかない。もっとわかりやすく説明するといいかも?私のアルゴリズムは次のようなものです。 1. 例えば過去100本の小節から[99,0]を抽出する。今回のサンプルでは、湾曲した傾斜溝を転がる価格差玉に与える力の勾配がどのように変化するかを見てみたいと思います。この同じ谷が99小節目から始まり、0小節目で終わると仮定する。 2. 軌道のある特定の点、例えば 45 本の棒の上でボールに作用する力勾配を計算するために、この棒の後でボールが通過する溝の形には全く興味がないものと仮定する。つまり、区間[44,0]には興味がないのである。したがって、バー 45 上のボールに作用する力の勾配を計算するために、セグメント [99,45] を考慮します。 3.この区間[99,45]に対して、MNAによって放物線を求める。ボール・プライスに働く力の勾配は、点45の価格と近似放物線の値との差に等しくなる。 4.次に、価格ボールに作用する勾配の値を、セグメント[99,0]に沿った運動の全長にわたって求めたい。そのためには、手順1~3を繰り返す必要があります。つまり、セグメント[99,95], [99,94], [99,93]......[99,2], [99,1], [99,0] を取り、各セグメントに対する勾配値を求めるのです。 5.ここで、4で得られた勾配を合計すると、与えられた点99のボールプライスに働く力の勾配の和の値が得られる。だから、これがグラフに描ける値なんです。これはタイムライン上のバー99に位置するポイントになります。 6.次に、この谷の他の点[99,0]の勾配の総和の値を求めたい。そのためには、対応する谷[98,0],[97,0],[96,0]......[6,0],[5,0],[4,0]を順番に取っていく必要があります。そして、それぞれの溝に対して、手順1~5を繰り返します。その結果、チャート上では、99小節目から始まり、0小節目で減衰していく、このような波動構造が得られます。 追記:solandr 08.07.06 20:12 の画像ではグラデーションの和がmoduloになっていました。しかし、その後、私は単純なアルゴリズムによる和算を使い始め、この構造の0を通る遷移の点は、現在の瞬間に作用する実際のチャンネルの点であることがわかりました。「エリオット波動理論に基づくトレーディング戦略」 ソランドル 27.08.06 21:05 リグニッションチャンネルも全く同じ手順で行っています。また、波動構造を把握し、そこから現在の瞬間に作用しているチャネルの時間軸を把握します。 Forex Trader 2007.03.13 19:19 #2558 <br/ translate="no"> つまり、あなたのPEグラフは、現在のデータムに対する局所的な極値の軌跡なのですね。 。 Yuriさん、こんにちは!ちょっと大事な用事があって、遅くなってすみませんでした。OK、順番に説明していこうと思います。特に、ハーストの指数の話をしていて、位置エネルギーの話はまだしていませんから。 一般的に、これから書くことは、チャンネル、PE、デッドゾーンなど、すでに何度も議論してきたことなので、少し混乱しています(一部の細かい点を除いて)。まあ、いいや、少なくとも学んだことを繰り返せば、思想家であるウラジスラフが正してくれるだろう。:о)もちろん、これは私の全モデルではありませんし、むしろ全モデルではありません。エリオット波動理論の断片、モデルの基礎 - ハースト指数、MSPの全体像、「フラクタル構造の波」および他の多くのもの、ならびにこれらの構成要素の間の接続がありません。私は、自分のモデルを説明するのではなく、PEとその利用を切り離して考えています。 チャンネルのポテンシャルエネルギー(PE) まず、PEのグラフそのものから説明します。現在のデータから(言い換えれば、ある特定の瞬間のゼロから)、例えば(H+L)/2の数のN本のバー(またはサンプル)の価格のサンプルを取得します。この価格サンプルはEPの算出のための入力となります。履歴を+1刻みにすると、そのような反復のたびに、サンプルの長さがnからNに制限されることになる。この場合、0からNに進んでも、Nから0に進んでも構わない。このようなチャネルごとに、PEが計算される。その結果、1つのチャンネルに1つのポテンシャルエネルギーが割り当てられる。このことを雄弁に物語るのが図である(高いアートワークに注意 :o) n=5 先に書いたように、デッドゾーン境界以下の長さのチャンネルは考慮されていないが、PIを計算する際には残りのチャンネルがこの部分を含むことに注意する必要がある。Hurst指数についても同様のセグメントがあり、非常に小さなサンプルに対する計算は先験的に大きな誤差を含みうるので、それについては計算が行われない。私のモデルでは、この区間の長さは設定されておらず、現在のデータム付近の価格系列の分析に基づいて選択される。そして、これはn=8の場合のバリエーションです。次の反復では、8つのサンプルからなる価格サンプルが得られ、それに対して1つのPE値が計算されます。得られたPE関数には極値があり、各極値はある長さのチャンネルに対応する。PEを計算する方法の特殊性を考えると、ローカルミニマム(つまり、最小の極値だけではない)に対応するチャネルが特に興味深い。これらの値、長さNのウィンドウに対する位置、および追加的なチャネル特性との組み合わせにより、ネスト階層が形成される。候補者の中からポテンシャルの高い上位(親)チャンネルを特定する。これは必ずしも長いチャンネルではありません。ここでは、より大きな「可能性」という概念を、MSPに従って解釈しています。ポテンシャルエネルギーが最小であることと相まって、最も安定したチャンネルと言えるでしょう。サステナビリティについて少し。一般に、この概念はかなり弾力的で、私たちの場合は確率的な性質も持っています。例えば、物理の教科書のページで、自転車が走っている。平衡状態にあり、自分の存在の理想的な条件を考慮すると、彼は永遠に乗ることができる。街中では、それほど完璧ではありません。例えば、あるサイクリストが、あと10分も走れば平衡状態になるのに、1セントも賭けないという人がいた。確かに、それは私でした。:о)))Hearst指標の持続性推定も同様で、確率的な性質を持っている。 計算されたグラフや追加された特性は、システム存在の初期条件と考えるべきで、当然ながら変化するものである。わかりやすくするために、チャンネルの「ポテンシャル」を「エネルギー」に置き換えることにする。このチャンネルは永遠に存在し続けるのでしょうか?もちろんそんなことはない。いつかはエネルギーを失い、存在しなくなるのだから。どこに使うのか?私の謙虚な意見 - それは他のチャンネルにそれを与えるでしょう。あるいは、哲学的に言えば、他のチャンネルに奪われる。また、チャンネルからのエネルギーの漏れをどのように追跡するのでしょうか?...何言ってたっけ、あ、そうだ、ごめん、気が散ってた。これ以上は言いません。ランダム」なゼロバーから計算する例を挙げてみよう。"ランダム "とは、グラフ上の典型的な、私が思うに難しい領域のひとつを非ランダムに選択したことに起因します。これは後ほど明らかになります。そこで、電流値を固定し、N=130の時のPEを計算すると、デッドゾーンは30と仮定される。その結果、130-30=100のチャンネルができ、それぞれのチャンネルについて、PEの値を計算します。(H+L)/2の価格系列を重ね合わせた、そんなチャートを入手しました。 このチャートには、PI値が最小となる4つのチャンネルが含まれています。さらに、チャンネルはそのカウント数で識別される(チャンネル長は130-(局所極値のカウント数)で計算される)。25 counts 51 counts 88 counts 117 counts その結果、100チャンネルのSystemから、4チャンネルのSystemになる。 25 count PE トップレベルのチャンネル(Parent)です。下位チャンネル 51 PE数 なかなか不思議なチャンネルです。同じように強力なようですが、チャンネルが散らばっているのがわかりますね。つまり、2つのチャンネルがエネルギーを奪い合うことになる。一方はエネルギーを一方的に運び、もう一方はエネルギーをもう一方的に運ぶ。転送の方向は、一般的にはあまり変わりません。誰が誰からエネルギーを奪うのだろう。 88 PE count 117 PE count ポテンシャルエネルギーの値が他と比較して最も小さいチャネルです。 では、これらのチャンネルをどうすればいいのか。もちろん、反転ゾーンを探します。そのためには、良いモデルが必要です。このフォーラムで議論されている最も簡単な方法の1つは、低次のチャンネル同士や親チャンネルとの交差を探すことです。どの交差点を探せばいいのかがわかればいいのです。それに、水路の境界の選択も重要です。結局、各チャンネルは、中心線(通常は 線形回帰)、下限線、上限線の3本の線で表現される。2つのチャンネルの交点は、9つのポイントを形成しています。すべてのチャンネルとの交点を探せば、それなりの数字が出る。 リバーサルゾーンの構築に関する面倒な話は省略し、直接結果に進みたいと思います。まず、これは私の方法で計算した特定のPEにのみ適用されます。計算されたPE関数は、あくまでもSystemの初期条件(この場合、Systemは100ではなく4チャンネル)であることだけは注意しておきます。 チャンネルのピボットゾーンは次のようになりました。参加者 事実を見てみましょう。このセクションの予測は難しいかもしれないが、安定したチャンネルがエネルギーを失い始め、それを受け継ぐ新しいチャンネルがまだ明確に形成されていない点が異なる。その中間のような、発展途上のものです。 ダイナミックモデル ダイナミックモデルを構築するためには、グラフが単純な条件、つまり計算値がサンプル長に依存しないことを満たす必要があります。これは、固定されたカレントデ ータムからの大きなサンプルには、より小さな推定サンプルの値が含まれるものと理解されたい。例: N=5 Counts: 0 1 2 3 4 Values:3 4 2 2 7 N=10 Counts: 0 1 2 3 4 5 6 7 8 9 Values:3 4 2 7 5 1 2 2 1 実際には次のようになります。 一般的には特別なことではありませんが、ダイナミックモデルだけに非常に重要な特性なので、この点を強調しました。 さて、ダイナミックモデルそのものについてです。1時間足チャートを例にとって見てみましょう。ある取引日の16:00だとする。自分はどうしたいのか?大まかには、上記で簡単に説明した動作を行います。16:00に対応するゼロバーから、N本のヒストリカルバーの長さ(カウント数)でEPチャートをプロットする。図はこの事実を示している。 さて、1時間前、つまり15:00に何をしていたかを思い出してみよう。ビールを飲まなければ、同じようにPEチャートをプロットしたに違いない。16:00と15:00の価格系列入力サンプルは、最も極端な2つの値だけが互いに異なることになります。そして、これは間違いなくPEチャートに取るに足らない影響を与えるはずだ。でも、どうやって?上記の現在の例(EPチャートは16:00に計算されたとする)を1時間前、つまり15:00にプロットしてみましょう。 。局所極値の数は変わりませんが、わずかな変化、つまりウィンドウに対する内部移動があることが分かります。実は、私は何を期待していたのでしょうか?局所極値も長さNの窓(窓は固定値と覚えておく)に対する位置が変わり、エネルギー準位も変化するが、曲線の形状は実質的に変化しない。16:00にPE区画の親チャンネルのカウントが24(チャンネル長106)になりました。15:00(これも親チャンネルのまま)では、読み取り値は22で、チャンネル長108に相当する。また、チャンネルレベルの再配置が行われなかったことも特筆すべき点である。主水路は長さと安定性を失う。 ある時、窓を「凍らせる」ように、窓越しにその過程を見ながら、さらにストーリーを探ってみたらどうだろうと思ったのです。 あとは、N時間分のすべてのグラフを組み合わせる(これだけが構成ではないが)だけである(もちろん、ここでは時間は重要ではなく、分、時間、日などでもよい)。を得ることができます。動的解析のための生データ(マトリックス)を簡単に取得することができます。これはあくまでローカルミニマムのダイナミクスを解析するためのごく最初のステップであり、一般的にはここからさらに多くの追加情報を得ることができると考えられている。そして、このシンプルなアプリケーションでも、多くの有用な情報を得ることができます。チャンネルが再配置され、その構造や階層が変化する様子を見ることができます。例えば、2つのチャンネルを1つに統合したり、逆にいくつかに分割したりする方法です。そして、前回の記事でそのような基準の一つをお話しました。この例のマトリックスです(美しいだけでなく、認知的でもあり、主なものは意識を拡大することです :)PS:ユーリ、この投稿に芸術的、視覚的な言葉の力をすべて込めて。もっとわかりやすくなるといいなと思います。ここで、私は唯一の要求は、再びそれが明確にされない場合は、すべてが明確であることを書く、そうでなければ、あなたは私の中で劣等感を開発し、私は高価なbrainiacに費やす必要があります。冗談だよ!!!:о))))すみません、写真が少し大きくなってしまいました。 a trading strategy based フォレックス・システム ヘッジホッグ・システム&EA Forex Trader 2007.03.13 20:48 #2559 セルゲイさん、こんにちは。 これで、PEが機能ではなく、ダイナミックピクチャーがどのように構築され、チャンネルがどのように定義され、それらがPEとどのような関係があるのかが明確になりました。 PE の計算方法だけが抜けていますが、これは正しいです。そうでなければ、モデルのいくつかの側面についての議論が、初歩的な出版物になってしまうところでした。そして、そのような目標には、価値がないことを望みます。 ですから、このような多成分、数学的に豊かなシステムが、どのような結果をもたらすのかが気になります。 Forex Trader 2007.03.14 14:29 #2560 grasn さん、ありがとうございます。またしても、私が正しい道を歩んでいることを確信させてくれました。確かに私のポテンシャルエネルギー分布関数は多次元ですが、関数空間のどの直交平面上でも、ほぼ同じように見えます。私の分析には、互いにアーキテクチャ的に接続されたニューラルネットの複合体を使用しています。 グリッドは、チャンネルからチャンネルへのエネルギーの「流れ」を考慮しなければならない。そして、チャンネルごとに個別に反転ゾーンを定義する。その後、放物線近似を行い、波動関数を用いて関数グラフ(価格グラフ)を合成しています。エッジ効果による強い歪みの問題は未解決のままです。今、取り組んでいるのは、いくつかのアイデアです。 結果は、まだ印象的ではありません。計算時間は5分です。グリッドを鍛える のに24時間かかるんです。 追伸:あなたのシステムとの偶然の一致は、カジュアルに考えてください。あなたのシステムが見ていないように私はコピーすることはできませんので、:)。 あなたのシステムを見てないので、 コピーできません。Cagi paternasで時間を浪費することはない。イミフ! 1...249250251252253254255256257258259260261262263...309 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
ええ、私はお話が下手なのは分かっています。何度も繰り返さない方がいいと思い、できる限り説明しました。:о)))
私が理解する限り、ある時点のPEの値は、現在のカウントがどんどん右に移動するにつれて変化するのでしょうか?何しろ、この地点と現在のデータムを結ぶ水路が変化しているのだから。
まさにその通りです。ここに変化のダイナミクスを加えると、プロセスに関する知識を広げることができます。バイクの話に戻ると、古典的な物理学の問題から少し抽象化する必要があります。ある時点で均衡点がわかり、それだけがわかったとする。直進しているのか、曲がり始めているのか、急旋回しているのか、一概には言えない(私たちは特定の問題から抽象化されており、特定のシステムについてはほとんど知らないのだ)。この問いは、もちろん間接的に、過去の運動時間軸の均衡を知ることで答えられる。
私が行うのは、長さNのプロセスを観測した各タイムフレームの窓Nに対する局所極値(この場合は安値)の変化のダイナミクスをトレースするだけです(装飾的です)。 写真では、窓が時間と共に「形成」されていく様子を見ることができます。次に、単純に組み合わせます。
この方法では、長さNのウィンドウは常に一定値でなければならない。マトリックス、つまり表面は次のような大きさである[N:(N-zone)]。Nの選択そのものは別の話です。
昨日、ある投稿を目にしたのですが、非常に興味深く、ここで議論されているトピックと重なる部分がありました(イミフ)。
http://forum.fxclub.org/showthread.php?t=22097&page=3
によるスレッドの先行投稿です↑(長文です)
以下、状況です
EURUSD h1 216 barのサンプル(Close)をどこでもいいので取り、このサンプルで放物線回帰の係数を計算すると。F(x)=A0+A1*x+A2*x^2
ポテンシャル勾配計算後
int shift=215;
for (int j=shift-3;j>=0;j--)
{
ArrayResize(a_Price,shift+3-j);
ArrayInitialize(a_Price,0);
int s=1;
for (int i=shift;i>=j;i--)
{
a_Price[s]=Close[i];
s++;
}.
Raschet_koefficientov_paraboli(a_Price,shift-j);
double summGradienta=0;
for (int x=1;x<=shift-j;x++)
{
summGradienta+=Close[shift-x+1]-(A0+A1*x+A2*MathPow(x,2));
} 。
GP[j]=summGradienta*100000000000;
}
変な数値(常にマイナス)が出て、およそ-0.0278付近
そして、可視化で履歴を見ながら実行すると、この指標のアウトラインは一定で、特にサンプルが多いほど安定します。
最も重要なのはアウトラインがタイムフレームや通貨ペアに依存しないこと
関数の本質
Raschet_koefficientov_paraboli
IOCと逆行列によるシステム解決
どう使えばいいのですか。
PS.これはsolandr 08.07.06 20:12からの投稿で私の "失敗 "の試みです
私は得ることができないようなそこに写真
謹んで
PPS 誰もが必要とすれば、私は完全にここで私のコードを投稿します。
コードを挿入 する場合は、code タグを使用します。そうすれば、文章はもっと読みやすくなるはずです。
また、ANCによる放物線回帰係数の計算を行うと、3ウランの系が得られます。一般的な形で解くことが十分可能です。この結果、3つの回帰係数の計算式ができ、それほど複雑ではありません。その計算は、逆行列の構築よりもはるかに簡単で、最も重要なことは、より信頼性が高いということである。
実際、コードがないので、何も言うことはないのですが。でも、それを出せば、solandrが 解決してくれると思うんです。
//+------------------------------------------------------------------+ //| Gradient_Potenciala_ind.mq4 | //| olyakish | //| | //+------------------------------------------------------------------+ #property copyright "olyakish" #property link "" #property indicator_separate_window #property indicator_buffers 2 #property indicator_color1 Red #property indicator_color2 Blue #property indicator_level1 0 /* #property indicator_level2 0.0254 #property indicator_level3 -0.0229 */ #property indicator_minimum -0.03 #property indicator_maximum 0.03 double Matrica[4,5]; double det,det1; double Matrica`[4,4]; double A0,A1,A2; double a_Price[]; double GP[],MA[],GP_Rev[]; int shift; double NullGradient; //---- функция расчета коэффициентов параболы типа F(x)=A0+A1*x+A2*x^2 //---- передаем массив цен по которым происходит расчет коэффициентов и количество баров для расчета int init() { SetIndexStyle(0, DRAW_LINE); SetIndexBuffer(0, GP); SetIndexLabel(0, "Gradient_Potenciala"); SetIndexStyle(1, DRAW_LINE); SetIndexBuffer(1, MA); SetIndexLabel(1, "MA"); shift=iBarShift(NULL, 0, ObjectGet("Start", OBJPROP_TIME1),false); SetIndexDrawBegin(0, 10); return(0); } void Raschet_koefficientov_paraboli(double Mass_Price[], int bars_in) { //---- метод наименьших квадратов и решение системы уравнений обратной матрицей // --- имеем заполненную матрицу 3*4 ArrayInitialize(Matrica,0); ArrayInitialize(Matrica`,0); Matrica[1,1]=bars_in; for (int i=1;i<=bars_in;i++) { Matrica[1,2]+=i; Matrica[1,3]+=MathPow(i,2); Matrica[2,3]+=MathPow(i,3); Matrica[3,3]+=MathPow(i,4); Matrica[1,4]+=Mass_Price[i]; Matrica[2,4]+=Mass_Price[i]*i; Matrica[3,4]+=MathPow(i,2)*Mass_Price[i]; } Matrica[2,1]=Matrica[1,2]; Matrica[2,2]=Matrica[1,3]; Matrica[3,1]=Matrica[2,2]; Matrica[3,2]=Matrica[2,3]; // ее det det= (Matrica[1,1]*Matrica[2,2]*Matrica[3,3]+Matrica[2,1]*Matrica[3,2]*Matrica[1,3]+Matrica[1,2]*Matrica[2,3]*Matrica[3,1])- (Matrica[1,3]*Matrica[2,2]*Matrica[3,1]+Matrica[1,2]*Matrica[2,1]*Matrica[3,3]+Matrica[1,1]*Matrica[2,3]*Matrica[3,2]); //Comment ("det=",det); //обратную матрицу Matrica`[1,1]=((Matrica[2,2]*Matrica[3,3])-(Matrica[2,3]*Matrica[3,2])); Matrica`[1,2]=-((Matrica[2,1]*Matrica[3,3])-(Matrica[2,3]*Matrica[3,1])); Matrica`[1,3]=((Matrica[2,1]*Matrica[3,2])-(Matrica[2,2]*Matrica[3,1])); Matrica`[2,1]=-((Matrica[1,2]*Matrica[3,3])-(Matrica[1,3]*Matrica[3,2])); Matrica`[2,2]=((Matrica[1,1]*Matrica[3,3])-(Matrica[1,3]*Matrica[3,1])); Matrica`[2,3]=-((Matrica[1,1]*Matrica[3,2])-(Matrica[1,2]*Matrica[3,1])); Matrica`[3,1]=((Matrica[1,2]*Matrica[2,3])-(Matrica[1,3]*Matrica[2,2])); Matrica`[3,2]=-((Matrica[1,1]*Matrica[2,3])-(Matrica[1,3]*Matrica[2,1])); Matrica`[3,3]=((Matrica[1,1]*Matrica[2,2])-(Matrica[1,2]*Matrica[2,1])); //расчет коэффициентов параболы A0-с, A1-b, A2=a A0=(Matrica`[1,1]*Matrica[1,4]+Matrica`[1,2]*Matrica[2,4]+Matrica`[1,3]*Matrica[3,4])/det; A1=(Matrica`[2,1]*Matrica[1,4]+Matrica`[2,2]*Matrica[2,4]+Matrica`[2,3]*Matrica[3,4])/det; A2=(Matrica`[3,1]*Matrica[1,4]+Matrica`[3,2]*Matrica[2,4]+Matrica`[3,3]*Matrica[3,4])/det; return(0); } int start() { if(ObjectFind("Start")!=0) {Comment ("Вертикальная линия Start не найдена");}////return(0);} else {Comment ("Вертикальная линия Start на баре ",iBarShift(NULL, 0, ObjectGet("Start", OBJPROP_TIME1),false) );} shift=iBarShift(NULL, 0, ObjectGet("Start", OBJPROP_TIME1),false); shift=215; GP[shift+1]=0; GP[shift]=0; GP[shift-1]=0; GP[shift-2]=0; for (int j=shift-3;j>=0;j--) { ArrayResize(a_Price,shift+3-j); ArrayInitialize(a_Price,0); int s=1; for (int i=shift;i>=j;i--) { a_Price[s]=Close[i]; s++; } Raschet_koefficientov_paraboli(a_Price,shift-j); double summGradienta=0; for (int x=1;x<=shift-j;x++) { summGradienta+=Close[shift-x+1]-(A0+A1*x+A2*MathPow(x,2)); } GP[j]=summGradienta*100000000000; } SetIndexLabel(0, "Gradient_Potenciala"+GP[1] ); Comment (GP[1]); ////////////////////////------------------------------------------------------------ //-0.0216 /* ArrayResize(a_Price,shift+2); ArrayInitialize(a_Price,0); int s=1; for (i=shift;i>=1;i--) { a_Price[s]=Close[i]; s++; } */ /* for(i=1;i<=200;i++) { a_Price[s]=Close[2]-100*Point+i*Point; Raschet_koefficientov_paraboli(a_Price,shift-1); summGradienta=0; for (x=1;x<=shift-j;x++) { summGradienta+=Close[shift-x+1]-(A0+A1*x+A2*MathPow(x,2)); } summGradienta =summGradienta*1000000000; // Alert(Close[2]-100*Point+i*Point,"=",summGradienta); } */ /* ArrayResize(GP_Rev,ArrayRange(GP,0)); ArrayCopy(GP_Rev,GP,0,0,WHOLE_ARRAY); // ArrayIsSeries(GP_Rev); ArraySetAsSeries(GP_Rev,1); int ma_period=25; for(i=shift-ma_period-15;i>=1;i--) { MA[i]= iMAOnArray(GP_Rev,0,ma_period,0,MODE_SMA,i); } */ // MA[2]= iMAOnArray(GP_Rev,0,10,0,MODE_SMA,2); // MA[3]= iMAOnArray(GP_Rev,0,10,0,MODE_SMA,15); // Comment ("MA[1]",MA[1]); return(0); } //+------------------------------------------------------------------+ビジュアライゼーションに描かれたものを見てください。
1. 例えば過去100本の小節から[99,0]を抽出する。今回のサンプルでは、湾曲した傾斜溝を転がる価格差玉に与える力の勾配がどのように変化するかを見てみたいと思います。この同じ谷が99小節目から始まり、0小節目で終わると仮定する。
2. 軌道のある特定の点、例えば 45 本の棒の上でボールに作用する力勾配を計算するために、この棒の後でボールが通過する溝の形には全く興味がないものと仮定する。つまり、区間[44,0]には興味がないのである。したがって、バー 45 上のボールに作用する力の勾配を計算するために、セグメント [99,45] を考慮します。
3.この区間[99,45]に対して、MNAによって放物線を求める。ボール・プライスに働く力の勾配は、点45の価格と近似放物線の値との差に等しくなる。
4.次に、価格ボールに作用する勾配の値を、セグメント[99,0]に沿った運動の全長にわたって求めたい。そのためには、手順1~3を繰り返す必要があります。つまり、セグメント[99,95], [99,94], [99,93]......[99,2], [99,1], [99,0] を取り、各セグメントに対する勾配値を求めるのです。
5.ここで、4で得られた勾配を合計すると、与えられた点99のボールプライスに働く力の勾配の和の値が得られる。だから、これがグラフに描ける値なんです。これはタイムライン上のバー99に位置するポイントになります。
6.次に、この谷の他の点[99,0]の勾配の総和の値を求めたい。そのためには、対応する谷[98,0],[97,0],[96,0]......[6,0],[5,0],[4,0]を順番に取っていく必要があります。そして、それぞれの溝に対して、手順1~5を繰り返します。その結果、チャート上では、99小節目から始まり、0小節目で減衰していく、このような波動構造が得られます。
追記:solandr 08.07.06 20:12 の画像ではグラデーションの和がmoduloになっていました。しかし、その後、私は単純なアルゴリズムによる和算を使い始め、この構造の0を通る遷移の点は、現在の瞬間に作用する実際のチャンネルの点であることがわかりました。「エリオット波動理論に基づくトレーディング戦略」 ソランドル 27.08.06 21:05
リグニッションチャンネルも全く同じ手順で行っています。また、波動構造を把握し、そこから現在の瞬間に作用しているチャネルの時間軸を把握します。
。
Yuriさん、こんにちは!ちょっと大事な用事があって、遅くなってすみませんでした。OK、順番に説明していこうと思います。特に、ハーストの指数の話をしていて、位置エネルギーの話はまだしていませんから。 一般的に、これから書くことは、チャンネル、PE、デッドゾーンなど、すでに何度も議論してきたことなので、少し混乱しています(一部の細かい点を除いて)。まあ、いいや、少なくとも学んだことを繰り返せば、思想家であるウラジスラフが正してくれるだろう。:о)もちろん、これは私の全モデルではありませんし、むしろ全モデルではありません。エリオット波動理論の断片、モデルの基礎 - ハースト指数、MSPの全体像、「フラクタル構造の波」および他の多くのもの、ならびにこれらの構成要素の間の接続がありません。私は、自分のモデルを説明するのではなく、PEとその利用を切り離して考えています。
チャンネルのポテンシャルエネルギー(PE)
まず、PEのグラフそのものから説明します。現在のデータから(言い換えれば、ある特定の瞬間のゼロから)、例えば(H+L)/2の数のN本のバー(またはサンプル)の価格のサンプルを取得します。この価格サンプルはEPの算出のための入力となります。履歴を+1刻みにすると、そのような反復のたびに、サンプルの長さがnからNに制限されることになる。この場合、0からNに進んでも、Nから0に進んでも構わない。このようなチャネルごとに、PEが計算される。その結果、1つのチャンネルに1つのポテンシャルエネルギーが割り当てられる。このことを雄弁に物語るのが図である(高いアートワークに注意 :o) n=5 先に書いたように、デッドゾーン境界以下の長さのチャンネルは考慮されていないが、PIを計算する際には残りのチャンネルがこの部分を含むことに注意する必要がある。Hurst指数についても同様のセグメントがあり、非常に小さなサンプルに対する計算は先験的に大きな誤差を含みうるので、それについては計算が行われない。私のモデルでは、この区間の長さは設定されておらず、現在のデータム付近の価格系列の分析に基づいて選択される。そして、これはn=8の場合のバリエーションです。次の反復では、8つのサンプルからなる価格サンプルが得られ、それに対して1つのPE値が計算されます。得られたPE関数には極値があり、各極値はある長さのチャンネルに対応する。PEを計算する方法の特殊性を考えると、ローカルミニマム(つまり、最小の極値だけではない)に対応するチャネルが特に興味深い。これらの値、長さNのウィンドウに対する位置、および追加的なチャネル特性との組み合わせにより、ネスト階層が形成される。候補者の中からポテンシャルの高い上位(親)チャンネルを特定する。これは必ずしも長いチャンネルではありません。ここでは、より大きな「可能性」という概念を、MSPに従って解釈しています。ポテンシャルエネルギーが最小であることと相まって、最も安定したチャンネルと言えるでしょう。サステナビリティについて少し。一般に、この概念はかなり弾力的で、私たちの場合は確率的な性質も持っています。例えば、物理の教科書のページで、自転車が走っている。平衡状態にあり、自分の存在の理想的な条件を考慮すると、彼は永遠に乗ることができる。街中では、それほど完璧ではありません。例えば、あるサイクリストが、あと10分も走れば平衡状態になるのに、1セントも賭けないという人がいた。確かに、それは私でした。:о)))Hearst指標の持続性推定も同様で、確率的な性質を持っている。 計算されたグラフや追加された特性は、システム存在の初期条件と考えるべきで、当然ながら変化するものである。わかりやすくするために、チャンネルの「ポテンシャル」を「エネルギー」に置き換えることにする。このチャンネルは永遠に存在し続けるのでしょうか?もちろんそんなことはない。いつかはエネルギーを失い、存在しなくなるのだから。どこに使うのか?私の謙虚な意見 - それは他のチャンネルにそれを与えるでしょう。あるいは、哲学的に言えば、他のチャンネルに奪われる。また、チャンネルからのエネルギーの漏れをどのように追跡するのでしょうか?...何言ってたっけ、あ、そうだ、ごめん、気が散ってた。これ以上は言いません。ランダム」なゼロバーから計算する例を挙げてみよう。"ランダム "とは、グラフ上の典型的な、私が思うに難しい領域のひとつを非ランダムに選択したことに起因します。これは後ほど明らかになります。そこで、電流値を固定し、N=130の時のPEを計算すると、デッドゾーンは30と仮定される。その結果、130-30=100のチャンネルができ、それぞれのチャンネルについて、PEの値を計算します。(H+L)/2の価格系列を重ね合わせた、そんなチャートを入手しました。 このチャートには、PI値が最小となる4つのチャンネルが含まれています。さらに、チャンネルはそのカウント数で識別される(チャンネル長は130-(局所極値のカウント数)で計算される)。25 counts 51 counts 88 counts 117 counts その結果、100チャンネルのSystemから、4チャンネルのSystemになる。
25 count PE トップレベルのチャンネル(Parent)です。下位チャンネル
51 PE数
なかなか不思議なチャンネルです。同じように強力なようですが、チャンネルが散らばっているのがわかりますね。つまり、2つのチャンネルがエネルギーを奪い合うことになる。一方はエネルギーを一方的に運び、もう一方はエネルギーをもう一方的に運ぶ。転送の方向は、一般的にはあまり変わりません。誰が誰からエネルギーを奪うのだろう。
88 PE count
117 PE count ポテンシャルエネルギーの値が他と比較して最も小さいチャネルです。 では、これらのチャンネルをどうすればいいのか。もちろん、反転ゾーンを探します。そのためには、良いモデルが必要です。このフォーラムで議論されている最も簡単な方法の1つは、低次のチャンネル同士や親チャンネルとの交差を探すことです。どの交差点を探せばいいのかがわかればいいのです。それに、水路の境界の選択も重要です。結局、各チャンネルは、中心線(通常は
線形回帰)、下限線、上限線の3本の線で表現される。2つのチャンネルの交点は、9つのポイントを形成しています。すべてのチャンネルとの交点を探せば、それなりの数字が出る。 リバーサルゾーンの構築に関する面倒な話は省略し、直接結果に進みたいと思います。まず、これは私の方法で計算した特定のPEにのみ適用されます。計算されたPE関数は、あくまでもSystemの初期条件(この場合、Systemは100ではなく4チャンネル)であることだけは注意しておきます。 チャンネルのピボットゾーンは次のようになりました。参加者 事実を見てみましょう。このセクションの予測は難しいかもしれないが、安定したチャンネルがエネルギーを失い始め、それを受け継ぐ新しいチャンネルがまだ明確に形成されていない点が異なる。その中間のような、発展途上のものです。
ダイナミックモデル
ダイナミックモデルを構築するためには、グラフが単純な条件、つまり計算値がサンプル長に依存しないことを満たす必要があります。これは、固定されたカレントデ ータムからの大きなサンプルには、より小さな推定サンプルの値が含まれるものと理解されたい。例: N=5 Counts: 0 1 2 3 4 Values:3 4 2 2 7 N=10 Counts: 0 1 2 3 4 5 6 7 8 9 Values:3 4 2 7 5 1 2 2 1 実際には次のようになります。 一般的には特別なことではありませんが、ダイナミックモデルだけに非常に重要な特性なので、この点を強調しました。 さて、ダイナミックモデルそのものについてです。1時間足チャートを例にとって見てみましょう。ある取引日の16:00だとする。自分はどうしたいのか?大まかには、上記で簡単に説明した動作を行います。16:00に対応するゼロバーから、N本のヒストリカルバーの長さ(カウント数)でEPチャートをプロットする。図はこの事実を示している。 さて、1時間前、つまり15:00に何をしていたかを思い出してみよう。ビールを飲まなければ、同じようにPEチャートをプロットしたに違いない。16:00と15:00の価格系列入力サンプルは、最も極端な2つの値だけが互いに異なることになります。そして、これは間違いなくPEチャートに取るに足らない影響を与えるはずだ。でも、どうやって?上記の現在の例(EPチャートは16:00に計算されたとする)を1時間前、つまり15:00にプロットしてみましょう。 。局所極値の数は変わりませんが、わずかな変化、つまりウィンドウに対する内部移動があることが分かります。実は、私は何を期待していたのでしょうか?局所極値も長さNの窓(窓は固定値と覚えておく)に対する位置が変わり、エネルギー準位も変化するが、曲線の形状は実質的に変化しない。16:00にPE区画の親チャンネルのカウントが24(チャンネル長106)になりました。15:00(これも親チャンネルのまま)では、読み取り値は22で、チャンネル長108に相当する。また、チャンネルレベルの再配置が行われなかったことも特筆すべき点である。主水路は長さと安定性を失う。 ある時、窓を「凍らせる」ように、窓越しにその過程を見ながら、さらにストーリーを探ってみたらどうだろうと思ったのです。 あとは、N時間分のすべてのグラフを組み合わせる(これだけが構成ではないが)だけである(もちろん、ここでは時間は重要ではなく、分、時間、日などでもよい)。を得ることができます。動的解析のための生データ(マトリックス)を簡単に取得することができます。これはあくまでローカルミニマムのダイナミクスを解析するためのごく最初のステップであり、一般的にはここからさらに多くの追加情報を得ることができると考えられている。そして、このシンプルなアプリケーションでも、多くの有用な情報を得ることができます。チャンネルが再配置され、その構造や階層が変化する様子を見ることができます。例えば、2つのチャンネルを1つに統合したり、逆にいくつかに分割したりする方法です。そして、前回の記事でそのような基準の一つをお話しました。この例のマトリックスです(美しいだけでなく、認知的でもあり、主なものは意識を拡大することです :)PS:ユーリ、この投稿に芸術的、視覚的な言葉の力をすべて込めて。もっとわかりやすくなるといいなと思います。ここで、私は唯一の要求は、再びそれが明確にされない場合は、すべてが明確であることを書く、そうでなければ、あなたは私の中で劣等感を開発し、私は高価なbrainiacに費やす必要があります。冗談だよ!!!:о))))すみません、写真が少し大きくなってしまいました。
これで、PEが機能ではなく、ダイナミックピクチャーがどのように構築され、チャンネルがどのように定義され、それらがPEとどのような関係があるのかが明確になりました。
PE の計算方法だけが抜けていますが、これは正しいです。そうでなければ、モデルのいくつかの側面についての議論が、初歩的な出版物になってしまうところでした。そして、そのような目標には、価値がないことを望みます。
ですから、このような多成分、数学的に豊かなシステムが、どのような結果をもたらすのかが気になります。
グリッドは、チャンネルからチャンネルへのエネルギーの「流れ」を考慮しなければならない。そして、チャンネルごとに個別に反転ゾーンを定義する。その後、放物線近似を行い、波動関数を用いて関数グラフ(価格グラフ)を合成しています。エッジ効果による強い歪みの問題は未解決のままです。今、取り組んでいるのは、いくつかのアイデアです。 結果は、まだ印象的ではありません。計算時間は5分です。グリッドを鍛える のに24時間かかるんです。
追伸:あなたのシステムとの偶然の一致は、カジュアルに考えてください。あなたのシステムが見ていないように私はコピーすることはできませんので、:)。
あなたのシステムを見てないので、 コピーできません。Cagi paternasで時間を浪費することはない。イミフ!