MQL5 v1.25: Durchbruchwahrscheinlichkeit an den S/R-Labels
User-Wunsch. Der Bot haengt P(break) als drittes CSV-Feld an (R;preis;pct / S;preis;pct), der Indikator schreibt es ins Label: "Widerstand 84.536 · Durchbruch 34%" Quelle = dasselbe kalibrierte Logit-Modell wie der S/R-Auto-Close, heute auf die M30-Level nachtrainiert (AUC 0.72 out-of-sample, Kalibrierung geprueft). Richtung: Widerstand = Bruch nach oben (+1), Support = nach unten (-1); Merkmale identisch zu _sr_close_hint/_stop_approach_hint (M5-Momentum, EMA-Richtung, Abstand/ATR). Abschaltbar via InpShowPBreak. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
6238d6f12e
commit
b23a3d4e5c
+13
-2
@@ -12,7 +12,12 @@
|
||||
//| 4) Der Bot muss laufen (schreibt die CSV alle ~5 s). |
|
||||
//+------------------------------------------------------------------+
|
||||
#property copyright "Oil Trading Bot"
|
||||
#property version "1.24"
|
||||
#property version "1.25"
|
||||
// v1.25 (2026-07-30): S/R-Labels zeigen die DURCHBRUCHWAHRSCHEINLICHKEIT
|
||||
// (User-Wunsch) — der Bot haengt sie als drittes CSV-Feld an (R;preis;pct).
|
||||
// Quelle = dasselbe kalibrierte P(break)-Modell wie der S/R-Auto-Close, auf
|
||||
// die M30-Level nachtrainiert (AUC 0,72 out-of-sample). Niedrig = Level
|
||||
// haelt eher. Abschaltbar via InpShowPBreak.
|
||||
// v1.24 (2026-07-30): Farb-Inputs UMBENANNT — MT5 speichert Input-Werte je
|
||||
// Chart-Instanz und ueberschreibt damit NEUE Defaults, auch nach Recompile
|
||||
// (deshalb blieben die Pfeile gold). Durch die Umbenennung findet MT5 keinen
|
||||
@@ -117,6 +122,7 @@ input int InpZoneAlpha = 10; // Deckkraft der Zonenfuellung in %
|
||||
input bool InpShowPrice = true; // aktuellen Kurs oben rechts anzeigen
|
||||
input int InpPriceSize = 20; // Schriftgroesse des Kurses
|
||||
input int InpLabelSize = 12; // Schriftgroesse der Linien-Beschriftungen (+4 per User-Wunsch)
|
||||
input bool InpShowPBreak = true; // Durchbruchwahrscheinlichkeit am S/R-Label
|
||||
input color InpLabelColor = clrWhite; // Farbe ALLER Linien-Beschriftungen (User-Wunsch: weiss)
|
||||
input color InpPriceColor = clrWhite; // Kurs oben rechts (weiss)
|
||||
// ── Chart-THEME (User-Vorgabe 2026-07-30 „Farben im MT5 wie im Bild") ────────
|
||||
@@ -381,8 +387,13 @@ void Redraw()
|
||||
{
|
||||
double price = StringToDouble(p[1]);
|
||||
if(price <= 0) continue;
|
||||
string lbl = (typ=="R" ? "Widerstand " : "Unterstützung ")
|
||||
// Feld 3 (optional) = P(Durchbruch) in % aus dem kalibrierten Modell des
|
||||
// Bots (User-Wunsch 2026-07-30). Niedrig = Level haelt eher, hoch = bricht
|
||||
// eher. Wird ans Label gehaengt: „Widerstand 84.536 · Durchbruch 34%".
|
||||
string lbl = (typ=="R" ? "Widerstand " : "Unterstuetzung ")
|
||||
+ DoubleToString(price, (int)_Digits);
|
||||
if(InpShowPBreak && k > 2 && StringLen(p[2]) > 0)
|
||||
lbl += " · Durchbruch " + p[2] + "%";
|
||||
color col = (typ=="R" ? InpResColor : InpSupColor);
|
||||
string nm = PFX + typ + "_" + IntegerToString(idx);
|
||||
if(ObjectCreate(0, nm, OBJ_HLINE, 0, 0, price))
|
||||
|
||||
Reference in New Issue
Block a user