[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 626
![MQL5 - Sprache von Handelsstrategien, eingebaut ins Kundenterminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Ich habe nur eine Position auf dem Markt...also wird es nicht daneben gehen...
if(OrderSelect(0,SELECT_BY_POS,MODE_TRADES))
Wenn Sie möchten, dass ich Ihre Fragen nicht beantworte, sagen Sie es einfach.
Nein, nein!!! Ich will ja, aber ich will nicht, dass du dir noch mehr Arbeit machst... du hilfst ja schon WIRKLICH... was ich also selbst herausgefunden habe (du kannst nicht einfach fragen und dann herumsitzen und nichts tun!) - ich werde es schnell löschen...
OrderModify(OrderTicket(),OrderLots( ),stop_loss,OrderTakeProfit( ), 0,CLR_NONE);
Warte, du hast also eine Menge... 0.
Vielen Dank dafür!!!!
Hier können Sie nachdenken....
diese Zeile stammt aus der "modify"-Funktion - ich habe sie nicht selbst geschrieben, sondern vorgefertigt eingefügt, und sie funktioniert.... vielleicht bedeutet "0" die aktuelle Positionsgröße? aber ich würde es lieber auf einen Wert festlegen - danke, viele sind behoben
OrderModify(OrderTicket(),OrderLots( ),stop_loss,OrderTakeProfit( ), 0,CLR_NONE);
Stopp, Ihr Los ist also 0.
keine Lose in modifiziert :))))))) es gibt einen Eröffnungspreis aus irgendeinem Grund...
es gibt keine Lose in der Änderung :))))))) es gibt einen Eröffnungspreis aus irgendeinem Grund...
Richtig, ich habe es beim Kopieren und Einfügen verwechselt, ich kann mich nicht an das Einfügen in Kommentare gewöhnen, wenn es aus der Hilfe kopiert wird, wird es als Link eingefügt.
Wenn ich eine Funktion mit vielen Parametern einfüge, kopiere ich sie aus der Hilfe und ersetze die Parameter durch die, die ich in turn\ brauche, um nicht durcheinander zu kommen.
Liebe Leute!
PFG FX traider (neueste Version) heruntergeladen und gestartet. Ich habe versucht, einen Indikator zu erstellen.
Unmittelbar zwei Rätsel:
1. mein Indikator ist unter dem Editor sichtbar, öffnet sich und alles, aber ich kann ihn nicht im Dateisystem finden. Überhaupt nicht, auch nicht bei der Suche.
2. der Indikator öffnet die Datei - schreibt die Ticks. Er schreibt und stürzt ab, aber ich kann die Datei auch nicht finden!!!!
Wie kann das sein? Windows 7.
Brüder, ignoriert nicht die Bemühungen eines Anfängers!
Ich brauche ein fertiges Skript (oder etwas Ähnliches), das in den Archiven anzeigt
Bewegungen im Zeitplan, gefiltert nach Schwung und Zeit.
Zum Beispiel begann die Bewegung um 14.00 Uhr und endete um 14.45 Uhr.
Und der Betrag der Bewegung betrug 410 Punkte (in fünfstelliger Berechnung).
Gibt es also ein Skript, das solche Bewegungen auf dem Chart "in der Vergangenheit" visuell markiert?
und so, dass die Kraft-Zeit-Werte unabhängig voneinander eingefügt werden können.
______
Bitte geben Sie eine Zweigstelle oder einen Ort an, wo man Sie beraten kann.
In der Programmierung - nicht Aristoteles, aber ich vermute, dass ein solches Skript nicht schwer zu erstellen ist.
___
Ich bin bereit, Ihnen mitzuteilen, was ich gefunden habe, und - was am wichtigsten ist - die Parameter für den Filter nach Zeit und Stärke.
Liebe Leute!
PFG FX traider (neueste Version) heruntergeladen und gestartet. Ich habe versucht, einen Indikator zu erstellen.
Unmittelbar zwei Rätsel:
1. mein Indikator ist unter dem Editor sichtbar, öffnet sich und alles, aber ich kann ihn nicht im Dateisystem finden. Überhaupt nicht, auch nicht bei der Suche.
2. der Indikator öffnet die Datei - schreibt die Ticks. Er schreibt und stürzt ab, aber ich kann die Datei auch nicht finden!!!!
Wie kann das sein? Windows 7.
In Semester werden einige Dateien manchmal nicht im Terminal abgelegt, sondern in D:\BenutzernameAppData\Local\VirtualStore\Program Files, dann der Name des Terminals
Dies geschieht häufig, wenn mehrere Terminals in verschiedenen Verzeichnissen installiert sind oder sich viele Indikatoren, EAs oder andere Benutzerdateien im Terminal angesammelt haben.
Brüder, ignoriert nicht die Bemühungen eines Anfängers!
Ich brauche ein fertiges Skript (oder etwas Ähnliches), das in den Archiven anzeigt
Bewegungen im Zeitplan, gefiltert nach Schwung und Zeit.
Zum Beispiel begann die Bewegung um 14.00 Uhr und endete um 14.45 Uhr.
Und der Betrag der Bewegung betrug 410 Punkte (in fünfstelliger Berechnung).
Gibt es also ein Skript, das solche Bewegungen auf dem Chart "in der Vergangenheit" visuell markiert?
und so, dass die Kraft-Zeit-Werte unabhängig voneinander eingefügt werden können.
______
Bitte geben Sie eine Zweigstelle oder einen Ort an, wo man Sie beraten kann.
In der Programmierung - nicht Aristoteles, aber ich vermute, dass ein solches Skript nicht schwer zu erstellen ist.
___
Ich bin bereit, Ihnen mitzuteilen, was ich gefunden habe, und - was am wichtigsten ist - die Parameter für den Filter nach Zeit und Stärke.
Ich bin mir nicht ganz sicher, was Sie von dem Skript erwarten.
Ich brauche dringend Hilfe, ich bin total verwirrt. Hier finden Sie die Handelsfunktion und die Auftragsänderungsfunktion:
void OrdersModifying(double& sl, double& tp) { int total = OrdersTotal() - 1; sl = 0; tp = 0; for(int i=total; i>=0; i--) { if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) == true) // Если ордер есть и он выбран.. { if(g_type == OP_BUY) { if(i_sl != 0) // Если входной параметр стоп-лосса не равен 0, то.. sl = NormalizeDouble(OrderOpenPrice() - i_sl*pt,Digits); // Получаем значение стоп-лосса для выбранного ордера if(i_tp != 0) // Если входной параметр тейкпрофита не равен 0, то.. tp = NormalizeDouble(OrderOpenPrice() + i_tp*pt,Digits); // Получаем значение тейкпрофита для выбранного ордера } if(g_type == OP_SELL) { if(i_sl != 0) // Если входной параметр стоп-лосса не равен 0, то.. sl = NormalizeDouble(OrderOpenPrice() + i_sl*pt,Digits); // Получаем значение стоп-лосса для выбранного ордера if(i_tp != 0) // Если входной параметр тейкпрофита не равен 0, то.. tp = NormalizeDouble(OrderOpenPrice() - i_tp*pt,Digits); // Получаем значение тейкпрофита для выбранного ордера } if(sl != 0 || tp != 0) // Если полученные значения sl и tp не равныы 0, то.. { OrderModify(g_ticket,OrderOpenPrice(),sl,tp,OrderOpenTime() + 86400,Lime); // Модифицируем ордер } } } }
bool OpenBuy() { g_ticket = -1; string myNote = "сов баянул"; if(GetPriceToInput() < Ask) { g_ticket = OrderSend(Symbol(),OP_BUYLIMIT,0.1,GetPriceToInput(),3,0,0,myNote,myMagic,0,Blue); } if(g_ticket > 0 && OrderSelect(g_ticket,SELECT_BY_TICKET,MODE_TRADES) == true) return(true); }
bool OpenSell() { g_ticket = -1; string myNote = "сов шортанул"; if(GetPriceToInput() > Bid) { g_ticket = OrderSend(Symbol(),OP_SELLLIMIT,0.1,GetPriceToInput(),3,0,0,myNote,myMagic,0,Red); } if(g_ticket > 0 && OrderSelect(g_ticket,SELECT_BY_TICKET,MODE_TRADES) == true) return(true); }
Bei mir funktioniert derzeit die Auftragsänderung nicht, obwohl, als mehrere Funktionen in einer waren, alles funktionierte. Aber ich möchte, dass alle Funktionen der Einfachheit halber getrennt werden. Generell würde ich gerne die FunktionOrdersModifying haben, um Aufträge zu ändern. Ich verstehe, dass es logischerweise in die Funktion Trade eingefügt werden sollte, in die ich es eingefügt habe, aber wir müssen 2 Parameter sl und tp aus der FunktionOrdersModifying an sie übergeben.
Habe ich die Variablen sl und tp korrekt über die Parameter der FunktionOrdersModifying übergeben ?