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

 
Ich denke, mit Modul ist ein einzelnes Programm gemeint.
Die Kosten der VB-Erfahrung jedoch.
 

Nachmittags.

Ich habe Skripte geschrieben, um Aufträge zu eröffnen und gleichzeitig einen Schutz in Form eines schwebenden Auftrags zu platzieren.

Hier ist der Code für SELL.

//+------------------------------------------------------------------+

//| OpenSELL_Lok.mq4 |

//| KarkadilGENA |

//| http://forum.fibo-forex.ru/ |

//+------------------------------------------------------------------+

#property copyright "KarkadilGENA"

#property link "http://forum.fibo-forex.ru/"


#property show_inputs

//--------------------------------------------------------------------


extern double MARTIN = 1; // Losgrößenverhältnis (Anzahl der Knie)

extern int stoploss = 20, //Level von SL, wenn 0, wird SL nicht ausgestellt

takeprofit = 40, //t TP level, wenn 0, wird TP nicht gesetzt.

Magic = 345; //einmalige Bestellnummer

extern double Lot = 0.01; //Bestellvolumen

//+------------------------------------------------------------------+

int start()

{

//----

Doppellose, SL, TP;

int ticket.sell=-1;

while(ticket.sell<0)

{

RefreshRates();

Lot=NormalizeDouble(Lot,2);

Lose = Los * MARTIN;

TP = NormalizeDouble(Bid - takeprofit*Point,Digits);

ticket.sell=OrderSend(Symbol(),OP_SELL,lots,Bid,3,0,TP,NULL,Magic,0,CLR_NONE);

if(ticket.sell<0)

Warnung ("Fehler bei Positionseröffnung");

Rückkehr;

}

int ticket_BUYSTOP=-1;

while(ticket_BUYSTOP<0)

{

RefreshRates();

Lot=NormalizeDouble(Lot,2);

Lose = Los * MARTIN;

SL = NormalizeDouble(Bid + stoploss*Point,Digits);

ticket_BUYSTOP=OrderSend(Symbol(),OP_BUYSTOP,lots,SL,3,0,0,NULL,Magic,0,CLR_NONE);

if(ticket_BUYSTOP<0)

Warnung ("Position konnte nicht geöffnet werden");

Rückkehr;

}

zurück(0);

}

//+------------------------------------------------------------------+

Die erste Eröffnung verläuft normal, aber bei der zweiten (mit bestehenden offenen Positionen),

Zwei Schutzmechanismen werden geöffnet. Sowohl Stop als auch Limit. In meinem Code steht Only One, Stop.

Wenn ich eine dritte öffne, werden mehrere Schutzaufträge geöffnet.

Bitte sagen Sie mir, wie ich OWL dazu bringen kann, einen Schutz zu öffnen, unabhängig von der Anzahl der bereits offenen Positionen.

Danke.

 

Ich danke Ihnen für Ihre gestrige Antwort.

Wie kann ich den aktuellen Preis erfahren?

 

Nachmittags.

Ich habe einen EA, der einen Wert von einem Indikator nimmt, wo eine Linie zwei obere oder untere Fraktale verbindet.

Wie kann ich diese Zeilen im EA selbst erhalten (oder erstellen), so dass ich nicht auf den Indikator verweisen muss?

 
AndEv:

Aus dem Tutorium:

Es ist möglich, Parameter per Referenz zu übergeben. In diesem Fall wirkt sich die Änderung solcher Parameter auf die entsprechenden Variablen in der aufgerufenen Funktion aus, die als Referenz übergeben wird. Es ist nicht möglich, Elemente von Arrays per Referenz zu übergeben. Parameter können nur innerhalb eines einzelnen Moduls per Referenz übergeben werden.

Was meinen Sie mit dem Wort "Modul"?

Das bedeutet, dass z. B. die ex4-Bibliothek nicht
 
Stells:

Nachmittags.

Ich habe einen EA, der einen Wert von einem Indikator nimmt, wo eine Linie zwei obere oder untere Fraktale verbindet.

Wie kann ich diese Zeilen im EA selbst erhalten (oder erstellen), so dass ich nicht auf den Indikator verweisen muss?


Sie können die Formeln der Linien aus dem Indikator verwenden + im EA zeichnen Sie diese Linien mit Objekten.
 
Roman.:

Sie schreiben die Formeln für die Linien mit dem Indikator und zeichnen diese Linien als Objekte in die Tafel.
Ich habe einen Indikator erstellt, der Werte für Puffer aus globalen Variablen übernimmt. Und die Werte selbst werden vom EA zusammen mit Farbe und Zeichenstil gesendet.
 

Hallo, es gibt eine Funktion, die den Kauf oder Verkauf signalisiert. Wenn Sie es einfach einstellen

If(sig1) SetOrder(....) ;

Dann öffnet sie sich viele Male.

Achtung Frage!) Wie kann man es einmal für(sig1) öffnen, es könnte so sein, sig1-open BAY, nächster Befehl, sig0-admit trawl is on (whatever), nächster Befehl wieder, sig1-open second BAY.

 
Es ist möglich, sich den vorherigen Wert von sig1 zu merkenund nur dann einen Auftrag zu eröffnen, wenn der vorherige Wert prohibitiv war, während der aktuelle Wert permissiv ist.
 
MikeM:
Es ist möglich, sich den vorherigen Wert von sig1 zu merkenund nur dann einen Auftrag zu eröffnen, wenn der aktuelle Wert zulässig und der vorherige Wert unzulässig ist.
Das verstehe ich nicht.
Grund der Beschwerde: