Sayfa 233/350 İlkİlk ... 133183223231232233234235243283333 ... SonSon
Arama sonucu : 2796 madde; 1,857 - 1,864 arası.

Konu: Sistem Karşılaştırma 2

  1. #1857
    Bir arkadaşı istemeden kırmış olabilirim. Kan hızlı akıyor.
    Lütfen beni bağışlasın (Forumda aradım ama mesajı bulamadım)
    Sağlıcakla.

  2. Aynı periyoda ait sistemleri görsel kıyaslama (At yarışı peronu gibi)
    Kod:
    var StartDate = new DateTime(2018, 12, 1, 0, 0, 0);
    
    var SistemDictionary = new Dictionary<string, int>();
    SistemDictionary.Add("A2_K5", 1);   // 1
    SistemDictionary.Add("A5_K5", 1);   // 2
    SistemDictionary.Add("C1_K5", 1);   // 3
    SistemDictionary.Add("C6_K5", 1);   // 4
    
    
    int StartBar = 0;
    var V = Sistem.GrafikVerileri;
    for (int i = 1; i < Sistem.BarSayisi; i++)
    {
        if (V[i].Date >= StartDate)
        {
            StartBar = i;
            break;
        }
    }
    
    //
    List<List<float>> GetiriList = new List<List<float>>();
    int Sayac = 0;
    foreach (var sistemitem in SistemDictionary)
    {
        Sayac++;
        var MySistem = Sistem.SistemGetir(sistemitem.Key, "VIP'VIP-X030", "1");
        MySistem.GetiriHesapla("01/01/2000", 0.0);
        GetiriList.Add(MySistem.GetiriKZ);
        Sistem.Cizgiler[Sayac].Deger = MySistem.GetiriKZ;
    }
    
    //
    List<float> StartList = new List<float>();
    for (int j = 0; j < GetiriList.Count; j++)
        StartList.Add(GetiriList[j][StartBar]);
    
    for (int i = 1; i < Sistem.BarSayisi; i++)
    {
        for (int j = 0; j < GetiriList.Count; j++)
        {
            if (V[i].Date < StartDate)
                GetiriList[j][i] = 0;
            else
                GetiriList[j][i] -= StartList[j];
        }
    }
    
    //
    var OrtList = Sistem.Liste(0);
    for (int i = 1; i < Sistem.BarSayisi; i++)
    {
        if (V[i].Date.DayOfWeek < V[i - 1].Date.DayOfWeek)
            Sistem.DikeyCizgiEkle(i, Color.FromArgb(70, 70, 70), 2, 2);
    
        float Toplam = 0;
        for (int j = 0; j < GetiriList.Count; j++)
            Toplam += GetiriList[j][i];
        OrtList[i] = Toplam / GetiriList.Count;
    }
    Sistem.Cizgiler[0].Deger = OrtList;
    
    //
    for (int j = 0; j < GetiriList.Count; j++)
    {
        Sistem.Dortgen(2, 40, j * 40 + 30, 120, 35, Color.Black, Color.Black, Color.Silver);
        Sistem.GradientYaziEkle(SistemDictionary.ElementAt(j).Key, 2, 50, j * 40 + 35, Sistem.Cizgiler[j + 1].Renk, Sistem.Cizgiler[j + 1].Renk, "Tahoma", 14);
    
        Sistem.Dortgen(2, 170, j * 40 + 30, 120, 35, Color.Black, Color.Black, Color.Silver);
        Sistem.GradientYaziEkle(GetiriList[j][GetiriList[j].Count - 1].ToString("0.000"), 2, 180, j * 40 + 35, Sistem.Cizgiler[j + 1].Renk, Sistem.Cizgiler[j + 1].Renk, "Tahoma", 14);
    }
    
    Sistem.Dortgen(3, 40, 30, 120, 35, Color.Black, Color.Black, Color.Silver);
    Sistem.GradientYaziEkle(Sistem.Name, 3, 50, 35, Sistem.Cizgiler[0].Renk, Sistem.Cizgiler[0].Renk, "Tahoma", 14);
    
    Sistem.Dortgen(3, 170, 30, 120, 35, Color.Black, Color.Black, Color.Silver);
    Sistem.GradientYaziEkle(OrtList[OrtList.Count - 1].ToString("0.000"), 3, 180, 35, Sistem.Cizgiler[0].Renk, Sistem.Cizgiler[0].Renk, "Tahoma", 14);
    vahap beyaz, ahmet çakar ....

  3.  Alıntı Originally Posted by Tiberius Yazıyı Oku
    Aynı periyoda ait sistemleri görsel kıyaslama (At yarışı peronu gibi)
    Kod:
    var StartDate = new DateTime(2018, 12, 1, 0, 0, 0);
    
    var SistemDictionary = new Dictionary<string, int>();
    SistemDictionary.Add("A2_K5", 1);   // 1
    SistemDictionary.Add("A5_K5", 1);   // 2
    SistemDictionary.Add("C1_K5", 1);   // 3
    SistemDictionary.Add("C6_K5", 1);   // 4
    
    
    int StartBar = 0;
    var V = Sistem.GrafikVerileri;
    for (int i = 1; i < Sistem.BarSayisi; i++)
    {
        if (V[i].Date >= StartDate)
        {
            StartBar = i;
            break;
        }
    }
    
    //
    List<List<float>> GetiriList = new List<List<float>>();
    int Sayac = 0;
    foreach (var sistemitem in SistemDictionary)
    {
        Sayac++;
        var MySistem = Sistem.SistemGetir(sistemitem.Key, "VIP'VIP-X030", "1");
        MySistem.GetiriHesapla("01/01/2000", 0.0);
        GetiriList.Add(MySistem.GetiriKZ);
        Sistem.Cizgiler[Sayac].Deger = MySistem.GetiriKZ;
    }
    
    //
    List<float> StartList = new List<float>();
    for (int j = 0; j < GetiriList.Count; j++)
        StartList.Add(GetiriList[j][StartBar]);
    
    for (int i = 1; i < Sistem.BarSayisi; i++)
    {
        for (int j = 0; j < GetiriList.Count; j++)
        {
            if (V[i].Date < StartDate)
                GetiriList[j][i] = 0;
            else
                GetiriList[j][i] -= StartList[j];
        }
    }
    
    //
    var OrtList = Sistem.Liste(0);
    for (int i = 1; i < Sistem.BarSayisi; i++)
    {
        if (V[i].Date.DayOfWeek < V[i - 1].Date.DayOfWeek)
            Sistem.DikeyCizgiEkle(i, Color.FromArgb(70, 70, 70), 2, 2);
    
        float Toplam = 0;
        for (int j = 0; j < GetiriList.Count; j++)
            Toplam += GetiriList[j][i];
        OrtList[i] = Toplam / GetiriList.Count;
    }
    Sistem.Cizgiler[0].Deger = OrtList;
    
    //
    for (int j = 0; j < GetiriList.Count; j++)
    {
        Sistem.Dortgen(2, 40, j * 40 + 30, 120, 35, Color.Black, Color.Black, Color.Silver);
        Sistem.GradientYaziEkle(SistemDictionary.ElementAt(j).Key, 2, 50, j * 40 + 35, Sistem.Cizgiler[j + 1].Renk, Sistem.Cizgiler[j + 1].Renk, "Tahoma", 14);
    
        Sistem.Dortgen(2, 170, j * 40 + 30, 120, 35, Color.Black, Color.Black, Color.Silver);
        Sistem.GradientYaziEkle(GetiriList[j][GetiriList[j].Count - 1].ToString("0.000"), 2, 180, j * 40 + 35, Sistem.Cizgiler[j + 1].Renk, Sistem.Cizgiler[j + 1].Renk, "Tahoma", 14);
    }
    
    Sistem.Dortgen(3, 40, 30, 120, 35, Color.Black, Color.Black, Color.Silver);
    Sistem.GradientYaziEkle(Sistem.Name, 3, 50, 35, Sistem.Cizgiler[0].Renk, Sistem.Cizgiler[0].Renk, "Tahoma", 14);
    
    Sistem.Dortgen(3, 170, 30, 120, 35, Color.Black, Color.Black, Color.Silver);
    Sistem.GradientYaziEkle(OrtList[OrtList.Count - 1].ToString("0.000"), 3, 180, 35, Sistem.Cizgiler[0].Renk, Sistem.Cizgiler[0].Renk, "Tahoma", 14);
    Sistem Kıyaslama Başka Bir Örnek :
    (kadim sistemler üzerinde sert KaZe uygulaması)

    vahap beyaz, ahmet çakar ....

  4. Kodlama konusunda bilgili arkadaşlardan ricam var. Tiberus, ykoçi bearbul vb. diğer arkadaşlar tasarlamak istediğim bir indikator var.

    Hatta mümkünse bunu idealin kütüphanesine de ekleyelim çok değişik projelerde işe yarayacak bir indikator olacğaını düşünüyorum.

    Kendi uydurduğum bir indikatör. Yabancı kaynaklarda böyle bir indikatör var mı bilmiyorum. Eğer yoksa İndikatörün ismini. Erhanifilter koymak isterim.

    İndikatörün parametrelerini tarif edeyim önce.

    var Sistem.ErhanifilterPuan(Liste, 3.0f, 3.0f); // 3.0 anlamı 3000 puan 3000 puan anlamına geliyor. 0.1f yaparsan 100 puan anlamına gelecekti.

    Birde % olanı olacak.

    var Sistem.Erhanifilter(Liste, 3 , 3); Buda %3 e %3 manasında olacak mesela.

    Şimdi çalışma prensibine gelirsek.

    Diyelimki var Sistem.Erhanifilter(Liste, 3, 5); parametresini kullanacağız.

    İlk parametre olan 3 fiyatlarda görülen en tepeden %3 gerilediğinde indikatörümüz 1 değerini alsın indikatör 1 değerini aldıktan sonra görülen en dipten yukarı %5 çıktığında da -1 değerini alsın.

    dipten çıkışta -1 değerini alması için ilk önce +1 değerini alması şart. Yani +1 gerçekleşmeden -1 hiçbir zaman olamaz.


    Bu indikatör ne işe yarar Biraz RSİ vari bir çalışma prensibi var ancak rsi den daha anlamlı ve opsiyonel kullanılabilir diye düşünüyorum.

    1-Örnegın orta uzun vadeli yukarı yönlü bir trend oldugunu düşünelim.
    İndikatore de 1 olursa al -1 olursa sat dediğimizi düşünelim.

    BU durum da Erhanifilter(V, 2,3); paramtresi kullanılabilir. Fiyatlar (V) ve/veya(liste) görülen en tepeden %2 düştüğünde indikator 1 değerini alacaktır. Dolayısıyla AL oku yanacak Görülen en dipten %3 yükseldiğinde de İndikator -1 değerini alacağı için sat yakacaktır. Böylece düzletmeyle beraber yukarı doğru giden bir grafikte trend kanal çizgisinde al sat yapan indikatör görevi görecektir.

    2-Orta uzun vadeli aşağı yönlü bir trend oldugunda Erhanifilter(V, 3,2); paramtresi fiyatlar görülen en tepeden %3 düştüğünde AL En dipten %2 yükseldiğinde Sat oku koyacak ve düşen kanal çizgisindeki hareketlere tam uyumlu çalışacaktır.

    3-Yatay piyasa da kullanım için ise Erhanifilter (V,2,2); parametresi fiyatlar görülen en tepeden %2 düştüğünde AL görülen en dipten %2 yükseldiğinde SAT şeklinde çalıştırarak yatay piyasa da verimli sonuçlar üretebilir.

    BU sistemin RSİ den ayıran en büyük farklar Sert hareketlere erkenden tepki verebilmesi yumuşak çikiş hareketlerinde de yine sinyale erkenden oturabilmesi.

    Opsiyonel olarak herhangibir listenin içindede kullanılabilir böylece daha opsiyonel 2 çift çizgi elde edilebilir. Örnegın RSİ içine normalde ya MA atarız yada İki adet seviye belirler çizginin birini yukarı kesince sat diğerini aşağı kesince al deriz. BU çizgiler sabit kaldığı için uzun süre boyunca bir tarafa kesişim gelmeyebiliyor.

    Fakat erhanifilterPuan indikatöründe parametreler doğru girildiği sürece böyle bir sorun oluşmaz. Örneğin ErhanifilterPuan(RSI, 0.030f , 0.030f); girildiğinde RSİ indikatörünün gördüğü en tepeden 30 birim/puan düştüğünde AL Gördüğü en dipten 30 puan yükseldiğinde de sat sinyali yakar.

    Böylece 2 adet seviyeniz her yeni tepe ve dipte yer değiştirir. her sefrinde aynı seviyeye çarpmalar sık sık aynı yerde sinyal oluşturmalar kararsızlıklar ortadan kalkacaktır.


    Bu indikatör farklı şekillerde kullanılabilir.

    Örnegin 50 lik ma 100 lük MA yı ve 200 lük MA yı yukarı kesmişse Erhanifilter(V,1,3); göre al sat. ana trend yukarı yönde ise görülen tepeden %1 düşünce al aldıktan sonra görülen en dipten %3 yükselince sat.

    50 lik ma 100 lüğü ve 200 lüğü aşağı kestiğinde Erhanifilter(V,3,1); göre al sat. Ana trend aşağı döneceği için aşağı hareket en tepeden %3 düşmüşse al görülen en dipten %1 yükselince sat

    50 lik 100 lüğü yukarı/aşağı kesmiş 200 lüğü kesememişse erhanifilter(V, 1,1) çalıştır. Piyasa kararsız anlamına gelir kararsız yatay piyasada sistem en tepeden %1 düşünce alır en dipten %1 yükselince satar.

    Gibi gibi Bilmiyorum yapılabilir mi

    Bazı görsel örnekler temsili;





    Senin almaya cesaret edemediğin riskleri alanlar, senin yaşamak istediğin hayatı yaşarlar..
    Sokrates twit @erhanacikgoz1

  5. Erhan Bey, zigzag indikatörüne benzettim.
    Benzeri bir çalışma sanırım.

  6. Erhan bey bu trend kanal çalışmalarını ben formülün içine dökerek test etmeye çalıştım. Benim istediğim bu kanallar hep düz çizgi içinde olsun. Aynı trend çizgisi çizdiğimiz gibi olsun istiyorum fakat hiç bir zaman düz çizgi olmadı.
    Hhv,llv,h,l, gibi datalarla tepe dip tespit edilip içindeki kanala en uygun sistem parametresi bulmak için ugraşınca şöyle bir şey ortaya çıkıyor. Fiyatlar hiçbir zaman bukanalların dışına çıkamıyor. Girilen bar sayısına göre dip tepe hep değişiyor. Bol. band gibi fiyatlar hep kanalın içinde oluyor. Buda filtre olarak kullanılamıyor.

    Trend çizgileri kaydedilip formül içinde kullanılarak çizdiğimiz trend kanalı gibi düz çizgi gibi olabilmektedir. Fakat sistemi test ederken sdece bu trend çizgilerinin şeçilen bar içinde işlemleri gösteriyor. Geçmiş trend çizgisi kanalı dışında sistem işlem yapmıyor gözüküyor.



    SM-J500FN cihazımdan hisse.net mobile app kullanarak gönderildi.

  7.  Alıntı Originally Posted by atakanözbaki Yazıyı Oku
    Erhan bey bu trend kanal çalışmalarını ben formülün içine dökerek test etmeye çalıştım. Benim istediğim bu kanallar hep düz çizgi içinde olsun. Aynı trend çizgisi çizdiğimiz gibi olsun istiyorum fakat hiç bir zaman düz çizgi olmadı.
    Hhv,llv,h,l, gibi datalarla tepe dip tespit edilip içindeki kanala en uygun sistem parametresi bulmak için ugraşınca şöyle bir şey ortaya çıkıyor. Fiyatlar hiçbir zaman bukanalların dışına çıkamıyor. Girilen bar sayısına göre dip tepe hep değişiyor. Bol. band gibi fiyatlar hep kanalın içinde oluyor. Buda filtre olarak kullanılamıyor.

    Trend çizgileri kaydedilip formül içinde kullanılarak çizdiğimiz trend kanalı gibi düz çizgi gibi olabilmektedir. Fakat sistemi test ederken sdece bu trend çizgilerinin şeçilen bar içinde işlemleri gösteriyor. Geçmiş trend çizgisi kanalı dışında sistem işlem yapmıyor gözüküyor.



    SM-J500FN cihazımdan hisse.net mobile app kullanarak gönderildi.
    BU indikatorü yapabilecek biri çıkarsa sadece basit bir trend kanalı indikatörü olmayacaktır. Cok daha farklı yerlerde görev alarak sıstemı daha iyi noktalara götüreceğini düşünüyorum.

    Sizin sorunuza gelirsek geçmişdeki kaç adet bar sayısını baz alarak trend çizecekte koyacak. Bir bilgisayar gibi düşünmeniz lazım.

    Sistem yaza yaza bir bilgisayar gibi düşünmek nasıl birşey anlayacaksınız. Bir stratejinin repaint olup olmayacağını daha yazmadan anlayabileceksiniz.

    Sistemin sizin gördüğünüz trend çizgisini çizmezsi için bir matematik uydurmanız gerekiyor.
    Örneğin her ayın başında son 10 bara göre trend çiz gibi birşey demeniz lazım ki trendi uzatıp durmasın kısaca trend çiz yerine o görevi yapabilecek matematiksel bir fomul geliştirmek lazım.

    En basit yöntemlerden bir tanesi MA kullanmak olabilir. BU ma nın hhv ye uzaklıgını hesaplatırsınız % sel olarak sonra o yüzdeyi ise ma + hhv ma arasındaki % = üst kanal çizgisi oluşur. ma + llv ma arasındaki farkın % si = alt kanal bandı.

    tam olarak trend kanalı olmasa da bir bolınger bandı gibi birşey elde edersiniz. Trend kanalının az bucuk benzerı olacaktır.

    Bunun gibi bir formul bir matematik uydurmak lazım.

    her ne yaparsanız yapın müthiş bir mucıtlık yapmak çok zor.

    Asıl mucitlik Para yönetiminde gizli.

    biraz önce bir sistem daha tasarladım. 5 dakıkalık grafiklerde para yönetimi içeren bir sistem. daha modifikasyona açık ancak hiç modifiye bile etmeden elde edileni söyleyeyim.

    Toplam kazanç ise 12 yılda 1,363,468 KAT bileşik Getiri.

    Şimdi bu teoride böyle teoriden kastım şu piyasadaki hacim sınırsız ise yani istediğin kadar lotluk emir gönderebiliyor ve her çift yönlü işlemde 70 puan kayma yaşıyorsan getiri bu. ancak diyelimki toplam kullanılan lot miktarı 500 e çıktığın da lot sayısını 250 ye indiriyorsan elde edilen getiri 110 katına çıkıyor. Faiz geliri hariç. 110/12= her yıl 9 katlık bir getiri ortalamasına sahipsin demek.

    Temiz verilerle yapılmış bir analiz yani vade geçişinde kazanılan puanlar yok. Sistem anlık çalışıp gaplerde sahte puan üretmiyor. Simulasyon ne üretmişse gerçek hesapta aynısını üretecek.

    Bu yapının real piyasadaki durumunu 2019 sonuna kadar izleyeceğim. İlk stratejinin testleri bitmedi. Bu 2. bir strateji olacak cepte duracak.

    İyi bir yatırım parası bulsam istifa edip bu işle uğraşacam neredeyse 5 seneye emekli edebilecek sistemler tasarlanabilir.
    Senin almaya cesaret edemediğin riskleri alanlar, senin yaşamak istediğin hayatı yaşarlar..
    Sokrates twit @erhanacikgoz1

  8. Yunan mitolojisinde sirenler var, guzel sesleriyle gemicileri buyuluyolar , yaklasmaya calisinca gemiler kayaliklara carpip batiyolar. Zigzag da traderlar icin oyle bisey heralde , fiyata uygulayip gemileri batiranlar vardi. Equity curve uzerine uygulamak da farkli sonuc dogurmaz muhtemelen..

Sayfa 233/350 İlkİlk ... 133183223231232233234235243283333 ... 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
  •