mql5言語の特徴、微妙なニュアンスとテクニック - ページ 176

 
fxsaber:
代入時に変数の変化をキャッチしたいとき。
たとえ(今は)うまくいっても、この書き方は非常にまずいです
 
MQL5 Cloud Protectorモードを含む、バッチコンパイル(複数のMQLプログラム)の方法を教えてください。
 
fxsaber:
MessageBoxは ログのすべての情報を表示しない。ログを読んでいて疑問に思うことがある。問題はこのように解決されます。

Aは何をしているのですか?

 
Vladimir Pastushak:

Aは何をしているのですか?

引数を文字列として出力する。

 
fxsaber:
MQL5 Cloud Protectorモードを含む、バッチコンパイル(複数のMQLプログラム)の方法を教えてください。

https://www.metatrader5.com/ru/metaeditor/help/beginning/integration_ide

プロテクターはまだパラメータに含まれておらず、登場するかどうかも定かではありません

Интеграция с другими IDE - Справка по MetaEditor
Интеграция с другими IDE - Справка по MetaEditor
  • www.metatrader5.com
MetaEditor позволяет писать код не только на языках MQL4 и MQL5. Вы также может редактировать и компилировать исходный код C++ (в будущем планируется расширение поддерживаемых языков). Помимо этого MetaEditor можно использовать как внешний компилятор в других средах разработки. Редактирование С++ кода и компиляция DLL При разработке торговых...
 

トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム

mql5の特性、ヒントとコツ

fxsaber, 2020.05.14 08:15

アカウントを変更したときにExpert Advisorを削除するだけでよい場合はこのようになります。

MQL5で最もシンプルなタスクは、サブバージョンを踊らせることです。

アカウント変更時にEAを削除できない場合があります。

EAがEURUSDシンボルで実行されたとします。シンボルの接頭辞があるサーバーに切り替わります。例えば、EURUSD.abc.

この場合、EAがハングアップしたまま、自分自身を削除することができません。どなたか解決策をお持ちの方はいらっしゃいますか?

 
fxsaber:

アカウント変更時にEAを削除できない場合があります。

例えば、EURUSDのシンボルでEAが動作しているとします。シンボルの接頭辞があるサーバーに切り替わります。例えば、EURUSD.abc.

この場合、EAがハングアップしたまま、自分自身を削除することができません。どなたか、この問題の解決策をご存じないでしょうか?

解決策はこれ以上ないほどシンプルです。あとは、文字列を加工して、必要な部分だけ取り出すだけです。
 
Alexey Viktorov:
解決策は簡単で、文字列を操作して、そこから適切な部分だけを抽出するだけです。

口座変更時にアンロードするEAのソースコードをここに示してください。

 
fxsaber:

口座変更時にアンロードするEAのソースコードをここに示してください。

変更後はinitに(あるいはontikに)アンロードされるべきと理解しています。つまり、グローバル変数に アカウント番号を記憶しておき、変更が発生したらアンロードする。init()やunloadで_DeInitReasonを解析してみるのもよいでしょう。

 
fxsaber:

Expert Advisor が EURUSD シンボル上で動作しているとします。シンボルの接頭辞があるサーバーに切り替えます。例えば、EURUSD.abc.

この場合、OnInit()は起動されていないのでしょうか? 多分、OnDeinit()のレベルで削除してみてください。

理由: