Düşük ve Yüksek - sayfa 2

 

ne kadar ileri giderim Bars-1 sayısı nedir?

 
if(Hour() == 17 && gethighlows == doğru)
{
gethighlows = yanlış;
HighValue=Yüksek[ iEn Yüksek (NULL,15,MODE_HIGH,8,1)]; // 15.00-17.00 arası 8 M15 bar
LowValue=Düşük[iDüşük(NULL,15,MODE_LOW,8,1)]; // 15.00-17.00 arası 8 M15 bar
}
 
fxcourt :
if(Hour() == 17 && gethighlows == doğru)
{
gethighlows = yanlış;
HighValue=Yüksek[ iEn Yüksek (NULL,15,MODE_HIGH,8,1)]; // 15.00-17.00 arası 8 M15 bar
LowValue=Düşük[iDüşük(NULL,15,MODE_LOW,8,1)]; // 15.00-17.00 arası 8 M15 bar
}

Çalışmıyor! Gerçekten ne yapacağımı bilmiyorum...

 
01005379 :

[...]

Çalışmıyor! Gerçekten ne yapacağımı bilmiyorum...

Ne şekilde çalışmıyor? Değerler yanlış mı? Hiç hesaplanmıyorlar mı?

 
jjc :

Ne şekilde çalışmıyor? Değerler yanlış mı? Hiç hesaplanmıyorlar mı?

Anlayamıyorum. Fiyat HighValue'dan daha büyük olduğunda satın alma açmak ve satmak için tam tersi emrim var.

Bu değerleri monitöre nasıl yazabilirim? Print("Yüksek değer: ",YüksekDeğer);

Bu değerlerin ne olduğunu bulmanın tek yolu bu sanırım ama 15.00 ile 17.00 arasında yüksek/düşük değiller.

 
m15 grafiği mi kullanıyorsunuz?
 

Evet. Bence en iyisi buraya kod koymak ve sonra belki biri bir çözüm bulur.


if(Hour() == 17 && gethighlows == doğru)
{
gethighlows = yanlış;
TopRange=Yüksek[iEn Yüksek(NULL,15,MODE_HIGH,8,1)]; // 15.00-17.00 arası 8 M15 bar
LowRange=Düşük[iDüşük(NULL,15,MODE_LOW,8,1)]; // 15.00-17.00 arası 8 M15 bar
}

//-----

if (Saat() ==0 && (Dakika()==0 && (Saniye()==1)))
{
Üst Aralık=0;
DüşükAralık=0;
satın alındı=yanlış;
satıldı=yanlış;
sessionfound=false;
}
//-----
bool TradeDayOK=(DayOfWeek()>=1) && (DayOfWeek()<=5);
if ((DayOfWeek()==1) && (Trade_on_Monday==true)) TradeDayOK=true;

//-----
toplam=SiparişToplam();
if(toplam<1)
{
if(AccountFreeMargin()<(1000*Lots))
{
Print("Paramız yok. Serbest Marj = ", AccountFreeMargin());
dönüş(0);
}
if(newbar==Zaman[0])dönüş(0);
başka newbar=Zaman[0];

if(Ticaret GünüTamam)
{
if(sessionfound && ( ((Saat()>=17) && (Dakika()>15) && Saat()<=23)
{
if ((satın alındı==yanlış) && (Düşük[1] > (TopRange+Point*3)))
{
OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-(StopLoss*Point),Ask+(PakeProfit*Puan),0,0,Mavi);
satın alındı=doğru;
if(bilet>0)
{
if(OrderSelect(bilet,SELECT_BY_TICKET,MODE_TRADES)) Print("SATIN AL emri açıldı : ",OrderOpenPrice());
}
else Print("SATIN AL emri açılırken hata oluştu : ",GetLastError());
dönüş(0);
}
if ((sold==false) && (Yüksek[1] < (LowRange-Point*3) ))
{
OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+(StopLoss*Point),Bid-(PakeProfit*Point),0,0,Kırmızı);
satıldı=doğru;
if(bilet>0)
{
if(OrderSelect(bilet,SELECT_BY_TICKET,MODE_TRADES)) Print(" SAT emri açıldı : ",OrderOpenPrice());
}
else Print("SATIŞ emrini açarken hata: ",GetLastError());
dönüş(0);
}
dönüş(0);
}
dönüş(0);
}
}

 
peki ea'yı çalıştırdığınızda ne olur?
 
Alım satım pozisyonları açar ama doğru seviyelerde değil.
 
01005379 :

Evet. Bence en iyisi buraya kod koymak ve sonra belki biri bir çözüm bulur.


if(Hour() == 17 && gethighlows == doğru)
{
gethighlows = yanlış;
TopRange=Yüksek[iEn Yüksek(NULL,15,MODE_HIGH,8,1)]; // 15.00-17.00 arası 8 M15 bar
LowRange=Düşük[iDüşük(NULL,15,MODE_LOW,8,1)]; // 15.00-17.00 arası 8 M15 bar
}

//-----

if (Saat() ==0 && (Dakika()==0 && (Saniye()==1)))
{
Üst Aralık=0;
DüşükAralık=0;
satın alındı=yanlış;
satıldı=yanlış;
sessionfound=false;
}
//-----
bool TradeDayOK=(DayOfWeek()>=1) && (DayOfWeek()<=5);
if ((DayOfWeek()==1) && (Trade_on_Monday==true)) TradeDayOK=true;

//-----
toplam=SiparişToplam();
if(toplam<1)
{
if(AccountFreeMargin()<(1000*Lots))
{
Print("Paramız yok. Serbest Marj = ", AccountFreeMargin());
dönüş(0);
}
if(newbar==Zaman[0])dönüş(0);
başka newbar=Zaman[0];

if(Ticaret GünüTamam)
{
if(sessionfound && ( ((Saat()>=17) && (Dakika()>15) && Saat()<=23)
{
if ((bought==false) && Sor >= TopRange )

{
OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-(StopLoss*Point),Ask+(PakeProfit*Puan),0,0,Mavi);
satın alındı=doğru;
if(bilet>0)
{
if(OrderSelect(bilet,SELECT_BY_TICKET,MODE_TRADES)) Print("SATIN AL emri açıldı : ",OrderOpenPrice());
}
else Print("SATIN AL emri açılırken hata oluştu : ",GetLastError());
dönüş(0);
}
if ((sold==false) && Bid <= LowRange )
{
OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+(StopLoss*Point),Bid-(PakeProfit*Point),0,0,Kırmızı);
satıldı=doğru;
if(bilet>0)
{
if(OrderSelect(bilet,SELECT_BY_TICKET,MODE_TRADES)) Print("SAT emri açıldı : ",OrderOpenPrice());
}
else Print("SATIŞ emrini açarken hata: ",GetLastError());
dönüş(0);
}
dönüş(0);
}
dönüş(0);
}
}