mql4言語の特徴、微妙なニュアンスとテクニック - ページ 18

 
Dmitry Rannev:

この問題は、fxsaberさんが上記のように説明されています。原因を探っているところです。

このように、正しく動作します。

NormalizeDouble(Price1 - Price2, _Digits) != 0.0;
 
Alexey Viktorov:

このように、正しく動作します。

これは、2倍速の比較という問題を解決しようとしているのではありません。タスクが違うのです。

 
Dmitry Rannev:

この問題は、fxsaberさんが上記のように説明されています。原因を探っているところです。

Printfを使用せず、printfを 使用し、希望する数値の精度を指定することを付け加えます。

 
Ilya Malev:

それから、fxsaberが正しく答えました - 私はprintfを使用しない、printfを使用して、数値の希望の精度を指定することを追加します 出力 { printf("Open: %.6f, Close: %.6f", OrderOpenPrice(), OrderClosePrice(); }.

具体的に何が問題なのかを理解したいのであれば、fxsaberさんにEAを普通に書けない原因を聞いてみてください。ブローカーソフトの開発者側から、問題が少なくなるように工夫しているのです。EAの書き込みに 問題があるのではなく、サーバーのトラックレコードにデータを保存することでfxsaberがEAを書き込めなくなる問題を探しているのです。

 
fxsaberがEAをまともに書けなくなったという話は聞いていませんが、気にしないでください、気にしないでください :)私のコメントがテーマから外れていたら、失礼しました。
 
Dmitry Rannev:

...しかし、トレーダーのサーバーレコードにデータを保存する際に、fxsaberがEAを書くことを妨げる。

ああ、それだ・・・と、何が彼を止めているのかが解らない。
 
Alexey Navoykov:
あ、あったあった・・・しかも、何が原因で止まっているのかがわからない。

そこから 始まったのです。そして、このように進化した

トレーディング、自動売買システム、ストラテジーテストに関するフォーラム

MT4で正規化されていない価格

fxsaber, 2019.02.20 23:03

しかし、状況はもっと悪く、MQ-Demoで同時に
// 15326434
// wmefo5sa
// MetaQuotes-Demo
void OnStart()
{
  const double Price1 = HistoryOrderSelect(356138100) ? HistoryOrderGetDouble(HistoryOrderGetTicket(0), ORDER_PRICE_CURRENT) : 0;
  const double Price2 = PositionSelectByTicket(356138100) ? PositionGetDouble(POSITION_PRICE_OPEN) : 0;  
  
  Print(Price1 - Price2); // -2.220446049250313e-16
}


現在のポジションの 始値が、その注文・取引の価格と一致しない。

 
fxsaber:
多次元配列 に対するArrayResizeの機能

なぜなら、ArrayRange() では、必要な次元の要素数を取得する必要があり、どうせ 1 次元しかリサイズできないので、mql5 を使用する方が論理的だからです。

 

トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム

バグ、バグ、質問

アンドレイ・ハチムリアンスキー, 2019.03.12 22:57

TerminalInfoInteger(TERMINAL_TRADE_ALLOWED)(自動売買ボタン)がテスト済みの EA(MT4)に影響しないかな?

1170では、テスターでの取引を制御することができるボタンで、直接、影響を与えます。ショックです。

トレーディング、自動売買システム、ストラテジーテストに関するフォーラム

バグ、バグ、質問

ウラジミール・パストゥシャク, 2019.03.13 19:12

コードに以下のようなものが含まれている場合

if(!TerminalInfoInteger (TERMINAL_TRADE_ALLOWED))
return;

ボタンが動作する。

そのようなコマンドがない場合、ボタンは機能しません。

トレーディング、自動売買システム、ストラテジーテストに関するフォーラム

バグ、バグ、質問

ウラジスラフ・アンドルシェンコ, 2019.03.13 19:14


2年ほど前に書いたことがある。


まさにその通りです。そのため、ストラテジーテスターで ボタンのチェックを無効にしています。





 

チャート上で動作しているインジケータのバッファ値を取得できることが判明(WinAPIを1回だけ使用)。

DLLを使用しない場合 - ほぼ自動で動作します。

理由: