[WARNUNG GESCHLOSSEN!] Alle Fragen von Neulingen, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen. - Seite 984
![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 danke Ihnen.
Ist es möglich, Spalten mit Indikatorwerten zu dieser Tabelle hinzuzufügen? Zum Beispiel der MA-Wert für einen bestimmten Balken. Oder gibt es ein Up/Down-Fraktal?
Hallo. Können Sie mir sagen, ob es eine öffentlich zugängliche Transaktionsgeschichte von L. Williams seit seinem legendären Sieg bei der Weltmeisterschaft 1987 gibt? Es wäre interessant, einen Blick darauf zu werfen).
Legen Sie einen ordnungsgemäßen Bericht bei. Besser noch, ein vollständiger Bericht, Sie werden sehen.
Der Unterschied zwischen M1 all ticks und M30 ist minimal.
Guten Tag!
Ich brauche diesen EA, um auf einem Konto zu arbeiten, aber auf verschiedenen Paaren. Wenn jedoch mindestens ein Handel offen ist, eröffnet der EA leider keinen Handel mit anderen Paaren, selbst wenn ein Signal vorliegt. Worin liegt der Fehler? Hilf mir zu verstehen!
Und eine andere Frage, ist es notwendig, Magic in den Einstellungen zu ändern, wenn der EA an das Diagramm angehängt wird, wenn es bereits auf ein anderes Paar angewendet wurde?
Hier ist der Code:
//////////////////////////////////////////////////////////////////////
// MUWINGS CROSSING //
//////////////////////////////////////////////////////////////////////
extern string Einstellungen = "Haupteinstellungen"; ////////////////////////
extern int Magic = 227 ; //Einzelne Nummer//.
extern double Lots =0.1 ;
extern int Slip = 5 ; //Schlupf/.
//Daten für die Zeiteinstellung
externer String OpenTime = "01:05-23:05";
//------------------------------------------------------------------// //
//Indikatoren // //
//------------------------------------------------------------------// //
externer String Indikator1 = "MA-Slow" ; // // // //
extern int MAPeriod1 = 55 ; //Periode //
extern int int MA1_shift = 0 ;
externer String Indikator2 = "MA-Fast" ; // // //
extern int int MAperiod2 = 13 ; //Zeitraum //
extern inttern MA2_shift = 0 ;
//------------------------------------------------------------------/////////////
int tiket1 , tiket2 , cnt;
int start()
{
//---------------------------------------------------------------------------------------------------------------//
double MA1 =iMA(NULL,0,MAPeriod1,MA1_shift,MODE_LWMA,PRICE_MEDIAN,0); //Berechnung des MA-Indikators //
//Print("ma1=====",MA1);
double MA2 =iMA(NULL,0,MAperiod2,MA2_shift,MODE_LWMA,PRICE_CLOSE,0); //Berechnung des MA-Indikators //
//Print("ma2=====",MA2);
string OTA[];
string OTI[];
split(OTA, OpenTime, ";");
datetime tm0 = CurTime();
datetime tm1, tm2;
bool cond = false;
int cnt = ArraySize(OTA);
for (int i=0; i < cnt; i++) {
split(OTI, OTA[i], "-")
wenn (ArraySize(OTI) != 2) weiter;
tm1 = StrToTime(TimeToStr(CurTime(), TIME_DATE) + " + OTI[0]);
tm2 = StrToTime(TimeToStr(CurTime(), TIME_DATE) + " " + OTI[1]);
cond = cond || (tm1 <= tm0 && tm0 < tm2)
}
wenn (cond)
{
if(AufträgeSumme()==0)
{
if((MA2>MA1)&&(Close[0]>MA2))
{
tiket1=OrderSend(Symbol(),OP_BUY,Lots,NormalizeDouble(Ask,Digits),Slip,0,0,NULL,Magic,0,CLR_NONE)
}
if((MA2<MA1)&&(Close[0]<MA2))
{
tiket2=OrderSend(Symbol(),OP_SELL,Lots,NormalizeDouble(Bid,Digits),Slip,0,0,NULL,Magic,0,CLR_NONE);
}
}
if(AufträgeSumme()==1)
{
if((MA2>MA1)&&(Close[0]>MA2 ))
{
OrderClose(tiket2,Lots,Ask,Slip,Red);
}
if((MA2<MA1)&&(Close[0]<MA2))
{
OrderClose(tiket1,Lots,Bid,Slip,Red);
}
}
}
}
void split(string& arr[], string str, string sym)
{
ArrayResize(arr, 0);
string item;
int pos, size;
int len = StringLen(str);
for (int i=0; i < len;) {
pos = StringFind(str, sym, i);
if (pos == -1) pos = len;
item = StringSubstr(str, i, pos-i);
item = StringTrimLeft(item);
item = StringTrimRight(item);
size = ArraySize(arr);
ArrayResize(arr, size+1);
arr[size] = item;
i = pos+1;
}
}
Guten Tag!
externer String OpenTime = "01:05-23:05";
//------------------------------------------------------------------// //
//Indikatoren // //
//------------------------------------------------------------------// //
externer String Indikator1 = "MA-Slow" ; // // // //
extern int MAPeriod1 = 55 ; //Periode //
extern int int MA1_shift = 0 ;
externer String Indikator2 = "MA-Fast" ; // // //
extern int int MAperiod2 = 13 ; //Zeitraum //
extern inttern MA2_shift = 0 ;
//------------------------------------------------------------------/////////////
int tiket1 , tiket2 , cnt;
int start()
{
//---------------------------------------------------------------------------------------------------------------//
double MA1 =iMA(NULL,0,MAPeriod1,MA1_shift,MODE_LWMA,PRICE_MEDIAN,0); //Berechnung des MA-Indikators //
//Print("ma1=====",MA1);
double MA2 =iMA(NULL,0,MAperiod2,MA2_shift,MODE_LWMA,PRICE_CLOSE,0); //Berechnung des MA-Indikators //
//Print("ma2=====",MA2);
string OTA[];
string OTI[];
split(OTA, OpenTime, ";");
datetime tm0 = CurTime();
datetime tm1, tm2;
bool cond = false;
int cnt = ArraySize(OTA);
for (int i=0; i < cnt; i++) {
split(OTI, OTA[i], "-");
wenn (ArraySize(OTI) != 2) weiter;
tm1 = StrToTime(TimeToStr(CurTime(), TIME_DATE) + " + OTI[0]);
tm2 = StrToTime(TimeToStr(CurTime(), TIME_DATE) + " " + OTI[1]);
cond = cond || (tm1 <= tm0 && tm0 < tm2)
}
wenn (cond)
{
if(OrdersTotal()==0)
{
if((MA2>MA1)&&(Close[0]>MA2))
{
tiket1=OrderSend(Symbol(),OP_BUY,Lots,NormalizeDouble(Ask,Digits),Slip,0,0,NULL,Magic,0,CLR_NONE)
}
if((MA2<MA1)&&(Close[0]<MA2))
{
tiket2=OrderSend(Symbol(),OP_SELL,Lots,NormalizeDouble(Bid,Digits),Slip,0,0,NULL,Magic,0,CLR_NONE);
}
}
if(OrdersTotal()==1)
{
if((MA2>MA1)&&(Close[0]>MA2 ))
{
OrderClose(tiket2,Lots,Ask,Slip,Red);
}
if((MA2<MA1)&&(Close[0]<MA2))
{
OrderClose(tiket1,Lots,Bid,Slip,Red);
}
}
}
}
void split(string& arr[], string str, string sym)
{
ArrayResize(arr, 0);
string item;
int pos, size;
int len = StringLen(str);
for (int i=0; i < len;) {
pos = StringFind(str, sym, i);
if (pos == -1) pos = len;
item = StringSubstr(str, i, pos-i);
item = StringTrimLeft(item);
item = StringTrimRight(item);
size = ArraySize(arr);
ArrayResize(arr, size+1);
arr[size] = item;
i = pos+1;
}
}
Ich glaube, dort, wo es rot hervorgehoben ist.
Guten Tag!
Ich brauche diesen EA, um auf einem Konto zu arbeiten, aber auf verschiedenen Paaren. Wenn jedoch mindestens ein Handel offen ist, eröffnet der EA leider keinen Handel mit anderen Paaren, selbst wenn ein Signal vorliegt. Worin liegt der Fehler? Hilf mir zu verstehen!
Und eine andere Frage, ist es notwendig, Magic in den Einstellungen zu ändern, wenn der EA an das Diagramm angehängt wird, wenn es bereits auf ein anderes Paar angewendet wurde?
Hier ist der Code:
.......
if(AufträgeSumme()==0)
Hier liegt die Wurzel des Übels.
Ich habe ein gutes Gefühl, dass der EA sich hartnäckig weigert, früher als 21.45 zu protokollieren, obwohl alles im Code korrekt ist und es keine Einschränkungen auf it....see gibt, was der Grund dort plz sein kann? Update den Computer neu gestartet, beim ersten Durchlauf gab es Aufzeichnungen vom Anfang des Tages, und dann wieder alles von vorne... Ich habe das Gefühl, dass etwas zwischengespeichert wird, aber was ist es?
Ich habe ein gutes Gefühl dabei, aber ich bin nicht sicher, was daran falsch ist... Ich bin nicht sicher, was daran falsch ist... Update den Computer neu gestartet, beim ersten Durchlauf gab es Aufzeichnungen vom Anfang des Tages, und dann wieder alles von vorne... Ich habe das Gefühl, dass etwas zwischengespeichert wird, aber was ist es?
Ich denke, das liegt an der ersten Bedingung. Versuchen Sie Hour()<=22.