Google mal nach: "site mql5.com linear regression".
Jetzt kann man so etwas einfach(er) mit Matrizen bearbeiten, in die in einem Rutsch best. Werte eingetragen werden können: https://www.mql5.com/de/docs/matrix/matrix_initialization
um dann die Lineare Regression zu verwenden: https://www.mql5.com/de/docs/matrix/matrix_statistics/matrix_linearregression.

- www.mql5.com
Google mal nach: "site mql5.com linear regression".
Jetzt kann man so etwas einfach(er) mit Matrizen bearbeiten, in die in einem Rutsch best. Werte eingetragen werden können: https://www.mql5.com/de/docs/matrix/matrix_initialization
um dann die Lineare Regression zu verwenden: https://www.mql5.com/de/docs/matrix/matrix_statistics/matrix_linearregression.
Danke für den link - ein konkretes Beispiel hier im screenshot. Im blauen Quadrat sieht man wie StockK(blaue Linie) den RSI (gelbe Line) in einem Bereich unter 50 von unten nach oben kreuzt. Das wesentliche ist jetzt, dass der RSI seit einigen bars eine positive Steigung beim Schnittpunkt hat. Das macht einen großen Unterschied aus, ob der StochK einen fallenden,steigenden oder wagrechten RSI unter 50 schneidet. Wenn man es noch präziser angeht, ist mit en steigender RS zuwenig, da jetzt auch der Steigungswinkel ins Spiel kommt - ein Durchschneiden des RSI, der einen Winkel von 60 Grad hat ist effzenter, als ein steigender RSI mit einem Stegungswinkel von nur 30 Grad.
Ich denke das Problem ist, wie man diese Steigung in MQL4 übersetzt und in eine if-Nebenbedingung einbaut, die vom System verstanden wird - die herkömliche Steigungsformel ist wahrscheinlich zuwenig
Bitte überlegen Sie, welcher Abschnitt am besten geeignet ist – https://www.mql5.com/en/forum/172166/page6#comment_49114893
Ich denke das Problem ist, wie man diese Steigung in MQL4 übersetzt und in eine if-Nebenbedingung einbaut, die vom System verstanden wird - die herkömliche Steigungsformel ist wahrscheinlich zuwenig
hey,
versuche doch mal diese Funktion:
bool IsRSIContinuouslyRising(int rsiPeriod, int appliedPrice, ENUM_TIMEFRAMES timeframe, int bars = 10) { // Handle for the RSI indicator int rsiHandle = iRSI(_Symbol, timeframe, rsiPeriod, appliedPrice); if(rsiHandle == INVALID_HANDLE) { Print("Error creating RSI handle"); return false; } // Array to store RSI values double rsiValues[]; ArraySetAsSeries(rsiValues, true); // Copy RSI values into the array if(CopyBuffer(rsiHandle, 0, 0, bars, rsiValues) <= 0) { Print("Error copying RSI data"); return false; } // Release the handle IndicatorRelease(rsiHandle); // Check if RSI is continuously rising for(int i = 1; i < bars; i++) { if(rsiValues[i] <= rsiValues[i - 1]) { return false; } } return true; }

- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Folgende Überlegung - wenn ich in einen EA einbauen möchte, dass zum Beispiel der RSI oder irgendeine andere Linie während der letzten 10 Bars, sagen wir mal M5, eine durchgehend positive Steigung haben soll, würde ich das in etwa so programmern: (provisorisch ausgdrückt), das der RSI zum close von jedem M5 Bar des zugrunde liegenden Preises höher ist als zum close des vorigen, also zum close vor 9 bars höher als zum close vor 10 bars,zum close vor 8 bars höher als zum close vor 9 bars, zum close vor 7 bars höher als zum close vor 8 bars usw.
das müsste eine RSI Linie mit einer durchgehend positiven Steigung während der letzten 10 Preis-bars ergeben -ist das vom Denksansatz richtig?