「株式市場は、あらゆるものの価格は知っているが、何の価値も知らない人たちでいっぱいです」。 - フィリップ・フィッシャー
Python は人気が著しく高まっており、基本的な計算から株式市場データの高度な統計分析に至るまで、幅広いアプリケーションで使用されています。この記事では、金融界における Python の優位性の高まりを示す Python スクリプトを見ていきます。データとシームレスに統合し、複雑な計算を実行し、タスクを自動化する機能により、金融専門家にとって非常に貴重なツールとなっています。
このスクリプトは、Python を使用してニュースの見出しを分析し、市場センチメントに関する貴重な洞察を抽出する方法を示します。このスクリプトは、自然言語処理 (NLP) ライブラリの機能を利用して、特定の銘柄に関連するニュース記事の感情的な調子を分析します。この分析は投資家に重要な情報を提供し、次のことに役立ちます。
import requests import pandas as pd from nltk.sentiment.vader import SentimentIntensityAnalyzer # THIS NEEDS TO BE INSTALLED # --------------------------- # import nltk # nltk.download('vader_lexicon') # Function to fetch news headlines from a free API def get_news_headlines(ticker): """ Fetches news headlines related to the given stock ticker from a free API. Args: ticker: Stock ticker symbol (e.g., 'AAPL', 'GOOG'). Returns: A list of news headlines as strings. """ # We are using the below free api from this website https://eodhd.com/financial-apis/stock-market-financial-news-api url = f'https://eodhd.com/api/news?s={ticker}.US&offset=0&limit=10&api_token=demo&fmt=json' response = requests.get(url) response.raise_for_status() # Raise an exception for bad status codes try: data = response.json() # Extract the 'title' from each article headlines = [article['title'] for article in data] return headlines except (KeyError, ValueError, TypeError): print(f"Error parsing API response for {ticker}") return [] # Function to perform sentiment analysis on headlines def analyze_sentiment(headlines): """ Performs sentiment analysis on a list of news headlines using VADER. Args: headlines: A list of news headlines as strings. Returns: A pandas DataFrame with columns for headline and sentiment scores (compound, positive, negative, neutral). """ sia = SentimentIntensityAnalyzer() sentiments = [] for headline in headlines: sentiment_scores = sia.polarity_scores(headline) sentiments.append([headline, sentiment_scores['compound'], sentiment_scores['pos'], sentiment_scores['neg'], sentiment_scores['neu']]) df = pd.DataFrame(sentiments, columns=['Headline', 'Compound', 'Positive', 'Negative', 'Neutral']) return df # Main function if __name__ == "__main__": ticker = input("Enter stock ticker symbol: ") headlines = get_news_headlines(ticker) if headlines: sentiment_df = analyze_sentiment(headlines) print(sentiment_df) # Calculate average sentiment average_sentiment = sentiment_df['Compound'].mean() print(f"Average Sentiment for {ticker}: {average_sentiment}") # Further analysis and visualization can be added here # (e.g., plotting sentiment scores, identifying most positive/negative headlines) else: print(f"No news headlines found for {ticker}.")
出力:
Python の多用途性と強力なライブラリにより、Python は最新のデータ分析や計算タスクに不可欠なツールとなっています。単純な計算から複雑な株式市場分析まであらゆるものを処理できるその能力は、業界全体でその価値を強調しています。 Python が進化し続けるにつれて、データ主導の意思決定におけるイノベーションと効率性の推進におけるその役割はさらに拡大し、技術進歩の基礎としての地位を固める予定です
注: AI 支援コンテンツ
以上が株価センチメント分析用の Python スクリプトの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。