Kodlama yardımı - sayfa 384

 

Derlerken bir hata/uyarı alıyorum. Birisi lütfen bunu en son MT4 sürümleriyle uyumlu hale getirebilir mi ... bu hata çok önemli değilse.

Çok teşekkürler

jbozman

Dosyalar:
 
jbozman:
Derlerken bir hata/uyarı alıyorum. Birisi lütfen bunu en son MT4 sürümleriyle uyumlu hale getirebilir mi... bu hata çok önemli değilse.

Çok teşekkürler

jbozman

jbozman

Şimdi deneyin: price_lines_jlmv_1.mq4

Dosyalar:
 
mladen:
jbozman Şimdi deneyin: price_lines_jlmv_1.mq4

Hata yok. Derlenmiş ve iyi görünüyor. Harikasın.

j

 

lütfen yardım edin ... derlersem ... hata yok

ancak Expert Tab metatrader'da hata var

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);

}

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

Teşekkürler

 
rizkyd:
lütfen yardım edin ... derlersem ... hata yok

ancak Expert Tab metatrader'da hata var

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);

}

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

Teşekkürler

Bu satırı değiştirmeyi deneyin

limit=Barlar-sayılan_barlar;

Bununla :

limit=MathMin(MathMax(Barlar-sayılan_barlar,2*TimeFrame/Period()),Barlar-1);

 
mladen:
Bu satırı değiştirmeyi deneyin

limit=Barlar-sayılan_barlar;

Bununla :

limit=MathMin(MathMax(Barlar-sayılan_barlar,2*TimeFrame/Period()),Barlar-1);

teşekkürler mladen

 

Merhaba Mladen,

Giriş kuralları daha önce hiç yapmadığım bir şey olduğu için bu EA'yı kodlarken sorun yaşıyorum.

Örneğin, bu ticarette, yeşil ve kırmızı ok aynı anda göründüğü için giriş kuralını yazmak kolaydır. Yani bir sonraki mumun açılışında kısa bir pozisyon alıyoruz.

Ancak bir sonraki örnekte, önce kırmızı ok olmadan yeşil oku alıyorum. Bu yüzden kırmızı ok görünene kadar takası kabul etmiyorum. Bunun üzerine, o yeşil oktan sonra ve o kırmızı oktan önceki tüm mumlar YUKARI olmalıdır, aksi takdirde bu geçerli bir ticaret değildir.

Bu özel kuralı nasıl kodlarım? Mevcut mum için nasıl kodlayacağımı biliyorum ama bu koşulları nasıl belirteceğimi bilmiyorum. Herhangi bir yardım harika olurdu!

Dosyalar:
capture1.jpg  19 kb
capture.jpg  22 kb
 
Jason2005:
Merhaba Mladen,

Giriş kuralları daha önce hiç yapmadığım bir şey olduğu için bu EA'yı kodlarken sorun yaşıyorum.

Örneğin, bu ticarette, yeşil ve kırmızı ok aynı anda göründüğü için giriş kuralını yazmak kolaydır. Yani bir sonraki mumun açılışında kısa bir pozisyon alıyoruz.

Ancak bir sonraki örnekte, önce kırmızı ok olmadan yeşil oku alıyorum. Bu yüzden kırmızı ok görünene kadar takası kabul etmiyorum. Bunun üzerine, o yeşil oktan sonraki ve o kırmızı oktan önceki tüm mumlar YUKARI olmalıdır, aksi takdirde bu geçerli bir ticaret değildir.

Bu özel kuralı nasıl kodlarım? Mevcut mum için nasıl kodlayacağımı biliyorum ama bu koşulları nasıl belirteceğimi bilmiyorum. Herhangi bir yardım harika olurdu!

Jason

Neden bu okları oluşturan koddan mantıksal koşulları kopyalamıyorsunuz?

 
mladen:
Jason Neden bu okları oluşturan koddan mantıksal koşulları kopyalamıyorsunuz?

Ne dediğini anladığımdan pek emin değilim...

Bulmaya çalıştığım şey, satın alma veya satma koşullarımda EA'nın kırmızı ok göründüğünde (yani tetikleyicidir) koşulun daha önce yeşil bir ok olması gerektiği ve tüm mumların bu durumda olduğunu anlamasını nasıl sağladığımdır. bu oku izleyin, neye ihtiyaç duyulduğuna bağlı olarak YUKARI veya AŞAĞI olmalıdır. Ama o yeşil okun ne zaman ortaya çıkacağını bilmiyorum...

 
Jason2005:
Ne dediğini anladığımdan tam olarak emin değilim... Bulmaya çalıştığım şey, satın alma veya satma koşullarımda EA'nın kırmızı ok göründüğünde (yani tetikleyici) durumu anlamasını nasıl sağladığım. daha önce yeşil bir ok olması ve o oku takip eden tüm mumların neye ihtiyaç duyulduğuna bağlı olarak YUKARI veya AŞAĞI olması gerektiğidir. Ama o yeşil okun ne zaman ortaya çıkacağını bilmiyorum...

Merhaba Jason2005,

Kırmızı ve Yeşil Oklar, göstergenizin arabelleklerindeki değerlerdir.... EA'nız değil....

Tamponlardaki gösterge değerlerinizi çağırmak için EA'nızda iCustom kullanın... ve ardından bunları ticaret stratejiniz için kullanın.

EA'nızda iCustom'u nasıl kullanacağınızla ilgili bu forumda birçok iyi gönderi var...

Bu arada...göstergelerinizi buraya eklerseniz...birisi size iCustom ifadelerinizde hangi gösterge arabelleklerini kullanabileceğinizi gösterebilir.

Bu yardımcı olur umarım,

Robert