person77: Fantastisch - funktioniert sehr gut mladen! Ich danke Ihnen vielmals.
Ein paar Wünsche, wenn es nicht zu viel Mühe macht:
1. Während 4 MA alle synchron sind, zieht sich der Preis zurück und berührt einen bestimmten MA
(in diesem Fall der zweitkürzeste MA, der rote 15 EMA), würde ich gerne einen Pfeil und einen Alarm erzeugen.
Ich würde dann zum kleineren 1M-Zeitrahmen wechseln, um dort nach einem Short-Signal zu suchen.
Ich füge horizontale und vertikale Linien ein, damit man leicht erkennen kann, wo man suchen muss (Punkt A) auf dem kleineren 1M Zeitrahmen Backtesting
2. Kann ich den 4-Ma-Synch-Indikator bitten, nur nach zwei oder drei Ma's zu suchen, die synchron sind, um den Histogrammbalken anzuzeigen? (Bitte sehen Sie sich den Anhang zu den 1-Meter-Bedingungen an, um zu verstehen, was ich hier zu tun versuche)
Person77
Ich fürchte, dass dieser Indikator nicht dafür ausgelegt ist, Kursberührungen anzuzeigen. Ich bin mir auch ziemlich sicher, dass es bereits gute Indikatoren gibt, die genau diese Art von Aufgabe erfüllen.
Was die 2 und 3 mas Version angeht: ersetzen Sie einfach das "" im Code, wo Sie einen Vergleich sehen, der wie "if (ma1<ma2 && ma2<3" ... und so weiter, mit "=" geht und setzen Sie dann 2 mas auf die gleichen Werte für 3 verschiedene mas oder 2 Paare von mas auf die gleichen Werte, um 2 mas durch den Indikator angezeigt zu bekommen
Vorbereitung Kaufman AMA (adaptive gleitenden Durchschnitt) für einige andere Dinge, und hier ist eine Version, die eine sehr vereinfachte Art und Weise der Verwendung (ama Berechnung ist eine Funktion jetzt). Es kann auch der Preis pro Filterung verwendet werden (anstatt den Rohpreis zu verwenden, kann der gefilterte Preis verwendet werden (um die Filterung auszuschalten, setzen Sie den PriceFilter auf 1)
wäre, bitte, möglich sein, den Indikator multitimeframe machen? danke
mladen: Vorbereitung Kaufman AMA (adaptive gleitenden Durchschnitt) für einige andere Dinge, und hier ist eine Version, die eine sehr vereinfachte Art und Weise der Verwendung (ama Berechnung ist eine Funktion jetzt). Es kann Preis pro-Filterung zu (anstelle der Verwendung von rohen Preis, gefilterten Preis verwendet werden kann (um die Filterung von, setzen Sie die PriceFilter auf 1)
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Erlauben Sie die Verwendung von Cookies, um sich auf der Website MQL5.com anzumelden.
Bitte aktivieren Sie die notwendige Einstellung in Ihrem Browser, da Sie sich sonst nicht einloggen können.
Sie sind angemeldet. Die Zwei-Faktor-Authentifizierung wurde deaktiviert. Richten Sie sie erneut ein und scannen Sie einen neuen QR-Code oder fahren Sie mit deaktivierter Zwei-Faktor-Authentifizierung fort.
Fantastisch - funktioniert sehr gut mladen! Ich danke Ihnen vielmals.
Ein paar Wünsche, wenn es nicht zu viel Mühe macht:
1. Während 4 MA alle synchron sind, zieht sich der Preis zurück und berührt einen bestimmten MA
(in diesem Fall der zweitkürzeste MA, der rote 15 EMA), würde ich gerne einen Pfeil und einen Alarm erzeugen.
Ich würde dann zum kleineren 1M-Zeitrahmen wechseln, um dort nach einem Short-Signal zu suchen.
Ich füge horizontale und vertikale Linien ein, damit man leicht erkennen kann, wo man suchen muss (Punkt A) auf dem kleineren 1M Zeitrahmen Backtesting
2. Kann ich den 4-Ma-Synch-Indikator bitten, nur nach zwei oder drei Ma's zu suchen, die synchron sind, um den Histogrammbalken anzuzeigen? (Bitte sehen Sie sich den Anhang zu den 1-Meter-Bedingungen an, um zu verstehen, was ich hier zu tun versuche)
Person77
Ich fürchte, dass dieser Indikator nicht dafür ausgelegt ist, Kursberührungen anzuzeigen. Ich bin mir auch ziemlich sicher, dass es bereits gute Indikatoren gibt, die genau diese Art von Aufgabe erfüllen.
Was die 2 und 3 mas Version angeht: ersetzen Sie einfach das "" im Code, wo Sie einen Vergleich sehen, der wie "if (ma1<ma2 && ma2<3" ... und so weiter, mit "=" geht und setzen Sie dann 2 mas auf die gleichen Werte für 3 verschiedene mas oder 2 Paare von mas auf die gleichen Werte, um 2 mas durch den Indikator angezeigt zu bekommen
mladen
Danke für die Anregung.
Meine Kodierung ist so gut wie unbrauchbar!
Ich habe die > und < in = geändert, aber beim Kompilieren sind einige Fehler aufgetreten.
Was muss ich anders machen?
//------------------------------------------------------------------
#property copyright "www.forex-tsd.com"
#property link "www.forex-tsd.com"
//------------------------------------------------------------------
#property indicator_separate_window
#Eigenschaft indicator_buffers 2
#property indicator_color1 LimonenGrün
#Eigenschaft indicator_color2 DarkOrange
#property indicator_width1 2
#Eigenschaft indicator_width2 2
#Eigenschaft indicator_minimum 0
#Eigenschaft indicator_maximum 1
extern int Ma1Period = 5;
extern int Ma1Price = PRICE_CLOSE;
extern int Ma1Methode = MODE_EMA;
extern int Ma1Shift = 0;
extern int Ma2Period = 15;
extern int Ma2Preis = PRICE_CLOSE;
extern int Ma2Methode = MODE_EMA;
extern int Ma2Shift = 0;
extern int Ma3Period = 28;
extern int Ma3Preis = PRICE_CLOSE;
extern int Ma3Methode = MODE_EMA;
extern int Ma3Shift = 0;
extern int Ma4Period = 45;
extern int Ma4Preis = PRICE_CLOSE;
extern int Ma4Methode = MODE_EMA;
extern int Ma4Shift = 0;
//
//
//
//
//
double histu[];
double histd[];
//------------------------------------------------------------------
//
//------------------------------------------------------------------
//
//
//
//
//
int init()
{
SetIndexBuffer(0,histu); SetIndexStyle(0,DRAW_HISTOGRAM);
SetIndexBuffer(1,histd); SetIndexStyle(1,DRAW_HISTOGRAM);
return(0);
}
int deinit() { return(0); }
//------------------------------------------------------------------
//
//------------------------------------------------------------------
//
//
//
//
//
int start()
{
int counted_bars = IndicatorCounted();
wenn (gezählte_Balken < 0) return(-1);
if (gezählte_Balken > 0) gezählte_Balken--;
int limit = MathMin(Balken-gezählte_Balken,Balken-1);
//
//
//
//
//
for(int i = limit; i >=0; i--)
{
double ma1 = iMA(NULL,0,Ma1Zeitraum,Ma1Verschiebung,Ma1Methode,Ma1Preis,i);
double ma2 = iMA(NULL,0,Ma2Zeitraum,Ma2Verschiebung,Ma2Methode,Ma2Preis,i);
double ma3 = iMA(NULL,0,Ma3Zeitraum,Ma3Schicht,Ma3Methode,Ma3Preis,i);
double ma4 = iMA(NULL,0,Ma4Zeitraum,Ma4Schicht,Ma4Methode,Ma4Preis,i);
histu = EMPTY_VALUE;
histd = EMPTY_VALUE;
if(ma1=ma2 && ma2=ma3 && ma3>ma4) histu = 1;
if (ma1=ma2 && ma2=ma3 && ma3<ma4) histd = 1;
}
return(0);
}
Hallo
was ist mit Renko Chart 2min mit MA?
Danken Sie voraus
mladen
Danke für die Anregung.
Meine Kodierung ist so gut wie unbrauchbar!
Ich habe die > und < in = geändert, aber beim Kompilieren sind einige Fehler aufgetreten.
Was muss ich anders machen?
//------------------------------------------------------------------
#property copyright "www.forex-tsd.com"
#property link "www.forex-tsd.com"
//------------------------------------------------------------------
#property indicator_separate_window
#Eigenschaft indicator_buffers 2
#property indicator_color1 LimonenGrün
#Eigenschaft indicator_color2 DarkOrange
#property indicator_width1 2
#Eigenschaft indicator_width2 2
#Eigenschaft indicator_minimum 0
#Eigenschaft indicator_maximum 1
extern int Ma1Period = 5;
extern int Ma1Price = PRICE_CLOSE;
extern int Ma1Methode = MODE_EMA;
extern int Ma1Shift = 0;
extern int Ma2Period = 15;
extern int Ma2Preis = PRICE_CLOSE;
extern int Ma2Methode = MODE_EMA;
extern int Ma2Shift = 0;
extern int Ma3Period = 28;
extern int Ma3Preis = PRICE_CLOSE;
extern int Ma3Methode = MODE_EMA;
extern int Ma3Shift = 0;
extern int Ma4Period = 45;
extern int Ma4Preis = PRICE_CLOSE;
extern int Ma4Methode = MODE_EMA;
extern int Ma4Shift = 0;
//
//
//
//
//
double histu[];
double histd[];
//------------------------------------------------------------------
//
//------------------------------------------------------------------
//
//
//
//
//
int init()
{
SetIndexBuffer(0,histu); SetIndexStyle(0,DRAW_HISTOGRAM);
SetIndexBuffer(1,histd); SetIndexStyle(1,DRAW_HISTOGRAM);
return(0);
}
int deinit() { return(0); }
//------------------------------------------------------------------
//
//------------------------------------------------------------------
//
//
//
//
//
int start()
{
int counted_bars = IndicatorCounted();
wenn (gezählte_Balken < 0) return(-1);
if (gezählte_Balken > 0) gezählte_Balken--;
int limit = MathMin(Balken-gezählte_Balken,Balken-1);
//
//
//
//
//
for(int i = limit; i >=0; i--)
{
double ma1 = iMA(NULL,0,Ma1Zeitraum,Ma1Verschiebung,Ma1Methode,Ma1Preis,i);
double ma2 = iMA(NULL,0,Ma2Zeitraum,Ma2Verschiebung,Ma2Methode,Ma2Preis,i);
double ma3 = iMA(NULL,0,Ma3Zeitraum,Ma3Schicht,Ma3Methode,Ma3Preis,i);
double ma4 = iMA(NULL,0,Ma4Zeitraum,Ma4Schicht,Ma4Methode,Ma4Preis,i);
histu = EMPTY_VALUE;
histd = EMPTY_VALUE;
if(ma1=ma2 && ma2=ma3 && ma3>ma4) histu = 1;
if (ma1=ma2 && ma2=ma3 && ma3<ma4) histd = 1;
}
return(0);
}Person77
Du hättest "<" durch "" mit ">=" ersetzen müssen (nicht nur "=")
_____________________
PS: vergessen zu sagen, dass 2 MAs immer synchron sind
Das funktioniert perfekt!
Danke mladen.
Adaptiver gleitender Durchschnitt nach Kaufman
Adaptiver gleitender Durchschnitt nach Kaufman (von Alexander Gettinger)
Formulas:
KAMA = KAMA+sc*(Preis-KAMA), wobei
sc = (er*0,6015+0,0645)*(er*0,6015+0,0645),
er = Abs(Preis-Preis)/Summe1,
Summe1 = Summe(Abs(Preis-Preis)) von (i-Länge+1) bis i.
Zwei Versionen der linearen Regression (von demselben Autor)
Kaufman AMA vorgefiltert
Vorbereitung Kaufman AMA (adaptive gleitenden Durchschnitt) für einige andere Dinge, und hier ist eine Version, die eine sehr vereinfachte Art und Weise der Verwendung (ama Berechnung ist eine Funktion jetzt). Es kann auch der Preis pro Filterung verwendet werden (anstatt den Rohpreis zu verwenden, kann der gefilterte Preis verwendet werden (um die Filterung auszuschalten, setzen Sie den PriceFilter auf 1)
MA28 (von Alexander Gettinger)
wäre, bitte, möglich sein, den Indikator multitimeframe machen? danke
Vorbereitung Kaufman AMA (adaptive gleitenden Durchschnitt) für einige andere Dinge, und hier ist eine Version, die eine sehr vereinfachte Art und Weise der Verwendung (ama Berechnung ist eine Funktion jetzt). Es kann Preis pro-Filterung zu (anstelle der Verwendung von rohen Preis, gefilterten Preis verwendet werden kann (um die Filterung von, setzen Sie die PriceFilter auf 1)