var a_tp_y = 5 ; // o1
var a_s_y = 2 ; //o2
var s_tp_y = 4 ; //o3
var s_s_y = 3 ; //o4
var ad = "sys1" ;
var sembol = "VIP'VIP-X030";
var periyot = "20" ;
var V = Sistem.GrafikVerileriniOku(sembol, periyot);
var C = Sistem.GrafikFiyatOku(V, "Kapanis" ) ;
var a01 = Sistem.SistemGetir(ad, sembol, periyot ) ;
var x1= Sistem.Liste(V.Count, 0) ;
for (int i = 1 ; i < V.Count; i++)
x1[i] = a01.Yon[i] == "A" ? 1 : a01.Yon[i] == "S" ? -1 : a01.Yon[i] == "F" ? 0: x1[i-1] ;
// sistem
var SonYon = "";
double Fiyat = 0;
for (int i = 1; i<V.Count; i++)
{
if ( x1[i] == 1 && x1[i-1] != 1 && SonYon != "A" ) // AL
{
Sistem.Yon[i] = "A"; // alış
SonYon = Sistem.Yon[i];
Fiyat = C[i];
}
else if ( x1[i] == -1 && x1[i-1] != -1 && SonYon != "S" ) // SAT
{
Sistem.Yon[i] = "S"; // satış
SonYon = Sistem.Yon[i];
Fiyat = C[i];
}
else if (SonYon == "A" && C[i] > ( Fiyat + a_tp_y ) ) // alışta kar realizasyonu
{
Sistem.Yon[i] = "F";
SonYon = Sistem.Yon[i];
}
else if (SonYon == "A" && C[i] < ( Fiyat - a_s_y ) ) // alışta stop
{
Sistem.Yon[i] = "F";
SonYon = Sistem.Yon[i];
}
else if (SonYon == "S" && C[i] < ( Fiyat - s_tp_y )) // satışta kar realizasyonu
{
Sistem.Yon[i] = "F";
SonYon = Sistem.Yon[i];
}
else if (SonYon == "S" && C[i] > ( Fiyat + s_s_y ) ) // satışta stop
{
Sistem.Yon[i] = "F";
SonYon = Sistem.Yon[i];
}
}
Sistem.GetiriHesapla("31/12/2004", 0.01875);
var KarZarar = Sistem.GetiriKZ;
var KarZararAy = Sistem.Liste(0);
float KarZarar1 = 0;
int BarNo1 = 1;
float Fark = 0;
for (int i = 1; i < Sistem.BarSayisi; i++)
{
//if (V[i].Date.DayOfWeek == DayOfWeek.Monday && V[i-1].Date.DayOfWeek != DayOfWeek.Monday)
if (V[i].Date.Month != V[i-1].Date.Month)
{
Fark = KarZarar[i-1] - KarZarar1;
for (int j = BarNo1; j < i; j++)
KarZararAy[j] = Fark;
KarZarar1 = KarZarar[i-1];
BarNo1 = i;
}
if (i == Sistem.BarSayisi-1)
{
Fark = KarZarar[i] - KarZarar1;
for (int j = BarNo1; j < Sistem.BarSayisi; j++)
KarZararAy[j] = Fark;
}
}
var KarList = Sistem.Liste(0);
var ZararList = Sistem.Liste(0);
for (int i = 1; i < Sistem.BarSayisi; i++)
{
if (KarZararAy[i] > 0)
KarList[i] = KarZararAy[i];
else if (KarZararAy[i] < 0)
ZararList[i] = KarZararAy[i];
}
Sistem.Cizgiler[0].Deger = KarZarar; // panel 2 - düz
Sistem.Cizgiler[1].Deger = KarList; // panel 3 - dikey
Sistem.Cizgiler[2].Deger = ZararList; // panel 3 - dikey
Yer İmleri