Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 1059

 
leonerd:

OK, ich habe mich falsch ausgedrückt. Wir zitieren die Originalquelle:

Struktur des Ergebnisses einer Handelsanfrage (MqlTradeResult)

AlsAntwort aufeine Handelsanfrage zur Platzierung eines Auftrags im Handelssystem gibt der Handelsserver Daten zurück, die die Informationen über das Ergebnis der Verarbeitung der Handelsanfrage in Form einer speziellen vordefinierten Struktur MqlTradeResult enthalten.


p.s. Wo ist das Zitat im Editor? Muss ich in html gehen? Wie ungünstig.

Nach "Code (Alt+S)" kommt "Stil". Klicken Sie auf den Pfeil und sehen Sie "Zitat (Strg+3)".

 
Artyom Trishkin:

Nach "Code (Alt+S)" kommt "Stil". Klicken Sie auf den Pfeil und sehen Sie "Zitat (Strg+3)".

Das ist ja furchtbar :)

 
leonerd:

Hier liegt offensichtlich eine Art logischer Fehler vor. MqlTradeResult ist das Ergebnis einer Handelsoperation.

D.h. wenn Result.price Result.dealprice heißen würde, wäre alles logisch?

 
fxsaber:

D.h. wenn Result.price Result.dealprice hieße, wäre das alles logisch?

Das Feld

Beschreibung

retcode

Rückgabecode des Handelsservers

Angebot

Deal-Ticket, wenn ein Deal durchgeführt wurde. Wird in der HandelsoperationTRADE_ACTION_DEAL gemeldet

Bestellung

Bestellschein, wenn ein Fahrschein ausgestellt worden ist. Benachrichtigung während einerTRADE_ACTION_PENDING-Handelsoperation

Band

Volumen des vom Makler bestätigten Geschäfts. Es hängt von derArt der Auftragsabwicklung ab

Preis

Abgeschlossener Preis, vom Makler bestätigt. Abhängig vomAbweichungsfeld in derGeschäftsanfrage und/oder der Art desGeschäfts

Angebot

Aktueller Geldkurs am Markt (Rücknahmepreis)

fragen Sie

Aktueller Marktgebotspreis (Rücknahmepreise)

Kommentar

Kommentar des Brokers zu der Operation (standardmäßig wird er mit der Dekodierung des Rückgabecodes des Handelsservers gefüllt)

anfrage_id

Anforderungs-ID, die vom Terminal beim Senden an den Handelsserver auszufüllen ist

retcode_extern

Code des vom Außenhandelssystem zurückgegebenen Fehlers. Angabe und Art dieser Fehler hängen von einem Makler und einem externen Handelssystem ab, in das die Handelsoperationen ausgegeben werden


Es gibt Handel und Ordnung. Für beides gibt es Volumen. Warum gilt der Preis nur für das Geschäft? Nun, wir können dealprice verwenden, aber dann brauchen wir ein dealorder-Feld. Meines Erachtens sollte der Preis einfach der Preis des Auftrags sein, wenn der Handel nicht zustande kommt und der Auftrag eingestellt wird.

 
leonerd:

Feld

Beschreibung

retcode

Rückgabecode des Handelsservers

Angebot

Deal-Ticket, wenn ein Deal durchgeführt wurde. Wird in der HandelsoperationTRADE_ACTION_DEAL gemeldet

Bestellung

Bestellschein, wenn ein Fahrschein ausgestellt worden ist. Benachrichtigung während einerTRADE_ACTION_PENDING-Handelsoperation

Band

Volumen des vom Makler bestätigten Geschäfts. Es hängt von derArt der Auftragsabwicklung ab

Preis

Abgeschlossener Preis, vom Makler bestätigt. Abhängig vomAbweichungsfeld in derGeschäftsanfrage und/oder der Art desGeschäfts

Angebot

Aktueller Geldkurs am Markt (Rücknahmepreis)

fragen Sie

Aktueller Marktgebotspreis (Rücknahmepreise)

Kommentar

Kommentar des Brokers zu der Operation (standardmäßig wird er mit der Dekodierung des Rückgabecodes des Handelsservers gefüllt)

anfrage_id

Anforderungs-ID, die vom Terminal beim Senden an den Handelsserver auszufüllen ist

retcode_extern

Code des vom Außenhandelssystem zurückgegebenen Fehlers. Angabe und Art dieser Fehler hängen von einem Makler und einem externen Handelssystem ab, in das die Handelsoperationen ausgegeben werden


Es gibt Handel und Ordnung. Für beides gibt es Volumen. Warum gilt der Preis nur für das Geschäft? Nun, wir können dealprice verwenden, aber dann brauchen wir ein dealorder-Feld. Meines Erachtens sollte der Preis einfach der Preis des Auftrags sein, wenn der Handel nicht ausgeführt wurde und ein Auftrag erteilt wurde.

Erstellen Sie eine Petition zur Aufnahme von Result.price für Bestellungen. Und machen Sie es vollständig - verlangen Sie, dass Ergebnis.Ablauf, zweiter Preis für STOP_LIMIT-Aufträge usw. einbezogen werden.


// Пока петиция не прошла
bool OrderSend_leonerd( const MqlTradeRequest &Request, MqlTradeResult &Result )
{
  const bool Res = OrderSend(Request, Result);
  
  if (Res && !Result.order)
    Result.order = Request.order;
    
  return(Res);
}

// Делаем за разработчиков их работу
#define OrderSend OrderSend_leonerd
 

Hallo

Wenn ich eine Bestellung öffne, erscheint manchmal die Fehlermeldung 4754-Bestellungnicht gefunden

Das ist alles, was der EA hängt, weil er versucht, eine Bestellung zu öffnen

Die Neuinstallation des EA hilft

Um einen Auftrag zu eröffnen, verwende ich die Klasse CTrade

Bitte geben Sie mir einen Rat, was falsch sein könnte?

 
Mikhail Rudyk:

Hallo

Wenn ich eine Bestellung öffne, erscheint manchmal die Fehlermeldung 4754-Bestellungnicht gefunden

Das ist alles, was der EA hängt, weil er versucht, eine Bestellung zu öffnen

Die Neuinstallation des EA hilft

Ich verwende die CTrade-Klasse, um einen Auftrag zu eröffnen

Bitte geben Sie mir einen Rat, was es sein könnte?

Können Sie das genauer sagen? MQL5 Code, Symbol, Zeitrahmen. Dies ist die Stelle, an der der Fehler angezeigt wird.

Ohne diese Daten ist es schwer, etwas Bestimmtes zu sagen.

 
Gibt es bei Codebase einen EA mit der Funktion "ein Handel pro Bar"? (Ausgenommen EAs, die an der Bareröffnung arbeiten)
 

In MQL5 rufe ich das Indikator-Handle in OnInit wie folgt auf

diver_handle=iCustom(NULL,0,"ao_diver");

Mit diesem Aufruf wird das Terminal vollständig aufgehängt.
Der Indikator befindet sich unter Indikatoren und erfordert keine zusätzlichen Eingabeparameter.
Was kann an diesem Anruf falsch sein?

 
Evgeny Dyuka:

In MQL5 rufe ich ein Indikator-Handle in OnInit wie folgt auf

Mit diesem Aufruf wird das Terminal vollständig aufgehängt.
Der Indikator liegt in der Rubrik Indikatoren und benötigt keine zusätzlichen Eingabeparameter.
Was kann an diesem Anruf falsch sein?

".ex5" angeben.