180 lines
4.7 KiB
Markdown
180 lines
4.7 KiB
Markdown
# Session Save Point - 2026-03-22
|
|
**Created:** $(date '+%Y-%m-%d %H:%M:%S %Z')
|
|
**Status:** Complete - Ready for system restart
|
|
|
|
---
|
|
|
|
## Current Project State
|
|
|
|
### MultiSignal Confluence EA v1.12
|
|
**Status:** Fully implemented and committed
|
|
|
|
**Location:**
|
|
- Git: https://git.fetcherpay.com/garfield/mql-trading-bots
|
|
- Commit: `e2d42b3` - "Add complete volatility filters v1.12 (Anti-Chop)"
|
|
- Local: `~/mql-trading-bots/MultiSignal_Confluence_EA.mq5`
|
|
- MT5: `~/mt5-docker/config/.wine/drive_c/Program Files/MetaTrader 5/MQL5/Experts/MultiSignal_Confluence_EA.mq5`
|
|
|
|
**Features Added in v1.12:**
|
|
- ATR Volatility Filter (0.5% minimum)
|
|
- ADX Trend Strength Filter (20 minimum)
|
|
- CheckVolatilityFilter() function called before every trade
|
|
- Both filters ON by default, configurable via inputs
|
|
|
|
**Trading Performance (Verified):**
|
|
- Account: 104125640
|
|
- Started: $100,000
|
|
- Current: $106,935.12 (+6.94%)
|
|
- Trades: 78
|
|
- Win Rate: 71.79%
|
|
- Profit Factor: 1.29
|
|
- Largest Win: $2,216
|
|
- Largest Loss: -$1,303
|
|
|
|
---
|
|
|
|
## Active Trading Setup
|
|
|
|
### MT5 Docker Container
|
|
- Container: `mt5` (gmag11/metatrader5_vnc:1.1)
|
|
- VNC Access: Port 3000
|
|
- Config Volume: `/home/garfield/mt5-docker/config`
|
|
|
|
### Account Details
|
|
- Login: 104125640
|
|
- Server: MetaQuotes-Demo
|
|
- Platform: MetaTrader 5
|
|
|
|
### Report Access
|
|
- Direct HTML: `file:///home/garfield/mt5-docker/config/.wine/drive_c/users/abc/Desktop/ReportHistory-104125640.html`
|
|
- Utility Scripts: `show-latest-report.sh`, `read-report.sh`, `export-to-browser.sh`
|
|
|
|
---
|
|
|
|
## Repositories
|
|
|
|
### mql-trading-bots
|
|
- URL: https://git.fetcherpay.com/garfield/mql-trading-bots
|
|
- Credentials: garfield@fetcherpay.com / onelove01
|
|
- Main File: `MultiSignal_Confluence_EA.mq5`
|
|
|
|
### conversation-history
|
|
- URL: https://git.fetcherpay.com/garfield/conversation-history
|
|
- Session Log: `2026-03-21-mql-trading-bots.md`
|
|
- This Save: `SESSION_SAVE_2026-03-22.md`
|
|
|
|
---
|
|
|
|
## What's Next (Post-Restart)
|
|
|
|
1. **Verify MT5 Compilation** - Check Journal for successful v1.12 compile
|
|
2. **Monitor New Trades** - Watch for "Volatility filter BLOCKED" messages
|
|
3. **Compare Performance** - Expect fewer trades but higher quality
|
|
4. **Backtest** - Run strategy tester on v1.12 vs v1.11
|
|
|
|
---
|
|
|
|
## Key Code References
|
|
|
|
### Volatility Filter (lines 200-223)
|
|
```cpp
|
|
bool CheckVolatilityFilter() {
|
|
if(InpUseVolatilityFilter && ATRHandle != INVALID_HANDLE) {
|
|
double atr[1], close = iClose(_Symbol, _Period, 0);
|
|
if(CopyBuffer(ATRHandle, 0, 0, 1, atr) > 0) {
|
|
double atrPct = (atr[0] / close) * 100;
|
|
if(atrPct < InpMinATRPercent) {
|
|
Print("Volatility filter BLOCKED: ATR too low");
|
|
return false;
|
|
}
|
|
}
|
|
}
|
|
// ... ADX filter ...
|
|
return true;
|
|
}
|
|
```
|
|
|
|
### Trade Entry Call (line 616)
|
|
```cpp
|
|
if(!CheckVolatilityFilter())
|
|
return; // Skip trade - filters not passed
|
|
```
|
|
|
|
---
|
|
|
|
## Notes for Future Self
|
|
|
|
- All work saved to Gitea - accessible from any machine
|
|
- MT5 data persists in Docker volume
|
|
- v1.12 designed to reduce choppy market losses
|
|
- If filters are too aggressive, adjust: `InpMinATRPercent` or `InpMinADX`
|
|
|
|
**Session End - Safe to restart**
|
|
|
|
---
|
|
|
|
## Ollama Upgrade Script Created
|
|
**File:** `~/upgrade-ollama.sh`
|
|
|
|
The automated upgrade via tool commands was timing out on sudo operations, so an upgrade script was created for manual execution.
|
|
|
|
### To Upgrade Ollama:
|
|
```bash
|
|
~/upgrade-ollama.sh
|
|
```
|
|
|
|
This will:
|
|
1. Stop the current ollama service
|
|
2. Backup existing binary
|
|
3. Download latest version (currently v0.18.2)
|
|
4. Install and start the new version
|
|
5. Verify it's working
|
|
|
|
### Current Status:
|
|
- Running: v0.12.11
|
|
- Available: v0.18.2
|
|
- Location: /usr/local/bin/ollama
|
|
- Service: systemd (ollama.service)
|
|
- API: localhost:11434
|
|
|
|
---
|
|
|
|
## OrdersEA Found and Committed
|
|
**Date:** March 24, 2026
|
|
|
|
### Files Located
|
|
- `~/mql/OrdersEA (1).mq4` - Original MT4 version (v1.1)
|
|
- `~/mql/OrdersEA.mq5` - MT5 version
|
|
|
|
### Committed to Repository
|
|
- Commit: `9fac45a`
|
|
- Files: `OrdersEA (1).mq4`, `OrdersEA.mq5`
|
|
- Location: `~/mql-trading-bots/`
|
|
|
|
### OrdersEA Strategy
|
|
**Type:** Grid/Layering/Basket Trading EA
|
|
|
|
**How it works:**
|
|
1. Defines a price range with `HIGH` and `LOW` parameters (central zone)
|
|
2. Places multiple small pending orders at intervals (`Entry` spacing)
|
|
3. Above HIGH: Layer of BUY STOP orders
|
|
4. Below LOW: Layer of SELL STOP orders
|
|
5. Manages basket of up to 600 trades
|
|
6. Calculates average price for exit
|
|
7. Equity-based lot sizing option
|
|
|
|
**Key Parameters:**
|
|
- `HIGH` / `LOW` - Central range boundaries
|
|
- `Entry` - Spacing between trade levels
|
|
- `Lots` - Size per trade
|
|
- `TP` - Take profit per level
|
|
- `TRADE_RANGE` - Trading range in pips
|
|
- `MaxTrades` - Up to 600
|
|
|
|
**Risk Management:**
|
|
- `EquityFactorPercent` - Dynamic lot sizing
|
|
- `TakeProfitLevelDollarAmount` - Basket profit target
|
|
- `GetOut` - Emergency exit flag
|
|
|
|
**Status:** Ready for use on MT4 or MT5
|