Hilfe bei der Codierung - Seite 362

 
triip:
Leute, ich brauche ein wenig Hilfe, um RSI und SMA Relation zu codieren.

Wie Sie auf dem Bild sehen, gibt es Signale (Pfeile nach oben und unten), aber einige von ihnen sind falsche Signale. Also habe ich beschlossen, falsche Signale mit RSI14 und SMA20 auf sie zu beseitigen.

Die Logik dahinter ist sehr einfach: Der Aufwärtspfeil sollte erscheinen, wenn der RSI14 ÜBER dem SMA20 liegt. Der Abwärtspfeil sollte erscheinen, wenn der RSI UNTER dem SMA20 liegt.

Ich habe einige Aufwärtspfeile falsch markiert, weil der RSI zu hoch ist, aber diesen Teil kann ich selbst codieren.

Ich habe eine Menge RSI<MA Crossing Codes gefunden, aber die meisten von ihnen gehen long/short, wenn Cross erscheint. Aber ich brauche einen Begriff, wo RSI ist ÜBER oder UNTER und dann etwas tun.

So viel ich gefunden habe, für jetzt, ich habe zu verwenden, IRSI und Array für das, aber kann nicht setzen, dass Code selbst zusammen.

triip

Haben Sie den hier geposteten Code geprüft: https: //www.mql5.com/en/forum/general

 
mladen:
triip Haben Sie den hier geposteten Satz geprüft: https: //www.mql5.com/en/forum/general

Ja, aber alles, was ich finde, war Kreuzung Signal. Ich brauche Bedingungen, wenn RSI über/unter SMA ist.

Ich verstehe, dass ich erstens erklären muss, was bedeutet ÜBER und was bedeutet UNTER, danach kann ich sie in IF-Satz verwenden.

 
mladen:
triip


Hast du das hier gepostete überprüft: https: //www.mql5.com/en/forum/174476



Ja, aber alles, was ich finde, war Kreuzung Signal. Ich brauche Bedingungen, wenn RSI über/unter SMA ist.


Ich verstehe, dass erstens ich zu erklären, was bedeutet ÜBER und was bedeutet UNTER, danach kann ich sie in IF-Satz verwenden.

 
triip:
Ja, aber alles, was ich finde, war Kreuzung Signal. Ich brauche Bedingungen, wenn RSI ist über/unter SMA. Ich verstehe, dass erstens muss ich erklären, was bedeutet ÜBER und was bedeutet UNTER, nach, dass ich sie in IF-Satz verwenden können.

triip

Keine Ahnung, was rsi wurden Sie verwenden, um diese Signale auf Ihrem Bild zu erhalten, so ... das ist alles, was ich sagen kann. Ohne den Code kann nicht mehr helfen

 
mladen:
triip Keine Ahnung, was rsi wurden Sie verwenden, um diese Signale auf Ihrem Bild zu erhalten, so ... das ist alles, was ich sagen kann. Ohne den Code kann nicht mehr helfen

Sorry, ich habe nicht erwähnt, dass Pfeil-Signale nicht von RSI kommen. seine einen anderen Code, den ich verwenden. Aber ich sah, dass RSI mit SMA helfen, falsche Signale zu vermeiden. Deshalb möchte ich den Signalcode so bearbeiten, dass er in der Lage ist, auch RSI-Bedingungen zu erkennen.

Was ich brauche, ist:

Pfeil-Signale kommen in, aber alle von ihnen sind nicht echte Signale. Also bevor der Pfeil kommt, muss es eine weitere if-Prüfung geben, die die RSI-Bedingungen kontrolliert.

if (mein aktueller Code && RSI ist über/unter SMA)

{ Pfeil anzeigen

}

Ich brauche den roten Teil.

 
triip:
Tut mir leid, dass ich nicht erwähnt habe, dass die Pfeil-Signale nicht vom RSI kommen, sondern von einem anderen Code, den ich verwende. Aber ich sah, dass RSI mit SMA helfen, falsche Signale zu vermeiden. Deshalb möchte ich den Signalcode so bearbeiten, dass er in der Lage ist, auch RSI-Bedingungen zu erkennen.

Was ich brauche, ist:

Pfeile Signale kommen in, aber alle von ihnen sind nicht echte Signale. Also, wenn Pfeil kommt, dann muss es eine andere wenn überprüfen, was RSI Bedingungen steuert.

if (mein aktueller Code && RSI ist über/unter SMA)

{ Pfeil anzeigen

}

Ich brauche den roten Teil.

triip

Sie müssen Folgendes tun:

1. Speichern Sie die Werte des RSI in einem Puffer

2. Verwenden Sie iMAOnArray(), um den SMA dieser RSI-Werte zu berechnen

3. Vergleichen Sie den Wert des gespeicherten RSI und den von iMAOnArray() berechneten Wert und das ist Ihre Bedingung

 
mladen:
triip

Sie müssen die folgenden Schritte durchführen:

1. Speichern Sie die Werte des RSI in einem Puffer

2. Verwenden Sie iMAOnArray(), um den SMA dieser RSI-Werte zu berechnen.

3. Vergleichen Sie den Wert des gespeicherten RSI mit dem Wert des von iMAOnArray() berechneten Wertes und das ist Ihre Bedingung

Also 1 und 2 etwas wie das?

1.

#property indicator_buffers 2

extern int rsi_p = 14;

extern int MA_Period=20;

extern int MA_Shift=0;

extern int MA_Method=0;

extern int NumberOfBarsToCalculate = 10000;

double Buffer0[];

double Buffer1[];

double Ma[];

double RSi[];

int init()

{

IndicatorBuffers(4);

SetIndexBuffer(0,Buffer0);

SetIndexBuffer(1,Buffer1);

SetIndexBuffer(2,Ma);

SetIndexBuffer(3,RSi);

return(0);

}

[/CODE]

2.

[CODE]int start() {

int shift;

double rsi = 0;

for(shift=NumberOfBarsToCalculate-1;shift>=0;shift--){

RSi[shift] = iRSI(NULL,0,rsi_p,PRICE_CLOSE,shift);

}

for(shift=NumberOfBarsToCalculate-1;shift>=0;shift--){

Ma[shift] = iMAOnArray(RSi,0,MA_Period,MA_Shift,MA_Method,shift);

Buffer0[shift] = RSi[shift];

Buffer1[shift] = Ma[shift];

}

return(0);

}

 
triip:
Also 1 und 2 oder so ähnlich?

1.

#property indicator_buffers 2

extern int rsi_p = 14;

extern int MA_Period=20;

extern int MA_Shift=0;

extern int MA_Method=0;

extern int NumberOfBarsToCalculate = 10000;

double Buffer0[];

double Buffer1[];

double Ma[];

double RSi[];

int init()

{

IndicatorBuffers(4);

SetIndexBuffer(0,Buffer0);

SetIndexBuffer(1,Buffer1);

SetIndexBuffer(2,Ma);

SetIndexBuffer(3,RSi);

return(0);

}

[/CODE]

2.

[CODE]int start() {

int shift;

double rsi = 0;

for(shift=NumberOfBarsToCalculate-1;shift>=0;shift--){

RSi[shift] = iRSI(NULL,0,rsi_p,PRICE_CLOSE,shift);

}

for(shift=NumberOfBarsToCalculate-1;shift>=0;shift--){

Ma[shift] = iMAOnArray(RSi,0,MA_Period,MA_Shift,MA_Method,shift);

Buffer0[shift] = RSi[shift];

Buffer1[shift] = Ma[shift];

}

return(0);

}

Ja, das kann man auch so machen

Und wenn Sie es brauchen, vergleichen Sie einfach RSi und MA-Puffer und Sie werden immer in der Lage sein, ihre relative Position zu sehen

 
mladen:
Ja, Sie können es auch so machen. Und wenn Sie es brauchen, vergleichen Sie einfach RSi und MA-Puffer und Sie werden immer in der Lage sein, ihre relative Position zu sehen.

Großartig, vielen Dank mladen

 
mladen:
apprentice coder Hier ist ein Indikator, der ein solches Sortierverfahren hat (er sortiert ein 2-dimensionales Array): spearman_rank_correlation_nmc.mq4

mladen

Irgendein Beispiel von c/c++, das dasselbe tut?