[Archiv!] Ich schreibe jeden Experten oder Indikator kostenlos. - Seite 7

 
Guten Tag ...

Es gibt einen Truthahn wie diesen
//+------------------------------------------------------------------+
//| Tick_on_Chart.mq4 |
//| Copyright © 2005, MetaQuotes Software Corp.
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2005, MetaQuotes Software Corp.
#property link "http://www.metaquotes.net"

#property indicator_separate_window
#Eigenschaft indicator_buffers 2
#property indicator_color1 Maismilch
#Eigenschaft indicator_color2 Rot
//---- Puffer
double ExtMapBuffer1[];
double ExtMapBuffer2[];
int tik,t;
double buf[];MaxB,MinB=1000;
extern int period=200;

//+------------------------------------------------------------------+
//| Benutzerdefinierte Initialisierungsfunktion für Indikatoren |
//+------------------------------------------------------------------+
int init()
{
//---- Indikatoren
SetIndexStyle(0,DRAW_SECTION);
SetIndexPuffer(0,ExtMapPuffer1);
SetIndexStyle(1,DRAW_NONE);
SetIndexPuffer(1,ExtMapPuffer2);

//----
zurück(0);
}
//+------------------------------------------------------------------+
//| Funktion zur Deinitialisierung des Custor-Indikators |
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
zurück(0);
}
//+------------------------------------------------------------------+
//| Benutzerdefinierte Indikator-Iterationsfunktion |
//+------------------------------------------------------------------+
int start()
{
int i,b;
//----
t++;
b=Zeitraum;
ArrayResize(buf,b);

if(tik==0)
{
for(i=0;i<b;i++)
{
buf[i]=Gebot;
}
ExtMapBuffer2[0]=Bid+5*Point;
ExtMapBuffer2[1]=Bid-5*Point;
tik=1;
}
MaxB=0;MinB=1000;
for(i=b-1;i>0;i--)
{
buf[i]=buf[i-1];
if(MaxB<buf[i])MaxB=buf[i];
if(MinB>puffer[i])MinB=puffer[i];
}
buf[0]=Gebot;
for(i=0;i<b;i++)
{
ExtMapBuffer1[i]=buf[i];
}
if(MathCeil(t/10)*10==t)
{
for(i=b;i<Bars;i++)
{
ExtMapBuffer1[i]=Bid;
}
ArrayInitialize(ExtMapBuffer2,Bid);
if(MaxB-Bid<5*Point)ExtMapBuffer2[0]=Bid+5*Point;
if(Bid-MinB<5*Point)ExtMapBuffer2[1]=Bid-5*Point;
//Drucken(MaxB, "+",Bid, "+",MinB);
}
//----
zurück(0);
}
//+------------------------------------------------------------------+

Auf seiner Grundlage machen wir CCI... den gleichen Tick...

Rohstoff-Kanal-Index
ORIGINAL
Berechnung
Finden Sie einen typischen Preis. Addieren Sie dazu Hoch-, Tief- und Schlusskurs jedes Balkens und teilen Sie die Summe durch 3.
TP = (HOCH + TIEF + SCHLUSS) / 3
Berechnen Sie einen einfachen gleitenden Durchschnitt der typischen Preise für n Perioden.
SMA (TP, N) = SUMME (TP, N) / N
Ziehen Sie den sich ergebenden SMA(TP, N) von den typischen TP-Kursen jeder der vorangegangenen n Perioden ab.
D = TP - SMA(TP, N)
4. den einfachen gleitenden Durchschnitt der absoluten Werte von D über n Perioden berechnen
SMA (D, N) = SUMME (D, N) / N
5) SMA (D, N) mit 0,015 multiplizieren
M = SMA (D, N) * 0,015
6. M durch D dividieren
CCI = M / D
wo:
HIGH - Höchstpreis der Bar;
LOW - Mindestpreis der Bar;
CLOSE - Schlusskurs;
SMA - einfacher gleitender Durchschnitt;
SUM - Summe;
N - Anzahl der für die Berechnung verwendeten Perioden.
Nämlich... Punkt für Punkt... was zu tun ist


1) Finden Sie einen typischen Preis. Dazu addieren Sie den Höchst-, Tiefst- und Schlusskurs eines jeden Balkens und teilen die Summe durch 3.
TP = (HOCH + TIEF + SCHLUSS) / 3
Da es bei Ticks kein HIGH und LOW gibt, nehmen wir einfach den Wert des Kurses am Tick

2) Berechnen Sie einen einfachen gleitenden Durchschnitt für n Perioden
SMA (TP, N) = SUMME (TP, N) / N
Berechnen Sie den n-periodischen einfachen gleitenden Durchschnitt der Preise aus #1
3) Subtrahieren Sie den resultierenden SMA(TP, N) von den typischen TP-Kursen jeder der vorangegangenen n Perioden.
D = TP - SMA(TP, N)
Subtrahieren Sie den sich ergebenden SMA (#2) von (#1) für jede der vorangegangenen n Perioden.

4) Berechnen Sie den n-periodischen einfachen gleitenden Durchschnitt der absoluten Werte D
SMA (D, N) = SUMME (D, N) / N

So machen wir es.
5) Multiplikation des erhaltenen SMA (D, N) mit 0,015
M = SMA (D, N) * 0,015
So machen wir es...
6) Teilen Sie M durch D
CCI = M / D
So machen wir es...
JETZT IM ZIEL ... Zeichnung der ToR (ich hoffe, ich habe sie oben klar beschrieben)...
Zeichnung des Induktors ALL die oben beschriebene ....
ZUSÄTZE...
In den Einstellungen des Indikators (EINGANGSPARAMETER)... nehmen Sie diese einstellbaren Parameter vor... (ich werde die Ergänzungen mit Erklärungen angeben)
1) Geben Sie den CCI-Zeitraum an (hier ist alles klar)
Geben Sie in den Einstellungen "Period CCI" an.
2) Geben Sie den Wert (0,015) an, mit der Möglichkeit, ihn zu ändern ... (es hat keine besonderen Auswirkungen - aber der Einfachheit halber ...)
In den Einstellungen geben Sie "Znach" an.

3) Lassen Sie uns "Alerts" machen ...
ALLE "Alerts" mit der Möglichkeit, sie zu aktivieren (True) und zu deaktivieren (False)
ALLE "Alerts" mit der Möglichkeit eines Tonsignals (konfigurierbar - kann also ein-/ausgeschaltet werden)

3.1) INDJUNCTION = 0 (Ebene = NULL)
Auf "Uroven0" eingestellt.

3.2) Schnittpunkt aller INDUCLE-Werte = beliebiger Sollwert... (Pegel)
Zum Beispiel (Pegel = 100) oder (Pegel = -35) mit einer MÖGLICHEN Fähigkeit zur Änderung... (Pegel)... zur Erzeugung eines Signals...
INSTALLIERT FÜR + und - Werte...
mit der Möglichkeit, sie IMMER einzuschalten (True) und auszuschalten (False)
In den Einstellungen ist er als "Uroven+" eingestellt.
Geben Sie in den Einstellungen "Uroven-" an.
WEITER... In den Einstellungen des Anzeigers (FARBEN) = ermöglichen es, die Farben zu ändern,
eines der Parameter.
jetzt wollen wir eine richtige (grafische) Ansicht des gegebenen Indikators erhalten
BEISPIEL in Abb.(dann Erklärungen)...

1) Teilen Sie jede neue Minute mit einer vertikalen Linie (rot im Bild)
2) Drucken Sie die Zeit in Stunde:Minute. Beim Öffnen des aktuellen BAR (oder des aktuellen CURRENT).

Wenn also eine Minute verpasst wurde, wird statt 07:06 zum Beispiel 07:09 angezeigt.
JETZT die gewünschten Zusätze ...(wenn möglich)

1) (erste und letzte... )))))))) Möglichkeit der Einstellung von MA durch bereits empfangene Werte... (siehe Abb.) Ich hoffe, alles ist klar...

Und wieder mit der Möglichkeit zu wählen...
1.1) PERIOD eines bestimmten MA
1.2) Farbe des gegebenen MA
1,3) und die "Alerts", die durch den Schnittpunkt von Level=0 dieser MA
1,4) sowie für die МА-Kreuzungspunkte (z. B. +200 und -50) getrennt
 
Guten Tag ...

Es gibt einen Truthahn wie diesen
//+------------------------------------------------------------------+
//| Tick_on_Chart.mq4 |
//| Copyright © 2005, MetaQuotes Software Corp.
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2005, MetaQuotes Software Corp.
#property link "http://www.metaquotes.net"

#property indicator_separate_window
#Eigenschaft indicator_buffers 2
#property indicator_color1 Maismilch
#Eigenschaft indicator_color2 Rot
//---- Puffer
double ExtMapBuffer1[];
double ExtMapBuffer2[];
int tik,t;
double buf[];MaxB,MinB=1000;
extern int period=200;

//+------------------------------------------------------------------+
//| Benutzerdefinierte Initialisierungsfunktion für Indikatoren |
//+------------------------------------------------------------------+
int init()
{
//---- Indikatoren
SetIndexStyle(0,DRAW_SECTION);
SetIndexPuffer(0,ExtMapPuffer1);
SetIndexStyle(1,DRAW_NONE);
SetIndexPuffer(1,ExtMapPuffer2);

//----
zurück(0);
}
//+------------------------------------------------------------------+
//| Funktion zur Deinitialisierung des Custor-Indikators |
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
zurück(0);
}
//+------------------------------------------------------------------+
//| Benutzerdefinierte Indikator-Iterationsfunktion |
//+------------------------------------------------------------------+
int start()
{
int i,b;
//----
t++;
b=Zeitraum;
ArrayResize(buf,b);

if(tik==0)
{
for(i=0;i<b;i++)
{
buf[i]=Gebot;
}
ExtMapBuffer2[0]=Bid+5*Point;
ExtMapBuffer2[1]=Bid-5*Point;
tik=1;
}
MaxB=0;MinB=1000;
for(i=b-1;i>0;i--)
{
buf[i]=buf[i-1];
if(MaxB<buf[i])MaxB=buf[i];
if(MinB>puffer[i])MinB=puffer[i];
}
buf[0]=Gebot;
for(i=0;i<b;i++)
{
ExtMapBuffer1[i]=buf[i];
}
if(MathCeil(t/10)*10==t)
{
for(i=b;i<Bars;i++)
{
ExtMapBuffer1[i]=Bid;
}
ArrayInitialize(ExtMapBuffer2,Bid);
if(MaxB-Bid<5*Point)ExtMapBuffer2[0]=Bid+5*Point;
if(Bid-MinB<5*Point)ExtMapBuffer2[1]=Bid-5*Point;
//Drucken(MaxB, "+",Bid, "+",MinB);
}
//----
zurück(0);
}
//+------------------------------------------------------------------+

Auf seiner Grundlage machen wir CCI... den gleichen Tick...

Rohstoff-Kanal-Index
ORIGINAL
Berechnung
Finden Sie einen typischen Preis. Addieren Sie dazu Hoch-, Tief- und Schlusskurs jedes Balkens und teilen Sie die Summe durch 3.
TP = (HOCH + TIEF + SCHLUSS) / 3
Berechnen Sie einen einfachen gleitenden Durchschnitt der typischen Preise für n Perioden.
SMA (TP, N) = SUMME (TP, N) / N
Ziehen Sie den sich ergebenden SMA(TP, N) von den typischen TP-Kursen jeder der vorangegangenen n Perioden ab.
D = TP - SMA(TP, N)
4. den einfachen gleitenden Durchschnitt der absoluten Werte von D über n Perioden berechnen
SMA (D, N) = SUMME (D, N) / N
5) SMA (D, N) mit 0,015 multiplizieren
M = SMA (D, N) * 0,015
6. M durch D dividieren
CCI = M / D
wo:
HIGH - Höchstpreis der Bar;
LOW - Mindestpreis der Bar;
CLOSE - Schlusskurs;
SMA - einfacher gleitender Durchschnitt;
SUM - Summe;
N - Anzahl der für die Berechnung verwendeten Perioden.
Nämlich... Punkt für Punkt... was zu tun ist


1) Finden Sie einen typischen Preis. Dazu addieren Sie den Höchst-, Tiefst- und Schlusskurs eines jeden Balkens und teilen die Summe durch 3.
TP = (HOCH + TIEF + SCHLUSS) / 3
Da es bei Ticks kein HIGH und LOW gibt, nehmen wir einfach den Wert des Kurses am Tick

2) Berechnen Sie einen einfachen gleitenden Durchschnitt für n Perioden
SMA (TP, N) = SUMME (TP, N) / N
Berechnen Sie den n-periodischen einfachen gleitenden Durchschnitt der Preise aus #1
3) Subtrahieren Sie den resultierenden SMA(TP, N) von den typischen TP-Kursen jeder der vorangegangenen n Perioden.
D = TP - SMA(TP, N)
Subtrahieren Sie den sich ergebenden SMA (#2) von (#1) für jede der vorangegangenen n Perioden.

4) Berechnen Sie den n-periodischen einfachen gleitenden Durchschnitt der absoluten Werte D
SMA (D, N) = SUMME (D, N) / N

So machen wir es.
5) Multiplikation des erhaltenen SMA (D, N) mit 0,015
M = SMA (D, N) * 0,015
So machen wir es...
6) Teilen Sie M durch D
CCI = M / D
So machen wir es...
JETZT IM ZIEL ... Zeichnung der ToR (ich hoffe, ich habe sie oben klar beschrieben)...
Zeichnung des Induktors ALL die oben beschriebene ....
ZUSÄTZE...
In den Einstellungen des Indikators (EINGANGSPARAMETER)... nehmen Sie diese einstellbaren Parameter vor... (ich werde die Ergänzungen mit Erklärungen angeben)
1) Geben Sie den CCI-Zeitraum an (hier ist alles klar)
Geben Sie in den Einstellungen "Period CCI" an.
2) Geben Sie den Wert (0,015) an, mit der Möglichkeit, ihn zu ändern ... (es hat keine besonderen Auswirkungen - aber der Einfachheit halber ...)
In den Einstellungen geben Sie "Znach" an.

3) Lassen Sie uns "Alerts" machen ...
ALLE "Alerts" mit der Möglichkeit, sie zu aktivieren (True) und zu deaktivieren (False)
ALLE "Alerts" mit der Möglichkeit eines Tonsignals (konfigurierbar - kann also ein-/ausgeschaltet werden)

3.1) INDJUNCTION = 0 (Ebene = NULL)
Auf "Uroven0" eingestellt.

3.2) Schnittpunkt aller INDUCLE-Werte = beliebiger Sollwert... (Pegel)
Zum Beispiel (Pegel = 100) oder (Pegel = -35) mit einer MÖGLICHEN Fähigkeit zur Änderung... (Pegel)... zur Erzeugung eines Signals...
INSTALLED FOR Werte in + und Werte in -
mit der Möglichkeit, sie IMMER einzuschalten (True) und auszuschalten (False)
In den Einstellungen ist er als "Uroven+" eingestellt.
Geben Sie in den Einstellungen "Uroven-" an.
WEITER... In den Einstellungen des Anzeigers (FARBEN) = ermöglichen es, die Farben zu ändern,
eines der Parameter.
jetzt wollen wir eine richtige (grafische) Ansicht des gegebenen Indikators erhalten
BEISPIEL in Abb.(dann Erklärungen)...

1) Teilen Sie jede neue Minute mit einer vertikalen Linie (rot im Bild)
2) Drucken Sie die Zeit in Stunde:Minute. Beim Öffnen des aktuellen BAR (oder des aktuellen CURRENT).

Wenn also eine Minute verpasst wurde, wird statt 07:06 zum Beispiel 07:09 angezeigt.
JETZT die gewünschten Zusätze ...(wenn möglich)

1) (erste und letzte... )))))))) Möglichkeit der Einstellung von MA durch bereits empfangene Werte... (siehe Abb.) Ich hoffe, alles ist klar...

Und wieder mit der Möglichkeit zu wählen...
1.1) PERIOD eines bestimmten MA
1.2) Farbe des gegebenen MA
1,3) und die "Alerts", die durch den Schnittpunkt von Level=0 dieser MA
1.4) und auch getrennt für МА an Schnittpunkten von Ebenen (zum Beispiel +200 und -50) ALERT
 
Reis
 
Abbildung 2
 
20099 >> :
Abbildung 2.

Aus irgendeinem Grund glaube ich, dass Sie vergessen haben, ein Bild anzuhängen.

 

Lieber Kubodel!

Ist es möglich, aus diesem Indikator "T3 TRIX (ROC of T6)" einen EA zu erstellen?

die gelbe kreuzt die blaue nach unten - verkaufen, nach oben - kaufen
Das Geschäft wird bei der Eröffnung der Kerze nach dem Crossover eröffnet
Ich bin zwar selbst ein bisschen Programmierer, aber ich habe nicht das nötige Hirn dafür (((

als Option - die Position wird geschlossen, wenn sich Blau nach unten oder oben bewegt, d.h. wenn sich die Richtung ändert

bereit, 10 Usd zu zahlen.

 
Kubodel >> :

Bigboom, senden Sie die Produktion an integrum-perm@mail.ru. Solange ich es nicht sehen werde, kann ich nichts Genaues sagen.

Egay! Bravo an Kubodel!

Ich habe meinen Experten :)

Die technische Umsetzung ist super, genau wie ich es brauchte.

Ich werde es ein paar Wochen lang in der Demoversion testen und dann vielleicht mein Konto an einen elektronischen Kameraden weitergeben.

>> Vielen Dank.

 

Guten Tag!!!

Was für ein interessanter Ort, den Sie hier haben!

Nehmt ihr Dummies in euren Reihen auf?! :)

 
Kubodel >> :

Aus irgendeinem Grund glaube ich, dass Sie vergessen haben, ein Bild anzuhängen.

 

Und wieder will er nicht... Ich weiß nicht, warum...?
Vielleicht eine private E-Mail... oder ein E-Mail-Konto...