[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 4. - pagina 37

 
Potrebbe essere più semplice riavviare il terminale ogni ora con un programma di terzi, questi errori non compaiono molto spesso, una o due volte al giorno...
 
Credo di aver capito. Ho bisogno di dare all'EA un comando per riavviare Windows (senza password di accesso) e mettere il terminale nell'autostart del sistema operativo. Grazie per le opzioni.
 
DmitriyN:

Dipende dal tipo di sistema. Più grande è la leva, più piccolo è il deposito, meglio è. Tuttavia, si dovrebbe prendere in considerazione che la società di brokeraggio può cambiare la leva: alcuni lo fanno periodicamente, altri - lo cambiano quando il deposito cresce oltre una certa quantità. La riduzione della leva finanziaria è uno strumento efficace per le società di intermediazione. Quando si usa un sistema simile alla martingala, è meglio lavorare con una leva 1:200 e più alta, meglio 1:500...1:1000.

Grazie per il chiarimento.
 
-Aleksey-:
Credo di aver capito. Ho bisogno di dare all'EA un comando per riavviare Windows (senza password di accesso) e mettere il terminale nell'autostart del sistema operativo. Grazie per le opzioni.
Troppo globale e piuttosto lento. Sarebbe sufficiente monitorare l'attività del terminale con RestartOnCrash, e in caso di fallimento della connessione dare il comando Alt+F4 al terminale (nello script via VinApi), il programma lo lancerà istantaneamente di nuovo.
 
evillive:
Troppo globale e piuttosto lento. Sarebbe sufficiente monitorare l'attività del terminale con RestartOnCrash, e in caso di fallimento della connessione dare il comando Alt+F4 al terminale (nello script via VinApi), quel programma lo lancerà rapidamente di nuovo.
Connessione interrotta: l'errore 6 è gestito dal mio Expert Advisor attraverso il rescan del server. Ho trovato un esempio sul forum. O forse intendi un altro errore? Guarderò il programma, grazie.
 
L'errore generale porta anche a una perdita di connessione. Sopra ho scritto che mi sono messo nello script terminale s-Reconnect, gestisce errori come No connection e General Error, quando si verificano ri-login e tutto. Ma è più facile riavviare il terminale a qualsiasi errore del genere, ci vuole circa lo stesso tempo.
 

Questo script restart.vbs riavvia il terminale. Come posso eseguirlo dall'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
 
-Aleksey-:

Questo script restart.vbs riavvia il terminale. Come si esegue dall'EA?


Non è necessario eseguirlo dall'Expert Advisor. Puoi eseguire questo script ogni mezz'ora o ogni ora attraverso lo scheduler.
 
evillive:

Non c'è bisogno di usare il consulente. Puoi eseguire questo script ogni mezz'ora o un'ora attraverso lo scheduler.
Perché no, se un errore è stato rilevato dall'Expert Advisor? Si può fallire nell'impostare o modificare un ordine entro mezz'ora. Cos'è uno scheduler - non ne ho mai usato uno...?
 

Bene, allora, ecco https://www.mql5.com/ru/forum/106619

Windows Task Scheduler, permette di fare cose come inviare posta, eseguire applicazioni/script/bottoni, ecc. su una pianificazione o per segnale.