Teknik Analiz Dünyasına Hoşgeldiniz. Paylaşmak Güzeldir.

Yayından kaldırmak istediğiniz formüller için algoritmabul@gmail.com ile iletişime geçebilirsiniz... 
algoritmabul.pythonanywhere.com

  • DİKKAT: Formüller, Sistemler sadece eğitim amaçlıdır. Alım satım, olası anapara kaybı ve diğer kayıplar dahil olmak üzere "YÜKSEK RİSK" içerir.

ML - Python Kovaryans Matris

Machine Learning Algorithms - Makine Öğrenimi Algoritmaları BORSA

algoritma

eiπ + 1 = 0
Algorithmist
Algoritma
Katılım
23 Eki 2020
Mesajlar
1,823
Kovaryans Matris

Kovaryans Matris finansal mühendislik veya portföy yönetimi gibi alanlarda risk yönetimi için kullanılır. Pozitif belirli olmayan bir kovaryans matrisi, matematiksel olarak geçerli bir kovaryans matrisi olmadığı anlamına gelir ve bu durum finansal modellerin güvenilirliğini etkileyebilir.
Kod:
import os
import pandas as pd
import numpy as np

def check_positive_definite(file_path):
    try:
        # Veriyi oku
        veri = pd.read_csv(file_path)
        
        # Kovaryans matrisini hesapla
        cov_matrix = veri[['Close', 'Adj Close']].pct_change().cov()
        
        # Özdeğerleri hesapla
        eigenvalues = np.linalg.eigvals(cov_matrix)
        
        # Özdeğerleri kontrol et
        if all(eig > 0 for eig in eigenvalues):
            return "Pozitif belirli"
        else:
            return "Pozitif belirli değil"
    
    except Exception as e:
        return f"Hata - {e}"

# CSV dosyalarının bulunduğu dizin
csv_dizin = 'XU100'

# Dizindeki tüm CSV dosyalarını al
dosya_listesi = os.listdir(csv_dizin)
csv_dosyaları = [dosya for dosya in dosya_listesi if dosya.lower().endswith('.csv')]

# Sonuçları saklamak için boş bir liste oluşturun
results = []

for csv_dosya in csv_dosyaları:
    print(f"Çalışılan dosya: {csv_dosya}")
    try:
        # CSV dosyasını oku
        veri = pd.read_csv(os.path.join(csv_dizin, csv_dosya))
        
        # Diğer işlemleri gerçekleştirin
        sonuc = check_positive_definite(os.path.join(csv_dizin, csv_dosya))
        results.append({"Dosya Adı": csv_dosya, "Sonuç": sonuc})
        
    except Exception as e:
        print(f"Hata: {e}")

# Tüm sonuçları birleştirip genel bir Excel dosyasına yaz
result_df = pd.DataFrame(results)
result_df.to_excel("xu100_sonuclar_birlesik.xlsx", index=False)

çıktısı ise şöyledir
kovaryans.jpg
 
Son düzenleme:

Forumdan daha fazla yararlanmak için giriş yapın yada üye olun!

Forumdan daha fazla yararlanmak için giriş yapın veya kayıt olun!

Kayıt ol

Forumda bir hesap oluşturmak tamamen ücretsizdir.

Şimdi kayıt ol
Giriş yap

Eğer bir hesabınız var ise lütfen giriş yapın

Giriş yap