Skip to main content

Yen Currency Trend

 I found the trend by this code. This trend is from Japanese Workers' Pay Day(Every 25th day in a month). '''python import yfinance as yf import matplotlib . pyplot as plt import pandas as pd import seaborn as sns # 分析期間の設定 dateStart = "2015-01-01" dateEnd = "2026-05-23" ticker = "JPY=X" # ドル円 # yfinanceから取得(仕様変更の警告回避のため auto_adjust を明示) df = yf . download ( ticker , start = dateStart , end = dateEnd , auto_adjust = False , progress = False ) # yfinanceの仕様変更(MultiIndex化)に対応して終値を安全に抽出 if isinstance ( df . columns , pd . MultiIndex ): close = df [ "Close" ][ ticker ].dropna() else : close = df [ "Close" ]. dropna () # 前日比の変化率(%)を計算 # ドル円の場合、プラス = ドル買い/円売り、マイナス = ドル売り/円買い daily_return = close . pct_change () * 100 # 分析用のDataFrameを作成 analysis_df = pd . DataFrame ({ "Return" : daily_return }) analysis_df . index = pd . to_datetime ( analysis_df . index ...

To Functional Programming with Python

 To Functional Programming with Python
I rewrote the previous code to below as functional Python. Gemini(Google AI) helped me, and it taught me important things. To convert from procedural to functional is difficult for me. The convertion needs a lot of my brain resouces. So from the beginning, I will try to functional programinng with Python...


    import numpy as np
    import matplotlib.pyplot as plt
    
    # データ生成
    x = np.linspace(-3.15, 3.15, 100)
    
    def plot_waves(x, wave_func, title):
        """
        指定された関数に基づいて複数の波を生成し、描画する関数。
        
        Args:
            x (np.array): x軸のデータ。
            wave_func (function): 使用する波の関数 (np.sin または np.cos)。
            title (str): グラフのタイトル。
        """
    
        plt.figure(figsize=(8, 6))
        base_wave = wave_func(x)
    
        # 振幅を半分にし、正負を反転させて波を生成
        current_wave = base_wave
        for i in range(10):
            if i % 2 == 0:
                # 偶数番目: 正の波
                plt.plot(x, current_wave, label=f'Wave {i+1}')
            else:
                # 奇数番目: 負の波
                plt.plot(x, -current_wave, label=f'Wave {i+1}')
    
            # 次の波の振幅を半分にする
            current_wave /= 2
    
        plt.xlabel("x")
        plt.ylabel("y")
        plt.title(title)
        plt.legend()
        plt.grid(True)
        plt.show()
    
    # Sin Waves
    plot_waves(x, np.sin, "Sin Waves")
    
    # Cos Waves
    plot_waves(x, np.cos, "Cos Waves")

Comments

Contact Form

Name

Email *

Message *

Popular posts from this blog

Analog Clock2

Analog Clock2 Simple Analog Clock for Extension "Introducing the Analog Clock2 Extension – a minimalist yet elegant solution for those who appreciate the classic look and feel of traditional timekeeping on their digital devices. Key Benefits of Installing the Analog Clock2 Extension: Aesthetic Appeal: Adds a touch of vintage charm to your browser with its octagonal design. Easy Access: Simply click on the extension icon to view the current time, without the need to open a new tab or window. Accurate Timekeeping: Synchronized with your device's internal clock to ensure you always have the precise time. Space-Saving: Unlike other clock widgets, this extension doesn't take up space on your browser's toolbar, keeping things tidy. Customizable Appearance: Choose from a range of colors and designs to match your personal style or browser theme. Elevate your browsing experience with a blend of the old and new. Install the Analog Clock Extension today!"

Quote Clock

 Quote Clock Simple Analog Clock with quotes Item Introduction: Introducing the "Quote Clock" browser extension! This innovative tool seamlessly integrates a beautifully designed analog clock with hand-picked inspirational quotes right into your browser. With every glance at the time, you're not only reminded of the hour but also provided with a dose of wisdom to carry you through your tasks. Benefits of Installation: Visual Elegance: The analog clock design, coupled with carefully selected typography for quotes, provides an aesthetic and refreshing look to your browser. Momentary Inspiration: Whether you're starting your workday, taking a short break, or winding down in the evening, the accompanying quotes aim to inspire, provoke thought, and offer perspective. Timely Reminders: In today's digital age, it's easy to lose track of time. The clock ensures you're always aware of the passing minutes and hours, promoting time management. Ever-changing Wisdom: T...

Visual Box

Visual Box Use Visual Box for assistance of thinking Visual Box: Bridging Visual Thought and Linguistic Expression Have you ever found it challenging to convert your rich visual thoughts into words? Whether you're a visual thinker, a designer, an artist, or just someone who often finds themselves lost in a sea of imaginative ideas, converting those vivid imaginations into textual descriptions can be a daunting task. Enter Visual Box – your personal assistant to help bridge the gap between visual thinking and linguistic articulation. Key Features: Visual-to-Text Assistance: Helps in seamlessly converting your visual thoughts into structured textual content. Intuitive User Interface: Designed keeping the visual thinker in mind, making it easier to navigate and articulate. Expandable Boxes: Think in layers? No problem! Our nested box system allows you to delve deeper into each thought, ensuring no idea is left behind. Easy Export: Save your thoughts and ideas in an organized HTML form...