Hilfe bei der Codierung - Seite 389

 
triip:
Ich habe schöne Scalping-System und Vorlage gefunden, aber es läuft so langsam nach der Installation dieses Systems. Vielleicht ist jemand in der Lage, um es zu sehen und zu erkennen, was es verursachen könnte.

Vorlage und Indikatoren:

1m_alf_scalp.zip

Sieht aus wie Kerze Farbe Indikator (IT_Candles) ist das Problem. Jemand versteht, was falsch ist mit diesem Code, dass MT4 läuft langsam?

//+------------------------------------------------------------------+//| IT_Candles.mq4

//+------------------------------------------------------------------+

#property indicator_chart_window

#include

#property indicator_buffers 2

extern color UpColor = LimeGreen;

extern color DnColor = Red;

extern int Width = 5;

extern double alpha = 0.09;

double ev=EMPTY_VALUE,Trend,Trigger,ALF;

double Up[];

double Dn[];

int init()

{

IndicatorBuffers(2);

SetIndexStyle(0,DRAW_HISTOGRAM,0,Width,UpColor);

SetIndexBuffer(0,Up);

SetIndexStyle(1,DRAW_HISTOGRAM,0,Width,DnColor);

SetIndexBuffer(1,Dn);

return(0);

}

int deinit()

{

return(0);

}

int start()

{

int counted_bars=IndicatorCounted();

if(counted_bars<0) return(-1); //---- check for possible errors

if(counted_bars>0) counted_bars--; //---- last counted bar will be recounted

int limit = Bars-counted_bars;

for (int i=limit;i>=0;i--)

{

Up = ev;

Dn = ev;

Trend = iCustom(NULL,0,"Instant_Trendline",alpha,0,i);

Trigger = iCustom(NULL,0,"Instant_Trendline",alpha,1,i);

ALF = iCustom(NULL,0,"ALF",0,i+1);

if (Trigger > Trend && Close > Open && Close > ALF)

{

Up = MathMax(Open,Close);

Dn = MathMin(Open,Close);

}

if (Trigger < Trend && Close < Open && Close < ALF)

{

Dn = MathMax(Open,Close);

Up = MathMin(Open,Close);

}

}

}

 
triip:
Es sieht so aus, als ob der Kerzenfarbenindikator (IT_Candles) das Problem ist. Jemand versteht, was falsch ist mit diesem Code, dass MT4 läuft langsam?
//+------------------------------------------------------------------+//| IT_Candles.mq4

//+------------------------------------------------------------------+

#property indicator_chart_window

#include

#property indicator_buffers 2

extern color UpColor = LimeGreen;

extern color DnColor = Red;

extern int Width = 5;

extern double alpha = 0.09;

double ev=EMPTY_VALUE,Trend,Trigger,ALF;

double Up[];

double Dn[];

int init()

{

IndicatorBuffers(2);

SetIndexStyle(0,DRAW_HISTOGRAM,0,Width,UpColor);

SetIndexBuffer(0,Up);

SetIndexStyle(1,DRAW_HISTOGRAM,0,Width,DnColor);

SetIndexBuffer(1,Dn);

return(0);

}

int deinit()

{

return(0);

}

int start()

{

int counted_bars=IndicatorCounted();

if(counted_bars<0) return(-1); //---- check for possible errors

if(counted_bars>0) counted_bars--; //---- last counted bar will be recounted

int limit = Bars-counted_bars;

for (int i=limit;i>=0;i--)

{

Up = ev;

Dn = ev;

Trend = iCustom(NULL,0,"Instant_Trendline",alpha,0,i);

Trigger = iCustom(NULL,0,"Instant_Trendline",alpha,1,i);

ALF = iCustom(NULL,0,"ALF",0,i+1);

if (Trigger > Trend && Close > Open && Close > ALF)

{

Up = MathMax(Open,Close);

Dn = MathMin(Open,Close);

}

if (Trigger < Trend && Close < Open && Close < ALF)

{

Dn = MathMax(Open,Close);

Up = MathMin(Open,Close);

}

}

}

triip

Prüfen Sie, ob Sie auch die Indikatoren "Instant_Trendline" und "ALF" im Indikatorenordner haben (beide werden benötigt, damit der Indikator korrekt funktioniert). Wenn Sie sie nicht haben, extrahieren Sie die ex4-Dateien aus dem Zip-Archiv, und der Indikator wird gut funktionieren (wenn Sie sie nicht haben, wird er sehr langsam sein).

Dateien:
it.gif  75 kb
 
mladen:
triip Überprüfen Sie, ob Sie auch die Indikatoren "Instant_Trendline" und "ALF" im Indikatorenordner haben (beide werden benötigt, damit der Indikator korrekt funktioniert). Wenn Sie sie nicht haben, extrahieren Sie die ex4-Dateien aus dem Zip-Archiv, und der Indikator wird gut funktionieren (wenn Sie sie nicht haben, wird er sehr langsam sein)

Ja, ich habe auch die anderen Indikatoren auf den Chart gelegt, aber sobald ich IT_Candles hinzufüge, verlangsamt sich MT4, besonders das Umschalten der Zeitrahmen verlangsamt sich.

 
triip:
Ja, ich habe auch die anderen Indikatoren in den Chart eingefügt, aber sobald ich IT_Candles hinzufüge, verlangsamt sich MT4, vor allem das Umschalten zwischen den Zeitrahmen wird langsamer.

triip

Sie müssen sich nicht auf dem Diagramm befinden. Aber sie müssen im Indikatoren-Ordner vorhanden sein (mit genau diesen Namen). Am einfachsten überprüfen Sie das, indem Sie im Terminal auf die Registerkarte "Experten" gehen und nachsehen, ob dort ein Fehler angezeigt wird (wie der auf dem Bild)

Dateien:
error_2.gif  98 kb
 
mladen:
triip Sie müssen nicht auf dem Chart sein. Aber sie müssen im Indikatoren-Ordner vorhanden sein (mit genau diesen Namen). Am einfachsten ist es, im Terminal auf die Registerkarte "Experten" zu gehen und zu sehen, ob dort ein Fehler auftritt (wie der auf dem Bild)

Es gibt keine Fehler.

Aber ich habe festgestellt, dass ALF.ex4 nicht viel langsamer wird, aber ALF-MTF.ex4 wird total langsam. Ich habe einen Unterordner im Indikatoren-Ordner, wo bleibt alle diese genannten Indikatoren. Vielleicht sollte ich ein sauberes MT4 neu installieren.

Dateien:
errors.png  27 kb
 
triip:
Keine Fehler dort.

Aber ich habe festgestellt, dass ALF.ex4 nicht viel langsamer wird, aber ALF-MTF.ex4 wird total langsam. Ich habe einen Unterordner in den Indikatoren-Ordner, wo bleibt alle diese genannten Indikatoren. Vielleicht sollte ich eine saubere MT4-Installation durchführen.

Verschieben Sie sie aus dem Unterordner in den Hauptordner für Indikatoren und versuchen Sie es dann

 
mladen:
Verschieben Sie sie aus dem Unterordner in den Hauptordner der Indikatoren und versuchen Sie es dann

Viel besser, funktioniert wie ein Zauber Danke mladen!!!

 
sunshineh:
Hi,

Ich habe immer wieder Probleme mit dem Schreiben von Textobjekten über die Balken in meinem Diagramm.

Zum Beispiel

ObjectCreate ("Xh", OBJ_TEXT,0,Time[0],High[0]+1*pips2dbl);

ObjectSetText("Xh","1",10,"Tahoma",Orange);

ObjectCreate ("X", OBJ_TEXT,0,Time[0],Low[0]-1*pips2dbl);

ObjectSetText("Xl","1",10,"Tahoma",Orange);

Mit Textobjekten unter meinen Balken funktioniert das gut, weil mein Schriftobjekt "auf dem Kopf" meines Textes fixiert ist.

Aber wenn ich einen Text über den Balken schreiben möchte, weiß ich nicht, wie meine Pips, mein Text in der Schriftgröße 10, in den Balken geschrieben werden.

Es gibt auch ein Problem, wenn ich meinen Text in größeren Timeframes schreibe, z.B. "H1", "D1" oder "W1", weil ich dort auch den Schriftabstand auf den High- oder Low-Wert ändern muss.

Ich weiß, dass ich meinen Text um 90° drehen kann, aber das möchte ich nicht tun.

Kennen Sie eine Lösung für dieses Problem?

Versuchen Sie zunächst, ATR anstelle von 1*pips2dbl zu verwenden (auf diese Weise passt es sich an verschiedene Zeitrahmen und Symbole an).

Versuchen Sie auch, den Ankerpunkt (OBJPROP_ANCHOR) des Textes auf ANCHOR_LOWER für das Textobjekt einzustellen, das über dem Hoch angezeigt wird.

 
madopter:
Die einstellbaren Teile sollten die Losgröße und der Kontostand sein, auf den das Los angewendet wird. Die Parameter könnten zum Beispiel A = 0,01, B = $5000 oder A = 1,00, B = $10000 sein.

In diesem Fall müssen Sie mehrere Parameterwerte haben, die für den Vergleich verwendet werden können

Sie können die Parameter wie folgt definieren: extern double accountBalanceA = 5000; und dann diese Parameter zum Vergleich in dem Code verwenden, der das Gleiche ohne Parameter getan hat

 
mladen:
jbozman

der Macd-Indikator muss nicht geändert werden (er berechnet in 99,99% der Fälle nur 1 oder 2 Balken)

Der Hilo-Indikator sucht auf eine sehr komplizierte Weise nach Werten. Besser ist es, einen anderen Indikator zu verwenden, der diese Aufgabe auf eine viel einfachere Art und Weise erledigt (kein Grund, es so kompliziert zu machen)

Hallo mladen. Ich habe gesucht und konnte kein Hoch/Tief finden, das Vortag, Woche und Monat in einem hat, das einfache Liniensegmente malt und das Diagramm nicht unübersichtlich macht.

Ich weiß, Sie sagten, ich solle versuchen, eine andere zu finden, aber ich habe wirklich gesucht und war nicht in der Lage. Ich habe auch eine Anfrage im mql4-Forum gestellt. Ich habe noch keine Antwort erhalten.

Ganz einfach, ich wäre bereit, jemanden (Sie) dafür zu bezahlen, diesen Indikator zu modifizieren.

Ich möchte, dass "Anzahl der Tage" hinzugefügt wird, da dieser Indikator jeden vorherigen Tag anzeigt. Bei EUR/USD und GBP/USD reicht meine Chart-Historie bis 1996 oder weiter zurück, so dass all diese Linien zu viel Speicherplatz beanspruchen.

Wenn Sie nicht angestellt sind (vielleicht ist es jemand anderes?), ist es dann zu kompliziert, die Anzahl der Tage einfach zu diesem aktuellen Diagramm hinzuzufügen? Ich kann es weiter verwenden, bis ich ein anderes finde oder jemanden finde, der es ändern würde. Wenn das eine zeitraubende Anfrage ist, verstehe ich das vollkommen und danke Ihnen für Ihre Hilfe bei allem.

jbozman

Dateien:
Grund der Beschwerde: