Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools

Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools (http://www.expert-advisor.com/forum/index.php)
-   Programmierung MQL4 (http://www.expert-advisor.com/forum/forumdisplay.php?f=220)
-   -   MT4 Statement (http://www.expert-advisor.com/forum/showthread.php?t=5947)

pascalper 13.12.17 18:15

MT4 Statement
 
Hallo

Hat, kann, jemand mir bitte vielleicht schreiben wie ich ein MT4 Statement (das kleine reicht) per Mail versenden kann.

Einmal in der Nacht, vom Broker zur Schlafenszeit, ist mir etwas zu wenig, würde gerne jede Stunde einen aktuellen Status erhalten.

Besten Dank!

pascalper 15.12.17 12:39

Lösung:
 
Die Lösung ist:

Das MT4 Statement via FTP Tab auf einen Windows FTP Server hinterlegen lasssen.
Mit PowerShell Script dann das Statement mittels einem SMTP Server oder Relay versenden lassen.
Noch einen Task Scheduler einrichten und man bekommt sein aktuelles Statement so oft wie man möchte, mir reicht jede Stunde, einmal in der Nacht vom Broker ist mir zuwenig.
Ist natürlich aufwendiger als wenn man das MT4 Statement direkt via MQL Code und Email Tab versenden könnte.
Trotz intensiver Suche konnte ich keine Infos zum versenden des MT4 Statements mit MQL Code finden, wobei man das mit viel Aufwand für die Formatierung der einzelnen Abschnitte auch sicher in MQL umsetzen kann-MQL Formatierungsmöglichkeiten sind ja nicht die besten, daher ist die Installation eines Mini FTP+SMTP Servers der einfachere Weg. (Für mich zumindest)

PowerShell Script:
#Connection Details
$username=”john”
$password=”password”
$smtpServer = “mail.server.local”
$msg = new-object Net.Mail.MailMessage

#Change port number for SSL to 587
$smtp = New-Object Net.Mail.SmtpClient($SmtpServer, 25)

#Uncomment Next line for SSL
#$smtp.EnableSsl = $true

$smtp.Credentials = New-Object System.Net.NetworkCredential( $username, $password )

#From Address
$msg.From = "john@gmail.com"
#To Address, Copy the below line for multiple recipients
$msg.To.Add(“test@gmail.com”)

#Message Body
$msg.Body=”Please See Attached Files”

#Message Subject
$msg.Subject = “Email with Multiple Attachments”

#your file location
$files=Get-ChildItem “C:\Reports\”

Foreach($file in $files)
{
Write-Host “Attaching File :- ” $file
$attachment = new-object Net.Mail.Attachment -ArgumentList $file.FullName
$msg.Attachments.Add($attachment)

}
$smtp.Send($msg)
$attachment.Dispose();
$msg.Dispose();


Alle Zeitangaben in WEZ +2. Es ist jetzt 20:54 Uhr.

Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.6.1
Powered by vBCMS® 2.7.0 ©2002 - 2024 vbdesigns.de
Copyright ©2009 - 2023 by Expert-Advisor.com - Das Metatrader Forum