Sormak! - sayfa 130

 
Dave137:

Şu anda, hem Renk(ler) 1 hem de 2 grafikte 'siyah' gösteriyor!!

Herhangi bir uzman Guru bu sorunu çözmeme yardım edebilir mi???

Şimdiden teşekkürler!

renk Renk1;

renk Renk2;

FerruFx

 

Lütfen birisi bana "OrderModify hatası 1" probleminden nasıl kurtulabileceğimi açıklayabilir mi? Aradım ve NormalizeDouble()'a ihtiyacım var, ama buradan aya kadar her şeyi normalleştirdim ve hala hatayı alıyorum.

Anladıktan sonra çözebileceğimi düşünüyorum, lütfen biri yardım etsin. Teşekkürler.

Ayrıca "eşsiz veri hatası (31.04.16 07:30'da 31. hacim sınırı aşıldı)" alıyorum, bunun neyle ilgili olduğunu bilen varsa yardım için minnettar olurum.

 
FerruFx:
renk Renk1;

renk Renk2;

FerruFx

SetIndexStyle(0,DRAW_ARROW,0,star_size,color Color1);

SetIndexStyle(1,DRAW_ARROW,0,star_size,color Color2);

Her yere renk eklemeyi denedim, her seferinde bir adım ve deneme ve yukarıdaki iki ifade için bir hata alıyorum - ')' - virgül veya noktalı virgül bekleniyor veya hata yok, ama sonra her şey siyah görünüyor.

Bu gerçekten kafamı karıştırıyor - Başka öneriniz var mı?

Dave

 

@xerof123 - bu hata, açık siparişin sahip olduğu aynı değerlere sahip bir siparişi değiştirmeye çalıştığınızda oluşur. Diğer sorun, farklı zaman dilimleri arasındaki fiyat uyumsuzluklarıdır - onlardan kurtulmak, tüm işaret verilerini Geçmiş Merkezi menüsü aracılığıyla silmek ve yeniden oluşturmak.

@ Dave137 - nereden başlamalı, color1, color2 tipi string olarak tanımlanmış, bunlar color tipindedir. 'Özellikler' tanımındaki 'renk1' anahtar sözcüğünün yalnızca bir değer atadığını unutmayın, bu nedenle daha sonra renk1, renk2'yi tanımladığınızda, bunlar aynı kolaylıkla c1,c2 olarak adlandırılabilir. Yine de init() işlevinde manuel olarak ayarlarken, başlangıçta 'renk1 özelliklerini' kullanmanıza gerek olmadığını unutmayın. Ayrıca, '#property gösterge arabellekleri x' ve 'gösterge arabellekleri(x)'in nasıl kullanılacağına ilişkin diğer göstergeleri kontrol edin...

 

teşekkürler omlet,

Elimden gelen her şeyi denedim, şimdi 6 gündür aralıksız çalışıyorum ve beni yendi...

Lütfen buradaki koda bakıp bana neden sefil "OrderModify hatası 1" aldığımı söyler misiniz?

Normalleştirmeyi denedim, farklı mantık denedim, hatta ona bir bira teklif etmeyi denedim.

yardımın için sağol. teşekkürler

for(int i=OrdersTotal()-1;i>=0;i--)

{

OrderSelect(i,SELECT_BY_POS,MODE_TRADES);

if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber)

{

if(OrderType()<=OP_SEL) ordtotal++;

if(OrderType()==OP_BUY)

{

if(bep==true && Bid-OrderOpenPrice()>=Locked_at*Point)

{

if(OrderModify(OrderTicket(),0,OrderOpenPrice()+7*Point,0,0,0)==true) bep=false;

dönüş(0);

}

if((NormalizeDouble( Bid, Digits)-OrderOpenPrice())>=TS_start*Point)

{

if((NormalizeDouble( Bid, Digits)-NormalizeDouble( OrderStopLoss(), Digits)) > TS_start*Point &&

(NormalizeDouble( Bid, Digits)-NormalizeDouble( OrderStopLoss(), Digits) - TS_start*Point)>=(TrailEvery-1)*Point)

{

if (TS_start > OrderStopLoss()+Point)

{

OrderModify(OrderTicket(),OrderOpenPrice(), Ask - Point*TS_start ,0,0,SkyBlue);

dönüş(0);

}

}

}

}

if(OrderType()==OP_SEL)

{

if(bep==true && OrderOpenPrice()-NormalizeDouble( Sor, Rakamlar) >= Locked_at*Point)

{

if(OrderModify(OrderTicket(),0,OrderOpenPrice()-7*Point,0,0,0)==true) bep=yanlış;

dönüş(0);

}

if((OrderOpenPrice()-NormalizeDouble( Sor, Rakamlar)) >= TS_start*Point)

{

if((NormalizeDouble( OrderStopLoss(), Digits)-NormalizeDouble( Ask, Rakamlar)) > TS_start*Point &&

(NormalizeDouble( OrderStopLoss(), Digits)-NormalizeDouble( Ask, Digits)-TS_start*Point)>=(TrailEvery-1)*Point)

{

if (TS_start > OrderStopLoss() +Nokta)

{

OrderModify(OrderTicket(),OrderOpenPrice(), Ask + Point*TS_start ,0,0,Orange);

dönüş(0);

}

}

}

}

}

}

 
Dave137:
SetIndexStyle(0,DRAW_ARROW,0,star_size,color Color1);

SetIndexStyle(1,DRAW_ARROW,0,star_size,color Color2);

Her yere renk eklemeyi denedim, her seferinde bir adım ve deneme ve yukarıdaki iki ifade için bir hata alıyorum - ')' - virgül veya noktalı virgül bekleniyor veya hata yok, ama sonra her şey siyah görünüyor.

Bu gerçekten kafamı karıştırıyor - Başka öneriniz var mı?

Dave

Hayır yanlış değişiklikler yapıyorsun.

Bunu değiştirmelisiniz:

dize Renk1;

dize Renk2;

Bundan:

renk Renk1;

renk Renk2;

Bu kadar.

FerruFx

 

Mum üst veya alt çizgiye dokunduğunda ve eğim yukarıdan aşağıya veya tersi değiştiğinde bu göstergenin uyarı vermesini nasıl sağlayabilirim?

#özellik telif hakkı "ANG3110@latchess.com"

//-------------------------------------------------

#özellik göstergesi_chart_window

//-------------------------------------------------

harici int Saat=24;

dış renk col=Su;

//------------------

çift lr,lr0,lrp;

çift sx,sy,sxy,sx2,aa,bb;

int p,sName,fs;

int f,f0,f1;

çift dh,dl,dh_1,dl_1,dh_2,dl_2;

int ai_1,ai_2,bi_1,bi_2;

çift hai,lai,dhi,dli,dhm,dlm,ha0,hap,la0,lap;

çift fiyat_p1,fiyat_p0,fiyat_p2,fiyat_01,fiyat_00,fiyat_02;

int p1,p0,p2,fp;

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

int init() {

p=Saat*60/Dönem();

if (fs==0) {sName=CurTime(); fs=1;}

dönüş (0);}

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

int tanım() {

ObjectDelete("1"+sAd);

ObjectDelete("0"+sAd);

ObjectDelete("2"+sAd); }

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

int start() {

int i,n;

//------------------------------------------------ ------------------------------

if (f==1) {

p1=iBarShift(Symbol(),Period(),ObjectGet("1"+sName,OBJPROP_TIME1));

p0=iBarShift(Symbol(),Period(),ObjectGet("0"+sName,OBJPROP_TIME1));

p2=iBarShift(Symbol(),Period(),ObjectGet("2"+sName,OBJPROP_TIME1));

if (fp==0 && p!=p1) {p=p1; fp=1;}

if (fp==0 && p!=p0) {p=p0; fp=1;}

if (fp==0 && p!=p2) {p=p2; fp=1;}

}

//============================================== ====

sx=0; sy=0; sxy=0; sx2=0;

(n=0; n<=p; n++) için {sx+=n; sy+=Kapat[n]; sxy+=n*Kapat[n]; sx2+=MathPow(n,2);}

aa=(sx*sy-(p+1)*sxy)/(MathPow(sx,2)-(p+1)*sx2); bb=(sy-aa*sx)/(p+1);

//------------------------------------------------ ----

for (i=0; i<=p; i++) {

lr=bb+aa*i;

dh=Yüksek-lr; dl=Düşük-lr;

//------------------------------------------------ ----

if (i<p/2) {if (i==0) {dh_1=0.0; dl_1=0.0; ai_1=i; bi_1=i;}

if (dh>=dh_1) {dh_1=dh; ai_1=i;}

if (dl<=dl_1) {dl_1=dl; bi_1=i;}}

//------------------------------------------------ ----

if (i>=p/2) {if (i==p/2) {dh_2=0.0; dl_2=0.0; ai_2=i; bi_2=i;}

if (dh>=dh_2) {dh_2=dh; ai_2=i;}

if (dl<=dl_2) {dl_2=dl; bi_2=i;}}}

//------------------------------------------------------

lr0=bb; lrp=bb+aa*(i+p);

//============================================== ===

if (MathAbs(ai_1-ai_2)>MathAbs(bi_1-bi_2)) f=1;

if (MathAbs(ai_1-ai_2)<MathAbs(bi_1-bi_2)) f=2;

if (MathAbs(ai_1-ai_2)==MathAbs(bi_1-bi_2)) {if (MathAbs(dh_1-dh_2)=MathAbs(dl_1-dl_2)) f=2;}

//============================================== =

if (f==1) {

for (n=0; n<=20; n++) { f1=0;

for (i=0; i<=p; i++) {hai=Yüksek[ai_1]*(i-ai_2)/(ai_1-ai_2)+Yüksek[ai_2]*(i-ai_1)/(ai_2-ai_1);

if (i==0 || i==p/2) dhm=0.0;

if (High-hai>dhm && i<p/2) {ai_1=i; f1=1;}

if (High-hai>dhm && i>=p/2) {ai_2=i; f1=1;} }

eğer (f==0) kırılır;}

//----------------------------

for (i=0; i<=p; i++) {hai=Yüksek[ai_1]*(i-ai_2)/(ai_1-ai_2)+Yüksek[ai_2]*(i-ai_1)/(ai_2-ai_1);

dli=Düşük hai;

if (i==0) dlm=0.0; if (dli<dlm) dlm=dli;}

ha0=Yüksek[ai_1]*(0-ai_2)/(ai_1-ai_2)+Yüksek[ai_2]*(0-ai_1)/(ai_2-ai_1);

hap=Yüksek[ai_1]*(p-ai_2)/(ai_1-ai_2)+Yüksek[ai_2]*(p-ai_1)/(ai_2-ai_1);

//----------------------------

fiyat_p1=hap;

fiyat_p0=hap+dlm/2;

fiyat_p2=hap+dlm;

fiyat_01=ha0;

fiyat_00=ha0+dlm/2;

fiyat_02=ha0+dlm;

}

//============================================== =

eğer (f==2) {

for (n=0; n<=20; n++) { f1=0;

için (i=0; i<=p; i++) {lai=Düşük*(i-bi_2)/(bi_1-bi_2)+Düşük*(i-bi_1)/(bi_2-bi_1);

if (i==0 || i==p/2) dlm=0.0;

if (Low-lai<dlm && i<p/2) {bi_1=i; f1=1;}

if (Düşük-lai=p/2) {bi_2=i; f1=1;}}

eğer (f==0) kırılır;}

//----------------------------

için (i=0; i<=p; i++) {lai=Düşük*(i-bi_2)/(bi_1-bi_2)+Düşük*(i-bi_1)/(bi_2-bi_1);

dhi=Yüksek-lai;

eğer (i==0) dhm=0.0; eğer (dhi>dhm) dhm=dhi;}

la0=Düşük*(0-bi_2)/(bi_1-bi_2)+Düşük*(0-bi_1)/(bi_2-bi_1);

lap=Düşük*(p-bi_2)/(bi_1-bi_2)+Düşük*(p-bi_1)/(bi_2-bi_1);

//------------------------------------------------ ----------------

fiyat_p1=tur;

fiyat_p0=tur+dhm/2;

fiyat_p2=tur+dhm;

fiyat_01=la0;

fiyat_00=la0+dhm/2;

fiyat_02=la0+dhm;

}

//============================================== ===================================

ObjectCreate("1"+sAd,2, 0,Zaman[p],fiyat_p1,Zaman[0],fiyat_01);

ObjectCreate("0"+sAd,2, 0,Zaman[p],fiyat_p0,Zaman[0],fiyat_00);

ObjectCreate("2"+sAd,2, 0,Zaman[p],fiyat_p2,Zaman[0],fiyat_02);

//------------------------------------------------ -----------------

ObjectSet("1"+sName,OBJPROP_COLOR,col);

ObjectSet("1"+sName,OBJPROP_STYLE,STYLE_SOLID);

ObjectSet("0"+sName,OBJPROP_COLOR,col);

ObjectSet("0"+sName,OBJPROP_STYLE,STYLE_DOT);

ObjectSet("2"+sName,OBJPROP_COLOR,col);

ObjectSet("2"+sName,OBJPROP_STYLE,STYLE_SOLID);

ObjectSet("0"+sName,OBJPROP_WIDTH,1); // çizginin genişliğini kontrol et

ObjectSet("1"+sName,OBJPROP_WIDTH,2);

ObjectSet("2"+sName,OBJPROP_WIDTH,2);

//------------------------------------------------

ObjectSet("1"+sAd,OBJPROP_TIME1,Zaman[p]);

ObjectSet("1"+sName,OBJPROP_PRICE1,fiyat_p1);

ObjectSet("1"+sName,OBJPROP_TIME2,Time[0]);

ObjectSet("1"+sName,OBJPROP_PRICE2,fiyat_01);

ObjectSet("0"+sAd,OBJPROP_TIME1,Zaman[p]);

ObjectSet("0"+sAd,OBJPROP_PRICE1,fiyat_p0);

ObjectSet("0"+sName,OBJPROP_TIME2,Time[0]);

ObjectSet("0"+sName,OBJPROP_PRICE2,fiyat_00);

ObjectSet("2"+sAd,OBJPROP_TIME1,Zaman[p]);

ObjectSet("2"+sAd,OBJPROP_PRICE1,fiyat_p2);

ObjectSet("2"+sName,OBJPROP_TIME2,Time[0]);

ObjectSet("2"+sName,OBJPROP_PRICE2,fiyat_02);

//============================================== ==================

f=1; p1=p; p0=p; p2=p; fp=0;

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

dönüş (0);}

//============================================== ====================================

 
xerof123:
teşekkürler omlet,

Elimden gelen her şeyi denedim, şimdi 6 gündür aralıksız çalışıyorum ve beni yendi...

Lütfen buradaki koda bakıp bana neden sefil "OrderModify hatası 1" aldığımı söyler misiniz?

Normalleştirmeyi denedim, farklı mantık denedim, hatta ona bir bira teklif etmeyi denedim.

yardımın için sağol. teşekkürler

Yazdıklarımı tekrar okuyun - önce fiyatların değiştirilmesi gerekip gerekmediğini kontrol etmeden Modify() işlevini çağırıyorsunuz...

 

omlet sorunuzu çok iyi yanıtlamış. Adamın bir azizin sabrına sahip olduğunu söylemeliyim, onu takdir ediyorum.

Umarım bu konuda yaptığı noktayı daha iyi açıklar.

Şimdi temelde söylediğiniz şey, eğer 2 > 1 O zaman X=2'yi değiştirin (değiştirin) ama yaşadığınız problem şu ki X zaten 2'ye eşit, bu yüzden değiştirmek (değiştirmek) istemek yanlış çünkü zaten neye eşit olarak değiştirmeye çalışıyorsunuz.

Sadece değiştirmeye çalıştığınız şeye eşit olmadığını kontrol etmeniz ve sadece değilse değiştirmeye çalışmanız gerekir.

Daha net var mı?

İyi şanlar

Lüks

 

EA'yı ilk kez kullanmak için yardıma ihtiyacınız var.

Sevgili kodlayıcılargurusu,

.mql4 dosyasını uzman klasörüne kopyaladım ve Seçenek bölümünde izin verilen Otomatik ticarete izin verdim, ancak geri testi yaptığımda ticaret yapmıyor. İnternette birkaç ücretsiz EA denedim, sorun her seferinde oldu. Geriye dönük test verilerinin grafikte yüklendiğini görebiliyorum, ancak takas yok, bu nedenle rapordaki tüm rakamlar 0. Yanlış bir şey yapmış olmalıyım, umarım yardımcı olabilirsiniz. Şimdiden teşekkürler.

Saygılarımızla,

jzhai1994

Neden: