Sayfa 565/594 İlkİlk ... 65465515555563564565566567575 ... SonSon
Arama sonucu : 4750 madde; 4,513 - 4,520 arası.

Konu: İDEAL veri terminalinde /Sistem/İndikatör/Robot

  1. Teşekkür ederim repaint yaptırmadan multi time frame işlemler yapmak istiyorum. Robot için sadece 1dk lık veri kullanmak istiyorum Sistem.DonemCevir üzerinde biraz çalışmam lazım anlaşılan.

  2.  Alıntı Originally Posted by belamim Yazıyı Oku
    Teşekkür ederim repaint yaptırmadan multi time frame işlemler yapmak istiyorum. Robot için sadece 1dk lık veri kullanmak istiyorum Sistem.DonemCevir üzerinde biraz çalışmam lazım anlaşılan.
    Kütüphane şurada:
    http://www.directfn.com.tr/idealsistem/

    Örnek için paylaşılan sistemler burada:
    http://www.directfn.com.tr/sistemler/

    İdealGo yardım hesabı şurada:
    https://twitter.com/Algoyardim


    Üstadlar burada(kendimden söz etmiyorum yanlış anlaşılmaya)...

    Başarılar, bol kazançlar dilerim.
    https://twitter.com/teknikcioblomov
    Al,sat,tut,yakala,sık,bırak vb. tavsiye için aracı kurumunuzla görüşün.

  3. Maalesef Sistem.DonemCevir işimi görmüyor, çünkü çevrilecek üst dönem verilerine ihtiyaç duyuyor.

    Sistem.DonemCevir(Veriler, UstDonemVerileri, UstDonemCevrilecekData)

    Bende üst dönem verileri yok sadece 1dk veriler var. Sadece 1dk lık verileri kullanarak 5, 15,60 ve günlük verileri hesaplamak istiyorum. Bütün periyotlarda ait verileri temin etmek çok zahmetli ve sorunlu bir iş. Bu nedenle dönem çevir metodu işimi görmez. Farklı bir önerisi olan var mı?

  4.  Alıntı Originally Posted by belamim Yazıyı Oku
    Maalesef Sistem.DonemCevir işimi görmüyor, çünkü çevrilecek üst dönem verilerine ihtiyaç duyuyor.

    Sistem.DonemCevir(Veriler, UstDonemVerileri, UstDonemCevrilecekData)

    Bende üst dönem verileri yok sadece 1dk veriler var. Sadece 1dk lık verileri kullanarak 5, 15,60 ve günlük verileri hesaplamak istiyorum. Bütün periyotlarda ait verileri temin etmek çok zahmetli ve sorunlu bir iş. Bu nedenle dönem çevir metodu işimi görmez. Farklı bir önerisi olan var mı?
    Üstadım... Elinizde 1 dakikalık veri varsa... Diğer tümü de var demektir.
    Asıl zor olan 1 dakikalık verileri indirmek, tutmak işlemek... Bir şeyleri kaçırıyorsunuz kanımca.


    Başka veri terminallerinden sonra İdeal adaptasyonu zor olabiliyor. Şöyle düşünürseniz belki daha kolay olur... :


    Veriler=Elinizdeki 1 dakikalık veriler.
    UstDonemVerileri = Örneğin "5 dakikalık veriler" olsun.
    UstDonemCevrilecekData = Örneğin "Kapanış" olsun.


    Bunu doğru biçimde yazdığınızda elinizde "5 dakikalık kapanış" verisi olacaktır.
    https://twitter.com/teknikcioblomov
    Al,sat,tut,yakala,sık,bırak vb. tavsiye için aracı kurumunuzla görüşün.

  5.  Alıntı Originally Posted by yuji Yazıyı Oku
    Lotlu hali daha sade:

    PHP Code:
    var SistemAdi "Sistemim_1"//sistemizin adı 
    var GrafikPeriyodu "1";  //grafiğin priyodu 
    var ToplamPozisyon 24//Kaç defa alım yapılacak 

    var hisseLot = new Dictionary<stringint>();
    hisseLot["IMKBH'PETKM"] = 10;
    hisseLot["IMKBH'KRDMD"] = 20;
    hisseLot["IMKBH'KCHOL"] = 30;
    hisseLot["IMKBH'AKBNK"] = 10;
    hisseLot["IMKBH'EREGL"] = 20;
    hisseLot["IMKBH'EKGYO"] = 30;


    for (var 
    No 0No hisseLot.CountNo++) 

        var 
    item    hisseLot.ElementAt(No);
        var 
    Sembol  item.Key;//sistemin sinyal ürettiği grafik sembolü 
        
    var LotSize item.Value;//sistemin sinyal ürettiği hisse için yukarıda tanımlanan lot
        
        
    var SonFiyat = (decimal)Sistem.SonFiyat(Sembol); 
        var 
    SonYon   Sistem.SonYonGetir(SistemAdiSembolGrafikPeriyodu); 
        var 
    PozisyonAnahtari Sistem.Name ", " Sembol ", " GrafikPeriyodu
        var 
    EmirAnahtari     Sistem.Name "::" Sembol "::" GrafikPeriyodu

        
    double IslemFiyat 0
        
    DateTime IslemTarih;     
        var 
    Pozisyon Sistem.PozisyonKontrolOku(PozisyonAnahtariout IslemFiyatout IslemTarih); 
        
        var 
    EmirTekrari Sistem.PozisyonKontrolOku(EmirAnahtari);  
            
        var 
    Islem ""
        if (
    SonYon == "A" && (Pozisyon == || Sistem.ZamanKontrolSaniye(EmirAnahtari) >= 10) && EmirTekrari <= ToplamPozisyon
        { 
            
    Islem "ALIS"
        } 
        if (
    SonYon == "F" && Pozisyon && Sistem.ZamanKontrolSaniye(EmirAnahtari) >= 10)  // Sat 
        
    {    
            
    Islem "SATIS"
        }
        
        if (
    Islem != ""
        {     
            
    Sistem.ZamanKontrolGuncelle(EmirAnahtari);
            
            if (
    Islem == "ALIS"
            { 
                
    EmirTekrari++; 
                
    Sistem.PozisyonKontrolGuncelle(EmirAnahtariEmirTekrari); 
                
    Sistem.PozisyonKontrolGuncelle(PozisyonAnahtariPozisyon LotSize, (double)SonFiyat); 
            } 

            else if (
    Islem == "SATIS"
            { 
                
    EmirTekrari--; 
                
    Sistem.PozisyonKontrolGuncelle(EmirAnahtariEmirTekrari); 
                
    Sistem.PozisyonKontrolGuncelle(PozisyonAnahtariPozisyon LotSize, (double)SonFiyat); 
            } 

            
    Sistem.EmirSembol Sembol
            
    Sistem.EmirIslem Islem
            
    Sistem.EmirSuresi "GUN"
            
    Sistem.EmirTipi "Piyasa"
            
    Sistem.EmirMiktari = (double)Math.Abs(LotSize); 
            
    Sistem.EmirGonder(); 

        } 

    Hocam ayağınıza taş değmesin çok teşekkür ederim. SOnunda güzel 2 robota kavuştuk. Sayenizde plaka atıyoruz tahtalara))

  6. Merhabalar herkese kolay gelsin aşağıdaki formülde işlem sayısını nasıl azaltabilirim yardımcı olursanız sevinirim


    var V = Sistem.GrafikVerileri ;
    var C = Sistem.GrafikFiyatSec("Kapanis");
    var H = Sistem.GrafikFiyatOku(V, "Yuksek" ) ;
    var L = Sistem.GrafikFiyatOku(V, "Dusuk" ) ;
    var Us = Sistem.Liste(0); //Up swing
    var Ds = Sistem.Liste(0); // Down Swing
    var Dsa = new List<int>();
    var Usa = new List<int>();
    var Lsx = Sistem.Liste(0); //LovestSince Listesi
    var Hsx = Sistem.Liste(0); //HighestSince Listesi
    var Sd1 = Sistem.Liste(0);
    var Sd2 = Sistem.Liste(0);

    var BarNo1 = 0; //Barsince US için
    var BarNo2 = 0; //BarSince DS için
    var BarNo3 = 0; //Barsince SD=1 için
    var BarNo4 = 0; //BarSince SD=-1 için
    var BS1 = Sistem.Liste(0); //BarSince SD=1 Listesi
    var BS_1 = Sistem.Liste(0); //BarSince SD=-1 Listesi
    var Td1 = Sistem.Liste(0);


    for (int i=3; i<V.Count; i++)
    {
    if ( H[i] > H[i-1] && H[i-1] > H[i-2] && H[i-2] > H[i-3])
    BarNo1 = i;

    if (BarNo1 > 0)
    Us[i] = i - BarNo1;

    if ( L[i] < L[i-1] && L[i-1] < L[i-2] && L[i-2] < L[i-3])
    BarNo2 = i;

    if (BarNo2 > 0)
    Ds[i] = i - BarNo2;


    if (Ds[i] == 0 )
    Dsa.Add(i);
    if (Us[i] == 0 )
    Usa.Add(i);

    if(Dsa.Count > 1)
    {
    var y = new List<float>();
    for(int k = Dsa[Dsa.Count-1]; k<i+1; k++)
    y.Add(L[k]);

    Lsx[i] = y.Min();
    y.Clear();
    }
    if(Usa.Count > 1)
    {
    var y = new List<float>();
    for(int k = Dsa[Dsa.Count-1]; k<i+1; k++)
    y.Add(H[k]);

    Hsx[i] = y.Max();
    y.Clear();
    }

    if(Us[i] == 0 && L[i-1] != Lsx[i] )
    Sd1[i] = 1;

    else if(Ds[i] == 0 && H[i-1] != Hsx[i] )
    Sd1[i] = -1;

    else
    Sd1[i] = 0;

    if ( Sd1[i] == 1)
    BarNo3 = i;

    if (BarNo3 > 0)
    BS1[i] = i - BarNo3;

    if ( Sd1[i] == -1)
    BarNo4 = i;

    if (BarNo4 > 0)
    BS_1[i] = i - BarNo4;

    if(Sd1[i] == 1 && BS1[i-1] > BS_1[i-1] )
    Sd2[i] = 1;
    else if(Sd1[i] == -1 && BS1[i-1] < BS_1[i-1] )
    Sd2[i] = -1;
    else
    Sd2[i] = 0;

    if(Sd2[i] != 0)
    Td1[i] = Sd2[i];
    else
    Td1[i] = Td1[i-1];
    }
    Sistem.Cizgiler[2].Deger = Td1;

    var Sonyon = "" ;
    float Fiyat = 0.0F ;
    var Sinyal = "";


    //sistem kalıp

    for (int i = 20; i < Sistem.BarSayisi; i++)
    {
    if ( Td1[i] > 0 && Sonyon != "A" )
    {
    Sistem.Yon[i] = "A";
    Sonyon = "A";
    Fiyat = C[i];
    }
    else if (Td1[i] < 0 && Sonyon != "S" )
    {
    Sistem.Yon[i] = "S";
    Sonyon = "S";
    Fiyat = C[i];
    }
    }





    Sistem.GetiriHesapla("01/08/1990", 0.0);

    Sistem.GetiriMaxDDHesapla("01/01/1990", "01/01/2030");



    double KarCount = 0;

    double ZararCount = 0;

    int PrevBarNo = 0;

    var PrevYon = "";

    for (int i = 0; i < V.Count; i++)

    {

    if (PrevBarNo > 0)

    {

    if (PrevYon == "A" && (Sistem.Yon[i] == "F" || Sistem.Yon[i] == "S"))

    {

    if (C[i] > C[PrevBarNo]) KarCount++;

    if (C[i] < C[PrevBarNo]) ZararCount++;

    }

    if (PrevYon == "S" && (Sistem.Yon[i] == "F" || Sistem.Yon[i] == "A"))

    {

    if (C[i] < C[PrevBarNo]) KarCount++;

    if (C[i] > C[PrevBarNo]) ZararCount++;

    }

    }

    if (Sistem.Yon[i] != "")

    {

    PrevYon = Sistem.Yon[i];

    PrevBarNo = i;

    }

    }

    double Oran = 100 * KarCount / (KarCount + ZararCount);





    var Sure = (DateTime.Now - V[0].Date).TotalDays / 30.4;

    var gunkz = Sistem.GetiriKZGunSonu[Sistem.GetiriKZGunSonu.Count - 1] - Sistem.GetiriKZGun[Sistem.GetiriKZGun.Count - 1];



    var Date2Ay = DateTime.Now.AddDays(-60);

    var Date2AyBarNo = 0;

    for (int i = V.Count - 1; i > 0; i--)

    {

    if (V[i].Date <= Date2Ay)

    {

    Date2AyBarNo = i;

    break;

    }

    }

    var Getiri2Ay = Sistem.GetiriKZ[Sistem.GetiriKZ.Count - 1] - Sistem.GetiriKZ[Date2AyBarNo];



    var Date3Ay = DateTime.Now.AddDays(-90);

    var Date3AyBarNo = 0;

    for (int i = V.Count - 1; i > 0; i--)

    {

    if (V[i].Date <= Date3Ay)

    {

    Date3AyBarNo = i;

    break;

    }

    }

    var Getiri3Ay = Sistem.GetiriKZ[Sistem.GetiriKZ.Count - 1] - Sistem.GetiriKZ[Date3AyBarNo];



    var Date6Ay = DateTime.Now.AddDays(-180);

    var Date6AyBarNo = 0;

    for (int i = V.Count - 1; i > 0; i--)

    {

    if (V[i].Date <= Date6Ay)

    {

    Date6AyBarNo = i;

    break;

    }

    }

    var Getiri6Ay = Sistem.GetiriKZ[Sistem.GetiriKZ.Count - 1] - Sistem.GetiriKZ[Date6AyBarNo];



    Sistem.Dortgen(2, 10, 20, 230, 220, Color.Black, Color.Black, Color.Silver);



    Sistem.GradientYaziEkle(Sure.ToString("0.0") + " Ay", 2, 20, 20, Color.Silver, Color.Silver, "Tahoma", 12);

    Sistem.GradientYaziEkle(Sistem.GetiriKZ[Sistem.GetiriKZ.Count - 1].ToString("0.000"), 2, 150, 20, Sistem.GetiriKZ[Sistem.GetiriKZ.Count - 1] > 0 ? Color.Lime: Color.Red, Sistem.GetiriKZ[Sistem.GetiriKZ.Count - 1] > 0 ? Color.Lime: Color.Red, "Tahoma", 12);



    Sistem.GradientYaziEkle("1 Ay", 2, 20, 40, Color.Silver, Color.Silver, "Tahoma", 12);

    Sistem.GradientYaziEkle(Sistem.GetiriBirAy.ToStrin g("0.000"), 2, 150, 40, Sistem.GetiriBirAy > 0 ? Color.Lime: Color.Red, Sistem.GetiriBirAy > 0 ? Color.Lime: Color.Red, "Tahoma", 12);



    Sistem.GradientYaziEkle("3 Ay", 2, 20, 60, Color.Silver, Color.Silver, "Tahoma", 12);

    Sistem.GradientYaziEkle(Getiri3Ay.ToString("0.000" ), 2, 150, 60, Getiri3Ay > 0 ? Color.Lime: Color.Lime, Getiri3Ay > 0 ? Color.Lime: Color.Lime, "Tahoma", 12);



    Sistem.GradientYaziEkle("6 Ay", 2, 20, 80, Color.Silver, Color.Silver, "Tahoma", 12);

    Sistem.GradientYaziEkle(Getiri6Ay.ToString("0.000" ), 2, 150, 80, Getiri6Ay > 0 ? Color.Lime: Color.Red, Getiri6Ay > 0 ? Color.Lime: Color.Red, "Tahoma", 12);



    Sistem.GradientYaziEkle("Bu Gün", 2, 20, 200, Color.Silver, Color.Silver, "Tahoma", 12);

    Sistem.GradientYaziEkle(gunkz.ToString("0.000"), 2, 150, 200,gunkz > 0 ? Color.Lime: Color.Red, gunkz > 0 ? Color.Lime: Color.Red, "Tahoma", 12);



    Sistem.GradientYaziEkle("İşlem Sayısı", 2, 20, 120, Color.Silver, Color.Silver, "Tahoma", 12);

    Sistem.GradientYaziEkle(Sistem.GetiriIslemSayisiPo z[V.Count - 1].ToString("0"), 2, 150, 120, Color.Gold, Color.Gold, "Tahoma", 12);



    Sistem.GradientYaziEkle("Ortalama", 2, 20, 140, Color.Silver, Color.Silver, "Tahoma", 12);

    Sistem.GradientYaziEkle((Sistem.GetiriIslemSayisiP oz[V.Count - 1] / Sure).ToString("0"), 2, 150, 140, Color.Gold, Color.Gold, "Tahoma", 12);



    Sistem.GradientYaziEkle("Karlılık", 2, 20, 160, Color.Silver, Color.Silver, "Tahoma", 12);

    Sistem.GradientYaziEkle("% " + Sistem.GetiriKarIslemOran.ToString("0.00"), 2, 150, 160, Color.Gold, Color.Gold, "Tahoma", 12);



    Sistem.GradientYaziEkle("Profit Fact.",2, 20, 180, Color.Silver, Color.Silver, "Tahoma", 12);

    Sistem.GradientYaziEkle(Sistem.ProfitFactor.ToStri ng("0.00"), 2, 150, 180, Color.Gold, Color.Gold, "Calibri", 12);



    Sistem.GradientYaziEkle("Max DD",2, 20, 100, Color.Red, Color.Red, "Tahoma", 14);

    Sistem.GradientYaziEkle(Sistem.GetiriMaxDD.ToStrin g("0.000"), 2, 150, 100, Color.Red, Color.Red, "Tahoma", 12);




    Sistem.DolguEkle(0, 1, Color.FromArgb(120, 0, 255, 0), Color.FromArgb(120, 255, 0, 0));





    //string syspertrh = "01/01/2007"; //
    //if ( syspertrh != "" )
    //{ Sistem.GetiriHesapla( syspertrh , 0.012);
    //var KarZarar = Sistem.GetiriKZ;
    //Sistem.Cizgiler[5].Deger = KarZarar;
    //Sistem.Cizgiler[5].Stil=5;
    //Sistem.Cizgiler[5].Panel = 4;
    //Sistem.Cizgiler[5].Aciklama = "NET_K/Z";
    //Sistem.Cizgiler[5].ActiveBool = true;
    var KZYuzde = Sistem.Liste(0);
    float TopTeminat = 430;
    float Teminat = 215;
    float Kaldıraç = 6.97f;
    for (int i = 1; i < Sistem.BarSayisi; i++)
    {
    //KZYuzde[i] = ( Sistem.GetiriKZGun[i] * (Kaldıraç * Teminat) / TopTeminat) * Kaldıraç ;
    KZYuzde[i] = ( Sistem.GetiriKZGun[i] * 10000 / TopTeminat ) ;
    }
    Sistem.Cizgiler[6].Deger = KZYuzde ;
    Sistem.Cizgiler[6].Stil=1;
    Sistem.Cizgiler[6].Panel=2;
    Sistem.Cizgiler[6].Aciklama = "NET_K/Z_Yüzde";
    //Sistem.Cizgiler[6].ActiveBool = true;

    //Sistem.GradientYaziEkle("NET_K/Z_Yüzde", 2, 20, 220, Color.Silver, Color.Silver, "Tahoma", 11);

    //Sistem.GradientYaziEkle((Sistem.GetiriKZGun * 10000 / TopTeminat).ToString("0.000"), 2, 150, 220, Color.Gold, Color.Gold, "Tahoma", 12);

    Sistem.Cizgiler[0].Deger = Sistem.GetiriKZGunSonu;

    Sistem.Cizgiler[1].Deger = Sistem.GetiriKZGun;

  7.  Alıntı Originally Posted by belamim Yazıyı Oku
    Maalesef Sistem.DonemCevir işimi görmüyor, çünkü çevrilecek üst dönem verilerine ihtiyaç duyuyor.

    Sistem.DonemCevir(Veriler, UstDonemVerileri, UstDonemCevrilecekData)

    Bende üst dönem verileri yok sadece 1dk veriler var. Sadece 1dk lık verileri kullanarak 5, 15,60 ve günlük verileri hesaplamak istiyorum. Bütün periyotlarda ait verileri temin etmek çok zahmetli ve sorunlu bir iş. Bu nedenle dönem çevir metodu işimi görmez. Farklı bir önerisi olan var mı?


    float gun_kapanis =0;
    var gunluk_kapanislar = Sistem.Liste(0);



    float saat_kapanis =0;
    var saatlik_kapanislar = Sistem.Liste(0);

    float dk_30_kapanis =0;
    var dk_30_kapanislar = Sistem.Liste(0);





    for (int i = 5 ; i < V.Count; i++)
    {

    if ( V[i-1].Date.Day!= V[i].Date.Day ) // Gün periyot kapanışları
    gun_kapanis=C[i-1];
    gunluk_kapanislar[i]=gun_kapanis;


    if ( V[i].Date.Day % 10== 0 ) // 10 dk periyot kapanışları
    saat_kapanis=C[i-1];
    saatlik_kapanislar[i]=saat_kapanis;

    if ( V[i].Date.Minute % 5==0 ) // 5dk periyot kapanışları
    dk_30_kapanis=C[i-1];
    dk_30_kapanislar[i]=dk_30_kapanis;

    }
    belki işini görebilir

  8.  Alıntı Originally Posted by mahmutbir Yazıyı Oku
    Merhabalar herkese kolay gelsin aşağıdaki formülde işlem sayısını nasıl azaltabilirim yardımcı olursanız sevinirim


    var V = Sistem.GrafikVerileri ;
    var C = Sistem.GrafikFiyatSec("Kapanis");
    var H = Sistem.GrafikFiyatOku(V, "Yuksek" ) ;
    var L = Sistem.GrafikFiyatOku(V, "Dusuk" ) ;
    var Us = Sistem.Liste(0); //Up swing
    var Ds = Sistem.Liste(0); // Down Swing
    var Dsa = new List<int>();
    var Usa = new List<int>();
    var Lsx = Sistem.Liste(0); //LovestSince Listesi
    var Hsx = Sistem.Liste(0); //HighestSince Listesi
    var Sd1 = Sistem.Liste(0);
    var Sd2 = Sistem.Liste(0);

    var BarNo1 = 0; //Barsince US için
    var BarNo2 = 0; //BarSince DS için
    var BarNo3 = 0; //Barsince SD=1 için
    var BarNo4 = 0; //BarSince SD=-1 için
    var BS1 = Sistem.Liste(0); //BarSince SD=1 Listesi
    var BS_1 = Sistem.Liste(0); //BarSince SD=-1 Listesi
    var Td1 = Sistem.Liste(0);


    for (int i=3; i<V.Count; i++)
    {
    if ( H[i] > H[i-1] && H[i-1] > H[i-2] && H[i-2] > H[i-3])
    BarNo1 = i;

    if (BarNo1 > 0)
    Us[i] = i - BarNo1;

    if ( L[i] < L[i-1] && L[i-1] < L[i-2] && L[i-2] < L[i-3])
    BarNo2 = i;

    if (BarNo2 > 0)
    Ds[i] = i - BarNo2;


    if (Ds[i] == 0 )
    Dsa.Add(i);
    if (Us[i] == 0 )
    Usa.Add(i);

    if(Dsa.Count > 1)
    {
    var y = new List<float>();
    for(int k = Dsa[Dsa.Count-1]; k<i+1; k++)
    y.Add(L[k]);

    Lsx[i] = y.Min();
    y.Clear();
    }
    if(Usa.Count > 1)
    {
    var y = new List<float>();
    for(int k = Dsa[Dsa.Count-1]; k<i+1; k++)
    y.Add(H[k]);

    Hsx[i] = y.Max();
    y.Clear();
    }

    if(Us[i] == 0 && L[i-1] != Lsx[i] )
    Sd1[i] = 1;

    else if(Ds[i] == 0 && H[i-1] != Hsx[i] )
    Sd1[i] = -1;

    else
    Sd1[i] = 0;

    if ( Sd1[i] == 1)
    BarNo3 = i;

    if (BarNo3 > 0)
    BS1[i] = i - BarNo3;

    if ( Sd1[i] == -1)
    BarNo4 = i;

    if (BarNo4 > 0)
    BS_1[i] = i - BarNo4;

    if(Sd1[i] == 1 && BS1[i-1] > BS_1[i-1] )
    Sd2[i] = 1;
    else if(Sd1[i] == -1 && BS1[i-1] < BS_1[i-1] )
    Sd2[i] = -1;
    else
    Sd2[i] = 0;

    if(Sd2[i] != 0)
    Td1[i] = Sd2[i];
    else
    Td1[i] = Td1[i-1];
    }
    Sistem.Cizgiler[2].Deger = Td1;

    var Sonyon = "" ;
    float Fiyat = 0.0F ;
    var Sinyal = "";


    //sistem kalıp

    for (int i = 20; i < Sistem.BarSayisi; i++)
    {
    if ( Td1[i] > 0 && Sonyon != "A" )
    {
    Sistem.Yon[i] = "A";
    Sonyon = "A";
    Fiyat = C[i];
    }
    else if (Td1[i] < 0 && Sonyon != "S" )
    {
    Sistem.Yon[i] = "S";
    Sonyon = "S";
    Fiyat = C[i];
    }
    }





    Sistem.GetiriHesapla("01/08/1990", 0.0);

    Sistem.GetiriMaxDDHesapla("01/01/1990", "01/01/2030");



    double KarCount = 0;

    double ZararCount = 0;

    int PrevBarNo = 0;

    var PrevYon = "";

    for (int i = 0; i < V.Count; i++)

    {

    if (PrevBarNo > 0)

    {

    if (PrevYon == "A" && (Sistem.Yon[i] == "F" || Sistem.Yon[i] == "S"))

    {

    if (C[i] > C[PrevBarNo]) KarCount++;

    if (C[i] < C[PrevBarNo]) ZararCount++;

    }

    if (PrevYon == "S" && (Sistem.Yon[i] == "F" || Sistem.Yon[i] == "A"))

    {

    if (C[i] < C[PrevBarNo]) KarCount++;

    if (C[i] > C[PrevBarNo]) ZararCount++;

    }

    }

    if (Sistem.Yon[i] != "")

    {

    PrevYon = Sistem.Yon[i];

    PrevBarNo = i;

    }

    }

    double Oran = 100 * KarCount / (KarCount + ZararCount);





    var Sure = (DateTime.Now - V[0].Date).TotalDays / 30.4;

    var gunkz = Sistem.GetiriKZGunSonu[Sistem.GetiriKZGunSonu.Count - 1] - Sistem.GetiriKZGun[Sistem.GetiriKZGun.Count - 1];



    var Date2Ay = DateTime.Now.AddDays(-60);

    var Date2AyBarNo = 0;

    for (int i = V.Count - 1; i > 0; i--)

    {

    if (V[i].Date <= Date2Ay)

    {

    Date2AyBarNo = i;

    break;

    }

    }

    var Getiri2Ay = Sistem.GetiriKZ[Sistem.GetiriKZ.Count - 1] - Sistem.GetiriKZ[Date2AyBarNo];



    var Date3Ay = DateTime.Now.AddDays(-90);

    var Date3AyBarNo = 0;

    for (int i = V.Count - 1; i > 0; i--)

    {

    if (V[i].Date <= Date3Ay)

    {

    Date3AyBarNo = i;

    break;

    }

    }

    var Getiri3Ay = Sistem.GetiriKZ[Sistem.GetiriKZ.Count - 1] - Sistem.GetiriKZ[Date3AyBarNo];



    var Date6Ay = DateTime.Now.AddDays(-180);

    var Date6AyBarNo = 0;

    for (int i = V.Count - 1; i > 0; i--)

    {

    if (V[i].Date <= Date6Ay)

    {

    Date6AyBarNo = i;

    break;

    }

    }

    var Getiri6Ay = Sistem.GetiriKZ[Sistem.GetiriKZ.Count - 1] - Sistem.GetiriKZ[Date6AyBarNo];



    Sistem.Dortgen(2, 10, 20, 230, 220, Color.Black, Color.Black, Color.Silver);



    Sistem.GradientYaziEkle(Sure.ToString("0.0") + " Ay", 2, 20, 20, Color.Silver, Color.Silver, "Tahoma", 12);

    Sistem.GradientYaziEkle(Sistem.GetiriKZ[Sistem.GetiriKZ.Count - 1].ToString("0.000"), 2, 150, 20, Sistem.GetiriKZ[Sistem.GetiriKZ.Count - 1] > 0 ? Color.Lime: Color.Red, Sistem.GetiriKZ[Sistem.GetiriKZ.Count - 1] > 0 ? Color.Lime: Color.Red, "Tahoma", 12);



    Sistem.GradientYaziEkle("1 Ay", 2, 20, 40, Color.Silver, Color.Silver, "Tahoma", 12);

    Sistem.GradientYaziEkle(Sistem.GetiriBirAy.ToStrin g("0.000"), 2, 150, 40, Sistem.GetiriBirAy > 0 ? Color.Lime: Color.Red, Sistem.GetiriBirAy > 0 ? Color.Lime: Color.Red, "Tahoma", 12);



    Sistem.GradientYaziEkle("3 Ay", 2, 20, 60, Color.Silver, Color.Silver, "Tahoma", 12);

    Sistem.GradientYaziEkle(Getiri3Ay.ToString("0.000" ), 2, 150, 60, Getiri3Ay > 0 ? Color.Lime: Color.Lime, Getiri3Ay > 0 ? Color.Lime: Color.Lime, "Tahoma", 12);



    Sistem.GradientYaziEkle("6 Ay", 2, 20, 80, Color.Silver, Color.Silver, "Tahoma", 12);

    Sistem.GradientYaziEkle(Getiri6Ay.ToString("0.000" ), 2, 150, 80, Getiri6Ay > 0 ? Color.Lime: Color.Red, Getiri6Ay > 0 ? Color.Lime: Color.Red, "Tahoma", 12);



    Sistem.GradientYaziEkle("Bu Gün", 2, 20, 200, Color.Silver, Color.Silver, "Tahoma", 12);

    Sistem.GradientYaziEkle(gunkz.ToString("0.000"), 2, 150, 200,gunkz > 0 ? Color.Lime: Color.Red, gunkz > 0 ? Color.Lime: Color.Red, "Tahoma", 12);



    Sistem.GradientYaziEkle("İşlem Sayısı", 2, 20, 120, Color.Silver, Color.Silver, "Tahoma", 12);

    Sistem.GradientYaziEkle(Sistem.GetiriIslemSayisiPo z[V.Count - 1].ToString("0"), 2, 150, 120, Color.Gold, Color.Gold, "Tahoma", 12);



    Sistem.GradientYaziEkle("Ortalama", 2, 20, 140, Color.Silver, Color.Silver, "Tahoma", 12);

    Sistem.GradientYaziEkle((Sistem.GetiriIslemSayisiP oz[V.Count - 1] / Sure).ToString("0"), 2, 150, 140, Color.Gold, Color.Gold, "Tahoma", 12);



    Sistem.GradientYaziEkle("Karlılık", 2, 20, 160, Color.Silver, Color.Silver, "Tahoma", 12);

    Sistem.GradientYaziEkle("% " + Sistem.GetiriKarIslemOran.ToString("0.00"), 2, 150, 160, Color.Gold, Color.Gold, "Tahoma", 12);



    Sistem.GradientYaziEkle("Profit Fact.",2, 20, 180, Color.Silver, Color.Silver, "Tahoma", 12);

    Sistem.GradientYaziEkle(Sistem.ProfitFactor.ToStri ng("0.00"), 2, 150, 180, Color.Gold, Color.Gold, "Calibri", 12);



    Sistem.GradientYaziEkle("Max DD",2, 20, 100, Color.Red, Color.Red, "Tahoma", 14);

    Sistem.GradientYaziEkle(Sistem.GetiriMaxDD.ToStrin g("0.000"), 2, 150, 100, Color.Red, Color.Red, "Tahoma", 12);




    Sistem.DolguEkle(0, 1, Color.FromArgb(120, 0, 255, 0), Color.FromArgb(120, 255, 0, 0));





    //string syspertrh = "01/01/2007"; //
    //if ( syspertrh != "" )
    //{ Sistem.GetiriHesapla( syspertrh , 0.012);
    //var KarZarar = Sistem.GetiriKZ;
    //Sistem.Cizgiler[5].Deger = KarZarar;
    //Sistem.Cizgiler[5].Stil=5;
    //Sistem.Cizgiler[5].Panel = 4;
    //Sistem.Cizgiler[5].Aciklama = "NET_K/Z";
    //Sistem.Cizgiler[5].ActiveBool = true;
    var KZYuzde = Sistem.Liste(0);
    float TopTeminat = 430;
    float Teminat = 215;
    float Kaldıraç = 6.97f;
    for (int i = 1; i < Sistem.BarSayisi; i++)
    {
    //KZYuzde[i] = ( Sistem.GetiriKZGun[i] * (Kaldıraç * Teminat) / TopTeminat) * Kaldıraç ;
    KZYuzde[i] = ( Sistem.GetiriKZGun[i] * 10000 / TopTeminat ) ;
    }
    Sistem.Cizgiler[6].Deger = KZYuzde ;
    Sistem.Cizgiler[6].Stil=1;
    Sistem.Cizgiler[6].Panel=2;
    Sistem.Cizgiler[6].Aciklama = "NET_K/Z_Yüzde";
    //Sistem.Cizgiler[6].ActiveBool = true;

    //Sistem.GradientYaziEkle("NET_K/Z_Yüzde", 2, 20, 220, Color.Silver, Color.Silver, "Tahoma", 11);

    //Sistem.GradientYaziEkle((Sistem.GetiriKZGun * 10000 / TopTeminat).ToString("0.000"), 2, 150, 220, Color.Gold, Color.Gold, "Tahoma", 12);

    Sistem.Cizgiler[0].Deger = Sistem.GetiriKZGunSonu;

    Sistem.Cizgiler[1].Deger = Sistem.GetiriKZGun;
    var SonYon = "";
    double SonFiyat = 0.0;
    var Sinyal = "";
    var izleyen = 0F;
    int BarNo = 0;





    for (int i=13; i < Sistem.BarSayisi; i++)
    {









    if (i >= BarNo + 48)

    if (Sinyal != SonYon && Sinyal != "")
    {
    SonYon = Sinyal;
    Sistem.Yon[i] = SonYon;
    SonFiyat = V[i].Close;

    if ( SonYon == "F")
    {
    BarNo = i;
    }
    }
    }

Sayfa 565/594 İlkİlk ... 65465515555563564565566567575 ... SonSon

Yer İmleri

Yer İmleri

Gönderi Kuralları

  • Yeni konu açamazsınız
  • Konulara cevap yazamazsınız
  • Yazılara ek gönderemezsiniz
  • Yazılarınızı değiştiremezsiniz
  •