Kodlama yardımı - sayfa 139

 

Kodu düzgün bir şekilde göndermenin bir yolu var mı? Ara çubuğu çalışmıyor, nedenini bilmiyorum.

 
RyuShin:
Kodu düzgün bir şekilde göndermenin bir yolu var mı? Ara çubuğu çalışmıyor, nedenini bilmiyorum.

Resimde gösterildiği gibi yapabilirsiniz (kodu php kutusuna yapıştırmanız yeterlidir)

veya normal eki kullanarak kodu ekleyebilirsiniz

Dosyalar:
 
mladen:
Resimde gösterildiği gibi yapabilirsiniz (kodu php kutusuna yapıştırmanız yeterlidir) veya normal eki kullanarak kodu ekleyebilirsiniz

Sorun şu ki kutuyu görmüyorum. Neden olduğuna dair hiçbir fikrim yok. Firefox ve internet explorer kullandım ama kutuyu göstermediler :/ Neyse başka bir bilgisayar kullanıp tekrar deneyeceğim.

 

Tamam, göstergelerin kodu burada.

Haftalık

#property indicator_chart_window

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

//| Custom indicator initialization function |

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

int init()

{

//---- indicators

//----

return(0);

}

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

//| Custom indicator deinitialization function |

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

int deinit()

{

//----

ObjectDelete("WS1");

ObjectDelete("WS2");

ObjectDelete("WS3");

ObjectDelete("WR1");

ObjectDelete("WR2");

ObjectDelete("WR3");

ObjectDelete("WEEKLY PIVOT");

ObjectDelete("Weekly Support 1");

ObjectDelete("Weekly 2");

ObjectDelete("Weekly 3");

ObjectDelete("Weekly Pivot level");

ObjectDelete("Weekly Resistance 1");

ObjectDelete("Weekly Resistance 2");

ObjectDelete("Weekly Resistance 3");

Comment(" ");

//----

return(0);

}

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

//| Custom indicator iteration function |

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

int start()

{

//----

double rates[1][6],weekly_close,weekly_high,weekly_low;

ArrayCopyRates(rates, Symbol(), PERIOD_W1);

if(DayOfWeek() == 1)

{

if(TimeDayOfWeek(iTime(Symbol(),PERIOD_W1,1)) == 5)

{

weekly_close = rates[1][4];

weekly_high = rates[1][3];

weekly_low = rates[1][2];

}

else

{

for(int d = 5;d>=0;d--)

{

if(TimeDayOfWeek(iTime(Symbol(),PERIOD_W1,d)) == 5)

{

weekly_close = rates[d][4];

weekly_high = rates[d][3];

weekly_low = rates[d][2];

}

}

}

}

else

{

weekly_close = rates[1][4];

weekly_high = rates[1][3];

weekly_low = rates[1][2];

}

//---- Calculate Pivots

Comment("\nWeekly quotations:\nH ",weekly_high,"\nL ",weekly_low, "\nC ",weekly_close);

double R = weekly_high - weekly_low;//range

double wp = (weekly_high + weekly_low + weekly_close)/3;// Standard Pivot

double wr3 = wp + (R * 1.000);

double wr2 = wp + (R * 0.618);

double wr1 = wp + (R * 0.382);

double ws1 = wp - (R * 0.382);

double ws2 = wp - (R * 0.618);

double ws3 = wp - (R * 1.000);

drawLine(wr3,"WR3", LimeGreen,0);

drawLabel(" WR 3",wr3,LimeGreen);

drawLine(wr2,"WR2", LimeGreen,0);

drawLabel(" WR 2",wr2,LimeGreen);

drawLine(wr1,"WR1", LimeGreen,0);

drawLabel(" WR 1",wr1,LimeGreen);

drawLine(wp,"WEEKLY PIVOT",Black,1);

drawLabel(" WP",wp,Black);

drawLine(ws1,"WS1",Crimson,0);

drawLabel(" WS 1",ws1,Crimson);

drawLine(ws2,"WS2",Crimson,0);

drawLabel(" WS 2",ws2,Crimson);

drawLine(ws3,"WS3",Crimson,0);

drawLabel(" WS 3",ws3,Crimson);

//----

return(0);

}

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

void drawLabel(string name,double lvl,color Color)

{

if(ObjectFind(name) != 0)

{

ObjectCreate(name, OBJ_TEXT, 0, Time[10], lvl);

ObjectSetText(name, name, 8, "Arial", EMPTY);

ObjectSet(name, OBJPROP_COLOR, Color);

}

else

{

ObjectMove(name, 0, Time[10], lvl);

}

}

void drawLine(double lvl,string name, color Col,int type)

{

if(ObjectFind(name) != 0)

{

ObjectCreate(name, OBJ_HLINE, 0, Time[0], lvl,Time[0],lvl);

if(type == 1)

ObjectSet(name, OBJPROP_STYLE, STYLE_SOLID);

else

ObjectSet(name, OBJPROP_STYLE, STYLE_DOT);

ObjectSet(name, OBJPROP_COLOR, Col);

ObjectSet(name,OBJPROP_WIDTH,1);

}

else

{

ObjectDelete(name);

ObjectCreate(name, OBJ_HLINE, 0, Time[0], lvl,Time[0],lvl);

if(type == 1)

ObjectSet(name, OBJPROP_STYLE, STYLE_SOLID);

else

ObjectSet(name, OBJPROP_STYLE, STYLE_DOT);

ObjectSet(name, OBJPROP_COLOR, Col);

ObjectSet(name,OBJPROP_WIDTH,1);

}

}[/PHP]

Monthly

[PHP]//+------------------------------------------------------------------+

#property indicator_chart_window

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

//| Custom indicator initialization function |

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

int init()

{

//---- indicators

//----

return(0);

}

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

//| Custom indicator deinitialization function |

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

int deinit()

{

//----

ObjectDelete("MS1");

ObjectDelete("MS2");

ObjectDelete("MS3");

ObjectDelete("MR1");

ObjectDelete("MR2");

ObjectDelete("MR3");

ObjectDelete("MONTHLY PIVOT");

ObjectDelete("Monthly Support 1");

ObjectDelete("Monthly 2");

ObjectDelete("Monthly 3");

ObjectDelete("Monthly Pivot level");

ObjectDelete("Monthly Resistance 1");

ObjectDelete("Monthly Resistance 2");

ObjectDelete("Monthly Resistance 3");

Comment(" ");

//----

return(0);

}

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

//| Custom indicator iteration function |

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

int start()

{

//----

double rates[1][6],monthly_close,monthly_high,monthly_low;

ArrayCopyRates(rates, Symbol(), PERIOD_MN1);

if(DayOfWeek() == 1)

{

if(TimeDayOfWeek(iTime(Symbol(),PERIOD_MN1,1)) == 5)

{

monthly_close = rates[1][4];

monthly_high = rates[1][3];

monthly_low = rates[1][2];

}

else

{

for(int d = 5;d>=0;d--)

{

if(TimeDayOfWeek(iTime(Symbol(),PERIOD_MN1,d)) == 5)

{

monthly_close = rates[d][4];

monthly_high = rates[d][3];

monthly_low = rates[d][2];

}

}

}

}

else

{

monthly_close = rates[1][4];

monthly_high = rates[1][3];

monthly_low = rates[1][2];

}

//---- Calculate Pivots

Comment("\nMonthly quotations:\nH ",monthly_high,"\nL ",monthly_low, "\nC ",monthly_close);

double R = monthly_high - monthly_low;//range

double mp = (monthly_high + monthly_low + monthly_close)/3;// Standard Pivot

double mr3 = mp + (R * 1.000);

double mr2 = mp + (R * 0.618);

double mr1 = mp + (R * 0.382);

double ms1 = mp - (R * 0.382);

double ms2 = mp - (R * 0.618);

double ms3 = mp - (R * 1.000);

drawLine(mr3,"MR3", Lime,0);

drawLabel(" MR 3",mr3,Lime);

drawLine(mr2,"MR2", Lime,0);

drawLabel(" MR 2",mr2,Lime);

drawLine(mr1,"MR1", Lime,0);

drawLabel(" MR 1",mr1,Lime);

drawLine(mp,"MONTHLY PIVOT",Black,1);

drawLabel(" MP",mp,Black);

drawLine(ms1,"MS1",Red,0);

drawLabel(" MS 1",ms1,Red);

drawLine(ms2,"MS2",Red,0);

drawLabel(" MS 2",ms2,Red);

drawLine(ms3,"MS3",Red,0);

drawLabel(" MS 3",ms3,Red);

//----

return(0);

}

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

void drawLabel(string name,double lvl,color Color)

{

if(ObjectFind(name) != 0)

{

ObjectCreate(name, OBJ_TEXT, 0, Time[10], lvl);

ObjectSetText(name, name, 8, "Arial", EMPTY);

ObjectSet(name, OBJPROP_COLOR, Color);

}

else

{

ObjectMove(name, 0, Time[10], lvl);

}

}

void drawLine(double lvl,string name, color Col,int type)

{

if(ObjectFind(name) != 0)

{

ObjectCreate(name, OBJ_HLINE, 0, Time[0], lvl,Time[0],lvl);

if(type == 1)

ObjectSet(name, OBJPROP_STYLE, STYLE_SOLID);

else

ObjectSet(name, OBJPROP_STYLE, STYLE_DOT);

ObjectSet(name, OBJPROP_COLOR, Col);

ObjectSet(name,OBJPROP_WIDTH,1);

}

else

{

ObjectDelete(name);

ObjectCreate(name, OBJ_HLINE, 0, Time[0], lvl,Time[0],lvl);

if(type == 1)

ObjectSet(name, OBJPROP_STYLE, STYLE_SOLID);

else

ObjectSet(name, OBJPROP_STYLE, STYLE_DOT);

ObjectSet(name, OBJPROP_COLOR, Col);

ObjectSet(name,OBJPROP_WIDTH,1);

}

}
 
RyuShin:
Sorun şu ki kutuyu görmüyorum. Neden olduğuna dair hiçbir fikrim yok. Firefox ve internet explorer kullandım ama kutuyu göstermediler :/ Neyse başka bir bilgisayar kullanıp tekrar deneyeceğim.

RyuShin

Bir kutu görmeyeceksiniz, şöyle bir şey göreceksiniz:

ve bununla sonuçlanacaktır:

paste your code here
Dosyalar:
code_2.gif  35 kb
 

Merhaba millet,

Koduma bir bakar mısınız lütfen? çok basit, ama neden istediğim gibi çalışmadığına dair hiçbir fikrim yok. Temelde bir göstergenin iki ardışık değerinin olup olmadığını kontrol etmek istiyorum. Aynıysa, mumun üzerine çizin ve okla kapatın.

now=iCustom(NULL,0,"Stoch",period,5,i+1);

previous=iCustom(NULL,0,"Stoch",period,5,i+2);

if ( (now==previous))

{

CrossUp=previous;

}

[/CODE]

The code above is not showing any arrows when it should (I checked in data window)

The parameters, indicators name is all working fine because with the following code, it is showing arrows

[CODE]

now=iCustom(NULL,0,"Stoch",period,5,i+ 1 );

previous=iCustom(NULL,0,"Stoch",period,5,i+ 1 );

if ( (now==previous))

{

CrossUp=previous;

}

İlk kod grubunun neden aynı olmadığına yardımcı olabilecek var mı?

Veri penceresindeki değer aynı!..

Şimdiden teşekkür ederim!

 
yuhu:
Merhaba millet,

Koduma bir bakar mısınız lütfen? çok basit, ama neden istediğim gibi çalışmadığı hakkında hiçbir fikrim yok. Temelde bir göstergenin iki ardışık değerinin olup olmadığını kontrol etmek istiyorum. Aynıysa, mumun üzerine çizin ve okla kapatın.

now=iCustom(NULL,0,"Stoch",period,5,i+1);

previous=iCustom(NULL,0,"Stoch",period,5,i+2);

if ( (now==previous))

{

CrossUp=previous;

}

[/CODE]

The code above is not showing any arrows when it should (I checked in data window)

The parameters, indicators name is all working fine because with the following code, it is showing arrows

[CODE]

now=iCustom(NULL,0,"Stoch",period,5,i+ 1 );

previous=iCustom(NULL,0,"Stoch",period,5,i+ 1 );

if ( (now==previous))

{

CrossUp=previous;

}

İlk kod grubunun neden aynı olmadığına yardımcı olabilecek var mı?

Veri penceresindeki değer aynı!..

Şimdiden teşekkür ederim!

yuhu

Veri penceresindeki göstergeler için veriler, IndicatorDigits() işleviyle farklı tanımlanmadıysa, yalnızca 4 basamaklı hassasiyette görüntülenir. Görüntülenmeyen şey, eşit bir koşul elde etmemenize neden olan şeydir. NormalizeDouble() kullanın ve daha sık olması gerekir

Bunun gibi bir şey kullanın:

if ( (NormalizeDouble(now,4)==NormalizeDouble(previous,4)))

Veya 4 yerine değerlerin yuvarlanmasını istediğiniz başka bir sayı kullanın.

 

CSM objektif ölçütü

Merhaba

Birisi bana aşağıdakileri kodlamada yardımcı olabilir:

Ne zaman bir uyarı sağlayın

1 - bir para birimi (aşağıdaki grafikte örnek EUR) birkaç zaman diliminde sürekli olarak yüksek değerlere sahiptir ve

2 - ikinci bir para birimi (grafikteki JPY örneği) aynı zaman dilimlerinde sürekli olarak düşük değerlere sahiptir.

Örneğin, uyarı, M15, M30, H1 ve H4 (kullanıcı tarafından seçilen zaman dilimleri) belirtilerek,

1 - EUR, HiScore (bir değişken, varsayılan 70) veya üzeri dört okumanın tümüne sahiptir ve

2 - JPY, LowScore'un (bir değişken, varsayılan 35) veya daha düşük dört okumasının tümüne sahiptir.

("hanover --- genişletilebilir işlevler .mgh" ve "hanover --- işlev üstbilgisi.mgh", grafiği düzgün görebilmek için uzmanlar/include klasörüne yerleştirilmelidir. Ayrıca "PLCC___" yazı tipinin de yüklenmesi gerektiğini düşünüyorum. Windows'ta, ancak o yazı tipini buraya yüklemeyi başaramadım.)

Teşekkür ederim!

 

Çok teşekkürler Mladen. sen bir kahramansın

Dikkatli ol!!

 

mladen, metatrader'ım saat 0'ı geçtikten sonra haftalık ve aylık pivot göstergeler tekrar çalışmaya başladı. Pazartesi neden çalışmıyorlar bilmiyorum :/ Yine de ilginiz için teşekkür ederim.