[ARCHIV] Alle Fragen von Anfängern, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 3. - Seite 617

 
Können Sie mir bitte sagen, wie ich das Los der letzten geschlossenen Position erfahren kann? Beispiel: Die letzte Position wurde mit einem Takeaway geschlossen und wir wollen das Lot der nächsten Position erhöhen.
 
Vadimkin:
Können Sie mir bitte sagen, wie ich einen Indikator, der einem anderen Indikator überlagert ist (z. B. MA auf RSI), in einem EA deklarieren kann?
nur explizit berechnen, z.B. mit iMAOnArray() oder durch meinen eigenen Algorithmus.
 
david2:
Können Sie mir bitte sagen, wie ich das Los der letzten geschlossenen Position erfahren kann? Beispiel: Die letzte Position wurde mit einem Takeaway geschlossen und wir wollen das Lot der nächsten Position erhöhen.
int oht = OrdersHistoryTotal();
double last_lot;
OrderSelect(oht-1,SELECT_BY_POS,MODE_HISTORY);
if(NormalizeDouble(OrderClosePrice()-OrderTakeProfit(),Digits)==0) //ордер закрыт по тейкпрофиту
{
   last_lot = OrderLots();
   // ура
}
 
alsu:

Vielen Dank, aber es ist nicht klar, warum die Klammern oht-1 und nicht oht sind.
 
david2:
Vielen Dank, aber es ist nicht klar, warum die Klammern oht-1 und nicht oht sind.

das erste Element des Arrays hat die Nummer 0, das letzte Element hat die Größe-1
 
alsu:

das erste Element des Arrays hat die Nummer 0, das letzte size-1
Ich verstehe.
 
alsu:
nur explizit berechnen, z. B. mit iMAOnArray() oder meinem eigenen Algorithmus.

Danke, ich werde es ausprobieren.

Ich habe einen anderen Ansatz versucht. Ich habe einen einfachen benutzerdefinierten MA-Indikator aus dem RSI erstellt. Jetzt muss ich Bedingungen für den Expert Advisor formulieren, damit er Positionen eröffnet.

Zum Beispiel:

if (RoteZeile1>BlaueZeile1&&RoteZeile2<BlaueZeile2) OP_BUY

if (RoteZeile1<BlaueZeile1&&RoteZeile2>BlaueZeile2) OP_SELL

Aber ich weiß nicht, wie ich sie deklarieren soll. Das heißt:

double RedLine1 = iCustom(Symbol(), 0, "MARSI", ?, ?, ......, 1);

Könnten Sie sich das bitte ansehen. Oder jemand soll sich das bitte ansehen.

Dateien:
marsi.mq4  2 kb
 
Vinin:


iHigh(NULL, PERIOD_D1,1) - Höchststand von gestern

iLow(NULL, PERIOD_D1,1) - das gestrige Minimum

iOpen(NULL, PERIOD_D1,1) - die gestrige Eröffnung

iClose(NULL, PERIOD_D1,1) - Schlusskurs von gestern

Ist es möglich, iHai, iLo, iOpen und iClose für ein bestimmtes Datum zu setzen, das in den Indikatoreinstellungen geändert werden kann?

extern int Daten = 08/03/2011

iOpen(NULL, 08/03/2011,1) - was ist die Öffnung?

 
Vadimkin:

Danke, ich werde es ausprobieren.

Ich habe einen anderen Ansatz versucht. Ich habe einen einfachen benutzerdefinierten MA-Indikator aus dem RSI erstellt. Jetzt muss ich die Bedingungen für den Expert Advisor formulieren, um damit Positionen zu eröffnen.

Zum Beispiel:

if (RoteZeile1>BlaueZeile1&&RoteZeile2<BlaueZeile2) OP_BUY

if (RoteZeile1<BlaueZeile1&&RoteZeile2>BlaueZeile2) OP_SELL

Aber ich weiß nicht, wie ich sie deklarieren soll. Das heißt:

double RedLine1 = iCustom(Symbol(), 0, "MARSI", ?, ?, ......, 1);

Ich frage mich, ob Sie einen Blick darauf werfen können. Oder jemand soll sich das bitte ansehen.


In Ihrem Fall gibt es keine externen Parameter, so dass Sie anstelle von Fragen nichts zu schreiben brauchen:

double RedLine1 = iCustom(0, 0, "MARSI", Zeilenindex, Taktnummer);

Genauer gesagt,

double RedLine1 = iCustom(0, 0, "MARSI", 0, 1); - rot bei 1 Takt

double RedLine2 = iCustom(0, 0, "MARSI", 0, 2); - rot bei 2 Balken

double BlueLine1 = iCustom(0, 0, "MARSI", 1, 1); - blau bei 1 Balken

double BlueLine2 = iCustom(0, 0, "MARSI", 1, 2); - Blau bei Takt 2
 
alsu:

In Ihrem Fall gibt es keine externen Parameter, so dass Sie anstelle von Fragen nichts zu schreiben brauchen:

double RedLine1 = iCustom(0, 0, "MARSI", Zeilenindex, Taktnummer);

Seien Sie genauer,

double RedLine1 = iCustom(0, 0, "MARSI", 0, 1); - rot bei 1 Takt

double RedLine2 = iCustom(0, 0, "MARSI", 0, 2); - rot bei 2 Balken

double BlueLine1 = iCustom(0, 0, "MARSI", 1, 1); - blau bei 1 Balken

double BlueLine2 = iCustom(0, 0, "MARSI", 1, 2); - Blau bei Takt 2


Ich danke Ihnen vielmals.
Grund der Beschwerde: