Wie programmiert man? - Seite 48

 
MrPip:
Ich habe dies in anderen EAs verwendet und es funktioniert korrekt.

Ich prüfe, ob der Handel heute geschlossen ist, anstatt heute offen.

Die Verwendung beim Start ist

if (LastTradeClosedToday()) return(0);

// Code hier, um neue Trades zu öffnen

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

//| LastTradeClosedToday |

//| Prüfe Historie um zu sehen, ob letzter Handel heute geschlossen wurde |

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

bool LastTradeClosedToday()

{

int cnt, total;

bool Geschlossen;

total = HistoryTotal();

for (cnt = gesamt - 1; cnt >= 0; cnt--)

{

OrderSelect (cnt, SELECT_BY_POS, MODE_HISTORY);

if(BestellSymbol()!=Symbol()) weiter;

if (OrderMagicNumber() != MagicNumber) continue;

Geschlossen = false;

if (OrderType() == OP_BUY)

{

if (TimeDay(OrderCloseTime()) == TimeDay(TimeCurrent()))

{

Geschlossen = true;

}

cnt = 0;

}

if (OrderType() == OP_SELL)

{

if (TimeDay(OrderCloseTime()) == TimeDay(TimeCurrent()))

{

Geschlossen = true;

}

cnt = 0;

}

}

return (Closed);

}

Okay, ich werde es versuchen. Danke, Mr. Pips, Sie waren eine große Hilfe.

 

Problem behoben

Hallo,

Ich habe meinen Fehler selbst gelöst, einen dummen Fehler gemacht. Vielen Dank an alle für das Lesen dieses Threads.

 

Haben Sie ihn schon umgewandelt?

Beno:
Danke Mr. Pips Hat es sortiert

Ist es möglich, diesen Indikator in einen EA zu verwandeln. Ich dachte, Beno versucht, dies zu tun. Ich würde es begrüßen, wenn jemand, der es getan hat oder tun kann, bitte die EA-Version dieses Indikators posten würde. Vielen Dank!

Der Indikator ist beigefügt:

 
makemo8:
Ist es möglich, diesen Indikator in einen EA umzuwandeln. Ich dachte, Beno versucht, dies zu tun. Ich würde mich freuen, wenn jemand, der dies getan hat oder tun kann, die EA-Version dieses Indikators posten würde. Vielen Dank Der Indikator ist beigefügt:

Ups! Der Indikator, der in einen EA umgewandelt werden soll, ist MT4-LevelStop-Reverse-vB0-4.mq4

 

Hallo,

Ich habe einen EA für den Handel mit Breakouts - jede Nacht muss ich voreingestellte Dateien mit den Breakout-Levels für den nächsten Tag laden.

Meine Frage ist: Wie kann ich die EA sieht für die voreingestellten Dateien selbst, anstatt es selbst zu tun?

Beispiel : Ich lade die Voreinstellungsdateien auf ein FTP hoch, der EA kennt die Adresse und jeden Tag um 22:00 werden die Voreinstellungsdateien von dieser Adresse geladen.

Ist das möglich?

Danke

 

Fragen zur Programmierung

Ich habe ein paar kurze Fragen:

1. Angenommen, ich handle GBPUSD auf den 15-Minuten-Charts. Wird die start()-Funktion in meinem EA nur dann aufgerufen, wenn ein neuer Balken verfügbar ist (alle 15 Minuten), oder jedes Mal, wenn es einen neuen Kurs gibt (das kann alle paar Sekunden sein)?

2. Angenommen, ich platziere zu einem bestimmten Zeitpunkt zwei Orders - eine ist ein Kauf-Stopp, z. B. 20 Pips über dem aktuellen Kurs, und die andere ist ein Verkaufs-Stopp 20 Pips unter dem aktuellen Kurs. Wenn der Kurs bis zu meinem Kauf-Stopp steigt, möchte ich den Verkaufs-Stopp aufheben, sobald ich bestätigt habe, dass der Kauf-Stopp-Auftrag ausgelöst wurde. Ähnlich verhält es sich, wenn der Kurs bis zu meinem Verkaufsstopp fällt: Ich möchte den Kaufstopp aufheben, sobald ich bestätigt habe, dass der Verkaufsstopp ausgelöst wurde.

Gibt es eine einfache Möglichkeit, dies zu tun? Wie kann ich bestätigen, dass der Kaufstopp ausgelöst wurde, bevor ich den Verkaufsstopp aufhebe? Bietet das System eine Art Auftragsrückruf-Funktion, die mir mitteilt, dass ein Auftrag ausgelöst wurde? Oder muss ich einfach die start()-Funktion bei jeder Notierung nach offenen Aufträgen suchen lassen und es auf diese Weise feststellen?

Vielen Dank

 
westofpluto:
Ich habe ein paar kurze Fragen:

1. Angenommen, ich handele mit GBPUSD auf den 15-Minuten-Charts. Wird die Funktion start() in meinem EA nur dann aufgerufen, wenn ein neuer Balken verfügbar ist (alle 15 Minuten), oder jedes Mal, wenn es einen neuen Kurs gibt (das kann alle paar Sekunden der Fall sein)?

2. Angenommen, ich platziere zu einem bestimmten Zeitpunkt zwei Orders - eine ist ein Kauf-Stopp, z. B. 20 Pips über dem aktuellen Kurs, und die andere ist ein Verkaufs-Stopp 20 Pips unter dem aktuellen Kurs. Wenn der Kurs bis zu meinem Kauf-Stopp steigt, möchte ich den Verkaufs-Stopp aufheben, sobald ich bestätigt habe, dass der Kauf-Stopp-Auftrag ausgelöst wurde. Ähnlich verhält es sich, wenn der Kurs bis zu meinem Verkaufsstopp fällt: Ich möchte den Kaufstopp aufheben, sobald ich bestätigt habe, dass der Verkaufsstopp ausgelöst wurde.

Gibt es eine einfache Möglichkeit, dies zu tun? Wie kann ich bestätigen, dass der Kaufstopp ausgelöst wurde, bevor ich den Verkaufsstopp aufhebe? Bietet das System eine Art Auftragsrückruf-Funktion, die mir mitteilt, dass ein Auftrag ausgelöst wurde? Oder muss ich einfach die start()-Funktion bei jeder Notierung nach offenen Aufträgen suchen lassen und es auf diese Weise feststellen?

Danke

1. Die Start()-Funktion wird bei jedem Tick aufgerufen

2. Ja, es ist möglich. Es gibt mehr als eine Möglichkeit. Sie könnten Ihren Kauf- und Verkaufsstopp setzen, dann die Funktion OrderType( ) aufrufen, und wenn sie OP_BUY oder OP_SELL zurückgibt, könnten Sie dann OrderDelete( ) verwenden, um die bestehende Pending Order zu löschen.

 

Ist das korrekt Mr. Pips? Wird es mit dem Strategietester funktionieren, weil es im Tester nicht funktioniert... oder sollte ich es nur vorwärts testen?

if (LastTradeOpenToday()) return ();

bool LastTradeOpenToday()

{

int cnt, total;

bool Opened;

total = HistoryTotal();

for (cnt = gesamt - 1; cnt >= 0; cnt--)

{

OrderSelect (cnt, SELECT_BY_POS, MODE_TRADES);

if(OrderSymbol()!=Symbol()) weiter;

if (OrderMagicNumber() != Magic_Number) continue;

Eröffnet = false;

if (OrderType() == OP_BUY)

{

if (TimeDay(OrderOpenTime()) >= TimeDay(TimeCurrent()))

{

Eröffnet = true;

}

cnt = 0;

}

if (OrderType() == OP_SELL)

{

if (TimeDay(OrderOpenTime()) >= TimeDay(TimeCurrent()))

{

Eröffnet = true;

}

cnt = 0;

}

}

return (Opened);

}
 

Mathematisches Differential

Kann mir ein Programmierer sagen, wie ich einen neuen Indikator auf der Grundlage eines mathematischen Differentials oder Integrals einführen kann?

Ich suche nach der Formel, die einen Indikator in ein mathematisches Differential oder Integral überführt.

 

csv-Dateien

Liebe Freunde

ich brauche einen Indikator, der mir die CSV-Dateien speichert, anstatt "ctrl+s" zu benutzen.

danke