Fragen Sie! - Seite 20

 

lsma-Code

Doku,

Hier ist der Quellcode für die lsma. Vielen Dank für Ihren Beitrag!

//---- Indikator-Einstellungen

#property indicator_chart_window

#Eigenschaft indicator_buffers 3

#property indicator_color1 Gelb

#eigenschaft indicator_color2 Chartreuse

#eigenschaft indicator_color3 Rot

//---- puffer

double ExtMapBuffer1[];

double ExtMapBuffer2[];

double ExtMapBuffer3[];

int Breite;

extern int Rperiod = 34;

extern int Draw4HowLongg = 300; // 500 // 1000

int Draw4HowLong;

int Verschiebung;

int i;

int loopbegin;

double sum[];

int Länge;

double lengthvar;

double tmp ;

double wt[];

int c;

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

//| Benutzerdefinierte Indikator-Initialisierungsfunktion |

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

int init()

{

//---- 2 zusätzliche Puffer werden für die Zählung verwendet.

IndicatorBuffers(5);

//---- Zeichnungseinstellungen

SetIndexPuffer(2,ExtMapPuffer1);

SetIndexBuffer(1,ExtMapBuffer2);

SetIndexBuffer(0,ExtMapBuffer3);

SetIndexBuffer(3,Summe);

SetIndexBuffer(4,wt);

SetIndexStyle(2,DRAW_LINE,STYLE_SOLID,3);

SetIndexStyle(1,DRAW_LINE,STYLE_SOLID,3);

SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,3);

//---- Initialisierung abgeschlossen

return(0);

}

int start()

{ Draw4HowLong = Bars-Rperiod - 5;

Länge = Rperiod;

loopbegin = Draw4HowLong - length - 1;

for(shift = loopbegin; shift >= 0; shift--)

{

sum[1] = 0;

for(i = length; i >= 1 ; i--)

{

lengthvar = length + 1;

lengthvar /= 3;

tmp = 0;

tmp = ( i - lengthvar)*Close[length-i+shift];

sum[1]+=tmp;

}

wt[shift] = sum[1]*6/(length*(length+1));

//========== FARBKODIERUNG ===========================================

ExtMapBuffer3[shift] = wt[shift]; //rot

ExtMapBuffer2[shift] = wt[shift]; //grün

ExtMapBuffer1[shift] = wt[shift]; //gelb

// for(c=loopbegin;c==shift;c++)

// {

if (wt[shift+1] > wt[shift])

{

ExtMapBuffer2[shift+1] = EMPTY_VALUE;

// ObjectCreate("smiley_face", OBJ_ARROW, 0, Time[shift], Low[shift]-Point*20);

// Print("time= ",Time[shift]);

// ObjectSet("smiley_face", OBJPROP_ARROWCODE, 242);

// ObjectSet("smiley_face", OBJPROP_COLOR , Rot); // ObjectSet("smiley_face", OBJPROP_COLOR , Rot);

// ObjectSet("smiley_face", OBJPROP_WIDTH , 1); // ObjectSet("smiley_face", OBJPROP_WIDTH , 1);

// ObjectsRedraw();

//ExtMapBuffer3[shift+1] = EMPTY_VALUE;

//ExtMapBuffer3[shift+1] = EMPTY_VALUE;

}

else if (wt[shift+1] < wt[shift])

{

ExtMapBuffer1[shift+1] = EMPTY_VALUE; //-1 rot/grau dicht

//ExtMapBuffer3[shift+1] = EMPTY_VALUE;

}

sonst

{

ExtMapBuffer1[shift+1]=CLR_NONE;//EMPTY_VALUE;

ExtMapBuffer2[shift+1]=CLR_NONE;//EMPTY_VALUE;

}

}

return(0);

}

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

 

hii guyss

ich möchte wissen, wie man diesen Code in ea schreibt

rsi 14

Parametereinstellung 30 und 70

kaufen

-rsi kreuzen oberhalb der Linie 30 von unten (zuerst sollte der rsi unter die Linie 30 von oben kreuzen, dann nur die Linie zurück kreuzen, wo das Signal gültig ist)

Verkaufen

-rsi cross below line 70 from above( zuerst sollte der rsi oberhalb der Linie 70 von unten kreuzen, dann nur die Linie zurück kreuzen, wo das Signal gültig ist)

Vielen Dank im Voraus

 

Wie kann man die Handelszeit zu EA hinzufügen?

ex: EA nicht Handel in 14~20h und Handel normal in anderen Zeiten!

und schließen Sie alle profitablen Handel, und halten Sie verlieren Handel vor 14h???

Danke

(sorry für mein schlechtes Englisch)

 
quangmach:
Wie kann man die Handelszeit zum EA hinzufügen?

ex: EA nicht Handel in 14~20h und Handel normal in anderen Zeiten!

und schließen Sie alle profitablen Handel, und halten Sie verlieren Handel vor 14h???

Danke

(sorry für mein schlechtes Englisch)

Ich bin nicht sicher, aber es kann umgekehrt mit Zeitfilter, zum Beispiel, nach dem Start etwas wie dieses hinzufügen:

if (UseHourTrade){

if ((Hour()>=FromHourTrade && Hour()<=ToHourTrade)) {

Comment("Time for trade has not come else!");

return(0);

}

}[/CODE]

And in the settings of EA add the following:

[CODE]extern bool UseHourTrade = True;

extern int FromHourTrade = 14;

extern int ToHourTrade = 20;

Aber bitte beachten Sie, dass die Zeit (14 und 20) ist Metatrader Zeit (hängt von der Broker). Außerdem hängt es vom Zeitrahmen ab, mit dem Sie Ihren EA verwenden. Zum Beispiel, wenn close bar wird bei 15 so wird es von 15 bis 20, unabhängig von Ihrem 14 - 20 sein. Das hängt von den Schlussbalken ab.

 
newdigital:
Ich bin mir nicht sicher, aber es kann im Gegenteil mit Zeitfilter, zum Beispiel nach dem Start fügen Sie etwas wie dieses sein:
if (UseHourTrade){

if ((Hour()>=FromHourTrade && Hour()<=ToHourTrade)) {

Comment("Time for trade has not come else!");

return(0);

}

}[/CODE]

And in the settings of EA add the following:

[CODE]extern bool UseHourTrade = True;

extern int FromHourTrade = 14;

extern int ToHourTrade = 20;
Aber bitte beachten Sie, dass die Zeit (14 und 20) ist Metatrader Zeit (hängt von der Broker). Außerdem hängt es vom Zeitrahmen ab, mit dem Sie Ihren EA verwenden. Zum Beispiel, wenn close bar wird bei 15 so wird es von 15 bis 20, unabhängig von Ihrem 14 - 20 sein. Hängt von den Close Bars ab.

Wow, vielen Dank.

Und wie wäre es mit

und schließe alle gewinnbringenden Handelsgeschäfte, und halte den Verlusthandel vor 14 Uhr?

Ist das möglich?

 

Kommentar Farbe

Hallo --

Gibt es eine Möglichkeit, die Farbe der Kommentare des Indikators zu ändern - die, die in separaten Fenstern angezeigt werden?

Wenn ja, wie?

Danke

 
kiwigold:
Hallo --

Gibt es eine Möglichkeit, die Farbe der Kommentare des Indikators zu ändern - die, die in separaten Fenstern angezeigt werden?

Wenn ja, wie?

danke

Sie können es mit Hilfe von Etiketten machen. Das Etikett kann an einer beliebigen Stelle des ausgewählten Fensters platziert werden, es kann auch jede beliebige Schriftart und Farbe/Größe usw. haben. Sie können also ein Etikett als Kommentar verwenden, es mit x=20 und y=20 platzieren und die Farbe der Schrift nach Belieben einstellen.

 

Zählen der Takte von der Vergangenheit zur Gegenwart

Die Taktzählung erfolgt in MQL immer von rechts nach links (von der Gegenwart in die Vergangenheit), richtig?

Wie erreiche ich eine Zählung der Balken von der Vergangenheit zur Gegenwart?

Ein einfaches Beispiel: Wie würde ich jeden Balken in einem bestimmten Monat nummerieren, wobei 1 den ersten Balken des Monats darstellt und die nachfolgenden Balken aufwärts gezählt werden?

Vielen Dank für jede Hilfe.

Bill (immer noch in einer Schleife gefangen)

 

neue Objekte unter Verwendung des Namens und der Position der vorhandenen Objekte erstellen

In einem meiner Lernprojekte geht es um die Anpassung der tester.tpl, die die Diagrammdarstellungsoption für den Strategietester regelt. Ich finde den Standard-Diagrammstil sehr schwierig zu visualisieren. Also habe ich eine neue Vorlage erstellt und dann ein Skript entwickelt, das alle Pfeile durch attraktivere Pfeile ersetzt.

Ich möchte jedoch auch Informationen in den Pfeilnamen erfassen und diese als Text im Diagramm anzeigen. Die Pfeilnamen enthalten Dinge wie "#62 buy" oder "73 sell close". Auf diese Weise kann man sich das Diagramm ansehen und genau erkennen, wann ein bestimmter Trade # eingegeben/verlassen wurde. Ich weiß nicht, warum dies nicht standardmäßig im Strategy Tester enthalten ist, wie es bei anderen Plattformen (z. B. TradeStation) der Fall ist.

Wie auch immer, ich möchte den fraglichen Text erfassen und neue Textobjekte direkt unter den vorhandenen Pfeilen im Diagramm einfügen. Aber ich finde nicht heraus, wie ich das erreichen kann.

Wie kann ich dies tun?

Vielen Dank

Bill

 
billworld2:
Bar Zählung erfolgt immer von rechts nach links (Gegenwart zu Vergangenheit) in MQL richtig?

Wie erreiche ich eine Zählung der Balken von der Vergangenheit zur Gegenwart?

Ein einfaches Beispiel: Wie würde ich jeden Balken in einem bestimmten Monat nummerieren, wobei 1 für den ersten Balken des Monats steht und die nachfolgenden Balken aufwärts gezählt werden?

Vielen Dank für jede Hilfe.

Bill (immer noch in einer Schleife gefangen)

Sie sollten sich über die Datums- und Zeitfunktionen informieren und die Funktion iBarShift verwenden, um die Verschiebung des ersten Balkens des angegebenen Monats im angegebenen Zeitrahmen zu ermitteln.