File size: 1,464 Bytes
ab50b27
d31c699
087ef0b
8a8357f
26d7e54
ab50b27
d31c699
 
 
8a8357f
 
d31c699
 
 
34c23a9
a261fc2
8a8357f
04f6c13
 
 
a261fc2
04f6c13
 
 
34c23a9
d31c699
 
 
8a8357f
 
 
 
d31c699
8a8357f
 
 
fc59e6f
8a8357f
d31c699
8a8357f
 
 
34c23a9
8a8357f
26d7e54
34c23a9
b073561
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
import streamlit as st
import requests
import pandas as pd
from datetime import datetime
import time

# Hard-coded API key for demonstration purposes
API_KEY = "QR8F9B7T6R2SWTAT"

def fetch_alpha_vantage_data(api_key, symbol):
    url = f'https://www.alphavantage.co/query?function=GLOBAL_QUOTE&symbol={symbol}&apikey={api_key}'
    response = requests.get(url)
    alpha_vantage_data = response.json()
    return alpha_vantage_data

def main():
    st.title("Real-Time Stock Data")

    # User input for stock symbol
    symbol = st.text_input("Enter Stock Symbol (e.g., IBM):")

    if not symbol:
        st.warning("Please enter a valid stock symbol.")
        st.stop()

    # Use the hard-coded API key
    api_key = API_KEY

    # Continuously fetch and display real-time data
    while True:
        # Fetch Alpha Vantage data
        alpha_vantage_data = fetch_alpha_vantage_data(api_key, symbol)

        # Extract relevant data from Alpha Vantage response
        alpha_vantage_quote = alpha_vantage_data.get('Global Quote', {})
        df = pd.DataFrame([alpha_vantage_quote])
        df.index = [datetime.now()]  # Use the current timestamp as the index
        df = df.dropna(axis=0)

        # Display the real-time data
        st.subheader("Real-Time Data:")
        st.write(df)

        # Add a delay to avoid exceeding API rate limits
        time.sleep(60)  # Sleep for 60 seconds (adjust as needed)

if __name__ == "__main__":
    main()