Wie programmiert man? - Seite 211

 
dr.house7:
Danke Avalanche,

aber es ist keine Lösung für mich, weil ich einen TP habe, ich warte nicht bis zum entgegengesetzten Zustand

Andere Idee? PM mich, ich werde Sie bezahlen

Ich weiß nicht, warum, aber ich kann keine PMs senden... Wahrscheinlich, weil ich ein neues Mitglied hier bin.

Im obigen Beispiel brauchen Sie nicht auf die entgegengesetzte Bedingung zu warten, diese zusätzliche Anforderung (OrdersTotal()==0) weist Ihren EA an, eine neue Order zu eröffnen, wenn Sie noch keine Order eröffnet haben.

Ich habe ein paar andere Methoden für diesen Fall, also wenn diese Methode nicht gut für Sie ist - Sie können mich unter favalanchex@gmail.com (Gtalk) oder ICQ erreichen.

 
Avalanche2k:
Ich weiß nicht warum, aber ich kann keine PMs senden... Wahrscheinlich, weil ich ein neues Mitglied hier bin.

Im obigen Beispiel brauchen Sie nicht auf die entgegengesetzte Bedingung zu warten. Diese zusätzliche Bedingung (OrdersTotal()==0) weist Ihren EA an, eine neue Order zu eröffnen, wenn Sie noch keine Order eröffnet haben.

Ich habe ein paar andere Methoden für diesen Fall, so dass, wenn diese Methode ist nicht gut für Sie - Sie können mich unter favalanchex@gmail.com (Gtalk) oder ICQ erreichen.

Es ist so:

Wenn ich zum ersten Mal long gehe, dann TP und die Order schließe, möchte ich nicht noch einmal long gehen, sondern auf eine Short-Bedingung warten.

Danke Avalanche

 
dr.house7:
es ist so:

Wenn ich zum ersten Mal long gehe, dann TP und Close Order, will ich nicht wieder long gehen, sondern auf eine Short-Bedingung warten

Danke Avalanche

Bitte überprüfen Sie PM, jetzt sind sie für mich verfügbar.

 

Suche nach EA, der BUYSTOPS und SELLSTOPS verwendet

Ich bin auf der Suche nach einem EA, der BuyStops und Sellstops verwendet, z.B. wie man dies in einem EA codiert.

Dave

 
1Dave7:
Ich bin auf der Suche nach einem EA, der BuyStops und Sellstops verwendet, z.B. wie man dies in einem EA codiert. Dave

Hallo, der einzige Unterschied zum normalen EA ist, dass Sie Entry Price und Stop Loss vordefiniert haben sollten. Sie können sie zu externen Variablen machen oder nach Ihrer Logik berechnen. Dann können Sie so etwas verwenden, um den Auftrag für BUYSTOP zu setzen:

OrderSend(Symbol(),OP_BUYSTOP,Lots,EntryPrice,0,StopLoss,0,NULL,MagicNumber,0,Blue);

 

wie kann ich 20 Magic Numbers verwalten

Hallo zusammen,

Ich werde in einem EA 20 Aufträge mit verschiedenen Magic Numbers öffnen.

Beispiel:

- openOrders = 5 mit Magic Number 1 bis 5

- Order Nr. 4 wird geschlossen, Magic Number 4 = frei

- wenn eine neue Order eröffnet werden soll, erhalte ich die kleinste freie Magic Number

Wie kann ich das programmieren?

Vielen Dank!

Mit freundlichen Grüßen

derumuro

 
derumuro:
Hallo zusammen,

Ich werde in einem EA 20 Aufträge mit verschiedenen Magic Numbers eröffnen.

Beispiel:

- openOrders = 5 mit Magic Number 1 bis 5

- Order Nr. 4 wird geschlossen, Magic Number 4 = frei

- wenn eine neue Order eröffnet werden soll, erhalte ich die kleinste freie Magic Number

Wie kann ich das programmieren?

Vielen Dank!

Mit freundlichen Grüßen

derumuro

Definieren Sie zunächst die Funktion getMagic(), die Ihnen die magischen Zahlen liefert, und fügen Sie sie in die Funktion ordersend ein (als Parameter für die Einstellung der magischen Zahl).

Dann sollten Sie innerhalb der getMagic Funktion folgendes tun:

getMagic()

{

1) setze eine Schleife for(int i = 1;i<21;i++) um die Zahlen von 1 bis 20 zu überprüfen

2) als nächstes eine weitere Schleife (innerhalb der ersten for) für jede Zahl i mit einer for-Schleife von 0 bis OrdersTotal, um zu prüfen, ob die magische Zahl gleich i ist. Wenn Sie Ihre magische Zahl nicht gefunden haben, dann bedeutet das, dass sie frei ist und Sie können sie als Rückgabewert dieser Funktion (getMagic) verwenden und an die orderSend-Funktion übergeben, andernfalls verwenden Sie das contunue-Schlüsselwort, um eine weitere Prüfung der magischen Zahl zu überspringen.

}

 
Roger09:
Versuchen Sie Folgendes: Schlusskurs_des_Balkens = iClose(Symbol(),PERIOD_M1,iBarShift(Symbol(),PERIOD_M1,StrToTime("04:59"));

Jetzt muss ich wissen, was der Schlusskurs für einen bestimmten Balken an jedem Tag ist. Das würde mir helfen, die relative Bewegung im Preis auf den Abschluss des US DJIA Aktienindex zu überwachen.

Für jede weitere Hilfe wäre ich dankbar, danke.

 
Sadly:
Jetzt muss ich wissen, wie hoch der Schlusskurs für einen bestimmten Balken an jedem Tag ist. Das würde mir helfen, die relative Bewegung des Preises zum Schluss des US DJIA Aktienindex zu überwachen. Jede weitere Hilfe würde geschätzt werden, danke.

Wenn Sie nur Balken benötigen, verwenden Sie:

double iClose( string symbol, int timeframe, int shift)

wobei "shift" - ein richtiger Balken ist.

 

Was ich suche, ist der Schlusskurs desselben Balkens für jeden Tag, genauer gesagt der Schlusskurs um 19:59:00 Uhr GMT (die Zeit, zu der der DJIA im Vereinigten Königreich schließt).

iClose(Symbol(),PERIOD_M1,iBarShift(Symbol(),PERIOD_M1,StrToTime("19:59")));

Während Ihre Codezeile perfekt funktionierte, dachte ich leider nur in meinem Kopf, dass sie mir auch die Schlusskurse des Vortages anzeigen würde. Die Idee dahinter ist, den Schlusskurs des 19:59:00-Balkens mit einem Objekt zu markieren, um die Schlusszeit des DJIA und den Kurs des EURUSD zu diesem Zeitpunkt anzuzeigen.

Das ist also der Schlusskurs zu einem bestimmten Zeitpunkt an jedem Tag; der Schlusskurs um 19:59:00 Uhr von Montag bis Freitag.