Sormak! - sayfa 71

 

Sorulan ve Cevaplanan

Herkese selam,

Cevaplarımı aşağıdaki kodla aldığımı sanıyordum:

double range[5];

for(int i=1;i<5;i++)

{

range={High-Low};

int Max=ArrayBsearch(range,10,WHOLE_ARRAY,1,MODE_ASCEND);

double MaxRange=(High[Max]-Low[Max])/Point;

}

Print("Max Range: ",MaxRange," found at index: ",Max);

Ancak yine de en büyük aralık dizini değil, yalnızca son dizini döndürür.

Başka herhangi bir yardım takdir edilecektir.

saksofoncu

 

Hata Düzeltildi

SaxMan:
Herkese selam,

Cevaplarımı aşağıdaki kodla aldığımı sanıyordum:

double range[5];

for(int i=1;i<5;i++)

{

range={High-Low};

int Max=ArrayBsearch(range,10,WHOLE_ARRAY,1,MODE_ASCEND);

double MaxRange=(High[Max]-Low[Max])/Point;

}

Print("Max Range: ",MaxRange," found at index: ",Max);

[/code]

But it still just returns the last index not the largest range index.

Any further help would be appreciated.

SaxMan

İşte düzeltme:

[kod]

çift aralık[5];

for(int i=1;i<5;i++)

{

aralık={Yüksek-Düşük};

int Maks=ArrayMaksimum(aralık);

double MaxRange=(Yüksek[Max]-Düşük[Max])/Nokta;

}

Print("Max Range: ",MaxRange," dizinde bulundu: ",Max);

Bu, herhangi bir değişkeni karşılaştırmak için dizinin en yüksek/en düşük değerini (ArrayMinimum(range) kullanarak) elde etmek için kullanılabilir.

Bu yardımcı olur umarım,

saksofoncu

 

Eklerle aynı Kod

Katma:

* Minimum menzil

* Maks ve Min aralık çubuklarını vurgulamak için Dikey Çizgiler :

double range[2000];

for(int i=1;i<2000;i++)

{

range={High-Low};

int Max=ArrayMaximum(range,WHOLE_ARRAY,1);

int Min=ArrayMinimum(range,WHOLE_ARRAY,1);

double MaxRange=(High[Max]-Low[Max])/Point;

double MinRange=(High[Min]-Low[Min])/Point;

}

Print("Max Range: ",MaxRange," pips found at index: ",Max);

Print("Min Range: ",MinRange," pips found at index: ",Min);

int time1=Time[Max];

int time2=Time[Min];

ObjectCreate("stats1",OBJ_VLINE,0,0,0);

ObjectSet("stats1", OBJPROP_TIME1, time1);

ObjectSet("stats1", OBJPROP_COLOR, Red);

ObjectSet("stats1", OBJPROP_WIDTH, 1);

ObjectCreate("stats2",OBJ_VLINE,0,0,0);

ObjectSet("stats2", OBJPROP_TIME1, time2);

ObjectSet("stats2", OBJPROP_COLOR, Blue);

ObjectSet("stats2", OBJPROP_WIDTH, 1);
 

Kod uyumlu, ancak değeri göstermiyor

harici Bool Direction_Up=true;

if(Direction_Up==true) Dir="UP"; ///////////Bu yanlış dönüştürmedir - Bunu doğru sözdizimine nasıl dönüştürebilirim????

ObjectCreate("Dir", OBJ_LABEL , 0, 0, 0);

ObjectSetText("Dir", 10, "Arial", Beyaz);///////////Bu yanlış - Ekranda YUKARI görünmesini nasıl sağlayabilirim????

ObjectSet("Dir", OBJPROP_CORNER, 1);

ObjectSet("Dir", OBJPROP_XDISTANCE, 36);

ObjectSet("Dir", OBJPROP_YDISTANCE, 120);///

Dave <<<
 

Merhaba,

int start()

{

int i;

if ((Year() >= X) && (Month() >= Y))

{

Comment("===========",expired,"===========");

return(0);

}

GetPosition = StrToTime(StrGetPosition);

StartOrderTime = StrToTime(StrStartOrderTime);

EndOrderTime = StrToTime(StrEndOrderTime);

return(0);

Sorum şu:

GetPosition nedir, StartOrderTime, EndOrderTime yürütülecek mi?

Şerefe

 

sorular

Merhaba,

Bir arkadaşım bana bu siteden bahsetmişti. Bana en iyi mql programcılarına sahip olduklarını söyledi.

Işte bir tane:

Örneğin 15:30'da satın almak için bir kod ayarladıysam (çoğu haber saatinde), ekonomik takvime baktım.

if (Hour()==15)

{

if (Minute()>=30)

{

if (Seconds()>=00)

[/PHP]

After this, something like this goes:

[PHP]

OrderSend(Symbol().......................

Herkes farklı yazıyor hehe.

Neden aynı olamıyor?

Tamam, işte anlaşma. Yukarıdaki kod için, OrderSend........ ve devam eden kısmın 15:30:00'daki fiyatın 30 pip üzerinde bir BuyStop ve 15:30'daki fiyatın altında bir SellStop 25 pip'i oluşturmasını istiyorum: 00.

En yakın arkadaşıma sordum, o da size sormamı söyledi. Bu yüzden, gerçekten çok yardımcı olduğunuzu umuyorum.

Bu kodu bulmak için haftalarca uğraştım. Şaka yapmıyorum. Peki, mql 4'te kodlama yapan biri bana yardım edecek mi?

---Julia---

 
iscuba11:
harici Bool Direction_Up=true;

if(Direction_Up==true) Dir="UP"; ///////////Bu yanlış dönüştürmedir - Bunu doğru sözdizimine nasıl dönüştürebilirim????

ObjectCreate("Dir", OBJ_LABEL, 0, 0, 0);

ObjectSetText("Dir", 10, "Arial", Beyaz);///////////Bu yanlış - Ekranda YUKARI görünmesini nasıl sağlayabilirim????

ObjectSet("Dir", OBJPROP_CORNER, 1);

ObjectSet("Dir", OBJPROP_XDISTANCE, 36);

ObjectSet("Dir", OBJPROP_YDISTANCE, 120);///

Dave <<<

Merhaba Iscuba11,

düzeltme ve açıklama için koda bakın

extern bool Direction_Up=true; //-- bool with a lower case "b"

string Dir; //-- Dir has to be declared as a string

if(Direction_Up==true) Dir="UP";

ObjectCreate("Dir", OBJ_LABEL, 0, 0, 0);

ObjectSetText("Dir",Dir, 10, "Arial", White); // -- you left out the text to print - you named the object only.

ObjectSet("Dir", OBJPROP_CORNER, 1);

ObjectSet("Dir", OBJPROP_XDISTANCE, 36);

ObjectSet("Dir", OBJPROP_YDISTANCE, 120);

Bu yardımcı olur umarım,

saksofoncu

 

Haftalar?!

MQL4: MetaTrader ile otomatik forex ticareti, strateji test cihazı ve özel göstergeler

OrderSend() için arama - dokümanlar

Alıntı

SiparişGönder - MQL4 Belgeleri

int OrderSend( dize sembolü, int cmd, çift hacim, çift fiyat, int kayma, çift stoploss, çift kâr alma, dize yorumu=NULL, int magic=0, datetime son kullanma=0, color arrow_color=CLR_NONE)

sembol - Ticaret için sembol.

cmd - İşlem türü. Ticaret işlemi numaralandırmasından herhangi biri olabilir.

hacim - Parti sayısı.

fiyat - İşlemin tercih edilen fiyatı.

kayma - Alış veya satış emirleri için maksimum fiyat kayması.

stoploss - Zarar seviyesini durdur.

takeprofit - Kar seviyesini al.

yorum - Yorum metni sipariş edin. Yorumun son kısmı sunucu tarafından değiştirilebilir.

büyü - Sihir numarası sipariş edin. Kullanıcı tanımlı tanımlayıcı olarak kullanılabilir.

sona erme - Siparişin sona erme süresi (yalnızca bekleyen siparişler için).

ok_color - Grafikteki açılış okunun rengi. Parametre eksikse veya CLR_NONE değerine sahipse grafikte açma oku çizilmez.

Yani bizim durumumuzda buna sahibiz:

OrderSend(Symbol(),OP_BUYSTOP,0.1,Ask+30*Point,3,0,0,NULL,1,0); OrderSend(Symbol(),OP_SELLSTOP,0.1,Bid-25*Point,3,0,0,NULL,1,0);

İşte bu!

Stoploss yok, Takeprofit yok.

Lütfen unutmayın: komisyoncunuz (büyük olasılıkla) 15:30'da yeni siparişleri kabul etmeyecek, bunun hakkında hayal bile kurmayın. Evet, demoda çalışacak ama gerçek hesapta değil - haberlerden en geç 5 dakika önce ve haberlerden en az 3 dakika sonra.

Arama motorlarını kullanın

Google

Yahoo!

ve diğerleri.

not:

senin için bir EA yazmamı istersen, bana PM at.

 

Kod düzeltmesi ile günümü ve hafta sonumu yaptın. Çok teşekkür ederim!

Hafta sonunuz bereketli olsun!

Samimi olarak,

Dave

<<<