Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 1133

 
Handel ist deaktiviert .oshıbka
 
--danger--:

prıvet .podzajajajte pojalusta pogu na demo schete ne mogu otkrıt zdelkı

-Gefahr--:
Handel ist deaktiviert .oshıbka
Ist die Schaltfläche avtotorgovly ne najata? Bitte geben Sie den nomer osibki, v jurnale dolzen byti an.
 
Alekseu Fedotov:

Keine Sünden, worauf schwört sie?

Was sind die Compilerfehler?

Das hat etwas damit zu tun, dass die Funktion global sein muss und auf Kommas an Stellen wartet, an denen es keinen Sinn macht, sie zu setzen! Zum Beispiel an der Trennlinie zwischen Informationen über den Broker und das gehandelte Paar

 
GoldenGod:
Ein Ratschlag für einen Dummkopf. Wie kann ich ein Live-Konto eröffnen?
Das hängt vom Broker ab. Gehen Sie auf seine Website und suchen Sie nach der Schaltfläche "Ein echtes Konto eröffnen" oder etwas Ähnlichem. Oder im Privatbüro des Maklers "Ein neues Konto anlegen".
 
Vitalie Postolache:
Was meinen Sie mit "keine"? Sortieren nach Ticket - es wird immer eine Reihenfolge geben und es gibt keinen Widerspruch zur Dokumentation, in der es um die Sortierung nach Seriennummer geht, nicht nach Ticket, das sind unterschiedliche Dinge.
Wenn Sie sich eine Frage stellen:
Wir haben diese Liste von Bestellungen zu einem Zeitpunkt (nach Ticket)
  1. Kaufen #1
  2. Kaufen #2
  3. KaufStopp #3
  4. Verkaufen #4
Die Reihenfolge der Tickets in der Liste ist: #1,#2,#3,#4

In welcher Reihenfolge werden die Tickets nach BuyStop #3 in der Liste erscheinen?

Ist es #1, #2, #4, #3?

Die Eintrittskarten sind also auch keine Garantie für die Ordnungsmäßigkeit.
 
Anton Sokolov:

Ein weiteres Problem, auf das ich gestoßen bin! Urteilen Sie nicht, ich lerne die Sprache seit 2-3 Wochen, vielleicht bin ich einfach nur dumm!

Die Aufgabe des Expert Advisors ist es, den Händler alle 4 Stunden per E-Mail zu benachrichtigen, wenn die freie Marge auf dem Konto einen bestimmten Wert erreicht hat.

In der Betreffzeile der Nachricht müssen Sie den Namen des Brokers und das gehandelte Paar angeben, und im Text der Nachricht "Danger! Die Inanspruchnahme liegt über dem Grenzwert. Ergreifen Sie die erforderlichen Maßnahmen".

Der Compiler funktioniert nicht, ich bin nicht gut in Englisch und ich kann nicht herausfinden, was der Fehler ist!

input  double MessageMail     = 50.0;
double Sag;

void OnTick()
  {
   Sag = NormalizeDouble(100-100*(AccountInfoDouble(ACCOUNT_FREEMARGIN)/AccountInfoDouble(ACCOUNT_BALANCE)), 1);  //находим процент просадки и округляем до 1 знака
    if(Sag > MessageMail && iVolume(NULL,PERIOD_H4,0)<3)                                       //если просадка больше заданного и начата новая свеча на 4ч таймфрейме
     {
     Alert(Symbol(), ": Просадка = ", Sag, " % ", " > ",  MessageMail, " % ");                 //вывести предупреждение в терминале
//Сюда нужно вставить команду SendMail для отправки сообщения, а что и как не понятно
// пробовал bool SendMail( AccountInfoString(ACCOUNT_COMPANY)|Symbol, "Опасность! Просадка привысила допустимое значение. Примите необходимые меры")
//что то не выходит                          
     }
  }


PS: Vielleicht gibt es generell eine einfachere Lösung für diese Art von Problem, aber bisher sehe ich es nur auf diese Weise)

//+------------------------------------------------------------------+
//|                                               exTestSendMail.mq4 |
//|              Copyright 2017, Artem A. Trishkin, Skype artmedia70 |
//|                       https://login.mql5.com/ru/users/artmedia70 |
//+------------------------------------------------------------------+
#property copyright "Copyright 2017, Artem A. Trishkin, Skype artmedia70"
#property link      "https://login.mql5.com/ru/users/artmedia70"
#property version   "1.00"
#property strict

input  double MessageMail     = 50.0;
//---
double Sag=0;
string MailSubject="";
datetime PrevTime=0;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   MailSubject="Mail from EA "+MQLInfoString(MQL_PROGRAM_NAME);
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   //--- Находим процент просадки и округляем до 1 знака
   Sag=NormalizeDouble(100-100*(AccountInfoDouble(ACCOUNT_MARGIN_FREE)/AccountInfoDouble(ACCOUNT_BALANCE)),1);
   //--- Если открыт новый бар на H4
   if(iTime(Symbol(),PERIOD_H4,0) !=PrevTime) {
      //--- если просадка больше заданного
      if(Sag>MessageMail) {
         Alert(Symbol(), ": Просадка = ", DoubleToString(Sag,1), " % ", " > ",  MessageMail, " % ");              //вывести предупреждение в терминале
         string MailText=AccountInfoString(ACCOUNT_COMPANY)+" > Опасность! Просадка ("+DoubleToString(Sag,1)+"%) привысила допустимое значение. Примите необходимые меры.";
         SendMail(MailSubject,MailText);
         }
      PrevTime=iTime(Symbol(),PERIOD_H4,0);
      }
  }
//+------------------------------------------------------------------+
Im Allgemeinen ist es besser, derartige Kontrollen mit einem Timer durchzuführen.
 

Ich danke Ihnen! Zum Versenden von Briefen einrichten!

 

Wie kannder Rückgabewert '' OrderClose muss geprüft werden?????????????????????????????? behoben werden?

 
Vielleicht xamp neu starten
 

Liebe Programmierer, bitte helfen Sie einem Neuling in diesem Geschäft.

Der EA öffnet Kauf- und Verkaufsaufträge nach einer bestimmten Zeitspanne nacheinander. Ich möchte, dass alle früheren Aufträge geändert werden (insbesondere sollen alle früheren Aufträge durch Take Profit des letzten Auftrags geschlossen werden). D.h. wenn der letzte Kaufauftrag und der vorherige Verkaufsauftrag, dann wird der Stop-Loss des vorherigen Auftrags auf das Take-Profit-Niveau des letzten Auftrags gesetzt,

Wenn der vorherige Kauf kauft, dann wird sein TakeProfit auf das Niveau des letzten TakeProfit gesetzt. Der Punkt ist, dass bei der Gewinnmitnahme des letzten Auftrags alle Aufträge geschlossen werden müssen).

Ich hoffe, ich habe es klar und deutlich erklärt, auch wenn es schwer zu verstehen ist, wie es umgesetzt werden soll. Ich danke Ihnen im Voraus.

Ich verstehe, dass wir alle offenen Aufträge durchgehen und sie ändern können, aber wie können wir den letzten Auftrag überspringen?