Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 414

 
bergkamp.:

nach Beendigung des Starts wird der Handel nach dem Signalwechsel fortgesetzt?

Wenn die angegebene Bedingung geändert wird, wird sie fortgesetzt.

bergkamp.:

und wie unterscheidet sich die Aktion von dieser?

(ohne ins Detail zu gehen) nichts.

 
bergkamp.:

nach Beendigung des Starts wird der Handel nach dem Signalwechsel fortgesetzt?

und wie unterscheidet sich die Aktion? dies und das


Im zweiten Fall gibt die Funktion start() Null zurück, im ersten Fall wird nichts zurückgegeben.
 
khorosh:

Im zweiten Fall gibt die Funktion start() Null zurück, im ersten Fall nichts.

Hoppla, ein großer Irrtum, der dazu führt, dass Fehler gefunden werden, wo keine sind.

Die Funktion gibt eine undefinierte Zahl zurück, möglicherweise 0, aber das ist nicht sicher.

Verwirren Sie den Mann also nicht, sonst wird er in Schwierigkeiten geraten und nicht glücklich sein.

 
bergkamp.:

nach Beendigung des Starts wird der Handel nach dem Signalwechsel fortgesetzt?

und wie unterscheidet sich die Aktion? dies und das

Nicht anders bei einem Systemaufruf (durch Tick). Es ist wichtig, start() selbständig aufzurufen. Und das nur, wenn der Rückgabewert wichtig ist.
 
sergeev:

Hoppla, ein großer Irrtum, der dazu führt, dass Fehler gefunden werden, wo keine sind.

Die Funktion gibt eine undefinierte Zahl zurück, möglicherweise 0, aber das ist nicht sicher.

Also verwirre den Mann nicht, sonst wird er verletzt und ist nicht glücklich.

Wahrscheinlich nie benutzter Wert der Funktion "Start". Das dachte ich mir, denn normalerweise ist das, was bei return() in Klammern steht, der Rückgabewert für die Funktion, und wenn es keinen Wert gibt, dann nichts. Aber "Start" ist keine gewöhnliche Funktion, sondern eine besondere, vielleicht gibt es deshalb einige Abweichungen.
 
khorosh:
return() in Klammern ist der Rückgabewert für die Funktion und nichts, wenn es keinen Wert gibt.

Nein und nein!

bringen Sie den Neulingen keinen Unsinn bei.


int F1() { return; }

int F2() { }

int a=F1(), b=F2();

Drucken(a);

Drucken(b);


-----

Gott sei Dank gibt es den strengen Modus

 
  1. Hallo, beraten, wie man eine Bedingung in der Korrelation Indikator, der im Hauptfenster zeigt 2 Währungspaare in den Zeilen von einem bestimmten Datum in der Zeit zu implementieren, so dass die zweite korrelierte Paar wird auch weiterhin auf dem Chart in Echtzeit angezeigt werden, und nicht nur, bis der Indikator an das Diagramm, zum Beispiel, das Hauptfenster des Euro, um weiterhin anzuzeigen, Pfund-Dollar verbunden ist. Die Standardkonstruktion des Indikators (durch Balken) ist wegen der ständigen Neubewertung nicht geeignet.
  2. #property indicator_chart_window
    #property indicator_buffers 2


    extern datetime startDate = 1389107200;
    extern int period = 1;
    extern int priceType = MODE_CLOSE;
    extern int shift = 0;
    extern int mode = MODE_EMA;
    extern string addSymbol = "GBPUSD";
    extern color curSymbolColor = Red;
    extern color addSymbolColor = Aqua;

    int drawBars = 0;
    int addBars = 100;
    double a[], b[], c[];

    // ----
    int init(){
    IndicatorBuffers(3);
    SetIndexBuffer(0,a);
    SetIndexBuffer(1,b);
    SetIndexBuffer(2,c);
    SetIndexStyle(0,DRAW_LINE,EMPTY,EMPTY,curSymbolColor);
    SetIndexStyle(1,DRAW_LINE,EMPTY,EMPTY,addSymbolColor);
    drawBars = iBarShift(NULL,0,startDate);
    if (iClose(addSymbol,0,0) == 0) addSymbol = "";
    drawBars += period + addBars;
    }

    // ----
    int start(){
    int bars = 0, i = 0, si = 0, pos = 0;
    static double delta = 0;

    bars = IndicatorCounted();
    if (bars < 0) return(-1);
    i = Bars - bars - 1;

    if (i > drawBars) i = drawBars;
    si = i;

    while (i > 0){
    if (i < drawBars - period - addBars){
    a[i] = iMA(NULL,0,period,shift,mode,priceType,i);
    }
    pos = iBarShift(addSymbol,0,Time[i]);
    c[i] = price(addSymbol,0,priceType,pos);
    i--;
    }
    si -= period + addBars + 1;
    i = si;

    while(i > 0){
    b[i] = iMAOnArray(c,0,period,shift,mode,i);
    if (i == si){
    delta = b[i] - a[i];
    }
    b[i] -= delta;
    i--;
    }
    }

    //----
    double price(string symb,int tf, int type, int i){
    double p = 0;
    if (symb=="0") symb = Symbol();

    switch(type){
    case MODE_OPEN :
    p = iOpen(symb,tf,i); break;
    case MODE_LOW :
    p = iLow(symb,tf,i); break;
    case MODE_HIGH :
    p = iHigh(symb,tf,i); break;
    case MODE_CLOSE :
    p = iClose(symb,tf,i); break;
    }
    return(p);
    }
 
Es ist einfach möglich, dass der Indikator automatisch aktualisiert wird, z.B. alle 2-3 Minuten.
 

Bitte helfen Sie mir, ich weiß nicht, in welches Thema ich schreiben soll.

Ich habe einen Expert Advisor, dem ich die Fähigkeit hinzufügen muss, das nächste gewonnene Lot mit 2 zu multiplizieren:

1. Risiko

2. Gewinn

3. Stoploss

4. StartZeit

5. Losgröße

6. Wenn die Partie positiv abgeschlossen ist

7. Anzahl der nachfolgenden multiplizierten Lose (1, 2, 3 oder 4)

7.1 Multipliziertes gewonnenes Los (je 2, mit X)

7.2 Das multiplizierte Gewinnlos (je 3 mal X)

7.3 Eine multiplizierte gewonnene Partie (jede 4 mal X) 7.4 Eine multiplizierte gewonnene Partie (jede 4 mal X)

7.4 Multipliziertes gewonnenes Los (je 5 durch X)

X - veränderbarer Wert (wenn X=0, wird die Partie nicht multipliziert)

Beispiel 1:

Wenn der Einsatz 0,03 = in + gespielt wird, ist der nächste Einsatz 0,06

Wenn der Einsatz 0,06 = in + gespielt wird, ist der nächste Einsatz 0,09

Wenn Wette 0,09 = nicht im + gespielt, dann ist die nächste Wette Standard 0,03

Beispiel 2:

Wenn der Einsatz 0,03 = in + gespielt wird, ist der nächste Einsatz 0,06

Wenn der Einsatz 0,06 = nicht mitgespielt hat, ist der nächste Einsatz 0,03

Wenn Wette 0,03 = gespielt in +, dann die nächste Wette Standard 0,06

usw.

Hier ist der EA selbst. Für Ihre Hilfe wäre ich Ihnen sehr dankbar.

Dateien:
 
Hallo!
Gibt es eine Funktion in der Funktion "Kim", die die Gewinnspanne des letzten offenen Auftrags berechnet?

Ich habe sie nicht gefunden, jetzt rätsele ich über eine hausgemachte Funktion zur Berechnung der Gewinnspanne des letzten offenen Auftrags.