Sayfa 1/5 123 ... SonSon
Arama sonucu : 34 madde; 1 - 8 arası.

Konu: Ideal Formül Yazımında Karşılaşılan Hatalar ve Çözümleri

  1. #1
    Duhul
    Aug 2011
    İkamet
    Mudanya
    Yaş
    31
    Gönderi
    7,513

    Esas Ideal Formül Yazımında Karşılaşılan Hatalar ve Çözümleri

    Bu başlıkta formülleri oluştururken aldığımız hataları ve bu hataları nasıl çözdüğümüzü paylaşarak diğer kullanıcıların olası bu hatalar karşısında neler yapması gerektiğini yazalım. Genel konular için Ideal konusunu kullanalım.
    Forum kurallarını okumak için tıklayınız!
    Not: Forumumuzda dini, siyasi ve futbol taraftarlığı içeren yazılar kabul edilmiyor!

  2. #2

    Esas

     Alıntı Originally Posted by volkan... Yazıyı Oku
    Merhaba kullandığım stratejiyi optimize etmek için aşağıdaki kodu yazmaya çalıştım ama "error CS0019: '&&' işleci 'bool' ve 'string' türündeki işlenenlere uygulanamaz" hatasını veriyor. Stratejiyi optimize etmek için kod nasıl olmalı

    Kod:
    var V = Sistem.GrafikVerileri;
    var C = Sistem.GrafikFiyatOku(V, "Kapanis") ;
    
    var TOMA1 = Sistem.TOMA(3, 2);
    var TOMA2 = Sistem.TOMA(2, 1);
    
    var MA1 = Sistem.MA(10, "Simple", "Kapanis");
    var MA2 = Sistem.MA(50, "Simple", "Kapanis");
    
    var MA3 = Sistem.MA(10, "Exp", "Kapanis");
    var MA4 = Sistem.MA(50, "Exp", "Kapanis");
    
    var PAR1 = Sistem.Parabolic(0.02, 0.2);
    var PAR2 = Sistem.Parabolic(0.01, 0.1);
    
    var Metodlar = new List<string>();
    Metodlar.Add("TOMA11");
    Metodlar.Add("TOMA22");
    Metodlar.Add("MA12");
    Metodlar.Add("MA34");
    Metodlar.Add("PAR11");
    Metodlar.Add("PAR22");
    
    for (int P = 0 ; P < Metodlar.Count; P+=1)
    {
    
    //strateji
    for (int i = 1; i < C.Count; i++)
     Sistem.Yon[i] = "";
    var SonYon = "";
    
    for (int i = 1; i<C.Count; i++)
    {
    
    var TOMA11 = C[i] > TOMA1[i];
    var TOMA22 = C[i] > TOMA2[i];
    var MA12 = MA1 [i] > MA2[i];
    var MA34 = MA3[i] > MA4[i];
    var PAR11 = C[i] > PAR1[i];
    var PAR22 = C[i] > PAR2[i];
    
    if (    SonYon != "A" && Metodlar[P] ) // AL 
    { 
    Sistem.Yon[i] = "A"; // alış
    SonYon = Sistem.Yon[i];
    }
    
    else if (  SonYon != "S" && C[i] < TOMA1[i] ) // SAT 
    { 
    Sistem.Yon[i] = "S"; // alış
    SonYon = Sistem.Yon[i];
    }
    }
    
    Sistem.Optimizasyon("Metodlar", Metodlar[P]);
    }
    belki cevap gelir

  3. #3

    Esas

    Sayın thebaboli,
    ilgine çok teşekkür ederim. Hemen aksiyon aldınız.



    benimde sorum şu olacaktı.
    d7 değerini hesaplatıyorum ve bu değer 200'den yukarı çıkmıyor. ama d7 float değerini int'e çevirmem gerekli ki işlemi yaptırabileyim.
    Nasıl bir yol izlemem gerekli?
    şimdiden teşekkürler.

  4. #4

    Esas

     Alıntı Originally Posted by klozon Yazıyı Oku
    Sayın thebaboli,
    ilgine çok teşekkür ederim. Hemen aksiyon aldınız.



    benimde sorum şu olacaktı.
    d7 değerini hesaplatıyorum ve bu değer 200'den yukarı çıkmıyor. ama d7 float değerini int'e çevirmem gerekli ki işlemi yaptırabileyim.
    Nasıl bir yol izlemem gerekli?
    şimdiden teşekkürler.
    i-d7 ne anlamda orada anlamadım

  5. #5

    Esas

     Alıntı Originally Posted by erhanacikgoz1 Yazıyı Oku
    i-d7 ne anlamda orada anlamadım
    Selam Erhan Bey,

    yapmak istediğim şu aslında,
    2 tane Ma değerim var.
    Bunlardan biri son bardaki MA değeri diğeri
    Diğeri d7 hesap sonucunda çıkan (200 tam sayısını geçmiyor) değişken değer kadar önceki MA değeri.
    d7 değişkenini tam sayı yaparsam geriye dönük MA değerini hesaplatabilirim diye düşündüm.
    Kafam ancak buna yetti.
    yanlış düşünmüş olabilirim

    Saygılarımla,

  6. #6

    Esas

     Alıntı Originally Posted by klozon Yazıyı Oku
    Selam Erhan Bey,

    yapmak istediğim şu aslında,
    2 tane Ma değerim var.
    Bunlardan biri son bardaki MA değeri diğeri
    Diğeri d7 hesap sonucunda çıkan (200 tam sayısını geçmiyor) değişken değer kadar önceki MA değeri.
    d7 değişkenini tam sayı yaparsam geriye dönük MA değerini hesaplatabilirim diye düşündüm.
    Kafam ancak buna yetti.
    yanlış düşünmüş olabilirim

    Saygılarımla,
    olur olmaz bilmiyorum denersin


    for (int i = 1; i < Sistem.BarSayisi; i++)
    tamd7[i]=Sistem.SayiYuvarla(d7[i],0.025);

    ondalık kısmı tamamen atar.
    for (int i = 1; i < Sistem.BarSayisi; i++)
    tamd7[i] = Math.Truncate(d7[i]);

    Round fonksiyonu işini görebilir.
    ondalık basamak sayısını kendin girersin.
    örnekte noktadan sonra 2 basamak bırakır.

    for (int i = 1; i < Sistem.BarSayisi; i++)
    tamd7[i] = Math.Round(d7[i], 2);

    KAYNAK:http://www.hisse.net/forum/showthrea...1#post12352041

  7. #7

    Esas

     Alıntı Originally Posted by erhanacikgoz1 Yazıyı Oku
    olur olmaz bilmiyorum denersin


    for (int i = 1; i < Sistem.BarSayisi; i++)
    tamd7[i]=Sistem.SayiYuvarla(d7[i],0.025);

    ondalık kısmı tamamen atar.
    for (int i = 1; i < Sistem.BarSayisi; i++)
    tamd7[i] = Math.Truncate(d7[i]);

    Round fonksiyonu işini görebilir.
    ondalık basamak sayısını kendin girersin.
    örnekte noktadan sonra 2 basamak bırakır.

    for (int i = 1; i < Sistem.BarSayisi; i++)
    tamd7[i] = Math.Round(d7[i], 2);

    KAYNAK:http://www.hisse.net/forum/showthrea...1#post12352041
    ilgine teşekkürler, biraz kurcalayayım.

  8. #8

    Esas

     Alıntı Originally Posted by erhanacikgoz1 Yazıyı Oku
    i-d7 ne anlamda orada anlamadım
    liste sayı olarak kullanılmış.
    aşağıdaki gibi bir yazım çözüm olabilir.

    for ...
    {
    int per = (int)d7[i];
    a1[i] = VeriMA2[i] -VeriMA1[i - per];
    }

Sayfa 1/5 123 ... SonSon

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
  •