エラー、バグ、質問 - ページ 266

 
mql5:

ループ処理の問題は、変数の変化の仕方にあるのではなく(もちろんゼロに変化させない限り)、その変数の値をチェックすることにあり、決してゼロより小さくなることはないのです。

意味がわからないんですけど。この問題を回避するには、例えば、ループを抜けるための条件を追加すればよいのです。

   uchar LastBarInd = 2;
   for (uchar i = LastBarInd; i >= 0; i--)
     {
      ................. // тело
      if (i == 0) break;
     }

とか、forではなくwhileで ループさせるとか・・・。

 
AlexSTAL:

何を言いたいのか理解できない。

つまり、コンパイラはコンパイル時に単純な静的比較を捕らえることはできても、実行時の制御に対しては無力なのだ、ということである。
 
AlexSTAL:

何を言いたいのか理解できない。この問題を回避するには、例えば、ループを抜けるための条件を追加するだけでよいのです。

あるいは、forではなくwhileで ループさせるか・・・。


しかし、for条件の「i>=0」チェックを「true」に置き換えても、コンパイラはそのことを教えてくれます(警告として、次のビルドのいずれかにて)。
 
テストチャートのウィンドウには、MT4で表示されていたようなTP、SL、保留中の注文が 表示されません。MT5で追加することは可能ですか?
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров - Документация по MQL5
 

数値は四捨五入されていません。私のやり方が悪いのかもしれませんが、アドバイスお願いします。

以下はそのコードです。

   for(int e=1; e<=NSignalBuy; e++)
     {
   Print("OkruglyaemDo2[",e,"]=",NormalizeDouble(OkruglyaemDo2[e],2));
     }

これが結果です。

2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[19]=9.220000000000001
2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[18]=6.29
2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[17]=3.94
2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[16]=7.54
2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[15]=7.86
2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[14]=13.71
2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[13]=7.13
2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[12]=8.3800000000001
2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[11]=3.71
2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[10]=5.52
2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[9]=9.61999999 9999
 
Jager:

数値は四捨五入されていません。私のやり方が悪いのかもしれませんが、アドバイスお願いします。

以下はそのコードです。


その結果がこちらです。

2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[19]=9.220000000000001
2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[18]=6.29
2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[17]=3.94
2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[16]=7.54
2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[15]=7.86
2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[14]=13.71
2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[13]=7.13
2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[12]=8.3800000000001
2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[11]=3.71
2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[10]=5.52
2011.01.18 16:25:55 Core 1 2010.10.30 23:59:50 OkruglyaemDo2[9]=9.61999999 9999

1)読み: https://www.mql5.com/ru/docs/basis/types/doublehttps://www.mql5.com/ru/articles/1561

2) 印刷時に特に丸めたい場合:DoubleToString

Документация по MQL5: Основы языка / Типы данных / Вещественные типы (double, float)
Документация по MQL5: Основы языка / Типы данных / Вещественные типы (double, float)
  • www.mql5.com
Основы языка / Типы данных / Вещественные типы (double, float) - Документация по MQL5
 

ありがとうございます、助かりました。

ここで、GBPUSDのシンボルによる利益と価格ポイントの丸めについて、もう一つの混乱があります。こんなはずじゃなかったのに......。


 

LiveUpdateシステムによる自動更新とは

動かし方

端末が更新できない

Win 7 - 32 terminal is started by command "D:\MetaTrader 5terminal.exe" /portable.

S.I.毎回再インストールする必要があるのでしょうか?

 

誤ってナビゲーターウィンドウからエキスパートファイルを削除してしまった。結果的に、同名の.mq5ファイルも削除されたことになります

これらのファイルを復元(発見)できるかどうか、アドバイスをお願いします。

似たようなトピックが見つからない。

 
Yedelkin:

誤ってナビゲーターウィンドウからエキスパートファイルを削除してしまった。結果的に、同名の.mq5ファイルも削除されたことになります

これらのファイルを復元(発見)できるかどうか、アドバイスをお願いします。

似たようなテーマが見つからない。

Windowsのゴミ箱に入っています(オフになっていない場合)。