Article-20147-MQL5-Terminal.../MetaQuotes/Scripts/UpdateDates.ps1
2026-03-26 17:44:46 +07:00

73 行
无行尾
2.1 KiB
PowerShell

# Ïóòü ê êîíôèãóðàöèîííîìó ôàéëó MetaTrader 5
$filePath = "C:\MetaQuotes\Scripts\ExpWPRBBconfig.ini"
# Áàçîâîå èìÿ ýêñïåðòà/îò÷åòà
$expertName = "ExpWPRBB"
# Ïóòü äëÿ ñîõðàíåíèÿ îò÷åòîâ (îòíîñèòåëüíî êàòàëîãà äàííûõ MetaTrader 5, êàê â INI-ôàéëå)
$reportPathBase = "Reports\"
# Ïîëó÷àåì ïåðâûé àðãóìåíò, ïåðåäàííûé ñêðèïòó
[string]$IntervalType = $args[0]
if ([string]::IsNullOrEmpty($IntervalType))
{
$IntervalType = 'Month'
}
$today = Get-Date
switch($IntervalType)
{
'Day'
{
$fromDate = $today.AddDays(-1)
Write-Host "Ðåæèì: Åæåäíåâíûé (-1 äåíü)"
}
'Week'
{
$fromDate = $today.AddDays(-7)
Write-Host "Ðåæèì: Åæåíåäåëüíûé (-7 äíåé)"
}
'Month'
{
$fromDate = $today.AddMonths(-1)
Write-Host "Ðåæèì: Åæåìåñÿ÷íûé (-1 ìåñÿö)"
}
'Quarter'
{
$fromDate = $today.AddMonths(-3)
Write-Host "Ðåæèì: Åæåêâàðòàëüíûé (-3 ìåñÿöà)"
}
'Year'
{
$fromDate = $today.AddYears(-1)
Write-Host "Ðåæèì: Åæåãîäíûé (-1 ãîä)"
}
default
{
$fromDate = $today.AddMonths(-1)
Write-Host "Ðåæèì ïî óìîë÷àíèþ: Åæåìåñÿ÷íûé (-1 ìåñÿö)"
}
}
# Ôîðìàòèðóåì äàòû: 1. äàòà íà÷àëà 2. äàòà îêîí÷àíèÿ
$fromDateString = $fromDate.ToString("yyyy.MM.dd")
$toDateString = $today.ToString("yyyy.MM.dd")
# Ãåíåðèðóåì óíèêàëüíîå èìÿ îò÷åòà, èñïîëüçóÿ äàòû è èíòåðâàë
$reportName = "${expertName}_${IntervalType}_${fromDateString}_to_${toDateString}"
$fullReportPath = $reportPathBase + $reportName
# Çàìåíÿåì ñòðîêè â ôàéëå (FromDate, ToDate è Report)
(Get-Content -Path $filePath) `
-replace '^FromDate=.*$', "FromDate=$fromDateString" `
-replace '^ToDate=.*$', "ToDate=$toDateString" `
-replace '^Report=.*$', "Report=$fullReportPath" | Set-Content -Path $filePath
# Âûâîäèì èíôîðìàöèþ â êîíñîëü äëÿ îòëàäêè
Write-Host "Äàòû è ïóòü îò÷åòà â ôàéëå $filePath óñïåøíî îáíîâëåíû."
Write-Host "FromDate óñòàíîâëåí â $fromDateString"
Write-Host "ToDate óñòàíîâëåí â $toDateString"
Write-Host "Report óñòàíîâëåí â $fullReportPath"
#Äëÿ ÷òåíèÿ ñîîáùåíèé ðàñêîììåíòèðîâàòü ñòðîêó íèæå
#Read-Host -Prompt "Íàæìèòå Enter äëÿ ïðîäîëæåíèÿ..."