MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 1857

 
Порт-моне тв 開始 価格を取得するにはどうすればよいでしょうか。

は、すべてを収集(または記憶/把握)し、オープン時間ごとにソートします。それはそれとして、オープン時間は変わりません :-)

EAロジックに複数のオーダー(グリッドなど)がある場合は、それらをすべて記憶しておく必要があります。あるいは、くしゃみのたびに全部を思い出そうとすると、スピードが落ちてしまう。

 
Mykhailo Turovskyi #:
履歴の利益が青丸で囲まれている場合、手数料やスワップは含まれているか教えてください。
いいえ。
 
Порт-моне тв 始 値を取得するにはどうしたらよいでしょうか。

関数OrderSelect()で選択される注文の時刻と価格が取得されます。

 
Mihail Matkovskij #:

私の知る限り、ドキュメントにはこの件についての記載はありません。だから、安全策を講じたほうがいいんです。事態を悪化させることはないだろう。

この手順でCPU時間がかかるという苦情がありました。

Mihail Matkovskij#:

SLとTPに関しては、計算されています。従って 桁数に応じて正規化 する必要が あります

ここで、いずれにせよ、作者の意図を探る必要がある。

 
Andrey Sokolov #:

この手順でCPU時間がかかるという苦情がありました。

算出されたSLとTAの正規化には、2倍の時間がかかる。しかし、最適化にはそれほど影響がなく、ロボットテストにはさらに影響がないと言えるでしょう。

いずれにせよ、作者の考えを 探る必要がある。

ドキュメントには、計算されたレベルを正規化 するように白黒で書かれているのですそして、「作者の意図」とは何であろうか。SLとTPを正常化しないとは?ここは事実が明白なので、反論はしない!

 
Порт-моне тв 開始 価格を取得するにはどうすればよいでしょうか。

これが質問であれば、最初のチケットの取得、チケット !=first を持つ最初とそれ以降のものを選択します。

 
Mihail Matkovskij #:

計算されたSLとTAを正規化するのに2倍の時間がかかる。しかし、最適化にはそれほど影響がなく、ロボットテストにはさらに影響がないとは言えません。

このフォーラムでも、この手順の簡略化について質問されています。

正規化されていない受信価格がエラーになったケースは知らない。

参考までに。

Mihail Matkovskij(ミハイル・マトコフスキー#:

そして、この場合の作者の「意図」は何であろうか。SLとTPを正常化するためではないこと?事実は明白なのだから、反論するつもりはない!

余談ですが、四捨五入もありかもしれません。理論的にはこのようなことは行われませんが、SLとTPで価格が正しく なる場合に備えて、少ない桁に丸める場合には、この方法が有効です。だから、いずれにしても意図するところを見極めなければならない。

 
Urman Ru フラクタルデータを取得 する。最高値と最低値、ただし標準ではなく、左側にi-2、右側に0とし、結果を上書きしないようにする。

自分で解決しようと、このインジケータのコードに ざっくりと追加してみたのですが、うまくいきません。コンパイルしてエラーも出ないが。

iCustomとハンドルインジケータを使えば いいのでは

問題を特定した上で、具体的に何ができないのかを詳しく説明するようにすれば、答えを得られる確率はぐっと高くなります。

 
Mihail Matkovskij #:

計算されたSLとTAを正規化するのに2倍の時間がかかる。しかし、最適化、ましてやロボットテストにそれほど大きな影響を与えるとは言えません。

そればかりか、次のような簡単なチェックを怠っている人もいます。

if (name == NULL)
  return;

CPUを大量に消費しそうな気がするのですが :)

しかし、実際にはObjectCreateやObjectDeleteのような関数がプロセッサ時間を消費しているのです。プログラマーが、例えばグラフィカルなオブジェクトの配列を持っていて、それがtickごとに削除・再作成される場合、何か対策を講じなければならない。単純なチェックや計算では時間が足りませんが。そのため、多くのプログラマーは見当違いの場所を探しているだけなのです。

 
Andrey Sokolov #:

このフォーラムでも、この手順の簡略化について質問されています。

誰に影響するのか、何に影響するのか、わからない。NormaizeDoubleで問題が起きたことはない。どちらかというと、どんなコードもアプリケーションのスピードに影響します。しかし、すべてが重要であれば、OnTickやOnCalculateのハンドラを空にしておいてもよいでしょう。この場合、あなたのアプリケーションは全く飛ばないことになります。:)あるいは、アセンブラ上で関数を書き換えてDLLにコンパイルし、アプリケーションに接続する。

受信価格と正規化されていない価格でエラーが発生したケースを知らない。

しかし、ドキュメントはそうなっているのですそして、ドキュメントに書かれているアドバイスを無視するのです。お好きなようにどうぞ。それはあなたのビジネスです。当たり前のことだと思うので、反論するつもりはありません!もう一度言います。

四捨五入は後回しでよい

四捨五入ではなく、小数点以下2桁以上をすべてカットしているのです。

NormalizeDouble((Ask1+StopLoss*Point1), 2)

作者の考えもわからない。でも、必要ないんです。自分で考えてくれると思います。