初心者の方からの質問 MQL5 MT5 MetaTrader 5 - ページ 535 1...528529530531532533534535536537538539540541542...1504 新しいコメント Mikhail Tkachev 2016.03.08 17:04 #5341 Karputov Vladimir:すぐに指定する必要があります :) .チャート上にバーがあれば、それはインジケーターバッファーの セルに対応しています。このセルに何かを書き込まない限り、ゴミは保存される。 MT4ではゴミにならないのに、このバーの下にインジケータが表示されないだけなのはなぜですか? Aleksey Vyazmikin 2016.03.08 19:58 #5342 Aleksey Lebedev:整数(int,long,datetimeなど)の割り算は、結果は整数、つまり余りは捨てられる。今日の00:00と昨日の23:59:59では、その差は1日分となります。まずそれはない。インジケーターで実験的に証明されている。次に、どうすれば1が得られるのか。もともと秒単位で計算していることを前提に、数学的に示してください。 Aleksey Vyazmikin 2016.03.09 12:35 #5343 Alexey Kozitsyn: 単純な型のゼロ化と全く同じ方法です。必須フィールドに0を代入 した後は、StructToTime()の逆操作を行います。ゼロにした。MqlDateTime str1; datetime Open_timePos=iTime(_Symbol,0,pos); TimeToStruct(Open_timePos,str1); str1.hour=0; str1.min=0; str1.sec=0; datetime start_time=StructToTime(str1); Print("день=",TimeToStr(start_time)); すべてうまくいきました。ありがとうございました Aleksey Lebedev 2016.03.09 15:03 #5344 Aleksey Lebedev: При делении целых чисел(int,long,datetime и т.п.) результат целое число, т.е. остаток отбрасывается. 00:00 сегодня и 23:59:59 вчера, разность будет равна 1дню.-Aleks- です。まずそれは-指標で実験的に証明されたものではありません。基本に忠実な議論をしてはいけない)。-Aleks- です。次に、どうやって1を得るのか。最初に秒単位の計算があるとして、数学的に示してください。datetime today=D'2016.03.09 00:00:00'; datetime yesterday=D'2016.03.08 23:59:59'; Print("today=",86400*(today/86400)," value=",int(today)); Print("yesterday=",86400*(yesterday/86400)," value=",int(yesterday)); Print("разница в днях = ",int(today/86400-yesterday/86400));コンバージョンススルー構造の方が分かりやすい場合は、そちらを使用する。 Aleksey Vyazmikin 2016.03.09 15:14 #5345 Aleksey Lebedev:基本に忠実であること(Don't challenge the basics)構造変換の方がわかりやすい場合は、構造変換を使う。理解されたことは、対処されたことです。あなたのコードを実行してみたわけではありませんが、あなたが自分でやったことだと思うので、どう動くのか、無知な私に説明してください。86401/86400-86400/86400は,数学のルールで1.000012-1=0.000012であれば1になり,intは整数,すなわち0に切り上げなければなりません. Aleksey Lebedev 2016.03.09 15:48 #5346 -Aleks-:理解されたことは、対処されたことです。あなたのコードを実行してみたわけではありませんが、あなた自身がやったことだと思いますので、どのように動作するのか、無知な私に説明してください。86401/86400/86400は、数学のルールによると1.000012-1=0.000012 、およびintは整数、すなわち0に丸める必要がある場合は、1に等しくなります。やってみなはれ)開始時刻 00:00:00 を 86400 で割ると余りなく、前が 1 秒以上短くなる。四捨五入 - 式全体ではなく、割り算の残りが捨てられる。86400/86400=186399/86400=0 Aleksey Vyazmikin 2016.03.09 19:03 #5347 Aleksey Lebedev:を実行してください)始点00:00:00を余りなく86400で割ると、前が1秒以上短くなる。四捨五入 - 式全体ではなく、割り算の残りが捨てられる。86400/86400=186399/86400=0 ということで、式の中で独特の丸めが発生することに驚きました。変数に値が代入されたときに、小数点以下の値が捨てられると思っていました。 Vladimir Tkach 2016.03.12 11:12 #5348 みんな!プログラムでチャートにインジケーターを表示させることはできますか?それとも手書きだけ? 削除済み 2016.03.12 11:30 #5349 Vladimir Tkach: みんな!プログラムでチャートにインジケーターを表示させることはできますか?それとも手書きだけ? できることhttps://www.mql5.com/ru/docs/chart_operations/chartindicatoradd Документация по MQL5: Операции с графиками / ChartIndicatorAdd www.mql5.com Операции с графиками / ChartIndicatorAdd - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5 Vladimir Tkach 2016.03.12 12:23 #5350 は、mql5では、mql4では? 1...528529530531532533534535536537538539540541542...1504 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
すぐに指定する必要があります :) .
チャート上にバーがあれば、それはインジケーターバッファーの セルに対応しています。このセルに何かを書き込まない限り、ゴミは保存される。
整数(int,long,datetimeなど)の割り算は、結果は整数、つまり余りは捨てられる。今日の00:00と昨日の23:59:59では、その差は1日分となります。
まずそれはない。インジケーターで実験的に証明されている。
次に、どうすれば1が得られるのか。もともと秒単位で計算していることを前提に、数学的に示してください。
単純な型のゼロ化と全く同じ方法です。必須フィールドに0を代入 した後は、StructToTime()の逆操作を行います。
ゼロにした。
MqlDateTime str1;
datetime Open_timePos=iTime(_Symbol,0,pos);
TimeToStruct(Open_timePos,str1);
str1.hour=0;
str1.min=0;
str1.sec=0;
datetime start_time=StructToTime(str1);
Print("день=",TimeToStr(start_time));
Aleksey Lebedev:
При делении целых чисел(int,long,datetime и т.п.) результат целое число, т.е. остаток отбрасывается. 00:00 сегодня и 23:59:59 вчера, разность будет равна 1дню.
-Aleks- です。
まずそれは-指標で実験的に証明されたものではありません。
基本に忠実な議論をしてはいけない)。
-Aleks- です。
次に、どうやって1を得るのか。最初に秒単位の計算があるとして、数学的に示してください。
コンバージョンススルー構造の方が分かりやすい場合は、そちらを使用する。
基本に忠実であること(Don't challenge the basics)
構造変換の方がわかりやすい場合は、構造変換を使う。
理解されたことは、対処されたことです。あなたのコードを実行してみたわけではありませんが、あなたが自分でやったことだと思うので、どう動くのか、無知な私に説明してください。
86401/86400-86400/86400は,数学のルールで1.000012-1=0.000012であれば1になり,intは整数,すなわち0に切り上げなければなりません.
理解されたことは、対処されたことです。あなたのコードを実行してみたわけではありませんが、あなた自身がやったことだと思いますので、どのように動作するのか、無知な私に説明してください。
86401/86400/86400は、数学のルールによると1.000012-1=0.000012 、およびintは整数、すなわち0に丸める必要がある場合は、1に等しくなります。
やってみなはれ)
開始時刻 00:00:00 を 86400 で割ると余りなく、前が 1 秒以上短くなる。四捨五入 - 式全体ではなく、割り算の残りが捨てられる。
86400/86400=1
86399/86400=0
を実行してください)
始点00:00:00を余りなく86400で割ると、前が1秒以上短くなる。四捨五入 - 式全体ではなく、割り算の残りが捨てられる。
86400/86400=1
86399/86400=0
みんな!プログラムでチャートにインジケーターを表示させることはできますか?それとも手書きだけ?