Fikriniz istedi - sayfa 4

 
angevoyageur :
EA ve/veya backtest sonuçlarınızı bir şekilde aldatarak yeni başlayanları kandırmaya çalışıyorsunuz ve bunu çok iyi biliyorsunuz.

"Bazı yönlerden" Nasıl? Ne hakkında tartıştığınızı bilmeden suçlamada bulunmayın. Hiçbir şeyi zarara uğratmadan, kârlı hale gelmesini bekleyerek %100 denediğini zaten söylemiştim. Değişken kayıplar, dinamik lotlar ve lot olarak kullanılan bakiye yüzdesi tarafından yönetilecek ve böylece teminat tamamlamayı zorlaştıracaktır.
 
tonny : İşte testçi raporu. Bariz sebeplerden dolayı parametreleri ve bir ismi çıkardım. İstediğin kadar kontrol et, saklayacak bir şeyim yok.

Çok daha iyi. Sisteminiz hakkındaki fikrim çok riskli olduğu yönünde. Riskli ancak göreceli bir terimdir, eğer hesabı patlatma şansı ile %50'lik göreceli düşüşlerle yaşayabileceğinizi düşünüyorsanız ??? sonra takas et. Ancak, bu %50'lik düşüşlerin ne sıklıkla gerçekleştiğine dair daha iyi bir istatistik elde etmek için sisteminizi Monte-Carlo modunda çalıştırmanızı tavsiye edeceğim. Ve Risk_Of_Ruin'iniz ve BankRoll'unuz vs.

Yeni uyandım ve verilerinizi gördüm, sonuçları bir şekilde çoğaltabilecek bir şeyi bir araya getirmeye karar verdim ve işte aşağıdaki kodlar ve sonuçlar. Not: 1. çalıştırmamda iflas etti. 2. ve 3. çalıştırmalar aşağıdaki sonuca benziyor:


Üç denememe dayanarak, 'benim' sistemimin test edilen süre içinde 3'te 1'lik bir 10k iflas şansı olduğunu söyleyebilirim. Görüntülediğiniz sonuç, sistemin yalnızca bir Statik [Pozitif] performansıdır. Bu sistemle ticaret yapan herkes kendilerine "ya fiyat asla geri gelmezse?" diye sormaya devam ederdi. Benim tavsiyem, sisteminizin zıplama dönemlerini ne kadar iyi tahmin ettiğini test etmek için binlerce çalıştırma üretmenizdir. Ayrıca zaman çerçevesini uzatın ve diğer çiftler üzerinde test edin.

Kodlar alelacele yazılmıştır ve Real_Money kullanımına yönelik değildir. Kodları daha sonra kaldırabilirim.

 //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#property copyright "Copyright © Ubzen"
#property link       "https://www.mql5.com/en/users/ubzen"
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#define Magic_Nm 1
#define Scalp_Pi 5
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//extern int MonteCarlo=1;//Optimize 1->100 Equal_100 Random_Runs
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
void start(){
     if (!isNewBar()){ return ;}
    Order_Origination();
    Order_Termination();
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
void Order_Origination(){
     if (Count_OrderS_Symb()> 0 ){ return ;}
     if (!isRange()){ return ;}
    Order_Send( Symbol (),Random_OT(),Compound());
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
void Order_Termination(){
     for ( int i= OrdersTotal ()- 1 ; i>= 0 ; i--){
         if (! OrderSelect (i,SELECT_BY_POS)){ continue ;}
         if (OrderMagicNumber()!=Magic_Nm){ continue ;}
         string Sy= Symbol ();
         if (OrderSymbol()!=Sy){ continue ;}
         if (OrderProfit()< 0 ){ continue ;}
         double   OpnPrc=OrderOpenPrice();
         double   ClsPrc=OrderClosePrice();
         double   Diff= MathAbs (ClsPrc-OpnPrc);
         double   inPip=p2pips(Sy,Diff);
         int      inInt=p2i(Sy,inPip);
         if (inInt<Scalp_Pi){ return ;}
        Close_Order_Ticket(OrderTicket());
    }
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
bool isNewBar(){
     static datetime BarTime;
     datetime MinOpen=iTime( Symbol (), PERIOD_M1 , 0 );
     if (BarTime!=MinOpen){BarTime=MinOpen; return ( true );}
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int Random_OT(){
     static double Seed; if (Seed== 0 ){Seed= GetTickCount ();}
    Seed+= 0.9 ; MathSrand (Seed); int OrType= MathRand ()% 2 ;
     if (OrType% 2 == 0 ){ return (OP_BUY);} else { return (OP_SELL);}
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
double Symb_Digit( string Symb){
     return (MarketInfo(Symb,MODE_DIGITS));
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int p2i( string Symb, double X){
     /*Converts Price_2_Integer*/ int SymDigit=Symb_Digit(Symb);
     if (SymDigit% 2 == 0 ){ if (SymDigit== 2 ){ int Y= 100 ;} else {Y= 10000 ;}
    } else { if (SymDigit== 3 ){Y= 1000 ;} else {Y= 100000 ;}} return (X*Y);
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
double p2pips( string Symb, double X){ //Points2Pips
     int D=Symb_Digit(Symb); if (D% 2 == 1 ){X/= 10 ;} return (X);
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
double p2points( string Symb, double X){ //Pips2Points
     int D=Symb_Digit(Symb); if (D% 2 == 1 ){X*= 10 ;} return (X);
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
bool isRange(){ int Range= 10 ;
     string Sy= Symbol (); int Tf= PERIOD_M5 ; int Pd= 99 ;
     int Dev= 1 ; int Sh= 0 ; int App= PRICE_LOW ; int iDex= 0 ;
     double Band_Up= iBands (Sy,Tf,Pd,Dev,Sh,App,MODE_UPPER,iDex);
     double Band_Dn= iBands (Sy,Tf,Pd,Dev,Sh,App,MODE_LOWER,iDex);
     int iBand_Up=p2i(Sy,Band_Up); int iBand_Dn=p2i(Sy,Band_Dn);
     int Dif=iBand_Up-iBand_Dn;
     int Range2Points=p2points(Sy,Range);
     if (Dif<Range2Points){ return ( true );}
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int Count_OrderS_Symb(){
     int Cnt; for ( int i= OrdersTotal ()- 1 ; i>= 0 ; i--){
         if (! OrderSelect (i,SELECT_BY_POS)){ continue ;}
         if (OrderMagicNumber()!=Magic_Nm){ continue ;}
         if (OrderSymbol()!= Symbol ()){ continue ;} Cnt++;}
return (Cnt);}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
bool Close_Order_Ticket( int Tkt){
     if (! OrderSelect (Tkt,SELECT_BY_TICKET)){ return ;}
     if (OrderType()> 1 ){ return ;} if (OrderCloseTime()!= 0 ){ return ;}
     if (!IsTesting()){ while (IsTradeContextBusy()){ Sleep ( 500 );}}
     double Ocp=OrderClosePrice(); double Ol=OrderLots();
     bool Res=OrderClose(Tkt,Ol,Ocp, 0 , 0 );
return (Res);}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int Order_Send( string Symb, int OType, double Lots){
     if (AccountFreeMarginCheck(Symb,OType,Lots)<= 0 ){ return ;}
     if ( GetLastError ()== 134 ){ return ;}

     int Order_Slip= 0 ; color OrColor;
     if (OType==OP_BUY){OrColor=Blue;}
     if (OType==OP_SELL){OrColor=Red;}
     if (OType==OP_BUY){ double     P=MarketInfo(Symb,MODE_ASK);}
     if (OType==OP_SELL){         P=MarketInfo(Symb,MODE_BID);}
    
     int OrTicket= OrderSend (
        Symb,OType,Lots,P,Order_Slip,
         0 , 0 , "_" ,Magic_Nm, 0 ,OrColor);
return (OrTicket);    }
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
double Compound(){
     double BrkMinLot=MarketInfo( Symbol (),MODE_MINLOT);
     double BrkMaxLot=MarketInfo( Symbol (),MODE_MAXLOT);
     double BrkLotStp=MarketInfo( Symbol (),MODE_LOTSTEP);
     double LotSize=AccountBalance()/ 200 * 0.01 ;
    if (LotSize<BrkMinLot){LotSize=BrkMinLot;}
     if (LotSize>BrkMaxLot){LotSize=BrkMaxLot;}
     return (LotSize);
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
Dosyalar:
 
Şahsen ben saç derisine inanmıyorum. Bu sadece eğlenceli bir proje ve daha önce burada kafa derisi yüzdürme alanında yaşamış olabilecek kişilerin fikrini almak istedim. Bazı tp seviyeleri ve zaman çerçevesi hesabı iflas ettirdi, bu nedenle, genellikle bir scalping zaman çerçevesi olmayan H1, dakika zaman çerçevelerinden biraz daha doğru bir trend tahmini sağladığı için kullanıldı. Küçük bakiyelerle canlı hesapta bazı ölçeklendirme stratejilerini test ettim ve iki haftadan kısa bir sürede %3000'e kadar (10$'dan 300$'a kadar) kazanacaktım, ancak ortak olan şey, son sözün marj çağrısının olmasıydı. Bu, karlılık bir darbe almış olsa da, uzun vadede muhtemelen kafa derisi ve kazanabilecek bir şey denedim, bu yüzden testçi raporunun iki yılda yaklaşık %100'ünü yaptığını görebileceğiniz gibi, ölçeklendirme açısından o kadar da fazla değil. Scalping konusundaki görüşüm, evet, scalping yaparak para kazanabilirsiniz, ancak uzun vadede değil. Ölçeklendirme bir "yap ve çalıştır" sistemi olarak kullanılmalıdır, yani 1000$ yatırın ve üç katına çıkardığınızda o parayı başka bir yere yatırın. Ayrıca bu sp hizmetlerinde ölçekleme sinyali sağlayıcılarını araştırdım (reklam hizmetlerinden dolayı bahsetmeyeceğim) ve bir yıl için bile bir miktar kar olsa da, sonuçta çoğu abone hesabının genellikle "marj çağrısı" olan büyük değişken kayıplar oldu. Eğer birisi para scalping yapmaksa, büyük miktarlarda para yatırmanız, ancak çok küçük lotlar kullanmanız gerekecek ve sonuç, scalping olmayan stratejilerden daha küçük karlar olacaktır ve burada denediğim konsept bu. Sonuç olarak, benim kişisel olarak scalping'i tercih etmem, ancak yaparsanız, %300 veya %1000 yapın ve çalıştırın ve ayrıca brokerinizin çoğu broker bundan hoşlanmadığı için bu parayı çekmenize izin vermeyebileceğini unutmayın. Scalping karşıtı kurallar için komisyoncunuza danışın ve scalping yaparken bunlara uymaya çalışın, işlemleri çok erken (10 dakikadan az) çok sık kapatmayın.
 
tonny :

"Bazı yönlerden" Nasıl? Ne hakkında tartıştığınızı bilmeden suçlamada bulunmayın. Hiçbir şeyi zarara uğratmadan, kârlı hale gelmesini bekleyerek %100 denediğini zaten söylemiştim. Değişken kayıplar dinamik lotlar ve lot olarak kullanılan bakiye yüzdesi tarafından yönetilecek ve böylece marj tamamlamasını zorlaştıracaktır.
  • Bunu açıklayabilir misin?
Uyumsuz grafik hataları 350
 
oh yani hataları mt4'e koyan ben miyim? Strateji testi yapabileceğiniz zaman yok ve 0 uyumsuz hata alıyorsunuz lol gerçekten ne dediğinizi bilmiyorsunuz müteahhit aynı görünüyor
 
tonny :
oh yani hataları mt4'e koyan ben miyim? Strateji testi yapabileceğiniz zaman yok ve 0 uyumsuz hata alıyorsunuz lol gerçekten ne dediğinizi bilmiyorsunuz müteahhit aynı görünüyor

Sıfır uyumsuz grafik hatası olması çok olasıdır. . . bu sadece verilerinize ve nasıl oluşturulduğuna bağlıdır, örneğin aynı onay verisinden M1'den MN1'e oluşturmak çok az hatayla sonuçlanmalıdır. . .

 
tonny :
oh yani hataları mt4'e koyan ben miyim? Strateji testi yapabileceğiniz zaman yok ve 0 uyumsuz hata alıyorsunuz lol gerçekten ne dediğinizi bilmiyorsunuz müteahhit aynı görünüyor

Yüzlerce geriye dönük test yaptım ve bu hatayı hiç görmedim.

Her neyse, fikir istiyorsunuz, benimki EA'nızın yalnızca bir hesabı patlatmak için kullanılabileceğidir .

Aldattığını düşündüğümde yanılıyor olabilirim, bunun için üzgünüm. Eğer değilseniz, Ocak 2010'dan beri burada olduğunuz gibi, en azından çok safsınız.

 

Böyle bir test yapmak mümkün

ben de yapabilirim

en yüksek 18 bar satın alırsa strateji

düşük en düşük 18 bar stoploss satmazsa

bu sonucu da takip ederek (aptalca oyun)

Dosyalar:
testresult.zip  46 kb
 
Yer ama bu çocuk sanki birileri ona mt4 verisinden geldiğini söylediği hataları ben yaratmışım gibi konuşuyor benden değil
 
Ne zaman projenin mükemmel olduğunu söyledim, birçok kez sadece araştırdığımı söyledim ve sadece "olgun" görüş istedim, bu zaten başarılı sistemlerimden çok daha az kâr ediyor ama dediğim gibi sadece scalping sistemlerini keşfediyorum ve yardıma açığım fikir ama hakaret almayacağım ve moderatör olarak karasinek gibi davranmamalısın bundan daha olgun olmalısın benim test sonucum mt4'ten doğal bu yüzden mt4 verisinde bazı hatalar var çünkü içine herhangi bir şeyi değiştirmek için kod enjekte etmedim