0894d18db4
Confluence EA (v1.16 → v1.20): - Per-EA realized P&L tracking via history deals - Weekly drawdown protection - Warmup bars, pivot cache, state persistence - Point-scaled pivot thresholds, ranging ATR factor - Market filling mode helper per symbol Grid EA (v3.1 → v4.1): - Adaptive filters, adaptive entry, spread filter - Session filter, breakeven, correlation caps, range drift - Profit protection (stop-after-profit, cycle reports) - Edge cleanup v5.0 — close wrong-side positions outside grid - Master one-shot shutdown, grid state persistence Presets: - Fix GetOut=Y shutdown bug on 4 grid presets - Relax ADXMax 18→40, widen RSI 20/80 across grid presets - Standardize daily drawdown 3%→5%, add weekly 10% - Increase grid lots 0.01→0.03 - Normalize confluence ATR thresholds per pair - Add XAGUSD, EURCHF, EURGBP, AUDNZD presets Docs & DevOps: - April 23 audit files (preset mismatch, code review, checklist) - n8n workflow and validation infrastructure updates - AI agent analyses in notes/ Known issues carried forward: - Shared drawdown budget contamination (both EAs) - Confluence ranging-market threshold inversion - Older grid presets missing v4.1 safety controls
99 lines
2.3 KiB
JSON
Executable File
99 lines
2.3 KiB
JSON
Executable File
{
|
|
"name": "MQL Settings Monitor - SSH Version",
|
|
"nodes": [
|
|
{
|
|
"parameters": {
|
|
"rule": {
|
|
"interval": [
|
|
{
|
|
"field": "hours",
|
|
"hoursInterval": 6
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"name": "Every 6 Hours",
|
|
"type": "n8n-nodes-base.scheduleTrigger",
|
|
"typeVersion": 1,
|
|
"position": [250, 300]
|
|
},
|
|
{
|
|
"parameters": {
|
|
"command": "/home/garfield/mql-trading-bots/scripts/validate-settings.sh",
|
|
"cwd": "/home/garfield/mql-trading-bots"
|
|
},
|
|
"name": "Run Validation Script",
|
|
"type": "n8n-nodes-base.ssh",
|
|
"typeVersion": 1,
|
|
"position": [450, 300],
|
|
"credentials": {
|
|
"sshPassword": {
|
|
"id": "local-ssh",
|
|
"name": "Local SSH"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"parameters": {
|
|
"conditions": {
|
|
"number": [
|
|
{
|
|
"value1": "={{ $json.code }}",
|
|
"operation": "notEqual",
|
|
"value2": 0
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"name": "Issues Found?",
|
|
"type": "n8n-nodes-base.if",
|
|
"typeVersion": 1,
|
|
"position": [650, 300]
|
|
},
|
|
{
|
|
"parameters": {
|
|
"chatId": "={{ $env.TELEGRAM_CHAT_ID }}",
|
|
"text": "=🚨 MQL Settings Issues:\n\n{{ $json.stdout }}\n\n⏰ {{ new Date().toISOString() }}"
|
|
},
|
|
"name": "Send Telegram Alert",
|
|
"type": "n8n-nodes-base.telegram",
|
|
"typeVersion": 1,
|
|
"position": [850, 200],
|
|
"credentials": {
|
|
"telegramApi": {
|
|
"id": "telegram-bot",
|
|
"name": "Telegram Bot"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"parameters": {},
|
|
"name": "No Issues",
|
|
"type": "n8n-nodes-base.noOp",
|
|
"typeVersion": 1,
|
|
"position": [850, 400]
|
|
}
|
|
],
|
|
"connections": {
|
|
"Every 6 Hours": {
|
|
"main": [
|
|
[{ "node": "Run Validation Script", "type": "main", "index": 0 }]
|
|
]
|
|
},
|
|
"Run Validation Script": {
|
|
"main": [
|
|
[{ "node": "Issues Found?", "type": "main", "index": 0 }]
|
|
]
|
|
},
|
|
"Issues Found?": {
|
|
"main": [
|
|
[{ "node": "Send Telegram Alert", "type": "main", "index": 0 }],
|
|
[{ "node": "No Issues", "type": "main", "index": 0 }]
|
|
]
|
|
}
|
|
},
|
|
"settings": {},
|
|
"staticData": null,
|
|
"tags": []
|
|
}
|