73 righe
Nessun fine linea
2,1 KiB
PowerShell
73 righe
Nessun fine linea
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 для продолжения..." |