Sormak! - sayfa 104

 
Kalenzo:
NormalizeDouble(fiyat,Rakamlar) kullanmayı deneyin. Bazen metatrader fiyatı 1.2000 değil 1.20020031023012'dir ve rakamların geri kalanı, bekleyen sipariş verirken metatrader için bir sorundur. NormalizeDouble kullanın ve sorun olmayacak

Çok teşekkürler Kalenzo, şimdi çalışıyor.

 

İşlem günlerini tanımlayın

silindi

Çözüm bulundu!

Merhaba Kodlayıcılar

İşlem günlerini seçmek için EA'ma bir işlev eklemeye çalışıyorum.

İşlem saatleri işlevi iyi çalışıyor.

İşlem saatleri için aşağıdakileri kullanıyorum:

extern string TradingHours = "TİCARET SAATLERİ";

extern bool UseHourTrade = True;

extern int FromHourTrade = 8;

extern int ToHourTrade = 18;

ve daha sonra int başlangıcından sonra:

if (UseHourTrade){

if (!(Hour()>=FromHourTrade && Hour()<=ToHourTrade)) {

Comment("Ticaret zamanı daha gelmedi!");

dönüş(0);

Ancak işlem günlerini seçmek için ne gereklidir?

Extern'i aşağıdaki gibi tanımladığımda:

extern string TradingDays = "TİCARET Günleri";

extern bool UseDayTrade = True;

extern int FromDayTrade = DayOfWeek ;

extern int ToDayTrade = DayOfWeek ;

sonra iki mesajı takip ettim:

' DayOfWeek ' değişkeni bekleniyor

ne yapmalı?

Biri bana yardım edebilir mi?

herhangi bir yardım için teşekkürler

 

GURU!!! Lütfen YardımPpp

Boşver.....

 

Lütfen herkese yardım edin

Bir sorunum vardı, sadece 1 pozisyonu nasıl açık ve 2 tane beklemede yapacağım.

Buy ve Buystop , Sellstop diyelim.

daha önce mql4'te birinden bir bilgi almıştım, o kullanıyor:

if(buystoporder>0 && sellstoporder>0)return(0);

ve ondan önce, switch(OrderType()) kullanır.

Kafam karıştı, kodu nerede değiştirmem gerekiyor?

Kodu değiştirdiğimde birkaç kez buystop ve sellstop'ta sonlandırıldım, değilse, biri tetiklenene kadar bekler, SL veya TP'lerine ulaşır ve ardından yeni bir 2'yi beklemede tutar.

Hedefim 1 açık ve 2 beklemede, bu nedenle açık SL veya TP'ye ulaştığında, bekleyenlerden biri tetiklenir, tetiklenmez biri silinir. ve başka bir 2 beklemede olun.

ve switch() seçeneğine sihirli sayı koymak mümkün müdür?

Yardımın için çok teşekkürler.

 

Mevcut çubuktan önceki 5 çubuk içinde 2 hareketli ortalamanın geçip geçmediğini kontrol etmek için kolay bir ifade nedir? Bu konuda bana yardımcı olabilecek var mı??

Dave

-VEYA-

5 koşullu ifadeyi nasıl ifade edersiniz? 5'i de kabul edilebilirse, satın alma değeri=1 belirtilir.

Aşağıda bunun işe yarayıp yaramadığını bilmiyorum??: Biri bunun işe yarayıp yaramayacağı konusunda yorum yapabilir mi, değilse nasıl belirtilmelidir??

if(Koşul1)

if(Koşul2)

if(Koşul3)

if(Koşul4)

if(Koşul5)

{

satınalma değeri=1;

}

Dave

 
if(Condition1)

if(Condition2)

if(Condition3)

if(Condiition4)

if(Condition5)

{

buyvalue=1;

}

Bu, çok koşullu testler yazmanın en ekonomik ve en hızlı yoludur.

En hızlıdır çünkü koşul1 doldurulmazsa, koşul 2, 3, ... değerlendirilmez, aralarına "&&" operatörünü koyarsanız durum böyle değildir.

Bu nedenle, en olası olmayan durumla başlayın.

Yani bu şüphesiz işe yarayacaktır.

Şimdi, sık sık bir şeyin işe yarayıp yaramayacağını sorduğunuz için, en iyisi denemektir, bu da öğrenmek için iyi bir yoldur.

Şerefe.

 
Dave137:
Mevcut çubuktan önceki 5 çubuk içinde 2 hareketli ortalamanın geçip geçmediğini kontrol etmek için kolay bir ifade nedir? Bu konuda bana yardımcı olabilecek var mı?? Dave

ma1_0 = iMA(....,0);

ma2_0 = iMA(....,0);

ma1_5 = iMA(....,5);

ma2_5 = iMA(....,5);

if((ma1_0 - ma2_0) * (ma1_5 - ma2_5) < 0) cross = true;
 

Nasıl yapabilirim...

Merhaba,

Lütfen bana gösterebilir misin, nasıl derim:-

"önceki pozisyon mum "0" veya mum "1" üzerinde kapandıysa, aynı mum üzerinde başka bir pozisyon açmayın." veya "0" mumu başka bir pozisyon açmak için gerekli koşulları sağlasa bile... o mumda önceki pozisyon kapandıysa ve başka bir pozisyon açmasını engelliyorsa, koşulların tekrar doğru olmasını bekleyin.

İngilizce söyleyebilirim ama hala mql4 için biraz fazla yeniyim.

Teşekkürler

amatör tüccar

 

Aşağıdaki kod parçacığını kullanabilirsiniz:

bool last_order_closed_rather_recently = false;

for ( int i = OrdersHistoryTotal() - 1; i >= 0;i-- ) {

if ( ! OrderSelect( i, SELECT_BY_POS, MODE_HISTORY ) ) continue;

if ( OrderCloseTime() >= Time[ 1 ] ) {

last_order_closed_rather_recently = true;

break;

}

}

[/PHP]

after which you have the bool variable "last_order_closed_rather_recently" telling whether there was an order closed after the opening of bar 1. Then somewhere you'd have:

[PHP]if ( last_order_closed_rather_recently ) return( 0 );

Yeni bir ticarete girmeden önce.

 

Teşekkür ederim efendim, çok makbule geçti.