EA'm neden tekrar test yaparken negatif kar sağlamaya devam ediyor? - sayfa 2

 
deVries :

Kodunuzu yeniden yazdınız ve bir test denediniz, ayrıca ayarlara bakın

En iyi geriye dönük test verileriyle değil ama doğru yaparsanız karlı olabilir

Strateji Test Kullanıcısı Raporu
RSI_strategy_cyxstudio
AlpariUK-Demo - Mikro+Klasik (Derleme 451)

sembol EURUSD (Euro vs ABD Doları)
Dönem Günlük (D1) 2010.10.01 00:00 - 2013.01.29 00:00 (2010.10.01 - 2013.01.30)
modeli Her onay işareti (mevcut tüm minimum zaman dilimlerini temel alan en kesin yöntem)
parametreler RSIPeriyodu=3; UpperBound=90; Alt Sınır=5; MASlowPeriod=200; MAFastPeriod=5; sürü = 0.1; StopLoss=60; Kâr Al=120; İzleyenDurdur=40; SihirliSayı=54333; CommentEA="RSI stratejisi"; Slippage.Pips=3;
Testteki çubuklar 1603 Modellenmiş keneler 40187739 modelleme kalitesi n/a
Uyumsuz grafik hataları 2062601
İlk para yatırma 3000.00
Toplam net kar 967.18 Brüt kazanç 2226.34 Brüt kayıp -1259.16
kar faktörü 1.77 Beklenen getiri 13.62
Mutlak düşüş 107.10 maksimum düşüş 327,47 (%7,99) göreceli düşüş %7,99 (327,47)
Toplam işlemler 71 Kısa pozisyonlar (kazanılan %) 66 (%69,70) Uzun pozisyonlar (% kazandı) 5 (80,00%)
Karlı işlemler (toplamın yüzdesi) 50 (%70,42) Zarar işlemleri (toplamın yüzdesi) 21 (%29,58)
En büyük kar ticareti 120.07 zarar ticareti -60.00
Ortalama kar ticareti 44.53 zarar ticareti -59.96
Maksimum ardışık kazançlar (para olarak kar) 8 (424,26) ardışık kayıplar (para kaybı) 3 (-179.93)
maksimum ardışık kar (kazanç sayısı) 424.26 (8) ardışık kayıp (kayıp sayısı) -179.93 (3)
Ortalama ardışık kazançlar 4 ardışık kayıplar 2


ne...?? en az 7-10 defa farklı şekillerde yazmıştım ya hiç pozisyon işlemedi ya da eksi kâr etti... bunu nasıl yaptın??????
 
RaptorUK :
Bu bana doğru olmayan bir şeyler olduğunu düşündürür.


     if (BUYS< 1 && CurrentRSI < LowerBound && pAsk > MA200) 
        {     //Condition to execute buy entry  
         Ticket = OrderSend ( Symbol (), OP_BUY,......


// LowerBound=5


   if (SELLS< 1 && CurrentRSI > UpperBound && pBid > MA200) 
      {     //Condition to execute sell entry
       Ticket = OrderSend ( Symbol (), OP_SELL, Lots,......


// UpperBound=90
Normalde evet ama bu durumda hayır, RSI için cyxstudio'nun seçtiği ayar ile yapılır
 
deVries :

Kodunuzu yeniden yazdınız ve bir test denediniz, ayrıca ayarlara bakın

En iyi geriye dönük test verileriyle değil ama doğru yaparsanız karlı olabilir

Strateji Test Kullanıcısı Raporu
RSI_strategy_cyxstudio
AlpariUK-Demo - Mikro+Klasik (Derleme 451)

sembol EURUSD (Euro vs ABD Doları)
Dönem Günlük (D1) 2010.10.01 00:00 - 2013.01.29 00:00 (2010.10.01 - 2013.01.30)
modeli Her onay işareti (mevcut tüm minimum zaman dilimlerini temel alan en kesin yöntem)
parametreler RSIPeriyodu=3; UpperBound=90; Alt Sınır=5; MASlowPeriod=200; MAFastPeriod=5; sürü = 0.1; StopLoss=60; Kâr Al=120; İzleyenDurdur=40; SihirliSayı=54333; CommentEA="RSI stratejisi"; Slippage.Pips=3;
Testteki çubuklar 1603 Modellenmiş keneler 40187739 modelleme kalitesi n/a
Uyumsuz grafik hataları 2062601
İlk para yatırma 3000.00
Toplam net kar 967.18 Brüt kazanç 2226.34 Brüt kayıp -1259.16
kar faktörü 1.77 Beklenen getiri 13.62
Mutlak düşüş 107.10 maksimum düşüş 327,47 (%7,99) göreceli düşüş %7,99 (327,47)
Toplam işlemler 71 Kısa pozisyonlar (kazanılan %) 66 (%69,70) Uzun pozisyonlar (% kazandı) 5 (80,00%)
Karlı işlemler (toplamın yüzdesi) 50 (%70,42) Zarar işlemleri (toplamın yüzdesi) 21 (%29,58)
En büyük kar ticareti 120.07 zarar ticareti -60.00
Ortalama kar ticareti 44.53 zarar ticareti -59.96
Maksimum ardışık kazançlar (para olarak kar) 8 (424,26) ardışık kayıplar (para kaybı) 3 (-179.93)
maksimum ardışık kar (kazanç sayısı) 424.26 (8) ardışık kayıp (kayıp sayısı) -179.93 (3)
Ortalama ardışık kazançlar 4 ardışık kayıplar 2


Lütfen kodunuza bakmama izin verir misiniz? Çalışmam ve hatalarımdan ders almam gerekiyor.
 
deVries :
Normalde evet ama bu durumda hayır, RSI için cyxstudio'nun seçtiği ayar ile yapılır
Ah Tamam, eğer açıklayabilirsen endişelenecek bir sebep yok ;-)
 

UpperBound 90 ve LowerBound 10 ile

Strateji Test Kullanıcısı Raporu
RSI_strategy_cyxstudio
AlpariUK-Demo - Mikro+Klasik (Derleme 451)

sembol EURUSD (Euro vs ABD Doları)
Dönem Günlük (D1) 2010.10.01 00:00 - 2013.01.29 00:00 (2010.10.01 - 2013.01.30)
modeli Her onay işareti (mevcut tüm minimum zaman dilimlerini temel alan en kesin yöntem)
parametreler RSIPeriyodu=3; UpperBound=90; Alt Sınır = 10; MASlowPeriod=200; MAFastPeriod=5; sürü = 0.1; StopLoss=60; Kâr Al=120; İzleyenDurdur=40; SihirliSayı=54333; CommentEA="RSI stratejisi"; Slippage.Pips=3;
Testteki çubuklar 1603 Modellenmiş keneler 40187739 modelleme kalitesi n/a
Uyumsuz grafik hataları 2062601
İlk para yatırma 3000.00
Toplam net kar 782.62 Brüt kazanç 3062.38 Brüt kayıp -2279.76
kar faktörü 1.34 Beklenen getiri 7.38
Mutlak düşüş 106.90 maksimum düşüş 400,70 (%9,90) göreceli düşüş %9.90 (400.70)
Toplam işlemler 106 Kısa pozisyonlar (kazanılan %) 66 (%69,70) Uzun pozisyonlar (% kazandı) 40 (%55,00)
Karlı işlemler (toplamın yüzdesi) 68 (%64.15) Zarar işlemleri (toplamın yüzdesi) 38 (%35.85)
En büyük kar ticareti 120.07 zarar ticareti -60.12
Ortalama kar ticareti 45.04 zarar ticareti -59,99
Maksimum ardışık kazançlar (para olarak kar) 8 (425.96) ardışık kayıplar (para kaybı) 4 (-240.12)
maksimum ardışık kar (kazanç sayısı) 490.51 (6) ardışık kayıp (kayıp sayısı) -240.12 (4)
Ortalama ardışık kazançlar 3 ardışık kayıplar 2

bu nasıl görünüyor

 
cyxstudio :

Lütfen kodunuza bakmama izin verir misiniz? Çalışmam ve hatalarımdan ders almam gerekiyor.

Bu başlangıç.....

Şu ana kadar sizinkinden farklı olanla ilgili ..... yorumunuzu yapın...

 //+------------------------------------------------------------------+
//|                                       RSI_strategy_cyxstudio.mq4 |
//|                                  Copyright 2013, Tjipke de Vries |
//|                                     https://forum.mql4.com/53695/ |
//+------------------------------------------------------------------+
#property copyright "Copyright 2013, MetaQuotes Software Corp."
#property link       "http://www.metaquotes.net"


extern int RSIPeriod        =   3 ;       //number of periods for RSI
extern double UpperBound    =   90 ;     //set upper bound value for RSI
extern double LowerBound    =   5 ;       //set lower bound value for RSI
extern int MASlowPeriod     = 200 ;
extern int MAFastPeriod     = 5 ;
extern double Lots  = 0.1 ;
extern double StopLoss      = 60 ;       //Set the stop loss level
extern double TakeProfit    = 120 ;       //Set the take profit level
extern double TrailingStop = 40 ;
//extra settings for OrderSend
extern int         MagicNumber = 54333 ;
extern string      CommentEA = "RSI strategy" ;
extern int         Slippage.Pips    = 3 ;


int     BUYS= 1 ,SELLS= 1 ;
//++++ These are adjusted for 5 digit brokers.
int      pips2points;       // slippage  3 pips    3=points    30=points
double   pips2dbl;         // Stoploss 15 pips    0.015      0.0150
int      Digits .pips;       // DoubleToStr(dbl/pips2dbl, Digits.pips)
//---
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----   
   if ( Digits % 2 == 1 )   // DE30=1/JPY=3/EURUSD=5 forum.mql4.com/43064#515262
     {pips2dbl = Point * 10 ; pips2points = 10 ;   Digits .pips = 1 ;}
     else {pips2dbl = Point ;    pips2points =   1 ;   Digits .pips = 0 ;}
     // OrderSend(... Slippage.Pips * pips2points, Bid - StopLossPips * pips2dbl        
//----      

//----
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----
   int Ticket;
   double SL,TP;
   int Total;
   
   double pAsk = MarketInfo( Symbol (), MODE_ASK);
   double pBid = MarketInfo( Symbol (), MODE_BID);
   double MA200 = iMA ( NULL , 1440 , MASlowPeriod, 0 , MODE_SMA , PRICE_CLOSE , 0 );   //200 day Moving Average   
   double MA5 = iMA ( NULL , 1440 , MAFastPeriod, 0 , MODE_SMA , PRICE_CLOSE , 0 );       //  5 day Moving Average
   double CurrentRSI = iRSI ( NULL , 1440 , RSIPeriod, PRICE_CLOSE , 0 );
   
   
   if ( Bars < 100 )
     {
       Print ( "bars less than 100" );
       return ( 0 );  
     }
   
   if (AccountFreeMargin()<( 1000 *Lots))
        {
         Print ( "We have no money. Free Margin = " , AccountFreeMargin());
         return ( 0 );  
        }


   if ( OrdersTotal ()< 1 )
        {
         BUYS= 0 ;
         SELLS= 0 ;
        } 

Ardından https://www.mql5.com/en/forum/139654 adresinde bir okuma yapın ve kontrol işlemlerini geri sayan bir döngü oluşturmaya çalışın

 
deVries :

Bu başlangıç.....

Şu ana kadar sizinkinden farklı olanla ilgili ..... yorumunuzu yapın...

Ardından https://www.mql5.com/en/forum/139654 adresinde bir okuma yapın ve kontrol işlemlerini geri sayan bir döngü oluşturmaya çalışın


Tam değil...

gerisini doldurmaya ve şimdi test etmeye çalışıyorum ...

bu arada neden kullanıyorsun ne zaman basit bir Ask aynı değeri döndürebilir?

 double pAsk = MarketInfo( Symbol (), MODE_ASK);  
 
cyxstudio :


Tam değil...

gerisini doldurmaya ve şimdi test etmeye çalışıyorum ...

bu arada neden kullanıyorsun ne zaman basit bir Ask aynı değeri döndürebilir?

Sor güncel olmayabilir, yukarıdaki çağrı RefreshRates()'i çağırmaya gerek kalmadan güncel olacaktır.
 

Aslo int AL=1,SELLS=1; bir pozisyonun açılıp açılmadığının göstergesi değil mi?

kendi komut dosyalarımı ekliyorum ve 20 gün boyunca strateji test cihazı ile test ettiğimde...hiçbir şey olmadı, hiçbir işlem yapılmadı

 
cyxstudio :

Aslo int AL=1,SELLS=1; bir pozisyonun açılıp açılmadığının göstergesi değil mi?

kendi komut dosyalarımı ekliyorum ve 20 gün boyunca strateji test cihazı ile test ettiğimde...hiçbir şey olmadı, hiçbir işlem yapılmadı

Metatrader'ınızı başlattığınızda, EA'nın açık bir ticaret olup olmadığını öğrenmesi gerekir.

Bir işlem varsa, yalnızca işlemleri kontrol etmek için geri sayım döngüsü yapıyorum

Başta bire ayarlarsam ve OrdersTotal() >0'a ayarlarsam, o zaman işlemleri kontrol ederim if(.......> || .......> ){döngüyü yap....