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

Das Skript "Pending orders DOWN" setzt ein Raster von Aufträgen unter dem aktuellen Preis.


Eingabeparameter

  • Gap for pending orders DOWN from the current price (in pips) - die Differenz zum aktuellen Preis um die erste Pending-Order zu platzieren.
  • Step between orders DOWN (in pips) - Differenz zwischen den Pending-Orders.
  • Type of pending orders DOWN - der Typ der Pending-Order (entweder ein Buy-Limit oder ein Sell-Stop).
  • DOWN 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 09:00:30.227 Scripts script Pending orders DOWN (AUDCAD,Daily) loaded successfully
2017.08.28 09:00:35.272 Trades  '6121033': sell stop 0.01 AUDCAD at 0.98893 sl: 0.99143 tp: 0.98693
2017.08.28 09:00:35.272 Trades  '6121033': sell stop 0.01 AUDCAD at 0.98743 sl: 0.98993 tp: 0.98543
2017.08.28 09:00:35.273 Trades  '6121033': sell stop 0.01 AUDCAD at 0.98593 sl: 0.98843 tp: 0.98393
2017.08.28 09:00:35.273 Trades  '6121033': sell stop 0.01 AUDCAD at 0.98443 sl: 0.98693 tp: 0.98243
2017.08.28 09:00:35.273 Trades  '6121033': sell stop 0.01 AUDCAD at 0.98293 sl: 0.98543 tp: 0.98093
2017.08.28 09:00:35.274 Scripts script Pending orders DOWN (AUDCAD,Daily) removed

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

Here is the full report, from the script start to its removal (the time of first order sent was 2017.08.28 09:00:35.272):

2017.08.28 09:00:30.227 Scripts script Pending orders DOWN (AUDCAD,Daily) loaded successfully
2017.08.28 09:00:35.272 Trades  '6121033': sell stop 0.01 AUDCAD at 0.98893 sl: 0.99143 tp: 0.98693
2017.08.28 09:00:35.272 Trades  '6121033': sell stop 0.01 AUDCAD at 0.98743 sl: 0.98993 tp: 0.98543
2017.08.28 09:00:35.273 Trades  '6121033': sell stop 0.01 AUDCAD at 0.98593 sl: 0.98843 tp: 0.98393
2017.08.28 09:00:35.273 Trades  '6121033': sell stop 0.01 AUDCAD at 0.98443 sl: 0.98693 tp: 0.98243
2017.08.28 09:00:35.273 Trades  '6121033': sell stop 0.01 AUDCAD at 0.98293 sl: 0.98543 tp: 0.98093
2017.08.28 09:00:35.274 Scripts script Pending orders DOWN (AUDCAD,Daily) removed
2017.08.28 09:00:35.340 Trades  '6121033': accepted sell stop 0.01 AUDCAD at 0.98893 sl: 0.99143 tp: 0.98693
2017.08.28 09:00:35.341 Trades  '6121033': order #164992356 sell stop 0.01 / 0.01 AUDCAD at market done in 68.657 ms
2017.08.28 09:00:35.341 Trades  '6121033': accepted sell stop 0.01 AUDCAD at 0.98743 sl: 0.98993 tp: 0.98543
2017.08.28 09:00:35.342 Trades  '6121033': order #164992357 sell stop 0.01 / 0.01 AUDCAD at market done in 69.645 ms
2017.08.28 09:00:35.342 Trades  '6121033': accepted sell stop 0.01 AUDCAD at 0.98593 sl: 0.98843 tp: 0.98393
2017.08.28 09:00:35.343 Trades  '6121033': order #164992358 sell stop 0.01 / 0.01 AUDCAD at market done in 70.006 ms
2017.08.28 09:00:35.343 Trades  '6121033': accepted sell stop 0.01 AUDCAD at 0.98443 sl: 0.98693 tp: 0.98243
2017.08.28 09:00:35.343 Trades  '6121033': order #164992359 sell stop 0.01 / 0.01 AUDCAD at market done in 70.346 ms
2017.08.28 09:00:35.343 Trades  '6121033': accepted sell stop 0.01 AUDCAD at 0.98293 sl: 0.98543 tp: 0.98093
2017.08.28 09:00:35.343 Trades  '6121033': order #164992360 sell stop 0.01 / 0.01 AUDCAD at market done in 70.312 ms

Die Zeit zu der der letzte Auftrag bestätigt wurde ist 2017.08.28 09:00:35.343. Insgesamt benötigen alle Aufträge nur 71 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/19025

Pending orders UP Pending orders UP

Das Skript "Pending orders UP" platziert mehrere Pending-Orders über dem aktuellen Preis.

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.

Burg Extrapolator Burg Extrapolator

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

Carbophos Carbophos

Der Expert Advisor erstellt ein Raster aus schwebenden (pending) Sell-Limit und Buy-Limit Aufträgen.