取得眾多資料後,接下來就要分析,我們來看看台積電與加權指數有關係嗎?
這次我們要比較的是加權指數和台積電的關係,我們這幾天已經把加權指數的歷史資料,以及股票今年的歷史資料抓到資料庫。股票的部分沒有實作,就大家自己把昨天的程式碼加上證交所下載的資料,跑一下就可以了
也從資料庫取得資料,用df_taiex儲存資料:
df_taiex = pandas.read_sql("SELECT * FROM StockTransactionInfo WHERE TradeDate >'2021-01-01'", con=conn)
然後畫圖:
# 加權指數畫圖
df_taiex.plot(x="TradeDate", y="Taiex")
ax = plt.gca()
# 設定X軸刻度
ax.xaxis.set_major_locator(matplotlib.ticker.MaxNLocator(5))
# 設定y軸刻度
ax.yaxis.set_major_locator(matplotlib.ticker.MaxNLocator(10))
plt.plot()
直接從資料庫取得資料,用df_2330儲存dataframe:
df_2330 = pandas.read_sql("SELECT * FROM DailyPrice WHERE Symbol ='2330' and TradeDate > '2021-01-01';", con=conn)
然後畫圖:
# 台積電畫圖
df_2330.plot(x="TradeDate", y="ClosePrice")
ax = plt.gca()
# 設定X軸刻度
ax.xaxis.set_major_locator(matplotlib.ticker.MaxNLocator(5))
# 設定y軸刻度
ax.yaxis.set_major_locator(matplotlib.ticker.MaxNLocator(10))
plt.plot()
看起來趨勢很像,所以我們來疊圖觀察,看看是不是真的很像
# 畫圖
# 在畫圖的地方,無法寫中文的名稱
fig, ax1 = plt.subplots()
plt.title("Taiex & 2330")
plt.xlabel("date")
ax2 = ax1.twinx()
# 製作第一個圖表:折線圖
# blue:表示藍色,可以用「b」表示
ax1.set_ylabel("Taiex", color="blue")
ax1.plot(df_taiex["TradeDate"], df_taiex["Taiex"], color="blue", alpha=1)
ax1.tick_params(axis="y", labelcolor="blue")
# 製作第二個圖表:折線圖
ax2.set_ylabel("2330", color="green")
ax2.plot(df_2330["TradeDate"], df_2330["ClosePrice"], color="green", alpha=0.5) # alpha: 增加透明度
ax2.tick_params(axis="y", labelcolor="r")
# 設定X軸刻度
ax = plt.gca()
ax.xaxis.set_major_locator(matplotlib.ticker.MaxNLocator(5))
# 設定y軸刻度
ax.yaxis.set_major_locator(matplotlib.ticker.MaxNLocator(10))
fig.tight_layout()
plt.show()
會發現我的圖片怪怪的,因為這邊用疊圖,把兩張圖片疊在一起,然後就有發生圖有問題,本只有一條綠色線,現在很多條直線。這部分還在找如何解,上面不會發生,是因為Dataframe已經排序排好,我只取兩個欄位來用,這邊是沒有排好,但我直接塞X和Y的值進去,因此導致資料有錯亂吧...這部分還在研究,但是不妨礙我們觀察。
仔細觀察綠色的台積電收盤價,跟加權指數得十分接近,他們的漲跌幾乎都一樣(看不清楚的話,可以看上面兩張分開的圖),因此我們可以認定大盤的指數跟台積電有很大的關係。不過這是當然的,因為大盤的組成中,台積電佔一大部分。
但我們可以這樣推論,先前的量可以看得出與加權指數的關係,那這樣是不是「整個市場的交易量與台積電有關係」的命題可以成立,因此我們也可以用大盤的量來當作一個觀察市場或是台積電的訊號。
最後的圖有點問題,當我找到方法解決後,會再說明如何解決,在此之前,先看這張醜醜的圖吧~~~