Nasıl kodlanır? - sayfa 201

 

Bu sonuçlar nasıl iyileştirilir?!

Merhaba,

Geri testte kısmen güzel sayılar gösteren ilk EA'mı yazıyorum. Ancak, kötü kısımları nasıl iyileştireceğimi anlayamıyorum.

İlk olarak, %86 gibi yüksek bir kazanma yüzdesine sahiptir, ancak yalnızca küçük bir kâr faktörüne sahiptir, çünkü kaybeden işlemler, kazananların kazandığından çok daha fazlasını kaybeder!

İşlem başına hesap bakiyesinin %5'inden fazlasını kullanmayan bir MM'im var ve tüm aktif işlemlerde hesap bakiyesinin %11'inden fazlası kullanılamıyor. Ayrıca tüm durdurma kayıplarını takip ediyorum.

Görünüşe göre kazanan işlemleri çok erken kapatıyorum (OrderClose) ve kaybeden işlemleri çok geç kesiyorum (veya S/L).

Bunun için iyi bir strateji nedir? "Yakın alım sinyali olsa bile kazanan işlemleri kapatmayın" gibi bir şey uyguladım ama bu da daha iyi sonuç vermedi!

Herhangi bir ipucu için minnettar olurum! Raporun tamamı burada bulunabilir.

 

Her manuel işlem için 3 pip TP eklemenin en kolay yolu?

Manuel olarak girilen her ticaret için forex'te 3 pip kâr alma eklemem gerekiyor. Bunu yapmanın en kolay yolu nedir? programlama becerim yok ve metatrader 4'ün seçeneklerinde ayarlanacak herhangi bir varsayılan değer bulamıyorum.

 

Satın alma durdurma emrini sıfırlama

Merhaba,

Bu kodu yazdım ve derlemesine rağmen çalışmıyor. (Yani buystop'u silmez)

"For" ifadesinde yanlış bir şeyler olabileceğini düşünüyordum ama oldukça yeniyim, bu yüzden emin değilim.

Birisi beni soruna yönlendirebilirse, gerçekten minnettar olurum.

Teşekkürler

if( StopResetMinutes > 0)

{

total = OrdersTotal();

if(total>0)

for(i=0;i<total;i++)

{

OrderSelect(i, SELECT_BY_POS, MODE_TRADES);

if(OrderType()==OP_BUY && OrderSymbol()==Symbol())

{

if((TimeCurrent() - OrderOpenTime()) /60 > StopResetMinutes ) OrderDelete(OrderTicket());

{

if(PrintComments) Print("Buy Stop Deleted.");

}

}

}

}

 
asgard2:
Merhaba,

Bu kodu yazdım ve derlemesine rağmen çalışmıyor. (Yani buystop'u silmez)

"For" ifadesinde yanlış bir şeyler olabileceğini düşünüyordum ama oldukça yeniyim, bu yüzden emin değilim.

Birisi beni soruna yönlendirebilirse, gerçekten minnettar olurum.

Teşekkürler

if( StopResetMinutes > 0)

{

total = OrdersTotal();

if(total>0)

for(i=0;i<total;i++)

{

OrderSelect(i, SELECT_BY_POS, MODE_TRADES);

if(OrderType()==OP_BUY && OrderSymbol()==Symbol())

{

if((TimeCurrent() - OrderOpenTime()) /60 > StopResetMinutes ) OrderDelete(OrderTicket());

{

if(PrintComments) Print("Buy Stop Deleted.");

}

}

}

}

[/code]

[KOD] if( StopResetMinutes > 0)

{

toplam = SiparişlerToplam();

if(toplam>0)

for(i=0;i<toplam;i++)

{

OrderSelect(i, SELECT_BY_POS, MODE_TRADES);

if(OrderType()== OP_BUYSTOP && OrderSymbol()==Symbol())

{

if((TimeCurrent() - OrderOpenTime()) /60 > StopResetMinutes )

{

OrderDelete(OrderTicket());

if(PrintComments) Print("Satın Alma Durağı Silindi.");

}

}

}

}
 
asgard2:
Merhaba,

Bu kodu yazdım ve derlemesine rağmen çalışmıyor. (Yani buystop'u silmez)

AL veya SATIŞ emirlerini kapatmak istiyorsanız OrderClose() fonksiyonunu kullanmanız gerekir.

 
okfar:

if(OrderType()== OP_BUYSTOP && OrderSymbol()==Symbol())

{

if((TimeCurrent() - OrderOpenTime()) /60 > StopResetMinutes )

{

OrderDelete(OrderTicket());

if(PrintComments) Print("Buy Stop Deleted.");

}

}

}

}

Biliyorsunuz iki gündür bunun üzerinde çalışıyorum ve siz birkaç saniyede çözdünüz..

Teşekkürler Teşekkürler Teşekkürler.. Teşekkürler ve Teşekkürler..

Umarım minnettarım çünkü heyecanlıyım!

şerefe

 

Sayın Baylar ve Bayanlar,

Sanırım basit bir sorum var.

Beni bir açılır pencere (uyarı) ile bilgilendiren bir göstergem var ve özel bir ses eklemek istedim (standart alert.wav dışında).

Olay gerçekleştiğinde ve uyarı göründüğünde, göstergede programladığım "özel" ses ne olursa olsun, Metatrader 4'ün DAİMA uyarı için atadığım sesi çalacağını fark ettim (varsayılan bu alert.wav'dır, MT4 menüsüne bakın Araçlar>Seçenekler>Olaylar).

Göstergeyi hem görsel uyarı hem de özel atanmış sesli uyarı alacak şekilde programlamak mümkün mü?

Şimdiden çok teşekkürler..!

 

Aslında, herhangi bir sesi alıp alarm.wav olarak adlandırabilir ve orijinal dosyayı değiştirebilirsiniz.

 

Özel Uyarıyı Değiştirme

Snowski:
Sayın Baylar ve Bayanlar,

Sanırım basit bir sorum var.

Beni bir açılır pencere (uyarı) ile bilgilendiren bir göstergem var ve özel bir ses eklemek istedim (standart alert.wav dışında).

Olay gerçekleştiğinde ve uyarı göründüğünde, göstergede programladığım "özel" ses ne olursa olsun, Metatrader 4'ün DAİMA uyarı için atadığım sesi çalacağını fark ettim (varsayılan bu alert.wav'dır, MT4 menüsüne bakın Araçlar>Seçenekler>Olaylar).

Göstergeyi hem görsel uyarı hem de özel atanmış sesli uyarı alacak şekilde programlamak mümkün mü?

Şimdiden çok teşekkürler..!

Merhaba Snowski,

Denemek............

if (alert_ON == true) // sesli uyarıyı açmak veya kapatmak için

{

Uyarı ("Anahtarınızı burada özel olarak açılır",Symbol(),"-",TimeFrame);

PlaySound("özel.wav");

}

Kodlamada pek iyi değilim ama bunu çalışması gerektiği gibi deneyebilirsiniz. özel .wav, kendi dosya adınızı ("??????.wav") içine girebilirsiniz.

uyarıyı açıp kapatabilmek istiyorsanız, şunu da eklemeniz gerekir.

extern bool alert_ON = Doğru; // veya gösterge kodunuzun başında false

 

Geçmiş işlevi

Merhaba,

Aşağıda bu kod var. Silinmeleri durumunda buystop siparişlerim arasında bir gecikme uygulamaya çalışıyorum. Daha önce geçmiş işlevini hiç kullanmadım.

Dengesiz bir parantez hatası nedeniyle derleyemiyorum, bunların neden dengesiz olduğunu biri bana söyleyebilir mi?

Ayrıca, biri bana doğru yolda olup olmadığımı veya bunu yapmanın başka bir yolunu aramam gerekip gerekmediğini söyleyebilir mi?

if ((type == _OP_BUYSTOP) && (MayOpenDeferOrder && NextBuyStop_Order_Minutes !=0))//Time Delay for the next Buy Stop Order

int hstTotal=OrdersHistoryTotal();

for(i=0;i<hstTotal;i++)

{

if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)==false)

Print("Access to history failed (",GetLastError(),")"); break;

{

if (OrderDelete() && (((TimeCurrent() - OrderCloseTime())/60) =< NextBuyStop_Order_Minutes) MayOpenDeferOrder = false;

}

}

teşekkürler

Neden: