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
Ansichten:
1321
Rating:
(36)
Veröffentlicht:
2017.11.09 08:32
Aktualisiert:
2018.02.28 16:06
Benötigen Sie einen Roboter oder Indikator, der auf diesem Code basiert? Bestellen Sie ihn im Freelance-Bereich Zum Freelance

Das Skript "Pending orders UP" setzt ein Raster von Aufträgen über dem aktuellen Preis.


Eingabeparameter

  • Gap for pending orders UP from the current price (in pips) - die Differenz zum aktuellen Preis um die erste Pending-Order zu platzieren.
  • Step between orders UP (in pips) - Differenz zwischen den Pending-Orders.
  • Type of pending orders UP - der Typ der Pending-Order (entweder ein Buy-Stop oder ein Sell-Limit).
  • UP quantity - die Anzahl der zu platzierenden Aufträge.
  • Lots - das Volumen jedes Auftrages.
  • Stop Loss (in pips) - Stop Loss.
  • Take Profit (in pips) - Take Profit.

Das Skript verwendet die schnellstmögliche Versendung von Handelsaufträge zur Platzierung der Pending-Orders durch den asynchronen Modus für die Handelsaufträge:

m_trade.SetAsyncMode(true);

Hier ist ein Beispiel für das Senden von Anfragen für fünf ausstehende Aufträge:

2017.08.28 08:50:22.246 Scripts script Pending orders UP (AUDCAD,Daily) loaded successfully
2017.08.28 08:50:24.095 Trades  '6121033': buy stop 0.01 AUDCAD at 0.99262 sl: 0.99011 tp: 0.99462
2017.08.28 08:50:24.095 Trades  '6121033': buy stop 0.01 AUDCAD at 0.99412 sl: 0.99161 tp: 0.99612
2017.08.28 08:50:24.095 Trades  '6121033': buy stop 0.01 AUDCAD at 0.99562 sl: 0.99311 tp: 0.99762
2017.08.28 08:50:24.096 Trades  '6121033': buy stop 0.01 AUDCAD at 0.99712 sl: 0.99461 tp: 0.99912
2017.08.28 08:50:24.096 Trades  '6121033': buy stop 0.01 AUDCAD at 0.99862 sl: 0.99611 tp: 1.00062
2017.08.28 08:50:24.097 Scripts script Pending orders UP (AUDCAD,Daily) removed

Fünf Aufträge wurden in einer Millisekunde versendet!

Hier ist der ganze Bericht seit dessen Start bis zu seinem Entfernen (die Zeit des ersten Auftrages war 2017.08.28 08:50:24.095):

2017.08.28 08:50:22.246 Scripts script Pending orders UP (AUDCAD,Daily) loaded successfully
2017.08.28 08:50:24.095 Trades  '6121033': buy stop 0.01 AUDCAD at 0.99262 sl: 0.99011 tp: 0.99462
2017.08.28 08:50:24.095 Trades  '6121033': buy stop 0.01 AUDCAD at 0.99412 sl: 0.99161 tp: 0.99612
2017.08.28 08:50:24.095 Trades  '6121033': buy stop 0.01 AUDCAD at 0.99562 sl: 0.99311 tp: 0.99762
2017.08.28 08:50:24.096 Trades  '6121033': buy stop 0.01 AUDCAD at 0.99712 sl: 0.99461 tp: 0.99912
2017.08.28 08:50:24.096 Trades  '6121033': buy stop 0.01 AUDCAD at 0.99862 sl: 0.99611 tp: 1.00062
2017.08.28 08:50:24.097 Scripts script Pending orders UP (AUDCAD,Daily) removed
2017.08.28 08:50:24.169 Trades  '6121033': accepted buy stop 0.01 AUDCAD at 0.99262 sl: 0.99011 tp: 0.99462
2017.08.28 08:50:24.170 Trades  '6121033': order #164991202 buy stop 0.01 / 0.01 AUDCAD at market done in 107.907 ms
2017.08.28 08:50:24.170 Trades  '6121033': accepted buy stop 0.01 AUDCAD at 0.99412 sl: 0.99161 tp: 0.99612
2017.08.28 08:50:24.174 Trades  '6121033': order #164991203 buy stop 0.01 / 0.01 AUDCAD at market done in 78.513 ms
2017.08.28 08:50:24.174 Trades  '6121033': accepted buy stop 0.01 AUDCAD at 0.99562 sl: 0.99311 tp: 0.99762
2017.08.28 08:50:24.175 Trades  '6121033': order #164991204 buy stop 0.01 / 0.01 AUDCAD at market done in 79.283 ms
2017.08.28 08:50:24.175 Trades  '6121033': accepted buy stop 0.01 AUDCAD at 0.99712 sl: 0.99461 tp: 0.99912
2017.08.28 08:50:24.175 Trades  '6121033': accepted buy stop 0.01 AUDCAD at 0.99862 sl: 0.99611 tp: 1.00062
2017.08.28 08:50:24.175 Trades  '6121033': order #164991205 buy stop 0.01 / 0.01 AUDCAD at market done in 79.516 ms
2017.08.28 08:50:24.175 Trades  '6121033': order #164991206 buy stop 0.01 / 0.01 AUDCAD at market done in 79.565 ms

Die Zeit zu der der letzte Auftrag bestätigt wurde ist 2017.08.28 08:50:24.175. Insgesamt benötigen alle Aufträge nur 80 Millisekunden!

Zu Beginn des Skriptes wird die Richtigkeit des angegebenen Volumens der Pending-Order überprüft:

//+------------------------------------------------------------------+
//| Script Programm Start Funktion                                   |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   if(InpLots<=0.0)
     {
      Print("The \"Lots\" can't be smaller or equal to zero");
      return;
     }
//---
   if(!m_symbol.Name(Symbol())) // Festlegen des Symbolnamens
      return;
   if(!RefreshRates())
      return;

   string err_text="";
   if(!CheckVolumeValue(InpLots,err_text))
     {
      Print(err_text);
      return;
     }
//---

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

History Deals and Orders History Deals and Orders

Das Skript' History Deals and Orders' zeigt absolut alle Eigenschaften der Positionen Geschäften und Aufträgen aus der Handelshistorie über einen bestimmten Zeitraum an.

Expert Expert

Eine Bibliothek zum Lesen/Schreiben der Parameter irgendeines Expert Advisors.

Pending orders DOWN Pending orders DOWN

Das Skript platziert mehrere Pending-Orders unter dem aktuellen Preis.

Burg Extrapolator Burg Extrapolator

Der Expert Advisor verwendet Burgs Methode für eine lineare Vorhersage.