Trade-Umrandungen entfernt + Darstellungsfehler behoben (MQL5 v1.22)

User: "entferne die umrandungen fuer trade open und close" + "das bild sieht
komiesch aus" (Screenshot).

(a) Trade-Umrandungen AUS: InpShowTrades=false UND Export im Bot abgeschaltet
    ([trading] export_trade_marks=false) -- spart auch die DB-Abfrage im
    5-s-Export-Takt. Code bleibt reaktivierbar.
(b) Liquiditaets-Trendlinie: RAY_RIGHT entfernt. Eine 60-min-Regression 100 Bars
    in die Zukunft zu verlaengern riss die Linie steil ins Bodenlose (im
    Screenshot deutlich zu sehen). Sie endet jetzt am aktuellen Rand.
(c) CHART_SHIFT_SIZE auf 12% begrenzt (InpShiftPct). Ohne Begrenzung war der
    Shift-Bereich so gross, dass der Kursverlauf links gequetscht stand.

Verifiziert: TR-Zeilen aus sr_levels.csv verschwunden, Rest unveraendert.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Axel Hocks
2026-07-30 18:49:45 +02:00
co-authored by Claude Opus 4.8
parent e40e962db4
commit 73712b5ea7
3 changed files with 29 additions and 4 deletions
+21 -3
View File
@@ -12,7 +12,15 @@
//| 4) Der Bot muss laufen (schreibt die CSV alle ~5 s). |
//+------------------------------------------------------------------+
#property copyright "Oil Trading Bot"
#property version "1.21"
#property version "1.22"
// v1.22 (2026-07-30): Aufraeumen nach User-Feedback „das Bild sieht komisch aus":
// (a) Trade-Umrandungen ENTFERNT (InpShowTrades=false, Export im Bot aus).
// (b) Liquiditaets-Trendlinie nicht mehr RAY_RIGHT — eine 60-min-Regression
// 100 Bars in die Zukunft zu ziehen riss die Linie ins Bodenlose.
// (c) CHART_SHIFT_SIZE begrenzt (InpShiftPct=12 %) — ohne Begrenzung stand
// der Kursverlauf ganz links gequetscht.
// ⚠ MT5 uebernimmt beim Neukompilieren NICHT die neuen Default-Inputs, wenn
// der Indikator schon auf dem Chart liegt: einmal ENTFERNEN und neu aufziehen.
// v1.21 (2026-07-30): Beschriftungen aller Linien RECHTSBUENDIG am rechten
// Chart-Rand (vorher zentriert; ANCHOR_RIGHT_LOWER -> Text endet am Anker,
// laeuft nach links, ragt nicht raus) + Schriftgroesse 8 -> 12 (+4 px,
@@ -82,7 +90,7 @@ input color InpWallAskColor = C'245,158,11'; // Liquidität Angebot (Ask) —
input bool InpShowLiqTrend = true; // Liquiditäts-Trendlinie zeichnen
input color InpLiqTrendColor = clrMagenta; // Liquiditäts-Trend (pink)
input bool InpLiqTrendLabel = false; // Beschriftung der Trendlinie (aus per User-Wunsch)
input bool InpShowTrades = true; // Trade-Kerzen umranden (Eroeffnung/Close)
input bool InpShowTrades = false; // Trade-Kerzen umranden (AUS per User-Wunsch)
input color InpTradeOpenColor = C'134,239,172'; // Eroeffnung — hellgruen
input color InpTradeCloseColor = C'21,128,61'; // Close — dunkelgruen
input bool InpShowLiqZones = true; // Liquiditaetszonen (Equal Highs/Lows)
@@ -106,6 +114,7 @@ input color InpThemeBg = C'13,17,23'; // Hintergrund
input color InpThemeGrid = C'16,21,28'; // Gitternetz (dezent)
input color InpThemeText = C'139,148,158'; // Achsen/Text
input color InpThemeBidLine = clrWhite; // aktuelle Kurslinie (Bid) — weiss
input double InpShiftPct = 12.0; // Platz rechts fuer Pfeile/Labels (% der Chartbreite)
const string PFX = "SRB_"; // Präfix S/R-Linien (aus Datei)
const string RPFX = "SRR_"; // Präfix dynamische Range (aus Chart)
@@ -171,6 +180,10 @@ void ApplyTheme()
// letzten Kerze. Ohne Shift gibt es dort keinen sichtbaren Bereich → die Pfeile
// wären unsichtbar (das war der zweite Grund für „Pfeile werden nicht angezeigt").
ChartSetInteger(0, CHART_SHIFT, true);
// Shift-Bereich klein halten: nur so viel Platz rechts, dass Pfeile und
// Beschriftungen hinpassen. Ohne Begrenzung stand der Kursverlauf ganz links
// gequetscht (User-Feedback „das Bild sieht komisch aus", 2026-07-30).
ChartSetDouble(0, CHART_SHIFT_SIZE, InpShiftPct);
ChartRedraw();
}
//+------------------------------------------------------------------+
@@ -586,7 +599,11 @@ void Redraw()
ObjectSetInteger(0, nm, OBJPROP_COLOR, InpLiqTrendColor);
ObjectSetInteger(0, nm, OBJPROP_STYLE, STYLE_SOLID);
ObjectSetInteger(0, nm, OBJPROP_WIDTH, 2);
ObjectSetInteger(0, nm, OBJPROP_RAY_RIGHT, true);
// ⚠ KEIN RAY_RIGHT: eine 60-min-Regression 100 Bars in die Zukunft zu
// verlängern ergibt keinen Sinn und riss die Linie optisch ins
// Bodenlose (User-Feedback „das Bild sieht komisch aus", 2026-07-30).
// Die Linie endet jetzt am aktuellen Rand.
ObjectSetInteger(0, nm, OBJPROP_RAY_RIGHT, false);
ObjectSetInteger(0, nm, OBJPROP_RAY_LEFT, false);
ObjectSetInteger(0, nm, OBJPROP_BACK, true);
ObjectSetInteger(0, nm, OBJPROP_SELECTABLE, false);
@@ -595,6 +612,7 @@ void Redraw()
{
ObjectMove(0, nm, 0, t1, q1);
ObjectMove(0, nm, 1, t2, q2);
ObjectSetInteger(0, nm, OBJPROP_RAY_RIGHT, false);
}
// Beschriftung der Liquiditäts-Trendlinie: auf User-Wunsch (2026-07-30)
// per Default AUS — der Chart soll sauber bleiben. Die Richtung liest man