Alıntı Originally Posted by NUTCRACKER Yazıyı Oku
Sn vVvendetta

Bu sistem %99 optimize sistem, kullanılması sakıncalı olur.

Böylesi yavaş bir sistemin 20 dk lık çalışıp ayda 8 9 işlem yaparak max zarar 1225, ardışık zarar 3250 olması,maxdd, PF, işlem sayısı oranları vs. gibi değerlere ulaşması pek mümkün görünmüyor.

Tasarımını bilmemekle beraber bu raporu dışarıdan bu şekilde yorumlarım.
Sayin NUTCRACKER;
Suan robot kullanmiyorum cunku yeterli bilgiye sahip oldugumu dusunmuyorum forumu takip ediyorum ileriye donuk, ilgim suan hisse yonunde. Sistem benim olusturdugum bir sistem degil daha once forumda paylasilan bir sistem belki daha once gozden kacti bilemem bir sebepten ilgimi cekti ve VIOP'a uyguladim ve sadece belli bir optimize araliginda bu rakamlari veriyor diger turlu 1000'in uzerinde al-sat veriyor ama her turlu 60binli rakamlari buluyor komisyon ve kayma hesaba katilmadan.Sistemin optimize halini asagida bulabilirsiniz belki profesyonel arkadaslar yorum yapabilir kullanisli ise gelistirilebilir.Son ekran goruntusu de asagidadir saygilar.

var V =Sistem.GrafikVerileri ;
var C = Sistem.GrafikFiyatOku(V, "Kapanis") ;
var H = Sistem.GrafikFiyatOku(V, "Yuksek") ;
var L = Sistem.GrafikFiyatOku(V, "Dusuk") ;
var O = Sistem.GrafikFiyatOku(V, "Acilis") ;
var median = Sistem.GrafikFiyatOku(V, "OrtaNokta") ;

bool renkliciz = true;
var Renk1 = Sistem.Renk(238,130,238,0 );
var Renk2 = Sistem.Renk(255, 255,0,0);
var Renk3 = Sistem.Renk(255, 255,215,0);

int k=2;//0.5-10
int period = 6;
var refH = Sistem.Ref(H,-1);
var refL = Sistem.Ref(L,-1);
var ATR = Sistem.AverageTrueRange(2);
var ema = Sistem.MA(ATR,"Exp",k);
var Vs_raw = Sistem.Liste(0);
var HHV = Sistem.HHV(period,C);
var loline = Sistem.Liste(0);
var VS_below_price = Sistem.Liste(0);
for (int i = 1; i < V.Count; i++)

{
Vs_raw[i]=2.5f*ema[i];
VS_below_price[i]=HHV[i]-Vs_raw[i];
loline[i]= VS_below_price[i];
}
var LLV = Sistem.LLV(period,C);
var hiline = Sistem.Liste(0);
var VS_above_price =Sistem.Liste(0);
for (int i = 1; i < V.Count; i++)

{
VS_above_price[i]=LLV[i]+Vs_raw[i];
hiline[i]=VS_above_price[i];
}
var between = Sistem.Liste(0);
var up = Sistem.Liste(0);
var dn = Sistem.Liste(0);
for (int i = 1; i < V.Count; i++)

{
between[i]=C[i]<hiline[i] && C[i]>loline[i]?1:0;
up[i] = C[i]>hiline[i] || (H[i]>refH[i] && H[i]>hiline[i])?1:0;
dn[i] = C[i]<loline[i] || (L[i]<refL[i] && L[i]<loline[i])?1:0;
}
var Bars=Sistem.BarSayisi;
var snc =Sistem.Liste(0);
var snc2=Sistem.Liste(0);
var Value1 = Sistem.Liste(0);
var Value2 = Sistem.Liste(0);


for (int i = 1; i < Sistem.BarSayisi; i++)
{
if ( up[i]==1 ) snc[i]=0f;
else snc[i]=snc[i-1]+1;
if ( snc[i] < 1f ) Value1[i]=V[i].High;
else Value1[i]=Value1[i-1];

if ( dn[i]==1 ) snc2[i]=0f;
else snc2[i]=snc2[i-1]+1;
if ( snc2[i] < 1f ) Value2[i]=V[i].Low;
else Value2[i]=Value2[i-1];

}

var upcond = Sistem.Liste(0);
var dncond = Sistem.Liste(0);
var upline=Sistem.Liste(0);
var dnline = Sistem.Liste(0);
var uppoz = Sistem.Liste(0);
var dnneg = Sistem.Liste(0);
for (int i = 1; i < V.Count; i++)

{
//upcond = IIf(between AND BarsSince(up) < BarsSince(dn) , 1, 0);
//dncond = IIf(between AND BarsSince(dn) < BarsSince(up) , 1, 0);
//upline = IIf(up OR upcond, loline, Null);
//dnline = IIf(dn OR dncond, hiline, Null);
upcond[i] = between[i]==1 && snc[i]<snc2[i] ?1:0;
dncond[i] = between[i] ==1 && snc2[i]<snc[i]?1:0;
upline[i] = up[i]==1|| upcond[i]==1 ? loline[i]:0;
dnline[i] = dn[i]==1 || dncond[i]==1 ? hiline[i]:0 ;

if (renkliciz)
{
if (up[i]==1)
{
Sistem.YaziEkle(".",1,i,upline[i],Renk1,"Tahoma", 16);
}
else if (dn[i]==1)
{
Sistem.YaziEkle(".",1,i,dnline[i],Renk2,"Tahoma", 16);
}
else if (upline[i]==dnline[i])
{
Sistem.YaziEkle(".",1,i,C[i],Renk3,"Tahoma", 16);
}}}

// strateji
//Sistem.KesismeTara(upline, 50);

var SonYon = "";

for (int i = 1; i < Sistem.BarSayisi; i++)
{
if (upline[i-1] <= 50 && upline[i] > 50 && SonYon!="A")
{
Sistem.Yon[i] = "A"; // alış
SonYon="A";
}
else if (upline[i-1] >= 50 && upline[i] < 50 && SonYon!="S")
{
Sistem.Yon[i] = "S"; // satış
SonYon="S";
}
}


Sistem.Cizgiler[0].Deger = upline;
Sistem.Cizgiler[1].Deger = dnline;


Orjinal Kod linkleri eski forumdan:
http://www.hisse.net/forum/showthrea...2740&page=1109
http://www.hisse.net/forum/showthrea...2740&page=1110