• Foydalanish qulayligi.
  • Image Recognition




    Download 5,69 Mb.
    bet35/182
    Sana19.05.2024
    Hajmi5,69 Mb.
    #244351
    1   ...   31   32   33   34   35   36   37   38   ...   182
    Bog'liq
    Python sun\'iy intellekt texnologiyasi Dasrlik 2024

    Yuqori tezlik. Tercihen hech qanday cheklovlar yo‘q, lekin daqiqada 500 dan ortiq so‘rovni bajarish etarli.

  • Haqiqiy vaqtda ma’lumotlar. Ba’zi API-lar ma’lumotlarni biroz kechikish bilan ta’minlaydi, masalan, 15 daqiqa. Men aksiyalar narxlari iloji boricha joriy narxlarga yaqin bo‘lishini xohlayman.

  • Foydalanish qulayligi. Bu g’oyaning sinovi, shuning uchun men eng oddiy echimni xohlayman.

    Avval kutubxonani o‘rnatish kerak:
    $ pip install yfinance –user
    Ob’ekt orqali ma’lumotlarga kirishingiz mumkin Ticker:
    import yfinance as yf
    google = yf.Ticker(“GOOG”)
    Bu juda tez usul (o‘rtacha 0,005 soniyadan bir oz ko‘proq vaqtni oladi) va aktsiya haqida TON ma’lumotni qaytaradi. Masalan, google.info 123 ta maydonni o‘z ichiga oladi, jumladan:
    52WeekChange: 0.3531152
    SandP52WeekChange: 0.17859101
    address1: 1600 Amphitheatre Parkway
    algorithm: None
    annualHoldingsTurnover: None
    annualReportExpenseRatio: None
    ask: 1815
    askSize: 1100
    twoHundredDayAverage: 1553.0764
    volume: 1320946
    volume24Hr: None
    volumeAllCurrencies: None
    website: http://www.abc.xyz
    yield: None
    ytdReturn: None
    zip: 94043
    Dividends, splits, balance_sheet, earnings va boshqalar usullari yordamida yanada ko‘proq ma’lumotlarni olish mumkin. Ularning aksariyati ma’lumotlarni pandas DataFrame ob’ekti sifatida qaytaradi, shuning uchun bizga kerak bo‘lgan hamma narsani olish uchun biroz harakat qilishimiz kerak.
    Vaqt o‘tishi bilan aktsiya baholarining o‘zgarishi haqida ma’lumotga muhtoj ekanman, buning uchun eng yaxshi usul history. Biz intervalning davri yoki sanasini, shuningdek, bir daqiqagacha ma’lumot olish chastotasini tanlashimiz mumkin.
    Shuni esda tutingki, agar siz 60 kundan kamroq muddatni belgilasangiz, kunlik vaqtga asoslangan ma’lumotlar mavjud bo‘lib, bir so‘rovda atigi yetti kunlik qisqa ma’lumotlarni olish mumkin. Oxirgi yozuvning bir daqiqalik oraliqda ko‘chirilgan ma’lumotlari:
    df = google.history(period='1d', interval="1m")print(df.head())

    3.1.1-rasm. Datetime natijasi
    Ularning sana va vaqt bo‘yicha qanday indekslanganligini ko‘rishingiz mumkin. Bundan tashqari, har bir rekord ettita xususiyatga ega: ushbu daqiqa uchun aktsiya narxining to‘rtta qiymati (ochilish, maksimal, minimal, yopilish), shuningdek hajm, dividendlar va aktsiyalarning bo‘linishi. Men faqat “minimal” xususiyatdan foydalanaman. Keling, kerakli ma’lumotlarni to‘playmiz:
    df = google.history(period='1d', interval="1m")
    df = df[['Low']]
    df.head()

    3.1.2.a-rasm Low natijasi
    Bu faqat oxirgi kun ma’lumotlaridan foydalanayotganimiz sababli, DataFrame-ni sana va vaqt mintaqasini olib tashlash uchun indekslaymiz, faqat vaqtni qoldiramiz.
    df['date’] = pd.to_datetime(df.index).time
    df.set_index('date’, inplace=True)
    df.head()

    3.1.2.b-rasm Low natijasi
    Birozdan keyin biz ularni algoritmimizga o‘tkazamiz. Lekin birinchi navbatda siz bu haqda qaror qabul qilishingiz kerak, shuning uchun keyingi bosqichga o‘tamiz.

    Download 5,69 Mb.
  • 1   ...   31   32   33   34   35   36   37   38   ...   182




    Download 5,69 Mb.