Kodlama yardımı - sayfa 422

 
Mastercash:
Para yönetimini kullan öğesini false olarak ayarladım.... ama Lot parametreleriyle ilgili, Lotlarla değil, açık siparişlerin sayısıyla ilgili. , bu yüzden giriş parametrelerinde NumberofTrades parametresini 5'e ayarladım ama yine de bana cüret edecek ve 5'ten fazla emir alacak, dolayısıyla para yönetimimi tehdit edecek!

ana para

Bu, test etmenin bir sonucudur:

Gördüğünüz gibi aynı sembol ve aynı sihirli sayı için aynı anda 5'ten fazla sipariş açmadı.

Dosyalar:
5_test.gif  87 kb
 

tamam, görebiliyorum...Farklı semboller için 5'ten fazla emir almasını istemiyorum....örnek, diyelim ki son 20 dakika içinde 10 sembolden alım satım sinyali var.... sadece ilk 5 işlem sinyali, daha sonra bu beş emirden herhangi biri kapandığında, çeşitli sembollerdeki mevcut emirlerin 5'i geçmediğinden emin olarak bir tane daha alabilir. aynı sembolden 5 aynı emir alır ki bu da yanlıştır.

mladen:
ana para

Bu, test etmenin bir sonucudur:

Gördüğünüz gibi aynı sembol ve aynı sihirli sayı için aynı anda 5'ten fazla sipariş açmadı.
 
Mastercash:
tamam, görebiliyorum...sadece farklı semboller için 5'ten fazla emir almasını istemiyorum....örneğin, diyelim ki son 20 dakika içinde 10 sembolden alım satım sinyali var... sadece ilk 5 işlem sinyali, daha sonra bu beş emirden herhangi biri kapandığında, çeşitli sembollerdeki mevcut emirlerin 5'i geçmediğinden emin olarak bir tane daha alabilir. aynı sembolden 5 aynı emir alır ki bu da yanlıştır.

Tüm semboller üzerinde maksimum 5 sıra olmasını istiyorsanız, 144. satıra gidin ( if( OrderSymbol() != Symbol() ) devam; ) ve silin. Ve tüm sembollerdeki tüm örnekler için sihirli sayıyı aynı tutun (böylece tüm sembollerde yalnızca bu EA tarafından açılan siparişleri sayabilir)

 

Merhaba Mladen

Daha yüksek bir TF'ye ayarlandığında canlanmayan güzel bir indi'm var.

Grafikte gördüğünüz gibi edit yapmadığımda takılı kalıyor. Bu sorunu çözmek için yardımcı olabilir misiniz?

Göstergeyi ve ekran görüntüsünü ekliyorum

 
wolfsch:
Merhaba Mladen

Daha yüksek bir TF'ye ayarlandığında canlanmayan güzel bir indi'm var.

Grafikte gördüğünüz gibi edit yapmadığımda takılı kalıyor. Bu sorunu çözmek için yardımcı olabilir misiniz?

Göstergeyi ve ekran görüntüsünü ekliyorum

kurtçuk

Bu yalnızca görsel geri testte olabilir (bu, meta tüccarın en az 7-8 ay boyunca düzeltmediği bir hatadır ve göstergeden değil meta tüccarın hatasıdır) ve görsel olarak geriye dönük test edildiğinde tüm çoklu zaman çerçevesi göstergelerinde olur

Normal kullanımda sorunsuz çalışıyor (her ihtimale karşı şu anda test edildi ve her şey normal grafiklerde çalışması gerektiği gibi çalışıyor)

 

Teşekkürler, bunun üzerinde çalışacağım, size geri döneceğim......

mladen:
Tüm semboller üzerinde maksimum 5 sıra olmasını istiyorsanız, 144. satıra gidin ( if( OrderSymbol() != Symbol() ) devam; ) ve silin. Ve tüm sembollerdeki tüm örnekler için sihirli sayıyı aynı tutun (böylece tüm sembollerde yalnızca bu EA tarafından açılan siparişleri sayabilir)
 
mladen:
TFI

Tampon 3 doğru olandır (yani, yukarı eğim için 1 ve aşağı eğim için -1 değerlerine sahip "trend" tamponudur). 1. ve 2. vardiyaları kullanıyorsunuz, dolayısıyla 1. kapalı çubuğu test ediyor.

Kodun bir kısmını satın alın tamamdır.

dışarıda bıraktın

if(trendc!=trendp)

size bir soruna neden olabilecek satış bölümünden karınca

Merhaba Mladen,

yardımcı olduğun için çok teşekkür ederim. kodu ona göre değiştirdim

önerinize göre, işlem sorunsuz, pip hesaplaması da iyi.

Ama şimdi artık kısa vadeli işlemler açmıyor (bir strateji de olabilir ;-)).

Sadece uzun pozisyonları kapatıyor.

Lütfen bir kez daha tavsiye verebilir misiniz?

extern double maxshorttrades = 2;

extern double maxlongtrades = 2;

//+-----------------------------------------------------+

//| BUY |

//+-----------------------------------------------------+

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

if(OrderType()==OP_BUY && OP_BUY<maxlongtrades) break; // Check Traded Positions.

{

if(trendc!=trendp)

{

if(trendc==1 && (CCIFilter<80)) // code for buy

OpenBuy();

return(0);

}

openedOrders++;

}

//+----------------------------------------------------+

//| SELL |

//+----------------------------------------------------+

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

if(OrderType()==OP_SELL && OP_SELL<maxshorttrades) break; // Check Traded Positions.

{

if(trendc!=trendp)

{

if(trendc==-1 && (CCIFilter>80)) // code for sell

OpenSell();

return(0);

}

openedOrders++;

}

}

Ayrıntılar için lütfen ekteki ekran görüntüsüne bakın.

Şimdiden teşekkür ederim!

Saygılarımızla,

TFI

Dosyalar:
backtest.jpg  163 kb
 
tfi_markets:
Merhaba Mladen,

yardımcı olduğun için çok teşekkür ederim. kodu ona göre değiştirdim

önerinize göre, işlem sorunsuz, pip hesaplaması da iyi.

Ama şimdi artık kısa vadeli işlemler açmıyor (bir strateji de olabilir ;-)).

Sadece uzun pozisyonları kapatıyor.

Lütfen bir kez daha tavsiye verebilir misiniz?

extern double maxshorttrades = 2;

extern double maxlongtrades = 2;

//+-----------------------------------------------------+

//| BUY |

//+-----------------------------------------------------+

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

if(OrderType()==OP_BUY && OP_BUY<maxlongtrades) break; // Check Traded Positions.

{

if(trendc!=trendp)

{

if(trendc==1 && (CCIFilter<80)) // code for buy

OpenBuy();

return(0);

}

openedOrders++;

}

//+----------------------------------------------------+

//| SELL |

//+----------------------------------------------------+

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

if(OrderType()==OP_SELL && OP_SELL<maxshorttrades) break; // Check Traded Positions.

{

if(trendc!=trendp)

{

if(trendc==-1 && (CCIFilter>80)) // code for sell

OpenSell();

return(0);

}

openedOrders++;

}

}

Ayrıntılar için lütfen ekteki ekran görüntüsüne bakın.

Şimdiden teşekkür ederim!

Saygılarımızla,

TFI

TFI

Bunun gibi bir şey deneyin:

extern double maxshorttrades = 2;

extern double maxlongtrades = 2;

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

//

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

int clongs = 0;

int cshorts = 0;

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

{

if(OrderType()==OP_BUY) clongs++; // Check Long Traded Positions.

if(OrderType()==OP_SELL) cshorts++; // Check Short Traded Positions.

}

if(trendc!=trendp)

{

if(clongs < maxlongtrades && trendc== 1 && (CCIFilter<80)) OpenBuy();

if(cshorts 80)) OpenSell();

// Check the CCI condition

// it is not symetrical to buy condition

}

 

mladen,

144 numaradaki değişikliği yaptım ve sihirli sayı olan "MagicNumber"ı sembol örnekleri arasında birleştirdim...Artık bir seferde maksimum 5 işlem alıyor ama şimdi aynı sembol üzerindeki işlemleri aynı anda tekrarlıyor örneğin, EURUSD üzerinde bir SATIŞ ticaret sinyali alırsa, EURUSD satış emrini 5 kez verir. Şu şekilde aldığı canlı siparişin görüntüsüne bakın:

Mastercash:
Teşekkürler, bunun üzerinde çalışacağım, size geri döneceğim......
Dosyalar:
apcorrimage.png  39 kb
 
Mastercash:
mladen, 144 numaradaki değişikliği yaptım ve sihirli sayı olan "MagicNumber"ı sembol örnekleri arasında birleştirdim...Artık bir seferde en fazla 5 işlem alıyor, ancak şimdi aynı sembolde işlemleri tekrarlıyor aynı zamanda, örneğin EURUSD üzerinde bir SATIŞ ticaret sinyali alırsa, bu EURUSD satış emrini 5 kez verir. Şu şekilde aldığı canlı siparişin görüntüsüne bakın:

Bu, o kod kısmına bağlı değil

Aynı çubukta ve aynı sembolde bir sipariş açmamak için kodun geri kalanına bir çek eklemelisiniz.