Fragen von Anfängern MQL4 MT4 MetaTrader 4 - Seite 49

 
Alexander Antoshkin:

Für einen Kuchen und eine Tasse Kaffee, sollte eine Warnung (aus den neuen Builds von mt4) gezwickt werden

)

Nun, der Kuchen kann verschickt werden... Woher bekommen Sie den Kaffee?

Dateien:
 
Alexey Viktorov:

Nun, man kann einen Kuchen verschicken... Woher bekommen Sie den Kaffee?

Vielen Dank.)))

korrigierter Code zurück zum Artikel thread.................................................

 
Ich versuche, MetaTrader4 aus der Original-Installationsdatei mt4setup.exe zu installieren, aber MT5 wird mir schamlos installiert. Windows7 x64 System. Versucht der Entwickler auf diese Weise, mir die neue Plattform schmackhaft zu machen? Wie kann ich das installieren, was ich will (MT4) und nicht das, was mir aufgezwungen wird?
 
Andrej Akimov:
Ich versuche, MetaTrader4 aus der Original-Installationsdatei mt4setup.exe zu installieren, aber MT5 wird mir schamlos installiert. Windows7 x64 System. Versucht der Entwickler auf diese Weise, mir die neue Plattform schmackhaft zu machen? Wie kann ich das installieren, was ich will (MT4) und nicht das, was mir aufgezwungen wird?
Es gibt bereits eine Reihe von Threads im Forum mit Lösungen für dieses Problem. Warum nicht die Suchmaschine benutzen?
 
Zeigen Sie anhand eines Beispiels, wie eine Zeichenkette in eine Datei geschrieben und gelesen werden kann, die im Stammverzeichnis des Laufwerks C gespeichert sein muss.
 

Ich versuche, den Stop Loss und den Take Profit auf diese Weise zu implementieren:

spread = Ask-Bid;

double StopLoss_B = NormalizeDouble(Tief[1]- Spread,Digits);//NormalizeDouble(Tief[1]- Spread,Digits)

double TakeProfit_B = NormalizeDouble(Ask+((Ask-StopLoss_B)* RiskRewart),Digits) ;

double StopLoss_S = NormalizeDouble(High[1]+ spread,Digits);//NormalizeDouble(High[1]+ spread,Digits)

double TakeProfit_S = NormalizeDouble(Bid-((StopLoss_S-Bid)* RiskRewart),Digits) ;

....

OrderSend(Symbol(),OP_BUY,Lots,Ask,3,StopLoss_B,TakeProfit_B, "PBar",Magik,0,Blue);

....

OrderSend(Symbol(),OP_SELL,Lots,Bid,3,StopLoss_S,TakeProfit_S, "PBar",Magik,0,Red);

Das Prüfgerät zeigt den Fehler 130 an - irgendetwas stimmt mit TP und SL nicht. Ich kann nicht verstehen, was genau, vor allem, weil manchmal läuft es gut, und manchmal bekomme ich einen Fehler.

Bitte helfen Sie allgemein.

 
RichLux:

Ich versuche, den Stop Loss und den Take Profit auf diese Weise zu implementieren:

spread = Ask-Bid;

double StopLoss_B = NormalizeDouble(Tief[1]- Spread,Digits);//NormalizeDouble(Tief[1]- Spread,Digits)

double TakeProfit_B = NormalizeDouble(Ask+((Ask-StopLoss_B)* RiskRewart),Digits) ;

double StopLoss_S = NormalizeDouble(High[1]+ spread,Digits);//NormalizeDouble(High[1]+ spread,Digits)

double TakeProfit_S = NormalizeDouble(Bid-((StopLoss_S-Bid)* RiskRewart),Digits) ;

....

OrderSend(Symbol(),OP_BUY,Lots,Ask,3,StopLoss_B,TakeProfit_B, "PBar",Magik,0,Blue);

....

OrderSend(Symbol(),OP_SELL,Lots,Bid,3,StopLoss_S,TakeProfit_S, "PBar",Magik,0,Red);

Das Prüfgerät zeigt den Fehler 130 an - irgendetwas stimmt mit TP und SL nicht. Ich kann nicht verstehen, was genau, vor allem, weil manchmal läuft es gut, und manchmal bekomme ich einen Fehler.

Bitte helfen Sie allgemein.

Vielleicht setzen Sie manchmal zu nahe am aktuellen Kurs, mal sehen, was die Funktion zurückgibt

double stop_level=(double)SymbolInfoInteger(_Symbol,SYMBOL_TRADE_STOPS_LEVEL);

...

 

Forum für Handel, automatisierte Handelssysteme und Strategietests

Fragen von Anfängern MQL4 MT4 MetaTrader 4

Sergey Gritsay, 2017.01.07 18:48

Vielleicht wetten Sie manchmal zu nahe am aktuellen Kurs, mal sehen, was die Funktion Ihnen zurückgibt

double stop_level=(double)SymbolInfoInteger(_Symbol,SYMBOL_TRADE_STOPS_LEVEL);

...


Wir danken Ihnen für Ihre Teilnahme. Ich habe nicht herausgefunden, wie ich die vorgeschlagene Funktion verwenden kann. Aber Sie haben mich ermutigt, mehr über diese Fehler auf dem Chart zu erfahren, und ich habe verstanden, dass der Grund dafür ist, dass der EA versucht, eine neue Order zu platzieren, wenn ein Stop-Loss ausgelöst wird, aber die Kerze noch nicht geschlossen ist, und genau da tritt der Fehler auf. Ich muss mir überlegen, wie ich dem EA erkläre, dass nur eine Bestellung pro Kerze nötig ist

 
RichLux:

Wir danken Ihnen für Ihre Teilnahme. Ich habe nicht herausgefunden, wie ich die vorgeschlagene Funktion verwenden kann. Aber Sie haben mich ermutigt, mehr über diese Fehler auf dem Chart zu erfahren, und ich habe verstanden, dass der Grund dafür ist, dass der EA versucht, eine neue Order zu platzieren, wenn ein Stop-Loss ausgelöst wird, die Kerze aber noch nicht geschlossen ist, und daher der Fehler auftritt. Ich muss mir überlegen, wie ich dem EA erkläre, dass nur eine Bestellung pro Kerze nötig ist

Wenn der EA bereits eine Order für das Symbol hat, schauen Sie sich die Differenz(Zeitpunkt des Schließens der Order)-(Zeitpunkt des Öffnens der Kerze) an, wenn die Differenz kleiner ist als PeriodSeconds() - öffnen Sie keine neue Order.
 

Forum für Handel, automatisierte Handelssysteme und Strategietests

Fragen von Anfängern MQL4 MT4 MetaTrader 4

Vitalie Postolache, 2017.01.07 21:23

Beobachten Sie unter den geschlossenen Aufträgen, ob der Expert Advisor einen Auftrag auf dem gegebenen Symbol hat, beobachten Sie die Differenz(Zeitpunkt des Schließens des Auftrags) -(Zeitpunkt der Öffnung der Kerze), wenn die Differenz kleiner als PeriodSeconds() ist - öffnen Sie keinen neuen Auftrag.

Ich habe die Dinge ein wenig anders gemacht.

Neue Barfunktion:

bool NewBar()

{

static datetime lastbar = 0;

datetime curbar = Time[0];

if(lastbar != curbar)

{

letzter Balken = letzter Balken;

zurückgeben (true);

}

sonst return(false);

}

und ich schrieb Bedingungen für das Öffnen nur, wenn es einen neuen Takt gibt