Sormak! - sayfa 175

 

Ah bu çok daha iyi bir yöntem. Geri test sırasında biraz kusurlu olduğunu düşündüğüm her açık sipariş arasında if (Ask == OrderTakeProfit()) {..} ile oynuyordum. Teşekkürler!

 

Bir dizeyi yorumlayacak bir sayıyı nasıl yorumlarsınız?

dizi 2;

2="EURUSD";

GRAFİKTE EURUSD OLARAK YORUM YAPILACAK 2 YERDE NASIL YORUM YAPABİLİRİM??

LÜTFEN YARDIMCI OLUN - ŞAŞIRTICI!

DAVE

 

Bunu mql'de yapamazsınız.

Mql'de bir değişken adı bir sayı olamaz veya sayı ile başlayamaz, bu nedenle tek çözüm "2"nin önüne bir harf, alt çizgi veya izin verilen bir karakter eklemektir.

1Dave7:
dizi 2;

2="EURUSD";

GRAFİKTE EURUSD OLARAK YORUM YAPILACAK 2 YERDE NASIL YORUM YAPABİLİRİM??

LÜTFEN YARDIMCI OLUN - ŞAŞIRTICI!

DAVE
 

Aşağıdakiler üzerinde azalan sırada bir diziyi nasıl yaparım:

çift D0=0,D1=0,D2=0,D3=0,D4=0,D5=0,D6=0,D7=0);

D0=iCustom(NULL,0,"XYZ",0,0);

D1=iCustom(NULL,0,"XYZ",1,0);

D2=iCustom(NULL,0,"XYZ",2,0);

D3=iCustom(NULL,0,"XYZ",3,0);

D4=iCustom(NULL,0,"XYZ",4,0);

D5=iCustom(NULL,0,"XYZ",5,0);

D6=iCustom(NULL,0,"XYZ",6,0);

D7=iCustom(NULL,0,"XYZ",7,0);

(D0,D1,D2,D3,D4,D5,D6,D7) DEĞERLERİNİN AZAN DİZİSİNİ NASIL BAŞLATABİLİRİM?? EA'MDAKİ DİZİNİN SONUÇLARINA NASIL ULAŞABİLİRİM?

YARDIMINIZ İÇİN TEŞEKKÜR EDERİM - BU ŞİŞE BOYUNA GEÇERSENİZ ÇOK MUTLU OLURUM!

Dave

 

Yalnızca sıralanmış değerlere ihtiyacınız varsa, şöyle bir şey yapabilirsiniz:

double array[8];

array[0]=iCustom(NULL,0,"XYZ",0,0);

array[1]=iCustom(NULL,0,"XYZ",1,0);

array[2]=iCustom(NULL,0,"XYZ",2,0);

array[3]=iCustom(NULL,0,"XYZ",3,0);

array[4]=iCustom(NULL,0,"XYZ",4,0);

array[5]=iCustom(NULL,0,"XYZ",5,0);

array[6]=iCustom(NULL,0,"XYZ",6,0);

array[7]=iCustom(NULL,0,"XYZ",7,0);

ArraySort(array,WHOLE_ARRAY,0,MODE_ASCEND);

ve sonra sıralanan değerler "dizi" dizisinde olacaktır.

1Dave7:
çift D0=0,D1=0,D2=0,D3=0,D4=0,D5=0,D6=0,D7=0);

D0=iCustom(NULL,0,"XYZ",0,0);

D1=iCustom(NULL,0,"XYZ",1,0);

D2=iCustom(NULL,0,"XYZ",2,0);

D3=iCustom(NULL,0,"XYZ",3,0);

D4=iCustom(NULL,0,"XYZ",4,0);

D5=iCustom(NULL,0,"XYZ",5,0);

D6=iCustom(NULL,0,"XYZ",6,0);

D7=iCustom(NULL,0,"XYZ",7,0);

(D0,D1,D2,D3,D4,D5,D6,D7) DEĞERLERİNİN AZAN DİZİSİNİ NASIL BAŞLATABİLİRİM?? EA'MDAKİ DİZİNİN SONUÇLARINA NASIL ULAŞABİLİRİM?

YARDIMINIZ İÇİN TEŞEKKÜR EDERİM - BU ŞİŞE BOYUNA GEÇERSENİZ ÇOK MUTLU OLURUM!

Dave
 
mladen:
Yalnızca sıralanmış değerlere ihtiyacınız varsa, şöyle bir şey yapabilirsiniz:
double array[8];

array[0]=iCustom(NULL,0,"XYZ",0,0);

array[1]=iCustom(NULL,0,"XYZ",1,0);

array[2]=iCustom(NULL,0,"XYZ",2,0);

array[3]=iCustom(NULL,0,"XYZ",3,0);

array[4]=iCustom(NULL,0,"XYZ",4,0);

array[5]=iCustom(NULL,0,"XYZ",5,0);

array[6]=iCustom(NULL,0,"XYZ",6,0);

array[7]=iCustom(NULL,0,"XYZ",7,0);

ArraySort(array,WHOLE_ARRAY,0,MODE_ASCEND);

ve sonra sıralanan değerler "dizi" dizisinde olacaktır.

VAY!!!!!!!!!!!! Bunu asla çözemezdim - Çok teşekkürler!!!

 

Lütfen bu dizinin çalışmasına yardım edin - Şaşkın!!!

[/PHP] EUR=(iMA("EURUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i)-iMA("EURUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i+Delta)); //RED

GBP=(iMA("GBPUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i)-iMA("GBPUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i+Delta)); //LIME

double array[7];

array[0]=iCustom(NULL,0,"EURUSD",0,0);

array[1]=iCustom(NULL,0,"GBPUSD",1,0);

array[2]=iCustom(NULL,0,"AUDUSD",2,0);

array[3]=iCustom(NULL,0,"USDCHF",3,0);

array[4]=iCustom(NULL,0,"USDJPY",4,0);

array[5]=iCustom(NULL,0,"NZDUSD",5,0);

array[6]=iCustom(NULL,0,"USDCAD",6,0);

ArraySort(array,WHOLE_ARRAY,0,MODE_ASCEND);

a=array[0];b=array[1];c=array[2];d=array[3];e=array[4];f=array[5];g=array[6];

{

ObjectCreate("DISPLAY10", OBJ_LABEL, 1, 0, 0);

ObjectSetText("DISPLAY10", DoubleToStr(a,0), 10, "ArialBold", Red);//"EURUSD =" ,

ObjectSet("DISPLAY10", OBJPROP_CORNER, 1);

ObjectSet("DISPLAY10", OBJPROP_XDISTANCE, 80);

ObjectSet("DISPLAY10", OBJPROP_YDISTANCE, 20);

//return(0);

}

{

ObjectCreate("DISPLAY20", OBJ_LABEL, 1, 0, 0);

ObjectSetText("DISPLAY20", DoubleToStr(b,0), 10, "ArialBold", Lime);//"GBPUSD =" ,

ObjectSet("DISPLAY20", OBJPROP_CORNER, 1);

ObjectSet("DISPLAY20", OBJPROP_XDISTANCE, 80);

ObjectSet("DISPLAY20", OBJPROP_YDISTANCE, 40);

//return(0);

}

[PHP]

a,b için bir değer alıp görüntülemeye çalıştım ama sadece a için 0, b için 0 ve diğer tüm cf değerlerini gösteriyor. Para birimlerinin artan bir sıralamasını almayı umuyordum. Bunun neden çalışmadığını anlamaya yardımcı olabilir misiniz ???

Keşke yardımın için sana bir bira ısmarlayabilseydim!

 

Bunun gibi giden satırları kontrol edin:

array[0]=iCustom(NULL,0,"EURUSD",0,0);

Bu satır, "EURUSD" adında bir göstergeye sahip olduğunuz ve onu bir değer elde etmek ve onu "dizi"nin 1. öğesine atamak için çağırdığınız anlamına gelir. Eğer mevcut değilse (doğru olduğunu varsaydığım bu ada sahip gösterge), dizi elemanına 0 değerini atayacaktır. Bu satırla tam olarak ne almaya çalışıyorsunuz?

1Dave7:
EUR=(iMA("EURUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i)-iMA("EURUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i+Delta)); //KIRMIZI

GBP=(iMA("GBPUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i)-iMA("GBPUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i+Delta)); //MİSKET LİMONU

çift dizi[7];

dizi[0]=iCustom(NULL,0,"EURUSD",0,0);

dizi[1]=iCustom(NULL,0,"GBPUSD",1,0);

dizi[2]=iCustom(NULL,0,"AUDUSD",2,0);

dizi[3]=iCustom(NULL,0,"USDCHF",3,0);

dizi[4]=iCustom(NULL,0,"USDJPY",4,0);

dizi[5]=iCustom(NULL,0,"NZDUSD",5,0);

dizi[6]=iCustom(NULL,0,"USDCAD",6,0);

ArraySort(dizi,WHOLE_ARRAY,0,MODE_ASCEND);

a=dizi[0];b=dizi[1];c=dizi[2];d=dizi[3];e=dizi[4];f=dizi[5];g=dizi[6];

{

ObjectCreate("DISPLAY10", OBJ_LABEL, 1, 0, 0);

ObjectSetText("DISPLAY10", DoubleToStr(a,0), 10, "ArialBold", Red);//"EURUSD =" ,

ObjectSet("DISPLAY10", OBJPROP_CORNER, 1);

ObjectSet("DISPLAY10", OBJPROP_XDISTANCE, 80);

ObjectSet("DISPLAY10", OBJPROP_YDISTANCE, 20);

//dönüş(0);

}

{

ObjectCreate("DISPLAY20", OBJ_LABEL, 1, 0, 0);

ObjectSetText("DISPLAY20", DoubleToStr(b,0), 10, "ArialBold", Lime);//"GBPUSD =" ,

ObjectSet("DISPLAY20", OBJPROP_CORNER, 1);

ObjectSet("DISPLAY20", OBJPROP_XDISTANCE, 80);

ObjectSet("DISPLAY20", OBJPROP_YDISTANCE, 40);

//dönüş(0);

}

a,b için bir değer alıp görüntülemeye çalıştım ama sadece a için 0, b için 0 ve diğer tüm cf değerlerini gösteriyor. Para birimlerinin artan bir sıralamasını almayı umuyordum. Bunun neden çalışmadığını anlamaya yardımcı olabilir misiniz ???

Keşke yardımın için sana bir bira ısmarlayabilseydim!
 
mladen:
Bunun gibi giden satırları kontrol edin:
array[0]=iCustom(NULL,0,"EURUSD",0,0);
Bu satır, "EURUSD" adında bir göstergeye sahip olduğunuz ve onu bir değer elde etmek ve onu "dizi"nin 1. öğesine atamak için çağırdığınız anlamına gelir. Eğer mevcut değilse (doğru olduğunu varsaydığım bu ada sahip gösterge), dizi öğesine 0 değerini atayacaktır. Bu satırla tam olarak ne almaya çalışıyorsunuz?

Dizi, "EURUSD" den bir değer almak, ardından diğer para birimlerine göre düşükten yükseğe doğru artan bir sıralama yapmak ve ardından düşük sıralamaları ekrana getirmektir. EURUSD diğer para birimleri gibi bana sadece bir 0.00 verir misin? Burada neyi yanlış yapıyorum?

 

Bunu şu şekilde yapın:

array[0]=iClose("EURUSD",0,0); [/PHP]

and so on. That way array will be filled with close prices for symbols you select. If you are using a custom indicator then the form is the following :

[PHP]array[0]=iCustom("EURUSD",0,"indicator name",0,0);
1Dave7:
Dizi, "EURUSD" den bir değer almak, ardından diğer para birimlerine göre düşükten yükseğe doğru artan bir sıralama yapmak ve ardından düşük sıralamaları ekrana getirmektir. EURUSD diğer para birimleri gibi bana sadece bir 0.00 verir misin? Burada neyi yanlış yapıyorum?