Automatischer Push: 8 Datei(en) geändert
- .vault-tools/trading-plattform-pruefung/LIESMICH.md - .vault-tools/trading-plattform-pruefung/abbau_alpaca_lesen.py - .vault-tools/trading-plattform-pruefung/abbau_glattstellen.sh - .vault-tools/trading-plattform-pruefung/abbau_ibkr_lesen.sh - .vault-tools/trading-plattform-pruefung/abbau_restbestand.py - .vault-tools/trading-plattform-pruefung/abbau_restbestand_angriffe.py - .vault-tools/trading-plattform-pruefung/abbau_restbestand_einrichten.ps1 - AI/Regelwerk/windows-shell.md Erzeugt vom PostToolUse-Hook .vault-tools/auto-push/auto_push.py. Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
1 parent
30ed04a643
commit
3784322a76
8 files changed
+1687
-3
No files matched your search
@@ -0,0 +1,54 @@
|
||||
# Richtet die einmalige Windows-Aufgabe "Trading Plattform - Abbau Restbestand" ein oder entfernt sie.
|
||||
# Ersteller: Pascal Michel Erstellt: 2026-10-07
|
||||
# Doku: LIESMICH.md in diesem Ordner, Abschnitt "Paket AB"
|
||||
#
|
||||
# Pascal 2026-10-07: am 2026-10-08 soweit es geht alles verkaufen. Neun Ausloeser: acht Termine
|
||||
# (Do 2026-10-08 15:45, 16:15, 17:00, 19:00, 21:00; Ersatz Fr 2026-10-09 15:45, 16:30, 19:00) und
|
||||
# fuenf Minuten nach jeder Anmeldung. Der Anmelde-Ausloeser holt einen verpassten Termin nach, wie bei
|
||||
# der Abendkontrolle; dass StartWhenAvailable das fuer eine Aufgabe mit Interactive allein tut, ist
|
||||
# nicht belegt. abbau_restbestand.py tut ausserhalb seines Fensters und nach "flach" nichts; ein Lauf
|
||||
# zur falschen Zeit ist also harmlos. Nach dem 2026-10-09 mit -Aktion entfernen abbauen, sonst bleibt
|
||||
# der Anmelde-Ausloeser stehen.
|
||||
#
|
||||
# Aufruf: powershell -NoProfile -File abbau_restbestand_einrichten.ps1 [-Aktion einrichten|entfernen]
|
||||
param(
|
||||
[ValidateSet("einrichten", "entfernen")]
|
||||
[string]$Aktion = "einrichten"
|
||||
)
|
||||
|
||||
$Name = "Trading Plattform - Abbau Restbestand"
|
||||
if ($Aktion -eq "entfernen") {
|
||||
Unregister-ScheduledTask -TaskName $Name -Confirm:$false
|
||||
return
|
||||
}
|
||||
|
||||
$Py = "C:\Users\Pascal Michel\AppData\Local\Programs\Python\Python313\pythonw.exe"
|
||||
$Skript = "D:\Claude\.vault-tools\trading-plattform-pruefung\abbau_restbestand.py"
|
||||
if (-not (Test-Path $Py)) { throw "Interpreter fehlt: $Py" }
|
||||
if (-not (Test-Path $Skript)) { throw "Skript fehlt: $Skript" }
|
||||
|
||||
$Termine = @(
|
||||
"2026-10-08T15:45:00", "2026-10-08T16:15:00", "2026-10-08T17:00:00", "2026-10-08T19:00:00",
|
||||
"2026-10-08T21:00:00", "2026-10-09T15:45:00", "2026-10-09T16:30:00", "2026-10-09T19:00:00"
|
||||
)
|
||||
$Benutzer = "$env:USERDOMAIN\$env:USERNAME"
|
||||
$Aufruf = New-ScheduledTaskAction -Execute $Py -Argument ('"' + $Skript + '" --modus scharf') -WorkingDirectory "D:\Claude"
|
||||
$Anmeldung = New-ScheduledTaskTrigger -AtLogOn -User $Benutzer
|
||||
$Anmeldung.Delay = "PT5M"
|
||||
$Ausloeser = @($Termine | ForEach-Object { New-ScheduledTaskTrigger -Once -At ([datetime]$_) }) + @($Anmeldung)
|
||||
$Wer = New-ScheduledTaskPrincipal -UserId $Benutzer -LogonType Interactive -RunLevel Limited
|
||||
$Regeln = New-ScheduledTaskSettingsSet -StartWhenAvailable -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries `
|
||||
-ExecutionTimeLimit (New-TimeSpan -Minutes 45) -MultipleInstances IgnoreNew
|
||||
Register-ScheduledTask -TaskName $Name -Action $Aufruf -Trigger $Ausloeser -Principal $Wer `
|
||||
-Settings $Regeln -Force `
|
||||
-Description "Abbau des Paper-Restbestands nach dem Netzschalter-Abriss vom 2026-10-07 (Auftrag Pascal). Siehe abbau_restbestand.py." | Out-Null
|
||||
|
||||
$Aufgabe = Get-ScheduledTask -TaskName $Name
|
||||
"{0}: {1}" -f $Aufgabe.TaskName, $Aufgabe.State
|
||||
"Ausloeser: {0}" -f @($Aufgabe.Triggers).Count
|
||||
$Aufgabe.Triggers | ForEach-Object { "Termin: {0} {1} {2}" -f $_.CimClass.CimClassName, $_.StartBoundary, $_.Delay }
|
||||
"LogonType: {0}" -f $Aufgabe.Principal.LogonType
|
||||
"StartWhenAvailable: {0}" -f $Aufgabe.Settings.StartWhenAvailable
|
||||
"MultipleInstances: {0}" -f $Aufgabe.Settings.MultipleInstances
|
||||
"ExecutionTimeLimit: {0}" -f $Aufgabe.Settings.ExecutionTimeLimit
|
||||
"Naechster Lauf: {0}" -f (Get-ScheduledTaskInfo -TaskName $Name).NextRunTime
|
||||
Reference in new issue
Block a user