初心者の方からの質問 MQL5 MT5 MetaTrader 5 - ページ 1109 1...110211031104110511061107110811091110111111121113111411151116...1503 新しいコメント Artyom Trishkin 2019.08.06 17:50 #11081 Vitaly Muzichenko: そうすると、端数が出ないんです。 そういうものが必要なんでしょうね。 typename(TralingStop)=="double" ?・・・。 Vitaly Muzichenko 2019.08.06 18:25 #11082 Artyom Trishkin: typename(TralingStop)=="double" ? 正確には、入力パラメーターに「input」と入力した場合、例えば15や15.0であれば、入力 フィールドに15だけ、つまり整数を表示するのです。入力パラメーターに12.3と入力した場合、入力フィールドに12.3と表示する Artyom Trishkin 2019.08.06 18:34 #11083 Vitaly Muzichenko: 正確には、入力パラメーターに「input」と入力した場合、例えば15や15.0であれば、入力 フィールドに15だけ、つまり整数を表示するのです。入力パラメーターに12.3と入力した場合は、入力フィールドに12.3と表示します。 それなら、どんな数でも小数点以下の桁数を決めればいいということになりますね。どこかでこんな話題がありましたね〜。 Vitaly Muzichenko 2019.08.06 18:36 #11084 Artyom Trishkin: それなら、どんな数でも小数点以下が何桁かを決めることです。どこかでこんな話題がありましたね〜。 あったと思うのですが、見つからなかったのでここに書きました( Igor Makanu 2019.08.06 18:42 #11085 Vitaly Muzichenko: 正確には、入力パラメーターに「input」と入力した場合、例えば15や15.0であれば、入力 フィールドに15だけ、つまり整数を表示するのです。入力パラメーターに12.3と入力した場合は、入力フィールドに12.3と表示されるはずです。 このようなスクリプトで実験してみましょう。 #property script_show_inputs input double inp1 = 15.0; input double inp2 = 12.3; //+------------------------------------------------------------------+ void OnStart() { int dig1 = GetDigitsInDouble(inp1); int dig2 = GetDigitsInDouble(inp2); printf("inp1 = %f --> %s",inp1,DoubleToString(inp1,dig1)); printf("inp2 = %f --> %s",inp2,DoubleToString(inp2,dig2)); } //_______________________________________________________________________ int GetDigitsInDouble(double doublevalue) { long l=long(doublevalue/0.0000001);int result=0,i=10000000; while(result<7 && l%i>0) {i/=10; result++;}return result; } 2019.08.06 22:40:44.668 tst1 (EURUSD,H1) inp1 = 15.000000 --> 15 2019.08.06 22:40:44.668 tst1 (EURUSD,H1) inp2 = 12.300000 --> 12.3 小数点以下7桁がおかしくなることがあるようです。 Artyom Trishkin 2019.08.06 18:44 #11086 Vitaly Muzichenko: だったようなのですが、見つからなかったのでここに書きました( Получаем количество десятичных знаков после запятой любых чисел (не только котировок) в обход Digits() на MQL4 и MQL5 2018.11.03www.mql5.com Думаю не у одного меня была редкая ситуация когда нужно было получить количество десятичных знаков после запятой, а функция Digits() работает тольк... Vitaly Muzichenko 2019.08.06 18:50 #11087 Igor Makanu: は、このようなスクリプトで実験してみましょう。 2019.08.06 22:40:44.668 tst1 (EURUSD,H1) inp1 = 15.000000 --> 15 2019.08.06 22:40:44.668 tst1 (EURUSD,H1) inp2 = 12.300000 --> 12.3 小数点以下7桁目が間違っていることがあると思います。 アルチョム・トリシキン 皆さん、ありがとうございます!やってみます。 yiduwi 2019.08.06 19:18 #11088 他のMT5端末のEAから読み取れるように、オープンポジションの 情報(ロット、タイプ)を記録するにはどうすればよいですか? xxz 2019.08.07 03:32 #11089 もし、リモートエージェントに最適化が あり、EAがデータをファイルに書き込んだ場合、私のローカルエージェントだけがテスターフォルダにあり、リモートエージェントはないので、私はこのデータを取得できないことを理解しているのですが、この質問について説明してもらえますか? もしそうなら、リモートエージェントからファイルを取得する可能性を実装する方法はないでしょうか? Alexey Viktorov 2019.08.07 06:35 #11090 Vitaly Muzichenko: あったと思うのですが、見つからなかったので、こちらに投稿しました( ドキュメントにはそのように記載されています。フィールドや入力変数に小数点 以下が何桁あっても構わない。 Документация по MQL5: Математические функции / MathMod www.mql5.com Функция MathMod рассчитывает вещественный остаток f от val / y таким образом, что val = i * y + f , где i является целым числом, f имеет тот же знак, что и val, и абсолютное значение f меньше, чем абсолютное значение y. 1...110211031104110511061107110811091110111111121113111411151116...1503 新しいコメント 理由: キャンセル 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
そうすると、端数が出ないんです。
そういうものが必要なんでしょうね。
typename(TralingStop)=="double" ?・・・。
typename(TralingStop)=="double" ?
正確には、入力パラメーターに「input」と入力した場合、例えば15や15.0であれば、入力 フィールドに15だけ、つまり整数を表示するのです。入力パラメーターに12.3と入力した場合、入力フィールドに12.3と表示する
正確には、入力パラメーターに「input」と入力した場合、例えば15や15.0であれば、入力 フィールドに15だけ、つまり整数を表示するのです。入力パラメーターに12.3と入力した場合は、入力フィールドに12.3と表示します。
それなら、どんな数でも小数点以下の桁数を決めればいいということになりますね。どこかでこんな話題がありましたね〜。
それなら、どんな数でも小数点以下が何桁かを決めることです。どこかでこんな話題がありましたね〜。
あったと思うのですが、見つからなかったのでここに書きました(
正確には、入力パラメーターに「input」と入力した場合、例えば15や15.0であれば、入力 フィールドに15だけ、つまり整数を表示するのです。入力パラメーターに12.3と入力した場合は、入力フィールドに12.3と表示されるはずです。
このようなスクリプトで実験してみましょう。
2019.08.06 22:40:44.668 tst1 (EURUSD,H1) inp1 = 15.000000 --> 15
2019.08.06 22:40:44.668 tst1 (EURUSD,H1) inp2 = 12.300000 --> 12.3
小数点以下7桁がおかしくなることがあるようです。
だったようなのですが、見つからなかったのでここに書きました(
は、このようなスクリプトで実験してみましょう。
2019.08.06 22:40:44.668 tst1 (EURUSD,H1) inp1 = 15.000000 --> 15
2019.08.06 22:40:44.668 tst1 (EURUSD,H1) inp2 = 12.300000 --> 12.3
小数点以下7桁目が間違っていることがあると思います。
皆さん、ありがとうございます!やってみます。
もしそうなら、リモートエージェントからファイルを取得する可能性を実装する方法はないでしょうか?
あったと思うのですが、見つからなかったので、こちらに投稿しました(
ドキュメントにはそのように記載されています。フィールドや入力変数に小数点 以下が何桁あっても構わない。