Borsa Anlık Veri Çekme (5dk)

Kodla Büyü

emrahsahan

Süper Üye
Süper Üye
Seçkin Üye
Mesajlar
1,398
Python'da borsadan anlık veri çekmek istiyorum. 5 dk da bir veri çekeceğim. Bu hizmeti sunan bir kuruluş var mı?
 
Osmanli yatırımda var bu hizmet aslında ama para istiyorlardı en son. Robot bağlamak istiyorum diye aramıştım aylik ücreti ile api veririz demislerdi
 
İş yatırımdan çektim hocam tşk. Şimdi bi sorum daha var PyQT5 de masaüstü programda veri çekme işleminin sürekli devam etmesi için __init__ fonksiyonunun içine mi eklemeliyim fonksiyonu. Tabi fonksiyonda while True döngüsü kullanmalıyım sanırım. PyQt5 bilen arkadaşlar bakabilir mi?

Aşağıdaki kod hisse verilerini çekiyor. Ben bunu fonksiyon olarak yazacağım. Ben programda başka bir bölümle çalışırken bu fonksiyonun sürekli döngüde çalışmasını istiyorum.

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.options import Options
from time import sleep
driver = webdriver.Chrome(options=Options())
driver.get('https://www.isyatirim.com.tr/tr-tr/analiz/hisse/Sayfalar/default.aspx')
sleep(2)
tbody = driver.find_element(By.XPATH, '//*[@id="DataTables_Table_0"]/tbody')

rows = len(tbody.find_elements(By.XPATH, '//tr'))


for r in range(1,rows):

path = '//*[@id="DataTables_Table_0"]/tbody/tr[' + str(r) + ']/td[' + str(1) + ']'
hisseAdi = driver.find_element(By.XPATH, path).text
path1 = '//*[@id="DataTables_Table_0"]/tbody/tr[' + str(r) + ']/td[' + str(2) + ']'
hisseFiyat = driver.find_element(By.XPATH, path1).text.replace(".","")
hisseFiyat = hisseFiyat.replace(",",".")

path2 = '//*[@id="DataTables_Table_0"]/tbody/tr[' + str(r) + ']/td[' + str(3) + ']'
degisimYuzde = driver.find_element(By.XPATH, path2).text

path3 = '//*[@id="DataTables_Table_0"]/tbody/tr[' + str(r) + ']/td[' + str(4) + ']'
degisimPara = driver.find_element(By.XPATH, path3).text

path4 = '//*[@id="DataTables_Table_0"]/tbody/tr[' + str(r) + ']/td[' + str(5) + ']'
hacimPara = driver.find_element(By.XPATH, path4).text

path5 = '//*[@id="DataTables_Table_0"]/tbody/tr[' + str(r) + ']/td[' + str(6) + ']'
hacimAdet = driver.find_element(By.XPATH, path5).text

print(hisseAdi, hisseFiyat, degisimYuzde, degisimPara, hacimPara, hacimAdet)
 
Anladığım kadarıyla arka planda sürekli çalışmasını istiyorsunuz. Multithread şeklinde düşünmeniz gerekir muhtemelen.
 
requests ve beautifulSoup modülleriyle kendime yazdığım bir program..

telegram bot olusturduktan sonra
istenilen sürede veriler geliyor...
print("*"*10,"HİSSE BOT","*"*10)
print("-"*32)
import requests
from bs4 import BeautifulSoup
import time

def hisse(x):
time.sleep(300)
url="https://www.oyakyatirim.com.tr/hisse-detay/"+x
response=requests.get(url)
icerik=response.content
soup=BeautifulSoup(icerik,"lxml")
s1=soup.find("div",class_="col-md-3" ).text
gidecek=x+" hisse son fiyat :"+(s1.strip())

api="https://api.telegram.org/----API KEY-------------------/SendMessage"
requests.post(url=api,data={"chat_id":"------------------------","text":gidecek}).json()

while True:

hisse("ZOREN")
time.sleep(1)
hisse("GESAN")
time.sleep(1)
hisse("CWENE")
time.sleep(1)


botfather den aldığınız API KEY ve botunuz chat_id yazdığınızda calısır....
 
Bir dizi içindeki anlık hacim verileri(adet veya para) şöyle olsun:

[8,10,12,8,10,12,12,11,25,28,32,14,17,25,32,36,25]

Bu değerlere bakarak hacmin ortalama olarak arttığını veya azaldığını bulmak için nasıl bir formül yazmalıyız? % olarak yazmak istiyoum.
 
Bilişimci arkadaşlarımızdan kendine al sat algoritmik robot yapan ve kullananlar var mı?
 
Bir dizi içindeki anlık hacim verileri(adet veya para) şöyle olsun:

[8,10,12,8,10,12,12,11,25,28,32,14,17,25,32,36,25]

Bu değerlere bakarak hacmin ortalama olarak arttığını veya azaldığını bulmak için nasıl bir formül yazmalıyız? % olarak yazmak istiyoum.
Arda arda siralanan verilerdeki farka mi bakmaliyiz. Farklari pozitif ve negatif olarak saydirsam ve oranlasam olur mu?
 
bank of america takip ediyorum ben de acaba alım satım arasında korelasyon ve mantığını çözebilir miyim diye.
 
Veriyi çektim ama 15 dk gecikmeli. Anlık yayınlayan bir web sayfası var mı ?
 
Bir dizi içindeki anlık hacim verileri(adet veya para) şöyle olsun:

[8,10,12,8,10,12,12,11,25,28,32,14,17,25,32,36,25]

Bu değerlere bakarak hacmin ortalama olarak arttığını veya azaldığını bulmak için nasıl bir formül yazmalıyız? % olarak yazmak istiyoum.
Merhaba Hocam. Kendinden önceki değerlerin ortalaması ile sayının farkına bakılabilir diye anlıyorum.
Kod:
dizi[a]-Ort(dizi[:a-1])
 
Matriks programından excel olarak alınıyormuş. Excel kendini güncelliyormuş söylediklerine göre.
 
Hocam anlık Verileri tradingview bile paralı satıyor.sadece bankalar ve Matrix tarzı firmalar kullanıyor.Hocam Python yazdığınız kodları paylaşma imkanınız var mı?mesala rsi,macd gibi verileri nasıl kullanırız diye bakacaktım.
Hocam veri çekme işini yaptıktan sonra bazı yöntemler deneyeceğiz bakalım :)
 
slm, konu başlığı sitede arattım ama bulamadım, borsayla ilgili olunca , burda belki bilen vardır diye , yazdım.
kendim borsa bist hisseleri, excel tabloda, 50-100 hisse, belli tarihlerde, min , max en düşük en yüksek değerlerini bulmaya çalıştım.
googlefinance komutu karşıma çıktı.e-tabloda

=MİN(GOOGLEFINANCE(A4;"LOW";"01.09.2023"; "29.12.2023"))
A4 te bist hisse kodu var, bu kod hissenin bu tarih arasındaki en düşük değerini doğru şekilde veriyor.
fakat aynı tarihler arasında en yüksek değerini doğru şekilde bulduramadım,
=MAK(GOOGLEFINANCE("IST:ACSEL";"price";"20.03.2023"; "30.07.2023"))
=MAK(GOOGLEFINANCE(A4;"high";"20.03.2023"; "30.07.2023"))
=MAK(GOOGLEFINANCE(A5;"high";BUGÜN()-30;BUGÜN()))
bunun gibi googlefinance kullanım parametrelerinede baktım, denedim olmadı
45135,75694 böyle değer geitiryor işlem hacmi vb. rakam getiriyor,
hissenin , belli tarihlerdeki değerini yazdıramadım.

elle bulunur 3-5 hissede ama 50-100 veya daha fazla hissede
tek tek bulmak , yazmak sıkıntı maalesef.
amaç kedi takip ettiğim hisselerin en yüksek, en düşük fiyatlarını , belli tarihlerdekini görebilmek, takip edip , ona göre hareket etmekti
yardımcı olabilirseniz sevinirim.
kodda gözden kaçan ne var ? bulamadım.
 

Ekli dosyalar

  • Trade.jpg
    Trade.jpg
    171.1 KB · Görüntüleme: 206
slm, konu başlığı sitede arattım ama bulamadım, borsayla ilgili olunca , burda belki bilen vardır diye , yazdım.
kendim borsa bist hisseleri, excel tabloda, 50-100 hisse, belli tarihlerde, min , max en düşük en yüksek değerlerini bulmaya çalıştım.
googlefinance komutu karşıma çıktı.e-tabloda

=MİN(GOOGLEFINANCE(A4;"LOW";"01.09.2023"; "29.12.2023"))
A4 te bist hisse kodu var, bu kod hissenin bu tarih arasındaki en düşük değerini doğru şekilde veriyor.
fakat aynı tarihler arasında en yüksek değerini doğru şekilde bulduramadım,
=MAK(GOOGLEFINANCE("IST:ACSEL";"price";"20.03.2023"; "30.07.2023"))
=MAK(GOOGLEFINANCE(A4;"high";"20.03.2023"; "30.07.2023"))
=MAK(GOOGLEFINANCE(A5;"high";BUGÜN()-30;BUGÜN()))
bunun gibi googlefinance kullanım parametrelerinede baktım, denedim olmadı
45135,75694 böyle değer geitiryor işlem hacmi vb. rakam getiriyor,
hissenin , belli tarihlerdeki değerini yazdıramadım.

elle bulunur 3-5 hissede ama 50-100 veya daha fazla hissede
tek tek bulmak , yazmak sıkıntı maalesef.
amaç kedi takip ettiğim hisselerin en yüksek, en düşük fiyatlarını , belli tarihlerdekini görebilmek, takip edip , ona göre hareket etmekti
yardımcı olabilirseniz sevinirim.
kodda gözden kaçan ne var ? bulamadım.
https://infoinspired.com/google-docs/spreadsheet/max-and-min-values-in-googlefinance/ bu linkten fikir sahibi olabilirsin.
 
Geri
Üst