[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 612

 
yosuf:
Und warum? Ein Beispiel: Ein BAY-Auftrag ist bei O=1,2900 mit einem TP von 1,300 und einem SL von 1, 300 eröffnet. Die Pending Order sollte die Parameter BAY O= 1,2800 mit TP 1,2900 und SL 1,2700 haben. Wenn möglich, betrachten Sie bitte die Ausbreitung als verloren.


Der erste Auftrag hat einen offenen Preis von 1,2900 und ein Kursziel von 1,300. Der zweite Auftrag hat einen offenen Preis von1,2800 und ein Kursziel von 1,290. Dies sind unterschiedliche Parameter. Der erste ist BAY, der zweite ist BAY_STOP. Auch dies sind unterschiedliche Parameter. Und wenn Sie am SL schließen, verlieren Sie nicht den Spread, sondern viel mehr (Spread+SL*Point).
 
rigonich:

Fangen wir an:

1.Wenn(Stoch_1>Stoch_2) flag1=1 ; , dann kann die darauf folgende Bedingung (Stoch_1<Stoch_2 && flag1==1) im Prinzip nicht wahr sein, denn wenn Stoch_1<Stoch_2 flag1==0 und wenn flag1==1dann Stoch_1>Stoch_2. ist es bei allen nachfolgenden Bedingungen in dieser Funktion dasselbe, so dass nur Flag1 den Wert ändern kann. Das heißt, Ihr Programm führt die ersten beiden Zeilen aus, überspringtdie dritte, führtdie vierte aus, überspringtdie fünfte, führt die sechste aus, führt die siebte aus und überspringt alle anderen Zeilen.


Sie irren sich, denn Sie verstehen einfach nicht, worum es geht. Das ist der Fall, und alles funktioniert perfekt, genau so, wie ich es brauche. Vielleicht könnte der Code vereinfacht werden, aber jetzt ist es nicht mehr zum Fett... Ich muss nur die ganze EA zu beenden und bereits Blick auf die REST der Handelsidee es enthält....

und Programmieren um des Programmierens willen interessiert mich nicht besonders...

 
xant:

Ja, ich habe getan, was Sie geschrieben haben. Und es lässt sich nicht kompilieren.

Offensichtlich habe ich etwas falsch gemacht, aber was genau, weiß ich nicht. Sie können es Schritt für Schritt durchgehen.

Zeigen Sie mir interessehalber meine Funktionen, die Sie in Ihre Variablen umgewandelt haben. Und zeigen Sie mir das Protokoll mit den Kompilierungsfehlern.
 
rigonich:

Der erste Auftrag hat einen offenen Preis von1,2900 und ein Kursziel von 1,300. Der zweite Auftrag hat einen offenen Preis von1,2800 und ein Kursziel von 1,290. Dies sind unterschiedliche Parameter. Der erste istBAY, der zweite istBAY_STOP. Auch dies sind unterschiedliche Parameter.
Aber Sie haben verstanden, worum es geht, nicht wahr?
 
lottamer:


Sie irren sich, weil Sie einfach nicht verstehen, worum es geht. Und das tut es auch, und alles funktioniert perfekt so, wie ich es brauche. Vielleicht ist der Code könnte vereinfacht werden, aber jetzt ist es nicht mehr eine Frage der Fett... Ich muss nur die gesamte EA zu beenden und bereits Blick auf die Rendite auf den Handel Idee es enthält....

Ich bin nicht am Programmieren um des Programmierens willen interessiert...


Ich denke, das ist genau das, was Sie haben - Programmierung um der Programmierung willen. Ihre Funktion tut nichts anderes, als die CPU zu überlasten.

Ich begann zu programmieren, nachdem ich fünf Jahre lang den Markt studiert, verschiedene Strategien entwickelt und ausprobiert hatte, als ich feststellte, dass die von mir entwickelte (erfolgreiche) Handelsstrategie, die ich 20 Mal manuell an der Geschichte getestet hatte, erstens keine Analoga hat, dass sie in kodobase zu finden sind, und zweitens, selbst bei Einstellungen nahe an den Grenzen der technischen Möglichkeiten, Anforderungen stellt, die für Menschen unmöglich sind und selbst vom schwächsten Computer leicht erfüllt werden können (z. B. bleiben Sie eine Woche oder länger bei Ihrem Computer).

 
yosuf:
Aber ich denke, Sie haben es verstanden.


Geben Sie einfach einen schwebenden Auftrag mit den von Ihnen gewünschten Parametern ein.

P.S. Im EA - gleich nach der Eröffnung der Bestellung.

 
rigonich:


Geben Sie einfach einen schwebenden Auftrag mit den von Ihnen gewünschten Parametern ein.

P.S. Im EA - gleich nach der Eröffnung der Bestellung.

Wie lautet der Code?
 
yosuf:
Wie lautet der Code?


int OrderSend( string symbol, int cmd, double volume, double price, int slippage, double stoploss, double takeprofit, string comment=NULL, int magic=0, datetime expiration=0,arrow_color=CLR_NONE)
Grundfunktion zur Eröffnung einer Position oder zum Setzen eines schwebenden Auftrags.
Gibt die Ticketnummer zurück, die dem Auftrag vom Handelsserver zugewiesen wurde, oder -1 im Falle eines Fehlers. Um weitere Informationen über den Fehler zu erhalten, rufen Sie GetLastError() auf.
Anmerkungen.
Bei der Eröffnung einer Marktorder (OP_SELL oder OP_BUY) kann nur der letzte Geldkurs (für den Verkauf) oder Briefkurs (für den Kauf) als Eröffnungskurs verwendet werden. Wenn die Operation für ein anderes Finanzinstrument als das aktuelle durchgeführt wird, sollten Sie die Funktion MarketInfo() mit dem Parameter MODE_BID oder MODE_ASK verwenden, um die neuesten Kurse für dieses Instrument zu erhalten. Sie können keinen geschätzten oder nicht-normalisierten Preis verwenden. Wenn der angeforderte Eröffnungskurs nicht im Kursfluss enthalten ist oder der angeforderte Kurs nicht nach der Anzahl der Dezimalstellen normalisiert ist, wird der Fehler 129 (ERR_INVALID_PRICE) erzeugt. Wenn der angeforderte Eröffnungskurs stark veraltet ist, wird unabhängig vom Wert des Slippage-Parameters ein Fehler 138 (ERR_REQUOTE) erzeugt. Wenn der angeforderte Preis nicht mehr aktuell ist, aber noch im Preisfluss vorhanden ist, wird die Position zum aktuellen Preis eröffnet, und zwar nur dann, wenn der aktuelle Preis innerhalb der Spanne von Preis+Slippage liegt.

StopLoss- und TakeProfit-Kurse dürfen nicht zu nahe am Markt liegen. Der minimale Stop-Abstand in Pips kann mit der Funktion MarketInfo() mit dem Parameter MODE_STOPLEVEL ermittelt werden. Der Fehler 130 (ERR_INVALID_STOPS) wird bei fehlerhaften oder nicht normalisierten Stopps erzeugt.

Wenn Sie einen schwebenden Auftrag erteilen, darf der Eröffnungskurs nicht zu nahe am Markt liegen. Der Mindestabstand des schwebenden Preises vom aktuellen Marktpreis in Punkten kann auch mit der Funktion MarketInfo() mit dem Parameter MODE_STOPLEVEL ermittelt werden. Wenn der Eröffnungskurs eines schwebenden Auftrags nicht korrekt ist, wird der Fehler 130 (ERR_INVALID_STOPS) erzeugt.

Auf einigen Handelsservern kann ein Verbot des Verfalls von schwebenden Aufträgen festgelegt werden. In diesem Fall wird ein Fehler 147 (ERR_TRADE_EXPIRATION_DENIED) erzeugt, wenn versucht wird, einen Wert ungleich Null im Ablaufparameter zu setzen.

Auf einigen Handelsservern kann ein Limit für die Gesamtzahl der offenen und schwebenden Aufträge festgelegt werden. Wird dieser Grenzwert überschritten, wird keine neue Position eröffnet (es wird keine Pending Order gesetzt) und der Trade Server gibt den Fehler 148 (ERR_TRADE_TOO_MANY_ORDERS) zurück.
Parameter:
Symbol - Name des Finanzinstruments, mit dem der Geschäftsvorgang ausgeführt wird.
cmd - Handelsbetrieb. Kann einer der Handelswerte sein.
Band - Anzahl der Lose.
Preis - Eröffnungspreis.
Schlupf - Maximal zulässige Preisabweichung für Marktaufträge (Kauf- oder Verkaufsaufträge).
Stoploss - Der Preis für die Schließung einer Position, wenn der Verlust erreicht ist (0, wenn kein Verlust vorliegt).
Gewinnmitnahme - Der Schlusskurs einer Position, wenn das Rentabilitätsniveau erreicht ist (0, wenn es kein Rentabilitätsniveau gibt).
Kommentar - Kommentar-Text bestellen. Der letzte Teil des Kommentars kann vom Handelsserver geändert werden.
Magie - Magische Zahl der Bestellung. Kann als benutzerdefinierter Bezeichner verwendet werden.
Ablauf - Verfallszeit des schwebenden Auftrags.
Pfeil_Farbe - Farbe des Eröffnungspfeils auf dem Diagramm. Fehlt der Parameter oder hat er den Wert CLR_NONE, wird der Öffnungspfeil nicht im Diagramm angezeigt.
Beispiel:
 int ticket; if(iRSI(NULL,0,14,PRICE_CLOSE,0)<25) { ticket=OrderSend(Symbol(),OP_BUY,1,Ask,3,Bid-25*Point,Ask+25*Point, "Meine Order #"+Zähler,16384,0,Green); if(ticket<0) { Print("OrderSend schlug mit Fehler #",GetLastError()); return(0); } }
 
lottamer:

und obwohl Ihr Code 24 Fehler im Compiler ausgab!!! trotzdem danke, auch für die nachlässige Hilfe.... für die Idee... (jetzt funktioniert es - obwohl ich das im Grunde auch versucht habe, aber die Zeichensetzung ist fehlgeschlagen)


Ich habe nicht versucht, es zu kompilieren, ich habe nur die Klammern eingefügt! Sonst würden sie gar nicht funktionieren. Ich habe gezeigt, wie sie sein müssen. Der Rest der Logik ist noch unklar. Ich erinnere mich, dass man bei jeder nächsten Flagge ,,fragte, ob das Gegenteil der vorangegangenen Bedingung der Fall war, während man prüfte, ob die Flagge wahr war...

In meinem ersten Kommentar habe ich Sie aufgefordert, das Geschriebene noch einmal zu überdenken und die Quellenangabe zu überprüfen.

 
Irgendwelche Tipps für den Neuling!!!! Der Advisor ist im Terminal deaktiviert, aber der Stoploss wird ausgelöst, ist das möglich?
Grund der Beschwerde: