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

 
重要なポイントとして、オブジェクトは作成されたり描画されたりしないのですか?未描画のオブジェクトのプロパティは読み取れるのか?
 
矢印を描いても走行時間が変わらないという新しい驚きがあり、面白いですね。
時間は4分余り、実は変わっていないのです。

2006.07.08 19:35:45 HistoryChannells EURUSD,M30: deinitialized<br / translate="no"> 2006.07.08 19:35:45 HistoryChannells EURUSD,M30: Running deinit()
2006.07.08 19:35:45 HistoryChannells EURUSD,M30: 最適化アルゴリズム時間 261281 ms
2006.07.08 19:31:24 HistoryChannells EURUSD,M30:初期化されました。
2006.07.08 19:31:19 HistoryChannells EURUSD,M30: ロードに成功しました。
2006.07.08 19:31:11 'HistoryChannells'をコンパイルしています。
 
重要なポイントとして、オブジェクトは作成されたり描画されたりしないのですか?塗られていないオブジェクトのプロパティは読み取れるのか?<br /> translate="no">。


オブジェクトが作成される - 具体的に確認したところ、「見えない」矢印のプロパティまで確認できました。以下はそのコードです。
     centerLR=BestChannels[0][2]*(lastBar-1)+BestChannels[0][3]; ObjectCreate("up "+UpArrowCounter,OBJ_ARROW,0,Time[lastBar-1],centerLR+BestChannels[0][5]);
      ObjectSet("up "+UpArrowCounter,OBJPROP_ARROWCODE,158); ObjectSet("up "+UpArrowCounter,OBJPROP_COLOR,Red);
      ObjectCreate("down "+DownArrowCounter,OBJ_ARROW,0,Time[lastBar-1],centerLR-BestChannels[0][5]); ObjectSet("down", OBJ_ARROW)+DownArrowCounter,OBJPROP_ARROWCODE,158); ObjectSet("down "+DownArrowCounter,OBJPROP_COLOR,Red); UpArrowCounter++; DownArrowCounter++;



が、その図面がこちら。

 
うーん...私のせいだと判明しました、明日確認してみます。今日はこの辺で。
 
はい、このコードで確認もしました。
 for (i=0; i<50000;i++) { obj_name = i; ObjectCreate(obj_name,OBJ_TREND,0,Time[0],i,Time[1],i); ObjectSet(obj_name, OBJPROP_STYLE, DRAW_NONE).ObjectCreate(obj_name, OBJPROP_STYLE, DRAW_NONE).ObjectSet(obj_name, OBJPROP_STYLE, DRAW_NONE);
    j = ObjectGet(obj_name, OBJPROP_PRICE1); Print(j); } for (i=0; i<50000;i++) { obj_name = i; ObjectDelete(obj_name); } 。


 
<br /> translate="no">。
写真はラテン文字のみで、できれば*.png形式にしてください(gifはこのフォーラムではリンクで表示されません)。


それはすべてそうです、私はエディタウィンドウで言うと、それは正常に表示され、私はメッセージを追加または変更する内容に応じて、追加または保存ボタンを押すとすぐに、それも私が入力したことを消えます:()。
 
でも、とにかく、今のところ、私はユダヤ人であることを示したかっただけなのですが、たぶん、それは関係ないでしょう。
 
ここで新しい驚きがあります。矢印を描いてもランタイムが変わらないのは面白いですね。

ここで取り上げたアルゴリズムの実行方法によって、実行時間が0msになったり16msになったりするのですが、この効果があります。アルゴリズムが連続的に実行される場合もあれば、中断して全終端サイクルを実行する場合もあると思います(数値が安定的に繰り返されるため)。例えて言うなら......計算が終わった後に抽選はできないのでしょうか?
 
Vladislav 02.06.06 11:26 <br / translate="no"> 実際の実装というか、基礎となる方法としては、すべてが非常にシンプルです。2次関数には最適な方法で選ぶ必要のある係数があり、回帰によってその構造を線形でより正確に推定することができます。そして、それに応じて、この係数がTaylor展開(2次形式の構築)においてどのような限界(振幅の広がり)まで使用できるかを推定することができるようになるのです。さらに、他の係数については、自分で考えてみてください。そして、位置エネルギーの最小値を求めるには、価格の軌道を知る必要はなく、より重要なのは位置勾配を知ることである ;) 。つまり、そのゼロポテンシャルの動的状態です。ゼロポテンシャルには、何かをカウントしなければなりません。そして、これらすべてが推定に十分である。直接の微分は必要ない。
比喩的に言うなら、幾何学的なイメージを応用した「指の上」。
を転がすボールがあると想像してください(これが価格です)。ボールの軌道の引力箇所を決定するために、ボールの複雑な構造を知る必要はありません。この「荒れた地形」の特性を知っておくことは、より有用なことです。

ウラジスラフ 14.06.06 21:06
全くその通りで、実は、ポテンシャルエネルギー汎関数の最小値がチャンネル選択の基準の1つになっていることを書きました。そして、それは価格場のポテンシャルの特性であり、一方、(やはり)信頼区間内に収まる軌跡はすべて所定の確率で等価とみなさなければならないため、私は軌跡そのものを求めてはいないのです。つまり、投影法の構築は、まず標本選択、次に線形代数に帰着する。

33ページに書いたアイデアの続きですが、もう一つ、条件を満たした連続したチャンネルの中から、ポテンシャルエネルギーが最小のチャンネルを見つけるというアイデアがあります。線形回帰路を構築することで何が得られるか?国境によって制限された地域があり、その中で価格は思い通りに動きます。価格がそのチャネル内にとどまるという条件だけが満たされている。さらにウラジスラフ氏は、「信頼区間内に入る軌道は、与えられた確率に対してすべて等しいと考えなければならない」と述べた。そして、価格が移動中に二次関数で動く可能性があると仮定する--つまり、上記の記述に違反しないようにするのだ。特にこの発言は、価格分野が潜在的なものであるという前提で進められているので。つまり、任意の瞬間(任意のサンプル)に対して、近似的な放物線を構築し、このサンプルに基づいて、価格はこのような軌跡を描き、その周りで動いたと言うことができるのです。比喩的に言えば、このような放物線状に傾斜したトラフであり、表面に複数の不均質を持つボールである。さて、ゼロ点ポテンシャルの動的な状態として、何をとることができるでしょうか。ボールは水路の始まりから終わりまで、我々の条件付き斜めの放物線状の谷に沿って転がるので、この谷に対する位置エネルギーの最小値はもちろんこの谷の軌道上の現在時刻にあり、結果として現在時刻にはボールを放物線の谷の軌道に移そうとする力(位置勾配)がボールに働く(価格)ことになります。さて、この勾配の大きさと方向はどのように求めるのでしょうか。方法はとても簡単で、ISCの方法で放物線を求め、現在の価格とこの放物線との差(ポテンシャルの最小値)を求めます。もちろん、この差はプラスにもマイナスにもなります。さらに、選択された線形回帰チャネルは予測のための「真の」チャネルでなければならないという事実により、サンプルは既知の収束条件(RMS<SCO2/3)および収束を確認するその他の条件の両方を備えている必要があります。ウラジスラフが位置エネルギー関数の最小化に言及したことで、そのためには、ボールが転がる放物線状の近似谷を作る流路で、位置勾配の合計ができるだけ小さくなければならない、これが私たちの荒れた地形を最もよく表している、と考えるようになりました。もちろん、私はこの仮定を実際に試してみましたので、その結果をこちらのリンクでご紹介します。https://c.mql5.com/mql4/forum/2006/07/min_poten_energy.zip

これらのチャートから何が見えるか?現在、私がExpert Advisorで使用している、系列の最小RMSの方法を用いて描かれた線形回帰のチャンネルを見ることができます。別のグラフに、今回のサンプルで作成した放物線に対するボールポテンシャルの勾配の代数的(符号(±)を考慮した勾配の総和を行う)なグラフを描きます。理解を容易にするため、ここでは、線形回帰チャネルを近似する代わりに、放物線(2次関数)がとられ、また、潜在的な勾配が探索される計算棒を含む現在のすべてのサンプルに対して放物線そのものが構築される点で、Hurst係数の決定に使用したものと全く同じアプローチであると言えるでしょう。念のため、Hurst係数を求めるために、現在のバーを含まないサンプルを採取したことを思い出してください。
青い縦線は、このバーから始まるチャネルのポテンシャル勾配の代数和の局所最小値を示している。EURUSDとUSDCHFのチャートを注意深く見ると、ローカルな安値が価格のローカルな最大/最小値と正確に(±1バー)同じであることがわかるでしょう。1気圧の誤差は、試料調製の特殊性に起因すると考えています。サンプルとして(O+H+L+C)/4本の棒グラフの値を選びました。おそらくこの場合、HighかLowのどちらかを選択することで、ポテンシャルエネルギーが最小のチャンネルを決定する誤差を確実になくすことができるだろう。そして、このシリーズのチャンネルは、先ほどVladislavがUSDCHFについて示した図に示されたものと正確に一致することになるのです。さて、この仮定を私のEAに実装してみます。Vladislavが使用し、共有したチャンネル選択の方法に本当に近いと思います。

追記:グラフはgradientsモジュールの 代数和を表示しています(わかりやすくするため)。現在のバーでのグラディエントポテンシャルを計算するには、チャンネルの始まりから現在のバーまで、計算されたバー自身を含むサンプルの放物線を構築します。例えば、100本のバーを選択した場合、97本の放物線を計算する必要があります。ANC法で放物線を作るには、少なくとも4つのサンプルが必要だからです(今日、実験的にこのことが分かりました ;o))。したがって、最初の3本の小節のポテンシャルの勾配は、単純にゼロに等しいとします。パラボラの計算は線形回帰路の計算に比べて数倍時間がかかるので、ここでは計算アルゴリズムの最適化を自由に行うことができると思います;o)))
 
А вот и новый сюрприз - рисование стрелочек не меняет времени прогона, это интересно.

ここで取り上げたアルゴリズムの実行方法によって、実行時間が0msになったり16msになったりするのですが、この効果があります。アルゴリズムが連続的に実行される場合と、中断して全終端サイクルが実行される場合があると思います(数字が定常的に繰り返されるため)。例えて言うなら......計算が終わった後に抽選はできないのでしょうか?



MQL4, MQL2, EasyLanguage, Wealth-Lab 3.0 and VC++: Speed Comparison"- Renatは次のように書いています。


レナート 14.01.05 14:18

単純に、GetTickCount()の動作が不十分なことに何度も直面したのですが、多くの測定結果が安定して±αであれば、テストの忠実度が確認できます。


確かにGetTickCount()の精度は10msから16msに跳ね上がり、これでは小周期の計測はできませんが、我々の場合はその使用は合理的だと思います。特に、ほとんどすべてのコードから簡単にアクセスできるようになりました。