• 26-11-2023, 19:00:19
    #1
    import java.text.DecimalFormat;
    import java.util.Scanner;
    
    public class Main {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
    
            // Başlangıç değerini input alalım
            System.out.println("Hissenizin adet fiyatını yazınız.");
            double baslangicFiyati = scanner.nextDouble();
    
            // Kaç lot hisse var input alalım
            System.out.println("Kaç lot hisseniz vardır?");
            double hisseLot = scanner.nextDouble();
    
            // Günlük artış yüzdesi (Borsa istanbulda max %10)
            // Tavan hesaplaması yapacağımız için max giriyoruz.
            double gunlukArtisYuzdesi = 10;
    
            // Kaç gün boyunca tavanda işlem yapılacak
            int gunSayisi = 13; // Örneğin 13 gün
    
            // Toplam kazanç ve toplam yükseliş yüzdesi + hissenin güncel fiyatı
            double toplamKazanc = 0;
            double toplamKarYuzdesi = 0;
            double hisseninGuncelFiyati = baslangicFiyati;
    
            System.out.println("Başlangıç fiyatı " + baslangicFiyati + " TL olan " + hisseLot + " Adet Hissenin Tavan Serisi;");
            System.out.println("");
    
            for (int gun = 1; gun <= gunSayisi; gun++) {
                // DecimalFormat nesnesi oluşturalım ve format belirleyelim
                // Sayıların xx.xxxxxxxxx şeklinde uzatmayıp xx.xx olarak alıyor.
                DecimalFormat df = new DecimalFormat("0.00");
    
                // Hisse toplam fiyatını ve güncel kazanç güncelle
                double hisseninToplamFiyati = hisseninGuncelFiyati*hisseLot;
                toplamKazanc += hisseninToplamFiyati * 0.10;
                hisseninGuncelFiyati += hisseninGuncelFiyati * 0.10;
    
    
                //Kar yüzdesini güncelle
                toplamKarYuzdesi = (hisseninGuncelFiyati /  baslangicFiyati- 1) * 100;
    
                // Sayıları belirlediğimiz formata göre biçimlendirelim
                String formatliBaslangicFiyati = df.format(hisseninGuncelFiyati);
                String formatliToplamKazanc = df.format(toplamKazanc);
                String formatliToplamYukselisYuzdesi = df.format(toplamKarYuzdesi);
                // Sonuçları ekrana yazdır
                System.out.println("Tavan " + gun + ": Yeni Adet Fiyatı = " + formatliBaslangicFiyati + " TL, Toplam Kazanç = " +
                        formatliToplamKazanc + " TL, Toplam Kar Yüzdesi = %" + formatliToplamYukselisYuzdesi);
            }
        }
    }
    #BINHO Halka arzına ait tavan serisi çıktısı görüntüsü;


    Kendimi geliştirmek için yaptım, yapmışken sizlerle paylaşmayı tercih ettim.
  • 26-11-2023, 19:04:01
    #2
    Elinize sağlık hocam, bu kodları nasıl, nerede kullanıyoruz acaba
  • 26-11-2023, 19:05:50
    #3
    Borsa ile ilgilenen kişiler için faydalı olabilecek bir kod, herhangi bir java ide'de kodu çalıştırabilirsiniz.
  • 26-11-2023, 20:06:35
    #4
    Alıntı yapmadığınız için verdiğiniz cevabı yeni görebildim hocam Tekrardan teşekkür ederim
  • 26-11-2023, 20:37:09
    #5
    myildirim43 adlı üyeden alıntı: mesajı görüntüle
    Alıntı yapmadığınız için verdiğiniz cevabı yeni görebildim hocam Tekrardan teşekkür ederim
    Bir süredir r10'da yoktum alıntı yapıldığını unutmuşum kusura bakmayın
  • 27-11-2023, 00:43:44
    #6
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Selamlar.

    Kodunuza ufak bir destek çıkalım hocam

    USD-TRY Bazında güncel değeri size gösterir.

    USD-TRY kurunu kendiniz belirtmeniz gerekiyor.

    import java.text.DecimalFormat;
    import java.util.Scanner;
    
    public class Main {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
    
            // Başlangıç değerini input alalım
            System.out.println("Hissenizin adet fiyatını yazınız.");
            double baslangicFiyati = scanner.nextDouble();
    
            // Kaç lot hisse var input alalım
            System.out.println("Kaç lot hisseniz vardır?");
            double hisseLot = scanner.nextDouble();
    
            // Günlük artış yüzdesi (Borsa istanbulda max %10)
            // Tavan hesaplaması yapacağımız için max giriyoruz.
            double gunlukArtisYuzdesi = 10;
    
            // Kaç gün boyunca tavanda işlem yapılacak
            int gunSayisi = 13; // Örneğin 13 gün
    
            // USD-TRY döviz kuru
            System.out.println("USD/TRY döviz kuru nedir?");
            double usdTryExchangeRate = scanner.nextDouble();
    
            // Toplam kazanç ve toplam yükseliş yüzdesi + hissenin güncel fiyatı
            double toplamKazanc = 0;
            double toplamKarYuzdesi = 0;
            double hisseninGuncelFiyati = baslangicFiyati;
    
            System.out.println("Başlangıç fiyatı " + baslangicFiyati + " TL olan " + hisseLot + " Adet Hissenin Tavan Serisi;");
            System.out.println("");
    
            for (int gun = 1; gun <= gunSayisi; gun++) {
                DecimalFormat df = new DecimalFormat("0.00");
    
                double hisseninToplamFiyati = hisseninGuncelFiyati * hisseLot;
                toplamKazanc += hisseninToplamFiyati * 0.10;
                hisseninGuncelFiyati += hisseninGuncelFiyati * 0.10;
    
                toplamKarYuzdesi = (hisseninGuncelFiyati / baslangicFiyati - 1) * 100;
    
                double tavanDegerUSD = hisseninGuncelFiyati / usdTryExchangeRate;
    
                String formatliBaslangicFiyati = df.format(hisseninGuncelFiyati);
                String formatliToplamKazanc = df.format(toplamKazanc);
                String formatliToplamYukselisYuzdesi = df.format(toplamKarYuzdesi);
                String formatliTavanDegerUSD = df.format(tavanDegerUSD);
    
                System.out.println("Tavan " + gun + ": Yeni Adet Fiyatı = " + formatliBaslangicFiyati + " TL, Toplam Kazanç = "
                        + formatliToplamKazanc + " TL, Toplam Kar Yüzdesi = %" + formatliToplamYukselisYuzdesi
                        + ", Tavan Değeri (USD) = " + formatliTavanDegerUSD);
            }
        }
    }
    İleride düzgün bir api bulabilirsem otomatik kuru çekebiliriz.

    Örnek çıktı ;


    Teşekkürler hocam
  • 27-11-2023, 18:51:33
    #7
    Sinyor_Ridak adlı üyeden alıntı: mesajı görüntüle
    Selamlar.

    Kodunuza ufak bir destek çıkalım hocam

    USD-TRY Bazında güncel değeri size gösterir.

    USD-TRY kurunu kendiniz belirtmeniz gerekiyor.

    import java.text.DecimalFormat;
    import java.util.Scanner;
    
    public class Main {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
    
            // Başlangıç değerini input alalım
            System.out.println("Hissenizin adet fiyatını yazınız.");
            double baslangicFiyati = scanner.nextDouble();
    
            // Kaç lot hisse var input alalım
            System.out.println("Kaç lot hisseniz vardır?");
            double hisseLot = scanner.nextDouble();
    
            // Günlük artış yüzdesi (Borsa istanbulda max %10)
            // Tavan hesaplaması yapacağımız için max giriyoruz.
            double gunlukArtisYuzdesi = 10;
    
            // Kaç gün boyunca tavanda işlem yapılacak
            int gunSayisi = 13; // Örneğin 13 gün
    
            // USD-TRY döviz kuru
            System.out.println("USD/TRY döviz kuru nedir?");
            double usdTryExchangeRate = scanner.nextDouble();
    
            // Toplam kazanç ve toplam yükseliş yüzdesi + hissenin güncel fiyatı
            double toplamKazanc = 0;
            double toplamKarYuzdesi = 0;
            double hisseninGuncelFiyati = baslangicFiyati;
    
            System.out.println("Başlangıç fiyatı " + baslangicFiyati + " TL olan " + hisseLot + " Adet Hissenin Tavan Serisi;");
            System.out.println("");
    
            for (int gun = 1; gun <= gunSayisi; gun++) {
                DecimalFormat df = new DecimalFormat("0.00");
    
                double hisseninToplamFiyati = hisseninGuncelFiyati * hisseLot;
                toplamKazanc += hisseninToplamFiyati * 0.10;
                hisseninGuncelFiyati += hisseninGuncelFiyati * 0.10;
    
                toplamKarYuzdesi = (hisseninGuncelFiyati / baslangicFiyati - 1) * 100;
    
                double tavanDegerUSD = hisseninGuncelFiyati / usdTryExchangeRate;
    
                String formatliBaslangicFiyati = df.format(hisseninGuncelFiyati);
                String formatliToplamKazanc = df.format(toplamKazanc);
                String formatliToplamYukselisYuzdesi = df.format(toplamKarYuzdesi);
                String formatliTavanDegerUSD = df.format(tavanDegerUSD);
    
                System.out.println("Tavan " + gun + ": Yeni Adet Fiyatı = " + formatliBaslangicFiyati + " TL, Toplam Kazanç = "
                        + formatliToplamKazanc + " TL, Toplam Kar Yüzdesi = %" + formatliToplamYukselisYuzdesi
                        + ", Tavan Değeri (USD) = " + formatliTavanDegerUSD);
            }
        }
    }
    İleride düzgün bir api bulabilirsem otomatik kuru çekebiliriz.

    Örnek çıktı ;


    Teşekkürler hocam
    Elinize sağlık güzel olmuş