from datetime import datetime
print(f'Päivitetty {datetime.now().date()} / Aki Taanila')
Päivitetty 2024-03-25 / Aki Taanila
Seuraavassa tarvitaan yfinance-kirjastoa, joka ei kuulu Anacondan vakioasennukseen. Voit asentaa sen komentoriviltä (Windows: Anaconda Prompt, macOS: Terminal/Pääte) komennolla conda install -c conda-forge yfinance
.
Lisätietoa Bollingerin nauhoista: https://www.investopedia.com/terms/b/bollingerbands.asp
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import yfinance as yf
sns.set_style('whitegrid')
def bollinger1(stock, span = 20):
stock['MA'] = stock['Close'].rolling(span).mean()
stock['STD'] = stock['Close'].rolling(span).std(ddof = 0)
stock['Upper'] = stock['MA'] + (stock['STD'] * 2)
stock['Lower'] = stock['MA'] - (stock['STD'] * 2)
# Kaavio
stock['Close'].plot(label = 'Close', color = 'black', figsize = (10, 6))
stock['Upper'].plot(label = 'Upper', linestyle = '--', linewidth = 1, color = 'red')
stock['MA'].plot(label = 'Middle', linestyle = '--', linewidth = 1.2, color = 'grey')
stock['Lower'].plot(label = 'Lower', linestyle = '--', linewidth = 1, color = 'red')
plt.gca().fill_between(stock.index, stock['Lower'], stock['Upper'], facecolor = 'yellow', alpha = 0.1)
plt.legend()
plt.title('BOLLINGER BANDS')
stock = yf.download('ELISA.HE', start = '2023-1-1')
[*********************100%%**********************] 1 of 1 completed
bollinger1(stock)