他のタイムフレームに移動する際、インジケーターのグローバル変数の構造を変更するにはどうすればよいですか?

 
別のタイムフレームに移動する際に、インジケータ内のグローバル変数、構造体、オブジェクトを移動するにはどうすればよいですか?ググっても出てきません。
 
Mikhail Nazarenko:
別のタイムフレームに移動する際に、インジケーター内のグローバル変数、構造体、オブジェクトを移動するにはどうすればよいですか?ググってみましたが、見つかりませんでした。

不器用な解決法:オブジェクトでないなら、再初期化しない :-)

タイムフレームを変更した場合、EA は再起動しますが、データは勝手に上書きされません。これはC-suiteにとって予想外の行動で、もしかしたら他のビルドでも変わるかもしれませんが、そこはそれ;-)。

そして、正しい解決策は、ファイルやデータベースに状態を保存し、OnInitの決定で、以前の状態を復元するか、最初からやり直すことです。

 
Maxim Kuznetsov:

不器用な解決法:オブジェクトでないなら、再初期化しない :-)

タイムフレームを変更した場合、EA は再起動しますが、データは勝手に上書きされません。これはC-suiteにとって予想外の行動で、もしかしたら他のビルドでも変わるかもしれませんが、そこはそれ;-)。

正しい解決策は、ファイルやデータベースに状態を保存し、OnInitの決定で、以前の状態を復元するか、ゼロから再起動することです。

構造物やオブジェクトには、単純な解は存在しないと理解していますが?

 

Maxim Kuznetsov:


タイムフレームを変更した場合、EAは再起動しますが、データは勝手に上書きされるわけではありません。


質問内容は、指標についてでした。

 
Mikhail Nazarenko:

別のタイムフレームに移動する際に、インジケータ内のグローバル変数、構造体、オブジェクトを移動 するにはどうすればよいですか?ググっても見つ からなかった。

- グローバル変数に 保存してください。
- チャートオブジェクトは、チャートから削除しないでください。
- の構造をファイルに書き出すだけです。

 
Mikhail Nazarenko:

構造物やオブジェクトには、単純な解は存在しないと理解していますが?

ファイルに書き込むという のは簡単な解決策ではないのでしょうか?FileWriteStruct()が利用できるなど、複雑なことはないようです。書き込むオブジェクトのその部分(しかも、メソッドではなくデータのままなので、保存する意味がない)を、構造体に変換したもの。

 
Ihor Herasko:

ファイルへの書き込みは 厄介な解決策なのか?FileWriteStruct()が利用できるなど、複雑なことはないようです。書き込むオブジェクトのその部分(しかも、メソッドではなくデータのままなので、保存する意味がない)を、構造体に変換したもの。

理解するのは簡単なことのように思えますが、よりエレガントなものがない場合は、ファイルに。松葉杖がなくても大丈夫だと甘く考えていました。ありがとうございます。

 
再インストール時にすべての構造を一から計算し直す方が簡単です。もちろん、超メガ級の複雑な計算がある場合は別ですが...。
 
transcendreamer:
もちろん、超メガ級の複雑な計算がある場合は別ですが、すべての構造を一から計算し直した方が簡単です...。

データが算出されない場合があります。例えば、ユーザーアクション。

 
Ihor Herasko:

データが算出されない場合があります。例えば、ユーザーアクション。

あるにはあるが、通常はグローバルにステータスとして格納するか、そのオブジェクト化した結果をグラフオブジェクトの状態として格納することができる......。

 

ここで@fxsaber は、グローバル変数に構造を保存する例を示しました。

https://www.mql5.com/ru/forum/320395/page6#comment_12910394

と、このスレッドでの彼の投稿の下に