Schau, wie man Roboter kostenlos herunterladen kann
Finden Sie uns auf Facebook!
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
Expert Advisors

Coin Flip - Experte für den MetaTrader 5

Veröffentlicht:
Vladimir Karputov
Ansichten:
618
Rating:
(16)
Veröffentlicht:
2018.06.27 13:43
Coin Flip.mq5 (67.45 KB) ansehen
Benötigen Sie einen Roboter oder Indikator, der auf diesem Code basiert? Bestellen Sie ihn im Freelance-Bereich Zum Freelance

Nach einer Idee von: Vladimir Gribachev.

MQL5-Code von: Vladimir Karputov.

Ein EA ohne irgendwelche Indikatoren: Position werde (pseudo-) zufällig eröffnet. Der kann die aktuelle in zwei Sprachen anzeigen:

Coin Flip Handelsinfo

Trailing modifiziert Stop Loss der offenen Positionen. im Falle eines verlustes wird auf Martingale umgeschaltet. Wie werden Verluste behandelt: Mit OnTradeTransaction erfassen wir DEAL_REASON_SL - es wird das Vorzeichen erfasst:

//+------------------------------------------------------------------+
//| TradeTransaction Funktion                                        |
//+------------------------------------------------------------------+
void OnTradeTransaction(const MqlTradeTransaction &trans,
                        const MqlTradeRequest &request,
                        const MqlTradeResult &result)
  {
//--- Abfrage des Positionstyp als Wert der Enumeration 
   ENUM_TRADE_TRANSACTION_TYPE type=trans.type;
//--- Falls die Transaktion das Ergebnis von Additionen geschlossener Positionen ist
   if(type==TRADE_TRANSACTION_DEAL_ADD)
     {
      long     deal_ticket       =0;
      long     deal_order        =0;
      long     deal_time         =0;
      long     deal_time_msc     =0;
      long     deal_type         =-1;
      long     deal_entry        =-1;
      long     deal_magic        =0;
      long     deal_reason       =-1;
      long     deal_position_id  =0;
      double   deal_volume       =0.0;
      double   deal_price        =0.0;
      double   deal_commission   =0.0;
      double   deal_swap         =0.0;
      double   deal_profit       =0.0;
      string   deal_symbol       ="";
      string   deal_comment      ="";
      string   deal_external_id  ="";
      if(HistoryDealSelect(trans.deal))
        {
         deal_ticket       =HistoryDealGetInteger(trans.deal,DEAL_TICKET);
         deal_order        =HistoryDealGetInteger(trans.deal,DEAL_ORDER);
         deal_time         =HistoryDealGetInteger(trans.deal,DEAL_TIME);
         deal_time_msc     =HistoryDealGetInteger(trans.deal,DEAL_TIME_MSC);
         deal_type         =HistoryDealGetInteger(trans.deal,DEAL_TYPE);
         deal_entry        =HistoryDealGetInteger(trans.deal,DEAL_ENTRY);
         deal_magic        =HistoryDealGetInteger(trans.deal,DEAL_MAGIC);
         deal_reason       =HistoryDealGetInteger(trans.deal,DEAL_REASON);
         deal_position_id  =HistoryDealGetInteger(trans.deal,DEAL_POSITION_ID);

         deal_volume       =HistoryDealGetDouble(trans.deal,DEAL_VOLUME);
         deal_price        =HistoryDealGetDouble(trans.deal,DEAL_PRICE);
         deal_commission   =HistoryDealGetDouble(trans.deal,DEAL_COMMISSION);
         deal_swap         =HistoryDealGetDouble(trans.deal,DEAL_SWAP);
         deal_profit       =HistoryDealGetDouble(trans.deal,DEAL_PROFIT);

         deal_symbol       =HistoryDealGetString(trans.deal,DEAL_SYMBOL);
         deal_comment      =HistoryDealGetString(trans.deal,DEAL_COMMENT);
         deal_external_id  =HistoryDealGetString(trans.deal,DEAL_EXTERNAL_ID);
        }
      else
         return;
      if(deal_symbol==m_symbol.Name() && deal_magic==m_magic)
         if(deal_entry==DEAL_ENTRY_OUT)
           {
            PrevBars=0;
            if(deal_reason==DEAL_REASON_SL && deal_commission+deal_swap+deal_profit<0.0)
               last_lots_sl=deal_volume;
            else
               last_lots_sl=0.0;
           }
     }
  }


Eingabeparameter

  • Stop Loss - Stop Loss;
  • Take Profit - Take Profit;
  • Trailing Stop - Trailing;
  • Trailing Step - Schrittweite der Trailing-Stops;
  • Lots - Lotgröße wird manuell bestimmt (wenn Lots größer Null ist, dann muss Risk gleich Null sein);
  • Risk - Lotgröße wird automatisch berechnet (wenn Risk größer Null ist, dann muss Lots gleich Null sein);
  • Martingale - Erhöhungsrate der Lotgröße, wenn die die letzte Position durch Stop-Loss mit einem Verlust geschlossen wurde und der Gewinnzuwachs negativ war;
  • Max lots - Maximalgröße der Positionen; wird diese Größe überschritten wird, beendet sich der EA;
  • magic number - eindeutiger Identifikator, Magicnummer des EAs.

Dann wurde der Test beendet (der EA entfernte sich aus dem Chart), da die Größe des Parameters Max lots überschritten wurde:

Coin Flip

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

InvertCandle_Plus InvertCandle_Plus

Der invertierte Chart des aktuellen Handelsinstruments mit der Anzeige von Ask und Bid.

AnchoredMomentum_x10 AnchoredMomentum_x10

Der AnchoredMomentum_x10 Indikator zeigt die Positionierung des Indikators AnchoredMomentum von zehn verschiedenen Zeitrahmen.

BrainTrend2_V2 BrainTrend2_V2

Der Indikator BrainTrend2 erzeugt Hinweise und sendet Emails und Push-Benachrichtigung, wenn der Indikator seine Farbe wechselt.

BrainTrend2Stop_HTF BrainTrend2Stop_HTF

Der Indikator BrainTrend2Stop mit in den Eingabeparameter bestimmbarem Zeitrahmen.