Systemhandel

Risk Manager EA: Der perfekte Assistent für MetaTrader 4
MetaTrader4
Risk Manager EA: Der perfekte Assistent für MetaTrader 4

Um die besten Ergebnisse zu erzielen, solltest du deine eigene technische Analyse (TA) durchführen. Du entscheidest, in welche Richtung der EA die Trades platzieren soll (sowohl Long- als auch Short-Trades sind möglich, jedoch funktioniert Hedging nicht). Der EA wartet auf ein passendes Setup und setzt die Trades für dich um. Die Parameter Level und Length beziehen sich auf das Niveau und die Länge der Rücksetzer. Je länger die Length eingestellt ist, desto stärker wird der EA in Positionen gehen. Ein höheres Level bedeutet, dass der EA nach tieferen Rücksetzern sucht. Close PL ist der maximal zulässige schwimmende Verlust, bevor der EA alle Positionen schließt. Die Gewinn- und Risikolimite sind die Parameter, die du anpassen musst, um anzugeben, wie viel Gewinn bzw. Risiko du mit dem gegebenen Signal erzielen möchtest. Der Kapitalparameter wird auf dein Konto vor der Verbindung des EAs gesetzt. Falls du einen schwimmenden Verlust oder Gewinn hast, möchtest du diesen vielleicht anpassen, aber der Standardwert von 0 geht davon aus, dass es sich um dein anfängliches Kapital handelt. Wenn du mehrere Währungspaare handelst, wird die Hedging-Funktion nicht funktionieren, also wird nichts abgesichert. Stelle sicher, dass du das Multipairtrading ausschaltest, wenn du nur ein Paar handelst und die Hedging-Funktion nutzen möchtest. Die Hedging-Funktion sichert deine Position ab, sobald das Hedgelevel erreicht ist, wobei das Hedgelevel den verbleibenden Risikoanteil angibt und im Verhältnis zum festgelegten Verhältnis steht. Maxsize ist die größte Position, in die der EA skalieren kann, und Layers ist die Anzahl der Positionen, in die du die Maxsize aufteilen möchtest. Zum Beispiel, wenn du 1 Lot eines Instruments kaufen und 10 Mal skalieren möchtest, wäre Maxsize = 1 und Layers = 10.

2023.04.08
Grid-Trading-Algorithmus für volatile Märkte – Dein Expert Advisor für MetaTrader 4
MetaTrader4
Grid-Trading-Algorithmus für volatile Märkte – Dein Expert Advisor für MetaTrader 4

Wenn du mit dem Grid-Trading-Algorithmus arbeiten möchtest, sind hier einige wichtige Parameter, die du beachten solltest: Tp: Dies ist eine Zahl, die angibt, wann der Roboter Gewinne realisiert. Er nimmt Gewinne in Höhe von Tp * investiertem Geld entgegen. Eine Empfehlung wäre, zwischen 0,01 und 0,1 zu wählen. SlowMovingAverage: Dies ist der Zeitraum des gleitenden Durchschnitts, der hilft, den Trend zu bestimmen. Multiplier: Dieser Faktor beeinflusst die Volumen der nächsten Order im Grid. Die nächste Order wird mit dem Multiplier * dem Volumen der letzten Order platziert. TimeFrame: Hier legst du den Zeitrahmen in Minuten fest. Empfehlenswert sind 1 Stunde (60 Minuten) oder 15 Minuten. Der Expert Advisor (EA) verfügt über eine Funktion TotalOrderLots(), die alle eingesetzten Lot-Größen zurückgibt. Eine weitere Funktion CalcMaxLot zeigt dir die maximale Lotzahl, die du handeln kannst. Die Funktion CalcGridLot gibt dir die Anfangslot-Größe mit den gegebenen Parametern für ein Wertpapier zurück. Zusätzlich gibt es Funktionen für bearish und bullish Engulfing-Candlestick-Muster, die einen Wert zurückgeben, wenn eines dieser Muster auftritt. Die Funktion OpenOrderProfits zeigt dir alle Profite der offenen Orders an, während CloseallOrders alle offenen Orders schließt (mit mehrmaliger Überprüfung). Der EA platziert Grid-Orders basierend auf den ATR-Werten.

2023.01.27
AK-47 Scalper EA: Die perfekte Handelssoftware für MetaTrader 4
MetaTrader4
AK-47 Scalper EA: Die perfekte Handelssoftware für MetaTrader 4

1. Eingabeparameter #define ExtBotName "AK-47 Scalper EA" //Bot Name #define Version "1.00" //--- Eingabeparameter extern string EASettings = "---------------------------------------------"; //-------- &lt;EA Einstellungen&gt; -------- input int InpMagicNumber = 124656; //Magic Number extern string TradingSettings = "---------------------------------------------"; //-------- &lt;Handelseinstellungen&gt; -------- input double Inpuser_lot = 0.01; //Lots input double InpSL_Pips = 3.5; //Stoploss (in Pips) input double InpMax_spread = 0.5; //Maximal erlaubter Spread (in Pips) (0 = floating) extern string MoneySettings = "---------------------------------------------"; //-------- &lt;Geldmanagement&gt; -------- input bool isVolume_Percent = true; //Erlauben Sie Volumen in Prozent input double InpRisk = 3; //Risikoanteil des Kontostands (%) input string TimeSettings = "---------------------------------------------"; //-------- &lt;Handelszeit Einstellungen&gt; -------- input bool InpTimeFilter = true; //Handelszeit Filter input int InpStartHour = 2; //Startstunde input int InpStartMinute = 30; //Startminute input int InpEndHour = 21; //Endstunde input int InpEndMinute = 0; //Endminute 2. Initialisierung der lokalen Variablen //--- Variablen int Pips2Points; // Slippage 3 Pips double Pips2Double; // Stoploss 15 Pips int InpMax_slippage = 3; // Maximal erlaubte Slippage bool isOrder = false; // nur 1 Order öffnen int slippage; string strComment = ""; 3. Hauptcode a/ Initialisierungsfunktion des EAs int OnInit() { //--- // 3 oder 5 Ziffern erkennen // Pip und Punkt if (Digits % 2 == 1) { Pips2Double = _Point * 10; Pips2Points = 10; slippage = 10 * InpMax_slippage; } else { Pips2Double = _Point; Pips2Points = 1; slippage = InpMax_slippage; } //--- return(INIT_SUCCEEDED); } b/ Tick-Funktion des EAs void OnTick() { //--- if(IsTradeAllowed() == false) { Comment("AK-47 EA\nHandel nicht erlaubt."); return; } MqlDateTime structTime; TimeCurrent(structTime); structTime.sec = 0; //Startzeit setzen structTime.hour = InpStartHour; structTime.min = InpStartMinute; datetime timeStart = StructToTime(structTime); //Endzeit setzen structTime.hour = InpEndHour; structTime.min = InpEndMinute; datetime timeEnd = StructToTime(structTime); double acSpread = MarketInfo(Symbol(), MODE_SPREAD); StopLevel = MarketInfo(Symbol(), MODE_STOPLEVEL); strComment = "\n" + ExtBotName + " - v." + (string)Version; strComment += "\nGMT Zeit = " + TimeToString(TimeGMT(),TIME_DATE|TIME_SECONDS); strComment += "\nHandelszeit = [" + (string)InpStartHour + "h" + (string)InpStartMinute + " --> " + (string)InpEndHour + "h" + (string)InpEndMinute + "]"; strComment += "\nAktueller Spread = " + (string)acSpread + " Punkte"; strComment += "\nAktueller Stopp-Level = " + (string)StopLevel + " Punkte"; Comment(strComment); //Werte aktualisieren UpdateOrders(); TrailingStop(); //Handelszeit überprüfen if(InpTimeFilter) { if(TimeCurrent() >= timeStart && TimeCurrent() < timeEnd) { if(!isOrder) OpenOrder(); } } else { if(!isOrder) OpenOrder(); } } 3.1 Signal zur Ordereröffnung berechnen void OpenOrder(){ double TP = 0; double SL = 0; string comment = ExtBotName; //Lots berechnen double lot1 = CalculateVolume(); double OpenPrice = NormalizeDouble(Bid - (StopLevel * _Point) - (InpSL_Pips/2) * Pips2Double, Digits); SL = NormalizeDouble(Ask + StopLevel * _Point + InpSL_Pips/2 * Pips2Double, Digits); if(CheckSpreadAllow()) //Spread überprüfen { if(!OrderSend(_Symbol, OP_SELLSTOP, lot1, OpenPrice, slippage, SL, TP, comment, InpMagicNumber, 0, clrRed)) Print(__FUNCTION__,"--> OrderSend Fehler ", GetLastError()); } } 3.2 Volumen berechnen double CalculateVolume() { double LotSize = 0; if(isVolume_Percent == false) { LotSize = Inpuser_lot; } else { LotSize = (InpRisk) * AccountFreeMargin(); LotSize = LotSize / 100000; double n = MathFloor(LotSize/Inpuser_lot); LotSize = n * Inpuser_lot; if(LotSize < Inpuser_lot) LotSize = Inpuser_lot; if(LotSize > MarketInfo(Symbol(),MODE_MAXLOT)) LotSize = MarketInfo(Symbol(),MODE_MAXLOT); if(LotSize < MarketInfo(Symbol(),MODE_MINLOT)) LotSize = MarketInfo(Symbol(),MODE_MINLOT); } return(LotSize); } 3.3 Der EA hat eine "Trailing Stop"-Funktion, SL wird jedes Mal angepasst, wenn sich der Preis ändert (nach unten) void TrailingStop() { for(int i = OrdersTotal() - 1; i >= 0; i--) { if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) { if((OrderMagicNumber() == InpMagicNumber) && (OrderSymbol() == Symbol())) { //Für Verkaufsorder if(OrderType() == OP_SELL) { double SL_in_Pip = NormalizeDouble(OrderStopLoss() - (StopLevel * _Point) - Ask, Digits) / Pips2Double; if(SL_in_Pip > InpSL_Pips){ double newSL = NormalizeDouble(Ask + (StopLevel * _Point) + InpSL_Pips * Pips2Double, Digits); if(!OrderModify(OrderTicket(), OrderOpenPrice(), newSL, OrderTakeProfit(), 0, clrRed)) { Print(__FUNCTION__,"--> OrderModify Fehler ", GetLastError()); continue; } } } //Für Verkaufs-Stopp-Order else if(OrderType() == OP_SELLSTOP) { double SL_in_Pip = NormalizeDouble(OrderStopLoss() - (StopLevel * _Point) - Ask, Digits) / Pips2Double; if(SL_in_Pip < InpSL_Pips/2){ double newOP = NormalizeDouble(Bid - (StopLevel * _Point) - (InpSL_Pips/2) * Pips2Double, Digits); double newSL = NormalizeDouble(Ask + (StopLevel * _Point) + (InpSL_Pips/2) * Pips2Double, Digits); if(!OrderModify(OrderTicket(), newOP, newSL, OrderTakeProfit(), 0, clrRed)) { Print(__FUNCTION__,"--> Modify PendingOrder Fehler!", GetLastError()); continue; } } } } } } }

2023.01.14
XP Forex Trade Manager MT4: Dein perfekter Helfer für MetaTrader 4
MetaTrader4
XP Forex Trade Manager MT4: Dein perfekter Helfer für MetaTrader 4

Der Forex Trade Manager MT4 erleichtert dir die Verwaltung deiner offenen Aufträge in MetaTrader 4. Wenn du einen neuen Auftrag eröffnest, setzt der Manager automatisch Stop Loss und Take Profit. Wenn sich der Preis bewegt, kann das Programm den Stop Loss auf Break Even (Stop Loss = Eröffnungspreis) oder kontinuierlich als Trailing Stop anpassen, um deine Gewinne zu sichern. Der Forex Trade Manager kann nur Aufträge für die aktuellen Symbole verwalten (wo der Expert Advisor aktiv ist) oder für alle offenen Aufträge, unabhängig vom Symbol, und die Stop Loss und Take Profit vom Broker verbergen. Dies ist eine Strategie zur Verwaltung von manuell geöffneten Trades (ob auf allen Symbolen oder nur dem aktuellen Diagramm-Symbol) durch: Festlegung von Stop Loss und/oder Take Profit in Pips Trailing Stop-Funktion, die den SL an den Preis anpasst Break Even, das den SL auf BE bei einer festgelegten Distanz anhebt Die SL/TP können entweder vom Broker (standardmäßig) oder im Stealth-Modus verwaltet werden – versteckt vor dem Broker. Parameter: „SLTP Params“: Stop Loss – Stop Loss in Pips für Trades Take Profit – Take Profit in Pips für Trades „Break Even“: UseBreakEven (true/false) – erlaubt die Nutzung der Break-Even-Funktion für offene Trades BEActivation – Gewinn in Pips, wenn die Break-Even-Funktion aktiviert wird BELevel – zusätzliche Distanz von BE in Pips, wenn der SL durch die Break-Even-Funktion gesetzt wird „Trailing Stop“: UseTrailingStop (true/false) – erlaubt die Nutzung der Trailing Stop-Funktion für offene Trades TSStart – Gewinn in Pips, wenn die Trailing Stop-Funktion aktiviert wird TSStep – minimale Differenz in Pips zwischen neuem und aktuellem SL, um den SL durch die Trailing Stop-Funktion zu verschieben TSDistance – Distanz vom aktuellen Preis in Pips, wenn der SL durch die Trailing Stop-Funktion gesetzt wird „Behavior“: StealthMode (true/false) – versteckt SL/TP-Level vom Broker, und der EA schließt Trades programmatisch auf diesen Levels OnlyCurrentPair (true/false) – erlaubt die Verwaltung von Trades nur vom aktuellen Diagramm-Symbol (true) oder von allen Paaren (false) Info: Alle Parameter für Trades und Funktionen können in den Einstellungen des EA angepasst werden. Der Forex Trade Manager zeigt zudem auf dem Chart Informationen über den aktuellen Tagesgewinn/-verlust in Pips und Kontowährung an.

2023.01.10
Optimieren Sie Ihre Handelsstrategien mit dem XP Forex Trade Manager Grid für MetaTrader 4
MetaTrader4
Optimieren Sie Ihre Handelsstrategien mit dem XP Forex Trade Manager Grid für MetaTrader 4

Der Forex Trade Manager Grid MT4 ist Ihr zuverlässiger Partner beim Management von Handelsaufträgen und hilft Ihnen, Ihre Ziele zu erreichen. Alles, was Sie tun müssen, ist den ersten Auftrag mit einem Take Profit zu platzieren, den Expert Advisor (EA) zu starten und die gewünschten Profit-Pips in den Parametern einzustellen. Der EA übernimmt das Management Ihrer Positionen und sammelt die festgelegte Anzahl an Pips. Diese Strategie eignet sich hervorragend für die Verwaltung von manuell eröffneten Trades auf dem aktuellen Währungspaar. Die Strategie fügt Positionen zu bereits offenen Trades hinzu, wobei ein Grid Management verwendet wird (mit einem gewählten Abstand in Pips zwischen den Trades) – bis zu 15 Trades (oder weniger) sind möglich. Die ersten bis zu 3 Trades werden mit individuellen Take Profits verwaltet, während der EA ab dem 4. Trade das gesamte Grid auf einem gemeinsamen Niveau (Break-even) schließt. Nach dem Schließen eines Trades auf TP kann dieser erneuert werden. Der gesamte Zyklus kann geschlossen werden, wenn der Verlust größer ist als der erlaubte Risiko-Balance-Prozentsatz. Parameter: Zusätzliche Handelsparameter: AddNewTradeAfter – Abstand in Pips vom letzten Trade, nach dem neue Trades zum Grid hinzugefügt werden Take Profit TakeProfit1Total (Zahl) – Gesamt-TP in Pips, der von der ersten Position benötigt wird TakeProfit1Partitive – initialer TP in Pips für die erste Position im Zyklus TakeProfit1Offset – minimaler Abstand in Pips vom Take Profit der zuletzt geschlossenen ersten Position, der erforderlich ist, um diesen ersten Trade zu erneuern TakeProfit 2/3 – individueller TP in Pips für die zweite/dritte Position im Zyklus TakeProfit 4/5/6/…15Total – Gesamt-TP in Pips von allen Positionen im Zyklus (für 4 oder mehr offene Trades) Handelsparameter: MaxOrders – maximal erlaubte Anzahl von Trades im Grid Risk Balance % – maximal erlaubter Verlust als Prozentsatz des Kontostands (schließt alle offenen Positionen) Lots – Lotgröße für Trades, die vom EA eröffnet werden Slippage – erlaubte Slippage in Punkten Info: Alle Parameter für Trades und Funktionen sind in den Einstellungen des EA anpassbar. Der Forex Trade Manager Grid zeigt zudem auf dem Chart Informationen über den Gewinn/Verlust des aktuellen Zyklus in Pips sowie in der Kontowährung an.

2023.01.10
Mean Reversion Strategie für MetaTrader 4 – So funktioniert’s!
MetaTrader4
Mean Reversion Strategie für MetaTrader 4 – So funktioniert’s!

Die Mean Reversion Strategie ist besonders effektiv auf dem täglichen Zeitrahmen der wichtigsten Forex-Paare. Wenn du neu in der Welt des Tradings bist, solltest du diese Strategie unbedingt ausprobieren. Wichtige Hinweise zur Anwendung Teste die Strategie zuerst auf einem Demokonto. Dieser Expert Advisor (EA) handelt ausschließlich mit dem Preis der offenen Kerze! Wenn du nicht mit steigender Lotgröße traden möchtest, wenn ein Trade verloren geht, setze: IncreaseFactor=0. Einstellungen des Expert Advisors Use_TP_In_Money – Nutze den Take Profit in Geld (Werte: true/false). TP_In_Money – Take Profit in Geld (Werte: 10-100). Use_TP_In_percent – Nutze den Take Profit in Prozent (Werte: true/false). TP_In_Percent – Take Profit in Prozent (Werte: 10-100). ------------[Geld Trailing Stop für mehrere Trades]---------------------- Enable_Trailing – Trailing aktivieren (Werte: true/false). Take Profit in Geld (in aktueller Währung) (Werte: 25-200). Stop Loss in Geld (in aktueller Währung) (Werte: 1-20). -------------------------------------------------------------------------------------- Exit – Schließe Trades, wenn der Trend gegen dich läuft, um Drawdown zu kontrollieren (Werte: true/false). BarsToCount – Anzahl der zu zählenden Kerzen (Werte: 1-20). Lots – Lotgröße (Werte: 0.01-1). Lots size Exponent (Werte: 1.01-2). IncreaseFactor – Wie viel die Lots bei einem Verlust erhöht werden sollen (Werte: 0.001-0.1). Stop_Loss – Stop Loss (Werte: 30-500). / Setze den Wert auf 600 für mehrere Trades. MagicNumber – Magische Zahl (Werte: 1-100000). TakeProfit – Take Profit (Werte: 50-200). / Setze den Wert auf 600 für mehrere Trades. FastMA – Schneller gleitender Durchschnitt (Werte: 1-20). SlowMA – Langsam gleitender Durchschnitt (Werte: 50-200). Mom_Sell – Momentum Verkaufs-Trigger (Werte: 0.1-0.9). Mom_Buy – Momentum Kauf-Trigger (Werte: 0.1-0.9). ---------------------KONTROLLE DES DRAW DOWNS----------------------------- UseEquityStop – (Werte: true/false). TotalEquityRisk – (Werte: 0.01-20). ------------------------------------------------------------------------------- Max_Trades (1-12). FractalNum – Anzahl der Hochs und Tiefs (Werte: 1-10). ----------------WENN DU NUR EINEN TRADE NUTZT:----------------------- ///////////////////////////////////////////////////////////////////// USETRAILINGSTOP – Wenn Trailing Stop verwendet wird (Werte: true/false). WHENTOTRAIL – Wann soll getrackt werden (Werte: 40-100). TRAILAMOUNT – Trail-Betrag (Werte: 40-100). Distance From Candle – Abstand von der Kerze (Werte: 1-100). USECANDELTRAIL – Wenn Trailing Stop verwendet wird (Werte: true/false). X = 2 – Anzahl der Kerzen (Werte: 1-100). USEMOVETOBREAKEVEN – Aktiviere „Break Even“ (Werte: true/false). WHENTOMOVETOBE – Wann „Break Even“ verschieben (Werte: 1-30). PIPSTOMOVESL = 30 – Wie viele Pips, um den Stop Loss zu verschieben (Werte: 1-30). Du solltest diesen EA alle paar Monate optimieren und die oben genannten Werte beibehalten. Du kannst ihn als Hedging Grid EA oder als Einzeltrade EA nutzen. Wie du einen Backtest durchführst: Hier klicken für die Anleitung

2022.10.26
Neuen Bar oder Kerze erkennen – Einfache Methode für MetaTrader 4
MetaTrader4
Neuen Bar oder Kerze erkennen – Einfache Methode für MetaTrader 4

Wenn Sie mit einem Handelsroboter (EA) arbeiten, dann wissen Sie, dass das MetaTrader-Terminal bei jedem neuen Tick den Standard-Ereignisbehandlungsfunktion OnTick() aufruft. Allerdings gibt es keine standardmäßige Ereignisbehandlungsfunktion, die erkennt, wann eine neue Bar (Kerze) beginnt. Um dies zu erkennen, müssen Sie die Öffnungszeit der aktuell letzten Bar überwachen. Sobald sich diese ändert, signalisiert das den Beginn einer neuen Bar, und Sie können darauf reagieren und das Ereignis verarbeiten. Der folgende Beispielcode, der sowohl mit MQL4 als auch mit MQL5 kompatibel ist, zeigt Ihnen, wie Sie dies umsetzen können: // Standard Tick-Ereignisbehandler &nbsp;&nbsp;void OnTick() &nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// Überprüfen auf neue Bar (kompatibel mit MQL4 und MQL5). &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;static datetime dtBarAktuell&nbsp;&nbsp;= WRONG_VALUE; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;datetime dtBarVorherige = dtBarAktuell; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dtBarAktuell&nbsp;&nbsp;= iTime( _Symbol, _Period, 0 ); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bool&nbsp;&nbsp;&nbsp;&nbsp; bNeueBarEreignis&nbsp;&nbsp;= ( dtBarAktuell != dtBarVorherige ); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// Auf ein neues Bar-Ereignis reagieren und es verarbeiten. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if( bNeueBarEreignis ) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// Prüfen, ob dies der erste empfangene Tick ist und entsprechend handeln. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/* Zum Beispiel, wenn der EA zum ersten Mal an ein Chart angehängt wird und &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;die Bar sich irgendwo in der Mitte ihres Fortschritts befindet und &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;es sich nicht tatsächlich um den Beginn einer neuen Bar handelt. */ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if( dtBarVorherige == WRONG_VALUE ) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// Etwas beim ersten Tick oder in der Mitte der Bar tun ... &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// Etwas tun, wenn eine normale Bar beginnt ... &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// Irgendetwas tun, unabhängig von der oben genannten Bedingung ... &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// Etwas anderes tun ... &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// Andere Dinge tun ... &nbsp;&nbsp;}; In dem obigen Code hält die statische Variable die Öffnungszeit der Bar fest, selbst wenn Sie die Funktion OnTick() verlassen. Im Gegensatz zu einer normalen lokalen Variable speichert sie ihren Dateninhalt und gibt ihn nicht beim Verlassen der Funktion frei. Dies ist der Schlüssel, um eine Änderung der Öffnungszeit der aktuellen Bar zu erkennen. Es ist auch wichtig zu beachten, dass der EA beim ersten Platzieren auf einem Chart so reagiert, als ob die Bar gerade eröffnet wurde. Diese Bedingung erfordert eine besondere Behandlung, wenn die Situation anders gehandhabt werden muss. Bitte beachten Sie, dass der gesamte Quellcode meiner CodeBase-Veröffentlichungen jetzt auch im Tab "Öffentliche Projekte" von MetaEditor unter dem Namen "FMIC" verfügbar ist.

2022.04.24
RSI-basierte Überkauft- und Überverkauft-Erkennung für MetaTrader 4
MetaTrader4
RSI-basierte Überkauft- und Überverkauft-Erkennung für MetaTrader 4

Hallo Trader-Kollegen! Heute möchte ich euch einen spannenden Expert Advisor (EA) vorstellen, der auf dem RSI-Indikator basiert. Dieser kleine Helfer ist perfekt, um Signale zu generieren, wenn der RSI die oberen oder unteren Grenzen kreuzt. Wie viele von euch wissen, kann der RSI (Relative Strength Index) uns wertvolle Hinweise darauf geben, ob der Markt überkauft oder überverkauft ist. Ein überkaufter Markt bedeutet, dass die Preise möglicherweise bald fallen, während ein überverkaufter Markt darauf hindeutet, dass die Preise steigen könnten. Der EA erkennt diese Situationen und platziert automatisch Trades für euch. Dadurch verpasst ihr keine Gelegenheit, egal ob ihr gerade aktiv am Trading seid oder nicht! Wie funktioniert der EA genau? Markterkennung: Der EA überwacht kontinuierlich den RSI und erkennt, wenn die Werte die kritischen Schwellen überschreiten. Signal-Generierung: Sobald der RSI über 70 (überkauft) oder unter 30 (überverkauft) liegt, wird ein Signal zur Platzierung eines Trades ausgelöst. Automatisierung: Ihr müsst euch nicht mehr um manuelle Eingriffe kümmern – der EA übernimmt das für euch! In der schnelllebigen Welt des Tradings ist es wichtig, die richtigen Signale zur richtigen Zeit zu erkennen. Mit diesem RSI-basierten EA habt ihr ein nützliches Werkzeug an der Hand, das euch dabei unterstützt. Ich bin gespannt auf eure Erfahrungen und freue mich auf eure Kommentare!

2022.02.01
Erste Vorherige 1 2 3 4 5 6 7 8 9 Nächste Letzte