Schau, wie man Roboter kostenlos herunterladen kann
Finden Sie uns auf Twitter!
und werden Sie Mitglied unserer Fangruppe
Interessantes Skript?
Veröffentliche einen Link auf das Skript, damit die anderen ihn auch nutzen können
Hat Ihnen das Skript gefallen?
Bewerten Sie es im Terminal MetaTrader 5
Bibliotheken

StopLoss Nachlaufklassen-Bibliothek für MQL5 - Bibliothek für den MetaTrader 5

Ansichten:
104
Rating:
(6)
Veröffentlicht:
\MQL5\Include\Trailings\
Trailings.mqh (107.4 KB) ansehen
\MQL5\Experts\Trailings\
MQL5 Freelance Benötigen Sie einen Roboter oder Indikator, der auf diesem Code basiert? Bestellen Sie ihn im Freelance-Bereich Zum Freelance

Universelle Klassenbibliothek zur Implementierung verschiedener StopLoss-Trailing-Strategien in Handelsrobotern. Die Bibliothek ermöglicht es Ihnen, StopLoss von offenen Positionen durch einen festen Abstand vom Preis, sowie durch die Werte von beliebten Indikatoren flexibel zu verwalten: Parabolic SAR, AMA, DEMA, FRAMA, MA, TEMA, VIDYA und beliebige Ebene.

Die Bibliothek bietet eine bequeme Möglichkeit, Ihrem MQL5 Expert Advisor verschiedene Arten von StopLoss-Trailing hinzuzufügen. Fügen Sie einfach die benötigte Klasse ein, konfigurieren Sie die Parameter und rufen Sie die Methode Run() in OnTick() auf.

Kopfzeile

#include <Trailings\Trailings.mqh>

Struktur der Klasse

Klasse Zweck Beispiele für die Verwendung
CSimpleTrailing Basisklasse des Preis-Trailing (einfaches Trailing)
//--- Verbindung 
#include <Trailings\Trailings.mqh>

//--- Weltweit
CSimpleTrailing trail;

//--- In OnInit():
trail.SetSymbol(_Symbol);
trail.SetMagicNumber(123);
trail.SetStopLossOffset(100);
trail.SetActive(true);

//--- In OnTick():
trail.Run();

CTrailingByInd Basisklasse für Trailing nach Indikator Wird von geerbten Klassen verwendet
CTrailingBySAR Trailing durch Parabolic SAR Indikator
//--- Verbindung 
#include <Trailings\Trailings.mqh>

//--- Weltweit
CTrailingBySAR trailSAR;

//--- In OnInit():
trailSAR.Initialize(_Symbol, PERIOD_M15, 0.02, 0.2);
trailSAR.SetActive(true);

//--- In OnTick():
trailSAR.Run();

CTrailingByAMA Trailing durch Adaptive Moving Average
//--- Verbindung 
#include <Trailings\Trailings.mqh>

//--- Weltweit
CTrailingByAMA trailAMA;

//--- In OnInit():
trailAMA.Initialize(_Symbol, PERIOD_H1, 9, 2, 30, 0, PRICE_CLOSE);
trailAMA.SetActive(true);

//--- In OnTick():
trailAMA.Run();

CTrailingByDEMA Nachlaufender doppelter exponentieller gleitender Durchschnitt
//--- Verbindung 
#include <Trailings\Trailings.mqh>

//--- Weltweit
CTrailingByDEMA trailDEMA;

//--- In OnInit():
trailDEMA.Initialize(_Symbol, PERIOD_H1, 14, 0, PRICE_CLOSE);
trailDEMA.SetActive(true);

//--- In OnTick():
trailDEMA.Run();

CTrailingByFRAMA Fractal Adaptive Moving Average nachlaufend
//--- Verbindung 
#include <Trailings\Trailings.mqh>

//--- Weltweit
CTrailingByFRAMA trailFRAMA;

//--- In OnInit():
trailFRAMA.Initialize(_Symbol, PERIOD_H1, 14, 0, PRICE_CLOSE);
trailFRAMA.SetActive(true);

//--- In OnTick():
trailFRAMA.Run();

CTrailingByMA Gleitender Durchschnitt Trailing
//--- Verbindung 
#include <Trailings\Trailings.mqh>

//--- Weltweit
CTrailingByMA trailMA;

//--- In OnInit():
trailMA.Initialize(_Symbol, PERIOD_H1, 20, 0, MODE_EMA, PRICE_CLOSE);
trailMA.SetActive(true);

//--- In OnTick():
trailMA.Run();

CTrailingByTEMA Dreifacher exponentieller gleitender Durchschnitt nachlaufend
//--- Verbindung 
#include <Trailings\Trailings.mqh>

//--- Weltweit
CTrailingByTEMA trailTEMA;

//--- In OnInit():
trailTEMA.Initialize(_Symbol, PERIOD_H1, 14, 0, PRICE_CLOSE);
trailTEMA.SetActive(true);

//--- In OnTick():
trailTEMA.Run();

CTrailingByVIDYA Trailing Variable Index Dynamischer Durchschnitt
//--- Verbindung 
#include <Trailings\Trailings.mqh>

//--- Weltweit
CTrailingByVIDYA trailVIDYA;

//--- In OnInit():
trailVIDYA.Initialize(_Symbol, PERIOD_H1, 9, 12, 0, PRICE_CLOSE);
trailVIDYA.SetActive(true);

//--- In OnTick():
trailVIDYA.Run();

CTrailingByValue Trailing auf einem bestimmten Niveau
//--- Verbindung 
#include <Trailings\Trailings.mqh>

//--- Weltweit
CTrailingByValue trailValue;

//--- In OnInit():
trailValue.SetSymbol(_Symbol);
trailValue.SetActive(true);

//--- In OnTick():
trailValue.Run(customSLBuy, customSLSell);


Parameter einstellen:

  • SetSymbol(symbol) - Einstellung des Handelssymbols;
  • SetMagicNumber(magic) - Einstellen der magischen Zahl;
  • SetStopLossOffset(offset) - Einstellung des StopLoss-Offsets vom Preis/Indikator;
  • SetTrailingStart(start) - Einstellen des Mindestgewinns für die Trailing-Aktivierung;
  • SetTrailingStep(step) - Einstellung des Schrittes der StopLoss-Bewegung;
  • SetSpreadMultiplier(value) - Einstellen des Spread-Multiplikators für StopLevel;
  • SetActive(flag) - Aktivierung/Deaktivierung des Trailing.

Für Indikatorklassen - zusätzliche Indikatorparameter (Perioden, Preistypen, Methoden usw.).

Hier ein Beispiel für die Funktionsweise des Parabolic SAR-Trawls in Verbindung mit dem Standard-Expert Advisor \MQL5\Experts\Advisors\ExpertMACD.mq5:


Weitere Details zum Thema dieser Trawls finden Sie in den Artikeln

  1. Wie man Trailing Stop auf Parabolic SAR Indikator hinzufügen
  2. Wie man eine beliebige Art von Trailing Stop erstellt und mit einem Expert Advisor verbindet

Trailings.mqh ist ein einfacher Weg, um einen Trailing StopLoss zu Ihrem MQL5 Expert Advisor hinzuzufügen.
Verbinden Sie die notwendige Klasse, konfigurieren Sie die Parameter und rufen Sie *.Run() in OnTick auf.

Wenn Ihr EA einen Zyklus zum Aufzählen seiner Positionen hat, können Sie die Run()-Methode des Trailing mit dem Ticket der ausgewählten Position aufrufen:

Run(const ulong pos_ticket);

Im allgemeinen einfachen Fall wäre dies im OnTick()-Handler der Fall:

for(int i=PositionsTotal()-1; i>=0; i--) 
  { 
   trailing_simple.Run(PositionGetTicket(i)); 
  } 



Übersetzt aus dem Russischen von MetaQuotes Ltd.
Originalpublikation: https://www.mql5.com/ru/code/63926

Bollinger Bands with post outer band smoothing Bollinger Bands with post outer band smoothing

Bollinger Bänder mit kontrollierbarer Glättung des äußeren Bandes (Post Smoothing)

Linear Regression Value (apply to) Linear Regression Value (apply to)

Linearer Regressionswert-Indikator mit einer Option, mit der er auf einen anderen Indikator angewendet werden kann

Pinbar Detector Pinbar Detector

Dieser MQL5-Indikator identifiziert aufwärts gerichtete (bullish) und abwärts gerichtete (bearish) Pinbars, die mit anpassbaren Pfeilen angezeigt werden (lime für aufwärts, rot für abwärts). Er ermöglicht die Feinabstimmung von Erkennungsparametern wie Tail Body Ratio und Protrusion. Pop-up- und Push-Benachrichtigungen signalisieren neue Pinbars. Ideal für Händler, die präzise Umkehrmuster erkennen möchten.

Einfacher Expert Advisor basierend auf den Indikatoren WPR, Bollinger Bands und ATR Einfacher Expert Advisor basierend auf den Indikatoren WPR, Bollinger Bands und ATR

Eine einfache Strategie, die auf den Signalen von zwei Indikatoren basiert: Williams' Percent Range (WPR) und Bollinger Bands (BB). Eine Position wird nur eröffnet, wenn die Signale der beiden Indikatoren übereinstimmen.