[WARNUNG GESCHLOSSEN!] Alle Fragen von Neulingen, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen. - Seite 198
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Schauen Sie hier nach.
Vielen Dank SK, Vinin!
Ein großartiges Beispiel für Workaraund.
Es muss die Mühe wert gewesen sein, so anspruchsvoll zu werden. :-)
Es sieht so aus, als ob MQL4 weiß, wie man die Zeit des Programmierers "gut" nutzen kann. :-)
Siehe hier.
Vielen Dank, ein sehr nützlicher Artikel.
Vielen Dank an SK, Vinin!
Vielen Dank, ein sehr nützlicher Artikel.
Wenn Sie sich für dieses Thema interessieren, schauen Sie sich diesen Artikel an: http://www.forextrade.ru/mqlabs/sozdaniie-indikatora-kaghi
Es werden viele Details für horizontale Linien erörtert und die technische Lösung (Abwechslung) gezeigt.
Die vertikalen Linien sind ebenfalls abgebildet. Aber einige der Regeln habe ich immer noch nicht verstanden. Es genügt zum Beispiel, die Parität der einzelnen Puffer zu ändern, da das Bild wackelt (Block 4-5, die Anzahl der Puffer von 6 und 7 auf 5 und 6 ändern und den 5. zu 7m machen).
Wie ist die Reihenfolge der Indikatoren und Experten?
Ich habe 2 Indikatoren in einem Diagramm.
Und insgesamt ist ihre Ausführungszeit manchmal viel länger als die Zeit zwischen den Ticks.
Welcher Indikator wird zuerst ausgeführt?
Wenn sie nicht parallel ausgeführt werden, ist es vielleicht sinnvoll, sie in verschiedenen Charts zu platzieren, natürlich nur, wenn es keine Reihenfolge der Ausführung in verschiedenen Charts gibt.
Welcher Indikator oder Expert Advisor wird zuerst ausgeführt, wenn sie sich auf demselben Chart befinden, und wenn sie sich auf verschiedenen Charts befinden?
x[i]=(Open[i]-Close[i]);
MomBuffer[i]=x[i];
Es funktioniert nicht.
Bitte, sagen Sie mir, was ich tun soll. Ich weiß nicht, was ich tun soll.
x[i]=(Open[i]-Close[i]);
MomBuffer[i]=x[i];
Es funktioniert nicht.
Bitte, sagen Sie mir, was ich tun soll. Ich kann es nicht herausfinden.
>> Was ist zu tun? >> Alle Codes anzeigen!
Was ist zu tun? Zeigen Sie den gesamten Code!
//+------------------------------------------------------------------+
//| Momentum.mq4 |
//| Copyright © 2004, MetaQuotes Software Corp.
//| http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2004, MetaQuotes Software Corp.
#property link "http://www.metaquotes.net/"
#property indicator_separate_window
#Eigenschaft indicator_buffers 1
#property indicator_color1 DodgerBlue
//---- Eingabeparameter
extern int MomPeriod=14;
int ret;
double x[];
//---- Puffer
double MomBuffer[];
double ocfor[];
double octen[];
//+------------------------------------------------------------------+
//| Benutzerdefinierte Initialisierungsfunktion für Indikatoren |
//+------------------------------------------------------------------+
int init()
{
string kurz_name;
//---- Indikatorzeile
SetIndexStyle(0,DRAW_LINE);
SetIndexPuffer(0,MomPuffer);
//---- Name für das Datenfenster und die Bezeichnung des Unterfensters des Indikators
short_name="Mom("+MomPeriod+")";
IndicatorShortName(short_name);
SetIndexLabel(0,short_name);
//----
SetIndexDrawBegin(0,MomPeriod);
//----
zurück(0);
}
//+------------------------------------------------------------------+
//| Momentum |
//+------------------------------------------------------------------+
int start()
{
int i,counted_bars=IndicatorCounted();
//----
if(Bars<=MomPeriod) return(0);
//----
i=Bars;
while(i>=0)
{
x[i]=(Open[i]-Close[i]);
MomBuffer[i]=x[i];
i--;
}
zurück(0);
}
//+------------------------------------------------------------------+
Wenn Sie Double x[]; durch Double x; ersetzen, funktioniert alles, aber der Punkt ist, mombuffer[i]= x[i] zuzuweisen
.
.
int start()
{
int i,counted_bars=IndicatorCounted();
//----
if(Bars<=MomPeriod) return(0);
//----
i=Bars;
ArrayResize(x, i+1);
while(i>=0)
{
x[i]=(Open[i]-Close[i]);
MomBuffer[i]=x[i];
i--;
}
zurück(0);
}
Wenn Sie Double x[]; durch Double x; ersetzen, funktioniert alles, aber der Punkt ist, mombuffer[i]= x[i] zuzuweisen.
Sie haben ein Array deklariert, aber keinen Speicher für dieses Array zugewiesen.
Vinin gab eine Möglichkeit der Speicherzuweisung an, Sie können die zweite verwenden, durch die Funktion ArrayResize()