[ARCHIV!] Alle Fragen von Anfängern, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen - 4. - Seite 410
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Im MQL-Tutorial gibt es im Kapitel Standardfunktionen im Abschnitt Graphoperationen eine Funktion WindowHandle mit folgender Beschreibung: "... gibt den Systemdeskriptor des Fensters (Fensterhandle) zurück, das den angegebenen Graphen enthält".
Frage: Was bedeutet "Fenstergriff" (was ist das) und wofür ist er da?
P.S. Um das Forum nicht zu überfrachten, danke ich Ihnen im Voraus für Ihre Antwort
Im MQL-Tutorial gibt es im Kapitel Standardfunktionen im Abschnitt Graphoperationen eine Funktion WindowHandle mit folgender Beschreibung: "... gibt den Systemdeskriptor des Fensters (Fensterhandle) zurück, das den angegebenen Graphen enthält".
Frage: Was bedeutet "Fenstergriff" (was ist das) und wofür ist er da?
P.S. Um das Forum nicht zu überladen, danke im Voraus für die Antwort
Antwort:
Der Fensterdeskriptor ist eine Zahl.
ein Fensterdeskriptor ist erforderlich, um ein Fenster zu bearbeiten
Hallo! Problem mit dem Code!!! ich brauche die Aufträge zu öffnen, eine nach der anderen verkaufen, Bucht, verkaufen usw., aber die Zählung wurde während des Tages, am nächsten Tag durch eine neue, ohne Berücksichtigung der Reihenfolge der Eröffnung Aufträge des Vortages getan! das ist ein neuer Tag ein neuer Zyklus! oben Code ich denke, es sollte so aussehen! außer, dass die EA nicht öffnen keine Ordnung! kann nicht verstehen, was falsch ist ... sagen Sie mir, wenn Sie wissen!!!
Wenn Sie einen schwebenden Auftrag eröffnen und eine Verfallszeit festlegen, z. B. 23:59 Uhr, wird der Auftrag von selbst geschlossen.
nt OrderSend( string symbol, int cmd, double volume, double price, int slippage, double stoploss, double takeprofit, string comment=NULL, int magic=0, datetime expiration=0, color arrow_color=CLR_NONE)
Hallo! Problem mit dem Code!!! ich brauche die Aufträge zu öffnen, eine nach der anderen verkaufen, Bucht, verkaufen usw., aber die Zählung wurde während des Tages, am nächsten Tag durch eine neue, ohne Berücksichtigung der Reihenfolge der Eröffnung von Aufträgen des Vortages getan! das ist ein neuer Tag ein neuer Zyklus! oben Code ich denke, es sollte so aussehen! außer, dass die EA nicht öffnen keine Ordnung! kann nicht verstehen, was falsch ist ... sagen Sie mir, wenn Sie wissen!!!
Und warum sollte es Aufträge öffnen, vor allem, wenn der Verlauf leer ist. Und lernen Sie, wie man den Code menschlich einfügt, ich mag es nicht, die Beiträge anderer Leute zu bearbeiten.
Wie man diesen Berater ergänzt
//+------------------------------------------------------------------+
//| CCI.mq4 |
//| Copyright 2012, MetaQuotes Software Corp.
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, MetaQuotes Software Corp.
#property link "http://www.metaquotes.net"
extern double LotTrend = 0.1;
extern int TP=100;
extern int SL=250;
//+------------------------------------------------------------------+
//| Experten-Initialisierungsfunktion |
//+------------------------------------------------------------------+
int init()
{
//----
//----
zurück(0);
}
//+------------------------------------------------------------------+
//| Experten-Deinitialisierungsfunktion |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
zurück(0);
}
//+------------------------------------------------------------------+
//| Expertenstartfunktion |
//+------------------------------------------------------------------+
int start()
{
if (OrderSelect(0,SELECT_BY_POS,MODE_TRADES)==False)
{
if (Bid>iMA(Symbol(),PERIOD_M15,100,0,1,4,0)
)
{
OrderSend(Symbol(),OP_BUY,LotTrend,Ask,0,Ask-SL*Point,Ask+TP*Point,0,0,0,Green)
}
wenn (Bid<iMA(Symbol(),PERIOD_M15,100,0,1,4,0)
)
{
OrderSend(Symbol(),OP_SELL,LotTrend,Bid,0,Bid+SL*Point,Bid-TP*Point,0,0,0,Green);
}
}
//----
zurück(0);
}
//+------------------------------------------------------------------+
1. einen Handel nur beim Schließen einer Kerze zu eröffnen (wenn der Preis den SMA kreuzt)
Hallo! Ich habe eine Frage zu den Indikatoren in MQL4 und verstehe sie nicht ganz... Ich habe zum Beispiel einen einfachen Fraktal-Indikator:
Wenn Sie es in dieser Form kompilieren, fängt es an, beim Erweitern des linken Diagrammrandes und beim Laden der Historie zu stören und zeigt Markierungen an, wo sie nicht sein sollten (siehe Screenshot im Anhang). Wenn wir einen Teil des Codes auskommentieren:
Dann verschwinden diese Pannen... Die gleichen Probleme treten beim Laden der Historie auf, wenn Sie nur "nicht leere" Elemente des Indikator-Arrays füllen und den Indikatorwert nicht zurücksetzen, wenn keine Beschriftungen vorhanden sind...
Warum ist das so? Warum, so stellt sich heraus, ist es notwendig, den gesamten Indikator beim Laden der Historie neu zu berechnen? Und warum muss ich die Werte von "leeren" Elementen des Arrays löschen?
Wenn die Balken von links nach rechts indiziert wären, würden sich beim Laden der Geschichte die Indizes der Balken ändern, und der Indikator würde ohne Neuberechnung falsch angezeigt werden, dann würden wir diese Störung verstehen ... Aber in MT4 Balken sind von rechts nach links indiziert, so dass, wenn das Laden der Geschichte, die Indizes der Balken, die zuvor dort sollte die gleiche geblieben sein (und die Indikatorwerte, auch), warum dann neu berechnen den Indikator und woher kommen diese Marker Verschiebungen?
Liebe Kolleginnen und Kollegen, könnten Sie bitte die folgende Frage beantworten?
Ich eröffne 4 Kaufaufträge von Hand, ich lasse einen EA laufen, der die eingestellten Aufträge zum Geldkurs löscht, die Slippage beträgt 100 Pips, die Löschung erfolgt in einer Schleife, die Überprüfung der Threadbelegung und die Kursaktualisierungen sind vorhanden. Warum werden nicht alle Aufträge in der Schleife gelöscht? Das Protokoll zeigt, dass die Löschung einige Initialisierungen der Funktion start()
benötigt.
Hier ist das EA-Protokoll:
17:16:59 temp EURUSD,M1: erfolgreich geladen
17:17:51 temp EURUSD,M1: Neuer Tick eingetroffen
17:17:51 temp EURUSD,M1: Total orders = 4
17:17:51 temp EURUSD,M1: delete order = 0 tick order = 2808657
17:17:52 temp EURUSD,M1: close #2808657 buy 1.00 EURUSD bei 1.28969 zum Preis 1.28973
17:17:52 temp EURUSD,M1: error=0
17:17:52 temp EURUSD,M1: remove order = 1 ticket order = 2808659
17:17:52 temp EURUSD,M1: close #2808659 buy 1.00 EURUSD bei 1.28974 zum Preis 1.28975
17:17:52 temp EURUSD,M1: Error=0
17:17:54 temp EURUSD,M1: New tick came
17:17:54 temp EURUSD,M1: Total orders = 2
17:17:54 temp EURUSD,M1: remove order = 0 tick order = 2808658
17:17:54 temp EURUSD,M1: close #2808658 buy 1.00 EURUSD at 1.28969 at price 1.28976
17:17:54 temp EURUSD,M1: Error=0
17:17:56 temp EURUSD,M1: New tick came
17:17:56 temp EURUSD,M1: Total orders = 1
17:17:56 temp EURUSD,M1: remove order = 0 tick order = 2808660
17:17:56 temp EURUSD,M1: close #2808660 buy 1.00 EURUSD bei 1.28976 zum Preis von 1.28977
17:17:56 temp EURUSD,M1: error=0