und werden Sie Mitglied unserer Fangruppe
Veröffentliche einen Link auf das Skript, damit die anderen ihn auch nutzen können
Bewerten Sie es im Terminal MetaTrader 5
Coin Flip - Experte für den MetaTrader 5
- Veröffentlicht:
- Vladimir Karputov
- Ansichten:
- 618
- Rating:
- Veröffentlicht:
- 2018.06.27 13:43
- 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:
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:
Übersetzt aus dem Russischen von MetaQuotes Ltd.
Originalpublikation: https://www.mql5.com/ru/code/20836
Der invertierte Chart des aktuellen Handelsinstruments mit der Anzeige von Ask und Bid.
AnchoredMomentum_x10Der AnchoredMomentum_x10 Indikator zeigt die Positionierung des Indikators AnchoredMomentum von zehn verschiedenen Zeitrahmen.
Der Indikator BrainTrend2 erzeugt Hinweise und sendet Emails und Push-Benachrichtigung, wenn der Indikator seine Farbe wechselt.
BrainTrend2Stop_HTFDer Indikator BrainTrend2Stop mit in den Eingabeparameter bestimmbarem Zeitrahmen.