"ダミー "からの質問 - ページ 68

 

x100intraday:

私が知りたいのは、価格バッファのように時間バッファを直接埋めることは可能か(CopyTimeや 配列にコピーする他の通常の関数に頼ることなく)、そしてどのように、もし不可能ならなぜか、ということです。

2.1970年からの秒数を格納するバッファをもう一つ用意し、その型をdatetimeではなく doubleや longなどに し、必要な時にTimeToStringでリテラル文字 列として時間形式に 変換することは本当に必要 でしょうか

1.不可能。"なぜ?"で。- を開発者に提供します。

あなたの場合、これが最もシンプルな解決 策です。 (動作保証はしています。) 価格と同様のバッファへの充填についてご質問をいただきましたので、ご紹介いたします。

もし私なら、アルゴリズムレベルでこのようなメモリの無駄遣いを避けるようにしますし、どんな場合でも、有用なデータが3%まで満たされたバッファを作ることはしません。

 
MetaDriver:

私だったら、アルゴリズムレベルでこのようなメモリの浪費を避け、使えるデータが3%のバッファを作らないようにします。

さて、質問-説明の登場です。https://www.mql5.com/ru/forum/1111/page529#comment_1010 59、全く逆ですが、少なくとも1つの理解可能で不可解でない答えがあります。興味は尽きないが...。
 
x100intraday:

うん、バダ))

"日付と時刻の定数..." と "...リテラル文字列として 表現することができる"。

が表現されているかどうか...通常の日付・時刻形式の入出力データ用です。

さらに、このデータ型の配列とインジケータバッファを 関連付けることはできず(その必要もない?)、よく知られた理由から、このデータ型の配列にSetIndexBufferを適用することはできません。

は、datetime 型がインジケータ・バッファにあることを妨げるものは何もありません(望ましいことです)。

そして、私たちはそうではありません。

そして無駄に)

出来上がったコードをコンパイルしてください。EMPTY_VALUEの文字列に対して「定数値の切り捨て」という警告が出たり(悲)、同じ文字列に対してターミナルのExpertレポートに「Array out of range 」というエラーが 出たり(遂に慌てる)するのです。EMPTY_VALUEが datetime 型に収まらないようで 配列のサイズはゼロのまま です。EMPTY_VALUEを0に変更すると、エラーはなくなりますが、配列の サイズはゼロのままです。

EMPTY_VALUE は double 型である。

インジケータ・バッファを使えば、配列のサイズを決定する必要がないので、より簡単でしょう。

もうひとつ不思議なのは、ExtUpperBuffer ExtLowerBuffer のサイズが 0 以外であることで、つまり、それらは満たされるが、フラクタルは現れない。なぜ、そうしなければならないのか。

eh, I don't know).

私が興味を持ったのは、価格バッファと同様に時間バッファを直接埋めることが可能なのか(CopyTimeや その他の配列へのコピーの正規関数に頼らずに)、またどのように可能なのか、もし不可能ならなぜなのか、という点です。この目的のために、1970年からの秒を格納するための別のバッファのペアを作成しなければならないのですが、そのタイプはdatetimeではなく、例えばdoubleや longで、必要な瞬間にTimeToStringを通してリテラル文字列 としての時間 フォーマットに変換するのでしょうか?

datetime のようなデータへのアクセスは、価格データへのアクセスと同様である。

datetimeは基本的にint/longと同じです。

追伸:Fractals.mq5の コードを再現するのが面倒な人、教えてください、計算された特定の時間データをどのように保存するのですか(組み込みインジケータのハンドルを呼び出して作業することなく)?

整数データと同じで、int/datetime/longは同じです。

 
Swan:

そうだ、バダダ))

は、datetime 型がインジケータ・バッファに入ることを妨げるものは何もありません(それは望ましいことです)。

そして無駄に)

インジケータ・バッファを使えば、配列のサイズを決定する必要がないので、より簡単です。

そして、私はいったい何を間違えているのだろう?すべてが詳細に記述され、ソースコードは標準的で、時間をかけてテストされた、最も簡単なものです!...........................。改造は簡単で当たり前...。曇った頭で推測しても、途方に暮れてしまいますが...。何かに行き詰まったとき、三日月レンチを持って自動車整備士を呼んだほうがいいかもしれない......。

また、datetime 配列をインジケータ・バッファに バインド するためのルーン式呪文は何ですか?もう一度。


SetIndexBuffer

指定されたインジケータ・バッファを,グローバルに宣言された double 型の 1 次元動的配列にバインドします。

 
x100intraday:

そして、私はいったい何を間違えているのだろう?結局のところ、私はすべてを詳細に説明し、ソースコードは一般的に標準的で、時間をかけてテストされ、最も単純なものです改造はシンプルで当たり前...。曇った心の中で憶測に耽っている......。何かに行き詰まったとき、三日月レンチを持って自動車整備士を呼んだほうがいいかもしれない......。

また、datetime 配列をインジケータ・バッファにバインド するためのルーン式呪文は何ですか?もう一度。


SetIndexBuffer

指定されたインジケータ・バッファを,グローバルに宣言された double 型の 1 次元動的配列にバインドします。

このdatetimeは必要ありません。すべてをdouble配列に書き出し、(必要なら)使用前にdatetimeに変換する。

基本的にdatetimeとdoubleの違いは表示方法のみです。doubleで書かれた時刻を可逆的にdatetimeに変換することができます。

いずれも8バイトタイプです。

 
x100intraday:

そして、私はいったい何を間違えているのだろう?結局のところ、私はすべてを詳細に説明し、ソースコードは一般的に標準的で、時間をかけてテストされ、最も単純なものです改造はシンプルで当たり前...。曇った心の中で憶測に耽っている......。何かに行き詰まったとき、三日月レンチを持った自動車整備士が欲しい...。

変更後のコードの詳細は推測するしかないのですが...。

また、runic spell を使ってdatetime 型の配列をインジケータ・バッファにバインド する方法は?もう一度。


SetIndexBuffer

指定されたインジケータ・バッファを,グローバルに宣言された double 型の 1 次元動的配列にバインドします。

Urainが すでに回答しています。 さて、コンパイラが悪態をつかないように、こんな感じ。

double ExtUpperTimeBuffer[];//обьявляем
...
ExtUpperTimeBuffer[xz0]=(double)time[xz1];//присваиваем
...
datetime XZ=(datetime)ExtUpperTimeBuffer[xz2];//юзаем
 

それで...ああ...

画期的なものはありませんが、いわば地盤はしっかり固まっています。

皆さん、薬指の蹴りをありがとうございました。試してみるか...。

 
x100intraday:

皆さん、お薬キックをありがとうございました。

そして幸運のキッカケ : D
 

ライブラリ関数array.Add()の社内類似品はありますか?

追伸:そうでない場合は、睡眠薬1年分をプレゼントしてください。

 
x100intraday:

ライブラリ関数array.Add()の社内類似品はありますか?

追伸:そうでない場合は、睡眠薬1年分をプレゼントしてください。

インジケータ......またはバッファ......型ダブルに 日付を格納してはどうでしょう。

ドットがたくさん追加され、そうでない場合は何らかのリンクが表示されます。

double time[10];

time[0] = (double) D'3000.12.31 23:59';
time[1] = (double) D'2030.12.31 23:59';

Print(TimeToString((datetime)time[0]));
Print(TimeToString((datetime)time[1]));

エラーなくすべて正しく変換される

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