• 27-10-2024, 19:08:06
    #1
    Bu kodu basta çalıştırmak için chatgpt ile yazdırdım.

    Neden 0 değerini döndürüyor 1 olması lazım

    Teknik analizdeki Çekiç Mum Formasyonu Kodunu Yazdırmak istedim

    // Değerleri test amaçlı sabit olarak tanımlayın
    var open_price = 100; // Örnek değer
    var high_price = 110; // Örnek değer
    var low_price = 90;   // Örnek değer
    var close_price = 95; // Örnek değer
    
    // Gövde, alt gölge ve üst gölge hesaplama
    var govde = Math.abs(open_price - close_price);
    var alt_golge = Math.min(open_price, close_price) - low_price;
    var ust_golge = high_price - Math.max(open_price, close_price);
    
    // Çekiç formasyonu kontrolü
    var cekic;
    if (alt_golge >= 2 * govde && ust_golge <= 0.1 * govde) {
        cekic = 1;
    } else {
        cekic = 0;
    }
  • 27-10-2024, 19:16:42
    #2
    Üyeliği durduruldu
    alt_golge ve ust_golge çıktılarını kontrol ettiniz mi?
  • 27-10-2024, 19:43:53
    #3
    Hocam if koşulu verdiğiniz değerlerle işlendiğinde false dönüyor ve else bloğuna düşüyor 0 döndürüyor
  • 27-10-2024, 19:55:31
    #4
    Hocam yaptığınız hesaplara bakılacak olursa alt golge = 5, üst gölge= 10 ve gövde = 5 çıkmakta if bloğuna baktığımızda ise && operatöründen sonra ki işlem yanlış oluyor çünkü üst göle 10 çıkıyor ve 0.1 * 5 ten 0.5 çıkıyor yani bu ifade yanlış olduğu için if bloğu çalışmıyor. Eğer ki &&(VE) operatörü yerine ||(Veya) operatörü kullanılırsa if bloğu çalışır.