Hilfe bei der Codierung - Seite 384

 

Ich erhalte einen Fehler/Warnung, wenn ich kompilieren. Kann jemand bitte machen dies kompatibel mit neuesten MT4-Builds ... es sei denn, dieser Fehler ist nicht eine große Sache.

Vielen Dank!

jbozman

Dateien:
 
jbozman:
Ich erhalte eine Fehlermeldung/Warnung beim Kompilieren. Kann jemand dies bitte mit den neuesten MT4-Builds kompatibel machen... es sei denn, dieser Fehler ist keine große Sache.

Vielen Dank!

jbozman

jbozman

Probieren Sie es jetzt aus: price_lines_jlmv_1.mq4

Dateien:
 
mladen:
jbozman Probieren Sie es jetzt aus: price_lines_jlmv_1.mq4

Keine Fehler. Kompiliert und sieht gut aus. Sie rocken.

j

 

Bitte helfen Sie ... wenn ich kompilieren ... keine Fehler haben

aber bei Expert Tab metatrader haben Fehler

2014.11.02 15:20:17.495 array out of range in '#MTF__B.mq4' (84,25)[/PHP]

[PHP]

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

//| #MTF__B.mq4 |

//| Copyright 2014, MetaQuotes Software Corp. |

//| https://www.mql5.com |

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

#property copyright "Copyright 2014, MetaQuotes Software Corp."

#property link "https://www.mql5.com"

#property version "1.00"

#property strict

#property indicator_chart_window

#property indicator_chart_window

#property indicator_buffers 2

#property indicator_color1 clrDodgerBlue

#property indicator_color2 clrDeepPink

#property indicator_width1 0

#property indicator_width2 0

//---- input parameters

/*************************************************************************

PERIOD_M1 1

PERIOD_M5 5

PERIOD_M15 15

PERIOD_M30 30

PERIOD_H1 60

PERIOD_H4 240

PERIOD_D1 1440

PERIOD_W1 10080

PERIOD_MN1 43200

You must use the numeric value of the timeframe that you want to use

when you set the TimeFrame' value with the indicator inputs.

---------------------------------------

PRICE_CLOSE 0 Close price.

PRICE_OPEN 1 Open price.

PRICE_HIGH 2 High price.

PRICE_LOW 3 Low price.

PRICE_MEDIAN 4 Median price, (high+low)/2.

PRICE_TYPICAL 5 Typical price, (high+low+close)/3.

PRICE_WEIGHTED 6 Weighted close price, (high+low+close+close)/4.

You must use the numeric value of the Applied Price that you want to use

when you set the 'applied_price' value with the indicator inputs.

**************************************************************************/

extern int TimeFrame=30;

extern int barn=1000;

double ExtMapBuffer1[];

double ExtMapBuffer2[];

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

//| Custom indicator initialization function |

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

int init()

{

//---- indicator line

SetIndexBuffer(0,ExtMapBuffer1);

SetIndexBuffer(1,ExtMapBuffer2);

SetIndexStyle(0,DRAW_ARROW,0,5);

SetIndexStyle(1,DRAW_ARROW,0,5);

SetIndexArrow(0,158);

SetIndexArrow(1,158);

return(0);

}

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

//| |

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

int start()

{

datetime TimeArray[];

int i,limit,y=0,counted_bars=IndicatorCounted();

// Plot defined time frame on to current time frame

ArrayCopySeries(TimeArray,MODE_TIME,NULL,TimeFrame);

limit=Bars-counted_bars;

for(i=0,y=0;i<limit;i++)

{

if (Time<TimeArray[y]) y++; ///// line of error here ...

/***********************************************************

Add your main indicator loop below. You can reference an existing

indicator with its iName or iCustom.

Rule 1: Add extern inputs above for all neccesary values

Rule 2: Use 'TimeFrame' for the indicator time frame

Rule 3: Use 'y' for your indicator's shift value

**********************************************************/

ExtMapBuffer1=iCustom(NULL,TimeFrame,"indicator",1,4,0,y) ;

ExtMapBuffer2=iCustom(NULL,TimeFrame,"indicator",1,4,1,y) ;

}

//

return(0);

}

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

danke

 
rizkyd:
Bitte helfen Sie mir ... wenn ich kompiliere ... habe ich keinen Fehler

aber bei Expert Tab metatrader haben Fehler

2014.11.02 15:20:17.495 array out of range in '#MTF__B.mq4' (84,25)[/PHP]

[PHP]

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

//| #MTF__B.mq4 |

//| Copyright 2014, MetaQuotes Software Corp. |

//| https://www.mql5.com |

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

#property copyright "Copyright 2014, MetaQuotes Software Corp."

#property link "https://www.mql5.com"

#property version "1.00"

#property strict

#property indicator_chart_window

#property indicator_chart_window

#property indicator_buffers 2

#property indicator_color1 clrDodgerBlue

#property indicator_color2 clrDeepPink

#property indicator_width1 0

#property indicator_width2 0

//---- input parameters

/*************************************************************************

PERIOD_M1 1

PERIOD_M5 5

PERIOD_M15 15

PERIOD_M30 30

PERIOD_H1 60

PERIOD_H4 240

PERIOD_D1 1440

PERIOD_W1 10080

PERIOD_MN1 43200

You must use the numeric value of the timeframe that you want to use

when you set the TimeFrame' value with the indicator inputs.

---------------------------------------

PRICE_CLOSE 0 Close price.

PRICE_OPEN 1 Open price.

PRICE_HIGH 2 High price.

PRICE_LOW 3 Low price.

PRICE_MEDIAN 4 Median price, (high+low)/2.

PRICE_TYPICAL 5 Typical price, (high+low+close)/3.

PRICE_WEIGHTED 6 Weighted close price, (high+low+close+close)/4.

You must use the numeric value of the Applied Price that you want to use

when you set the 'applied_price' value with the indicator inputs.

**************************************************************************/

extern int TimeFrame=30;

extern int barn=1000;

double ExtMapBuffer1[];

double ExtMapBuffer2[];

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

//| Custom indicator initialization function |

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

int init()

{

//---- indicator line

SetIndexBuffer(0,ExtMapBuffer1);

SetIndexBuffer(1,ExtMapBuffer2);

SetIndexStyle(0,DRAW_ARROW,0,5);

SetIndexStyle(1,DRAW_ARROW,0,5);

SetIndexArrow(0,158);

SetIndexArrow(1,158);

return(0);

}

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

//| |

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

int start()

{

datetime TimeArray[];

int i,limit,y=0,counted_bars=IndicatorCounted();

// Plot defined time frame on to current time frame

ArrayCopySeries(TimeArray,MODE_TIME,NULL,TimeFrame);

limit=MathMin(Bars-counted_bars,Bars-1);

for(i=0,y=0;i<limit;i++)

{

if (Time<TimeArray[y]) y++; ///// line of error here ...

/***********************************************************

Add your main indicator loop below. You can reference an existing

indicator with its iName or iCustom.

Rule 1: Add extern inputs above for all neccesary values

Rule 2: Use 'TimeFrame' for the indicator time frame

Rule 3: Use 'y' for your indicator's shift value

**********************************************************/

ExtMapBuffer1=iCustom(NULL,TimeFrame,"indicator",1,4,0,y) ;

ExtMapBuffer2=iCustom(NULL,TimeFrame,"indicator",1,4,1,y) ;

}

//

return(0);

}

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

danke

Versuchen Sie, diese Zeile zu ersetzen

limit=Bars-counted_bars;

mit dieser :

limit=MathMin(MathMax(Bars-counted_bars,2*TimeFrame/Period()),Bars-1);

 
mladen:
Versuchen Sie, diese Zeile zu ersetzen

limit=Bars-counted_bars;

mit diesem :

limit=MathMin(MathMax(Balken-gezählte_Balken,2*TimeFrame/Period()),Balken-1);

danke mladen

 

Hallo Mladen,

ich habe Schwierigkeiten, diesen EA zu kodieren, da die Einstiegsregeln etwas sind, was ich noch nie gemacht habe.

Bei diesem Handel ist es zum Beispiel einfach, die Einstiegsregel zu schreiben, da der grüne und der rote Pfeil gleichzeitig erscheinen. Bei der Eröffnung der nächsten Kerze gehen wir also eine Short-Position ein.

Aber in diesem nächsten Beispiel erhalte ich zuerst den grünen Pfeil ohne einen roten Pfeil. Ich gehe also erst dann in den Handel, wenn der rote Pfeil erscheint. Darüber hinaus müssen alle Kerzen, die nach dem grünen Pfeil und vor dem roten Pfeil erscheinen, nach oben zeigen, da es sich sonst nicht um einen gültigen Handel handelt.

Wie zur Hölle kodiere ich diese spezielle Regel? Ich weiß, wie man sie für die aktuelle Kerze kodiert, aber ich weiß nicht, wie man diese Bedingungen festlegt. Jede Hilfe wäre großartig!

Dateien:
capture1.jpg  19 kb
capture.jpg  22 kb
 
Jason2005:
Hallo Mladen,

Ich habe Schwierigkeiten, diesen EA zu kodieren, da die Einstiegsregeln etwas sind, was ich noch nie gemacht habe.

Zum Beispiel in diesem Handel, ist es einfach, die Entry-Regel zu schreiben, da der grüne und rote Pfeil zur gleichen Zeit erscheinen. Bei der Eröffnung der nächsten Kerze gehen wir also eine Short-Position ein.

Aber in diesem nächsten Beispiel erhalte ich zuerst den grünen Pfeil ohne einen roten Pfeil. Ich gehe also erst dann in den Handel, wenn der rote Pfeil erscheint. Darüber hinaus müssen alle Kerzen, die nach dem grünen Pfeil und vor dem roten Pfeil erscheinen, nach oben zeigen, da es sich sonst nicht um einen gültigen Handel handelt.

Wie zum Teufel kodiere ich diese spezielle Regel? Ich weiß, wie man sie für die aktuelle Kerze kodiert, aber ich weiß nicht, wie man diese Bedingungen festlegt. Jede Hilfe wäre großartig!

Jason

Warum kopieren Sie nicht die logischen Bedingungen aus dem Code, der diese Pfeile erzeugt?

 
mladen:
Jason Warum kopieren Sie nicht die logischen Bedingungen aus dem Code, der diese Pfeile erzeugt?

Ich bin nicht ganz sicher, dass ich verstehe, was Sie sagen...

Was ich versuche, herauszufinden, ist, wie in meinem Kauf oder Verkauf Bedingungen, die ich machen die EA zu verstehen, dass, wenn der rote Pfeil erscheint (das ist Trigger) die Bedingung ist, dass es ein grüner Pfeil vor gewesen sein muss und dass alle Kerzen, die folgen, dass Pfeil muss UP oder DOWN je nach was benötigt wird. Aber ich weiß nicht, wann dieser grüne Pfeil erschienen wäre...

 
Jason2005:
Ich bin mir nicht ganz sicher, ob ich verstehe, was Sie sagen wollen. Was ich herauszufinden versuche, ist, wie ich in meinen Kauf- oder Verkaufsbedingungen dem EA zu verstehen gebe, dass, wenn der rote Pfeil erscheint (das ist der Trigger), die Bedingung ist, dass es vorher einen grünen Pfeil gegeben haben muss und dass alle Kerzen, die diesem Pfeil folgen, AUF oder AB sein müssen, je nachdem, was erforderlich ist. Aber ich weiß nicht, wann dieser grüne Pfeil erschienen wäre...

Hallo Jason2005,

Die roten und grünen Pfeile sind Werte in den Puffern Ihres Indikators....nicht Ihres EA....

Verwenden Sie iCustom in Ihrem EA, um Ihre Indikatorwerte in den Puffern aufzurufen... und verwenden Sie sie dann für Ihre Handelsstrategie.

Es gibt viele gute Beiträge hier in diesem Forum darüber, wie Sie iCustom in Ihrem EA verwenden können...

In der Zwischenzeit... wenn Sie Ihre Indikatoren hier anhängen... kann Ihnen vielleicht jemand zeigen, welche Indikatorpuffer Sie in Ihren iCustom-Anweisungen verwenden können.

Hoffentlich hilft das,

Robert