iT邦幫忙

2021 iThome 鐵人賽

DAY 15
0
Software Development

金融分析 X Python-訊號燈系列 第 15

【D15】當大盤漲的時候,跟台積電有關係嗎?

  • 分享至 

  • xImage
  •  

前言

取得眾多資料後,接下來就要分析,我們來看看台積電與加權指數有關係嗎?


取得資料

這次我們要比較的是加權指數和台積電的關係,我們這幾天已經把加權指數的歷史資料,以及股票今年的歷史資料抓到資料庫。股票的部分沒有實作,就大家自己把昨天的程式碼加上證交所下載的資料,跑一下就可以了

加權指數今年的收盤點位

也從資料庫取得資料,用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()

https://ithelp.ithome.com.tw/upload/images/20210915/20103826Uq2KBH1Fnw.png

台積電的今年收盤價

直接從資料庫取得資料,用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()

https://ithelp.ithome.com.tw/upload/images/20210915/20103826qc2938dSi3.png

比較大盤與台積電關係

看起來趨勢很像,所以我們來疊圖觀察,看看是不是真的很像

# 畫圖
# 在畫圖的地方,無法寫中文的名稱
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()

https://ithelp.ithome.com.tw/upload/images/20210915/20103826MEXwk5Ct5w.png

會發現我的圖片怪怪的,因為這邊用疊圖,把兩張圖片疊在一起,然後就有發生圖有問題,本只有一條綠色線,現在很多條直線。這部分還在找如何解,上面不會發生,是因為Dataframe已經排序排好,我只取兩個欄位來用,這邊是沒有排好,但我直接塞X和Y的值進去,因此導致資料有錯亂吧...這部分還在研究,但是不妨礙我們觀察。

仔細觀察綠色的台積電收盤價,跟加權指數得十分接近,他們的漲跌幾乎都一樣(看不清楚的話,可以看上面兩張分開的圖),因此我們可以認定大盤的指數跟台積電有很大的關係。不過這是當然的,因為大盤的組成中,台積電佔一大部分。

但我們可以這樣推論,先前的量可以看得出與加權指數的關係,那這樣是不是「整個市場的交易量與台積電有關係」的命題可以成立,因此我們也可以用大盤的量來當作一個觀察市場或是台積電的訊號。


後記

最後的圖有點問題,當我找到方法解決後,會再說明如何解決,在此之前,先看這張醜醜的圖吧~~~


上一篇
【D14】取得股票歷史資料
下一篇
【D16】製作訊號燈#1:訊號燈是什麼?
系列文
金融分析 X Python-訊號燈32
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言