'+++++++++++++++++++++
'terminate application
'+++++++++++++++++++++
Const strComputer = "."
Dim objWMIService, colProcessList
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery("SELECT * FROM Win32_Process WHERE Name = 'terminal.exe'")
For Each objProcess in colProcessList
objProcess.Terminate()
Next
Set objWMIService = Nothing
Set colProcessList = Nothing
'+++++++++++++
'waiting pause
'+++++++++++++
WScript.Sleep 5000
'++++++++++++++++
'run appplication
'++++++++++++++++
Dim ProgramPath, objShell
ProgramPath = "D:\Program Files\Metatrader\terminal.exe"
Set objShell = createobject("Wscript.Shell")
objShell.Run Quote(ProgramPath), 1
Set objShell = Nothing
'+++++++++++++++++
'quotes processing
'+++++++++++++++++
Function Quote(sText)
Quote = chr(34) & sText & chr(34)
End Function
システムの種類によって異なります。レバレッジが大きければ大きいほど、保証金が少なければ少ないほど良いのです。しかし、あなたは証券会社がレバレッジを変更することができることを考慮する必要があります:いくつかは定期的にそれを行う、いくつか - 預金が一定額以上に成長したときにそれを変更します。証券会社にとって、レバレッジを下げることは有効な手段です。マーチンゲールのようなシステムを使用する場合、1:200以上のレバレッジ、より良い1:500...1:1000で作業するのがよいでしょう。
できたと思う。EAにWindowsを再起動するコマンドを与え(ログインパスワードなしで)、OSの自動起動に端末を入れる必要があります。オプションをありがとうございました。
グローバルすぎてかなり遅い。RestartOnCrashで端末の動作を監視し、接続に失敗した場合は端末にAlt+F4コマンドを送り(VinApi経由のスクリプトで)、そのプログラムが素早く端末を再立ち上げすればよいのではと思います。
このrestart.vbsスクリプトは、端末を再起動させるものです。EAから実行するにはどうしたらいいですか?
'+++++++++++++++++++++ 'terminate application '+++++++++++++++++++++ Const strComputer = "." Dim objWMIService, colProcessList Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") Set colProcessList = objWMIService.ExecQuery("SELECT * FROM Win32_Process WHERE Name = 'terminal.exe'") For Each objProcess in colProcessList objProcess.Terminate() Next Set objWMIService = Nothing Set colProcessList = Nothing '+++++++++++++ 'waiting pause '+++++++++++++ WScript.Sleep 5000 '++++++++++++++++ 'run appplication '++++++++++++++++ Dim ProgramPath, objShell ProgramPath = "D:\Program Files\Metatrader\terminal.exe" Set objShell = createobject("Wscript.Shell") objShell.Run Quote(ProgramPath), 1 Set objShell = Nothing '+++++++++++++++++ 'quotes processing '+++++++++++++++++ Function Quote(sText) Quote = chr(34) & sText & chr(34) End Functionこのrestart.vbsスクリプトは、端末を再起動させるものです。EAから実行するにはどうしたらいいですか?
Expert Advisorから実行する必要はありません。このスクリプトは、スケジューラーを通して30分ごと、あるいは1時間ごとに実行することができます。
アドバイザーを使う必要はない。このスクリプトは、スケジューラーを通して30分ごと、あるいは1時間ごとに実行することができます。
それでは、https://www.mql5.com/ru/forum/106619。
Windowsタスクスケジューラは、メールの送信、アプリ/スクリプト/ボタンの実行などをスケジュールまたは信号で実行することができます。